aim of StoPify

StoPify empowers you to fine-tune your indoor environment, ensuring cleaner, healthier air for you and your loved ones.

Description of stopify

Optimize your air quality and diminish infection risk with StoPify. Breathe confidently knowing you're taking control of your environment. StoPify provides you with an infection landscape, offering a visual representation that illustrates the assessment of infection risk under the conditions you specify for your room. StoPify asks you to enter values such as room volume, occupant counts in the room, average body weight of the occupants, duration of time indoors, and air exchange rate. By inputting these values, you have the freedom to adjust variables to achieve your desired landscape control. It serves solely as an informational and educational tool, empowering users to focus on maintaining clean air conditions and creating a comfortable and healthier environment.

Theory behind stopify

The infected individuals exhale "quanta" (plural of quantum), which is a unit of infectious agent causing infection. A "quantum" is defined as the number of aerosols causing infection with a probability of 0.63 once uninfected and infectious-agent-susceptible individuals inhale a "quantum".  The Wells-Riley model (reference 1 and 2) assumes that the "quanta"  are distributed uniformly in the room, people inhale air with uniformly distributed "quanta” and the number of inhaled “quanta” follows a homogeneous Poisson distribution.

The underlying theory that propels StoPify forward is firmly rooted in the Wells-Riley model, a cornerstone in understanding airborne transmission dynamics. Unlike the Stop-Infection app, which derives the air change rate solely from CO2 levels, StoPify takes a more comprehensive approach. Here, both CO2 concentration and quanta are extracted directly from this fundamental parameter, air exchange rate. Importantly, no approximations are employed in this process, ensuring precision in delineating the interplay between CO2 levels, quanta, and the effectiveness of ventilation strategies. In essence, StoPify stands as a faithful disciple of the Wells-Riley model, embracing its principles to navigate the complex realm of airborne transmission with unwavering accuracy and insight.

How to generate risk profile in stopify

I. CO2 model

We define the CO2 concentration in the room as y [ppm], and the airflow rate α [1/min], which is the fraction of the air volume in the room that is replaced with fresh air from outside the room. The CO2 exhalation rate from each occupant is given by β  [litter/min/kg]. w represents the total body weight (= the number of the occupants, n times the average body weight w per person). As fresh air is introduced, the CO2 concentration in the room decreases at a rate proportional to the airflow rate α, while it increases at a rate proportional to the exhalation rate β of the occupants. These changes in CO2 concentration over time can be described using the following ODE (1).

dy/dt = -α * (y - C0) +1000 * w * n / (1)

By solving this ODE with respect to time t, we obtain:

y = 1000 * β * w * n / (α * V) * (1 - exp(-α * t)) + C0   (2)

Here, C0 represents the initial background concentration of carbon dioxide, α is the air flow rate [1/min], t is the time in minutes, w.n is the total body weight of the occupants [kg], β is the mean carbon dioxide concentration in the exhaled breath [liter/kg/min] and V is the volume of the room [m^3].

CO2 concentration are calculated using equation (2) based on the room conditions provided by the user.

II. Quanta generation model

There is one infected individual in a room with S susceptible people. The susceptible individuals are exposed to the infected individual for a certain period of time τ . Out of the S susceptible people, I individuals are newly infected. The infection rate is calculated as I/S. The cause of the infection is assumed to be quanta floating in the air that were exhaled by the infected individual. Susceptible people inhaled the air exhaled by the infectant. When the susceptible people inhale quanta, they get infected. To simplify the model, the number of infectants producing quanta has not changed, just one. The concentration of quanta Q is measured in units of 1/m^3. The change in quanta over a time interval Δt is calculated as Q(t+Δt) - Q(t). The infectant generates quanta q [1/min], which contributes to the increase in the quanta concentration Q in the room. Ventilation, on the other hand, decreases the concentration of quanta concentration Q. When the ventilation airflow rate is α [1/min], the decrease in quanta is given by Q(t)α. Therefore, the change in the quanta concentration in the room per unit time can be described using the following ODE (3):

dQ(t)/dt = -α * Q(t) + q/V  (3)

By solving this ODE with respect to time t, we obtain:

Q(t) = Q0 * exp(-α * t) + q/(α * V) * (1 - exp(-α * t)) [quanta/m^3]    (4)

Here, Q0 represents the initial quanta concentration at t = 0, α is the air flow rate [1/min], t is the time in minutes, q [1/min] is the quanta generation rate and V is the volume of the room [m^3].

III. Estimation of average quanta λ

The amount of quanta inhaled by a susceptible individual during a time interval Δt is given by pQ(t)Δt [quanta  zero dimension], p is the inhalation rate [m^3/min]. Thus, the total amount of quanta that a susceptible individual inhales during the exposure time is given by integrating pQ(t)Δt from o to the exposure time. This is the average quanta λ that is inhaled by susceptibles during the exposure time t .

λ = p/α * {(Q0 - q/(α * V)) * (1 - exp(-α * t)) + (q * t )/V} [Quanta]   (5)

Q0 = 0, at time = 0 as the room is not occupied.

λ = (p * q)/(α^2 * V) * (α * t + exp(-α * t) - 1)  [Quanta]   (6)

IV. Risk probability γ

The Poisson distribution models the number of quanta inhalation obtained in III. The average quanta calculated above represents the arriving rate of quantum particles to each susceptible person in the homogeneous Poisson process. The number of quanta inhaled by individual is considered as the random variable X, the probability that the k quanta is inhaled in the Poisson process is P(X=k) = exp(-λ)λ^k/k!, thus the probability that more than one quanta is inhaled is 1-P(X=0), subtract the event of probability that no quanta is inhaled. The probability that a susceptible individual inhales more than one quanta and consequently becomes infected is: 

 γ = 1 - P(X=0) =1 - exp(-λ)   (7)

V. Generate risk profile

StoPify utilizes the user-input variables to calculate CO2 concentration from equation (2) and risk probability (7) using the average quanta calculated from equation (6). The user-specified number of occupants is multiplied by the risk probability obtained from equation (7) to calculate the expected number of potential infectants in the room. The potential infected number is randomly distributed among the occupants and represented by red-filled circles. Small dots represent the CO2 concentration. According to the level of CO2, the dots are coloured red, yellow, or green when the CO2 level is more than 2000 ppm, between 1000 and 2000 ppm, and less than 1000 ppm, respectively. The parameters used in StoPify is as follows:  background CO2 = 400 [ppm], exhaled CO2 β = 0.0037 [litre/min/kg], inhalation rate p = 0.005 [m^3/min].  Quanta generation rate q for each infectious agent is employed from reference 3 and 4.


1. Wells, H.F. Airborne Contagion and Air Hygiene: an Ecological Study of Droplet Infection, Cambridge, MA, Harvard University Press (1955)

2. Riley, E.C., Murphy, G. and Riley, R.L. Airborne spread of measles in a suburban elementary school, Am. J. Epidemiol., (1978) 107: 421-432

3. Dai, H., Zhao, B. Association of the infection probability of COVID-19 with ventilation rates in confined spaces, Build. Simul. (2020) 13: 1321-1327

4. Dai, H., Zhao, B. Association between the infection probability of COVID-19 and ventilation rates: An update for SARS-CoV-2 variants, Build. Simul. (2023) 16: 3-12