You do not have permission to edit this page, for the following reason:
You can view and copy the source of this page.
<!-- metadata commented in wiki content
==DETAILED SIMULATION OF VIRAL PROPAGATION IN THE BUILT ENVIRONMENT==
'''Rainald Löhner Harbir Antil Sergio Idelsohn Eugenio Oñate'''
-->
==Abstract==
A summary is given of the mechanical characteristics of virus contaminants and the transmission via droplets and aerosols. The ordinary and partial differential equations describing the physics of these processes with high fidelity are presented, as well as appropriate numerical schemes to solve them. Several examples taken from recent evaluations of the built environment are shown, as well as the optimal placement of sensors.
'''keywords''' Covid-19 Particle Methods Finite Elements Computational Fluid Dynamics
==1 The Covid-19 Crisis==
Starting in Wuhan, China, in the fall of 2019, the Covid-19 pandemic has claimed and will continue to claim millions of infected patients and hundreds of thousands of deaths. The lockdowns that followed its outbreak have led to mass unemployment, stalled economic development and loss of productivity that will take years to recover. Some changes in habits and lifestyles may be permanent: in the future, working from home or in a `socially distanced manner' may be the prevalent modus operandi for large segments of society.
The present paper gives a short description of computational techniques that can elucidate the flow and propagation of viruses or other contaminants in built environments in order to mitigate or avoid infections.
==2 Virus Infection==
Before addressing the requirements for the numerical simulation of virus propagation a brief description of virus propagation and lifetime are given. Covid-19 is one of many corona-viruses. The virus is usually present in the air or some surface, and makes its way into the body either via inhalation (nose, mouth), ingestion (mouth) or attachment (eyes, hands, clothes). In many cases the victim inadvertedly touches an infected surface or viruses are deposited on its hands, and then the hands touch either the nose, the eyes or the mouth, thus allowing the virus to enter the body.
An open question of great importance for all that will follow is how many viruses it takes to overwhelm the body's natural defense mechanism and trigger an infection. This number, which is sometimes called the ''viral load'' or the ''infectious dose'' will depend on numerous factors, among them the state of immune defenses of the individual, the timing of viral entry (all at once, piece by piece), and the amount of hair and mucous in the nasal vessels. In principle, a single organism in a favourable environment may replicate sufficiently to cause disease <span id='citeF-98'></span>[[#cite-98|[98]]]. Data from research performed on biological warfare agents <span id='citeF-37'></span>[[#cite-37|[37]]] suggests that both bacteria and viruses can produce disease with as few as 1-100 organisms (e.g. brucellosis 10-100, Q fever 1-10, tularaemia 10-50, smallpox 10-100, viral haemorrhagic fevers 1-10 organisms, tuberculosis 1). Compare these numbers and consider that as many as 3,000 organisms can be produced by talking for 5 minutes or a single cough, with sneezing producing many more <span id='citeF-80'></span><span id='citeF-55'></span><span id='citeF-102'></span><span id='citeF-87'></span><span id='citeF-108'></span>[[#cite-80|[80,55,102,87,108]]]. Figure [[#img-1|1]], reproduced from <span id='citeF-102'></span>[[#cite-102|[102]]], shows a typical number and size distribution.
<div id='img-1'></div>
{| class="floating_imageSCP" style="text-align: center; border: 1px solid #BBB; margin: 1em auto; width: 100%;max-width: 100%;"
|-
|[[Image:Draft_Samper_514971305-droplet_distribution.png|600px|Counts of Particles of Various Diameters in Air Expelled by (90) Coughs <span id='citeF-80'></span>[[#cite-80|[80]]]]]
|- style="text-align: center; font-size: 75%;"
| colspan="1" | '''Figure 1:''' Counts of Particles of Various Diameters in Air Expelled by (90) Coughs <span id='citeF-80'></span>[[#cite-80|[80]]]
|}
==3 Virus Lifetime Outside the Body==
Current evidence points to lifetimes outside the body that can range from 1-2 hours in air to several days on particular surfaces <span id='citeF-51'></span><span id='citeF-106'></span>[[#cite-51|[51,106]]]. There has also been some documentation of lifetime variation depending on humidity.
==4 Virus Transmission==
===4.1 Human Sneezing and Coughing===
In the sequel, we consider human sneezing and coughing as the main conduits of virus transmission. Clearly, breathing and talking will lead to the exhalation of air, and, consequently the exhalation of viruses for infected victims <span id='citeF-3'></span><span id='citeF-4'></span>[[#cite-3|[3,4]]]. However, it stands to reason that the size and amount of particles released - and hence the amount of viruses in them - is much higher and much more concentrated when sneezing or coughing <span id='citeF-36'></span><span id='citeF-102'></span><span id='citeF-50'></span><span id='citeF-56'></span><span id='citeF-3'></span><span id='citeF-4'></span>[[#cite-36|[36,102,50,56,3,4]]].
The velocity of air at a person's mouth during sneezing and coughing has been a source of heated debate, particularly in the media. The experimental evidence points to exit velocities of the order of 2-14 m/sec <span id='citeF-40'></span><span id='citeF-41'></span><span id='citeF-100'></span><span id='citeF-101'></span>[[#cite-40|[40,41,100,101]]]. A typical amount and size of particles can be seen in Figure [[#img-1|1]].
===4.2 Sink Velocities===
If, for the sake of argument, we consider Stoke's law for the drag of spherical particles, valid below Reynolds numbers of <math display="inline">Re=1</math>, the terminal sink velocity (also known as the settling velocity) of particles will be given by:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> v_s = {{(\rho _p - \rho _g) g \cdot d^2 } \over {18 \mu }} ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (1)
|}
where <math display="inline">\rho _p, \rho _g, g, \mu , d</math> denote the density of the particles (essentially water in the present case), density of the gas (air), gravity, dynamic viscosity of the gas and diameter of the particle respectively. The equivalent Reynolds' number is:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> Re = {{\rho _g v_s d } \over {\mu }} = {{\rho _g (\rho _p - \rho _g) g d^3 } \over {18 \mu ^2}} </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (2)
|}
With <math display="inline">\rho _p=1~gr/cc, \rho _g=0.0012~gr/cc, g=981~cm/sec^2, \mu=1.81 \cdot 10^{-4}~gr/(cm \cdot sec)</math> this yields a limiting diameter for <math display="inline">Re=1</math> of
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> d_{Re=1} = 0.0079~cm ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (3)
|}
i.e. approximately 1/10th of a millimeter in diameter - a particle size that would still be perceived by the human eye. The corresponding sink velocity is given by:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> v_s = 3 \cdot 10^{5} d^2 cm/sec ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (4)
|}
with <math display="inline">d</math> in <math display="inline">cm</math>, i.e. for <math display="inline">Re=1</math>
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> v_s(Re=1) = 18~cm/sec ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (5)
|}
Note the quadratic dependency of the sink velocity with diameter. Table 1 lists the sink velocities for water droplets of different diameters in air. One can see that below diameters of <math display="inline">O(0.1~mm)</math> the sink velocity is very low, implying that these particles remain in and move with the air for considerable time (and possibly distances).
{| class="floating_tableSCP wikitable" style="text-align: center; margin: 1em auto;min-width:50%;"
|+ style="font-size: 75%;" |<span id='table-1'></span>Table. 1 Sink Velocities and Reynolds Number For Water Particles in Air
|- style="border-top: 2px solid;"
| style="border-right: 2px solid;" | Diameter [mm]
| style="border-left: 2px solid;border-right: 2px solid;" | sink velocity [m/sec]
| style="border-left: 2px solid;" | Re
|- style="border-top: 2px solid;"
| style="border-right: 2px solid;" | 1.00E-00
| style="border-left: 2px solid;border-right: 2px solid;" | 3.01E+01
| style="border-left: 2px solid;" | 1.99E+03
|-
| style="border-right: 2px solid;" | 1.00E-01
| style="border-left: 2px solid;border-right: 2px solid;" | 3.01E-01
| style="border-left: 2px solid;" | 1.99E+00
|-
| style="border-right: 2px solid;" | 1.00E-02
| style="border-left: 2px solid;border-right: 2px solid;" | 3.01E-03
| style="border-left: 2px solid;" | 1.99E-03
|-
| style="border-right: 2px solid;" | 1.00E-03
| style="border-left: 2px solid;border-right: 2px solid;" | 3.01E-05
| style="border-left: 2px solid;" | 1.99E-06
|- style="border-bottom: 2px solid;"
| style="border-right: 2px solid;" | 1.00E-04
| style="border-left: 2px solid;border-right: 2px solid;" | 3.01E-07
| style="border-left: 2px solid;" | 1.99E-09
|}
===4.3 Evaporation===
Depending on the relative humidity and the temperature of the ambient air, the smaller particles can evaporate in milliseconds. However, as the mucous and saliva evaporate, they build a gel-like structure that surrounds the virus, allowing it to survive. This implies that extremely small particles with possible viruses will remain infectious for extended periods of times - up to an hour according to some studies.
An important question is then whether a particle/droplet will first reach the ground or evaporate. Figure 2, taken from <span id='citeF-109'></span>[[#cite-109|[109]]], shows that below 120 <math display="inline">\mu m</math> the particles evaporate before falling 2 m (i.e. reaching the ground).
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 2 Evaporation Time and Falling Time of Droplets of Varying Diameter</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;">(<math>T_{p0}=33^oC, T_{\infty }=18^oC, RH=0%</math>) From <span id='citeF-109'></span>[[#cite-109|[109]]] </div>
===4.4 Viral Load===
A central question that requires an answer is then: how many viruses are in these small particles ? An approximate answer may be obtained from the experiments that are being carried out on animals to trace and monitor infections. For ferrets <span id='citeF-53'></span>[[#cite-53|[53]]] <math display="inline">O(10^5-10^6)</math> have been used to infect via intranasal swabs, while for mice <span id='citeF-104'></span>[[#cite-104|[104]]] <math display="inline">O(10^4)</math> seem to suffice. Viral titers can vary a lot, but one may assume on the order of <math display="inline">O(10^6)</math> viruses/ml for a nasopharyngeal swab <span id='citeF-53'></span><span id='citeF-104'></span>[[#cite-53|[53,104]]]. Table 2 lists the number of viruses per droplet and the number of droplets needed to contain just 1 virus. Note that while for a droplet with a diameter of 1 mm one can expect <math display="inline">O(500)</math> viruses, only every 2,000th particle of diameter 10 <math display="inline">\mu m</math> does contain a single virus.
{| class="floating_tableSCP wikitable" style="text-align: center; margin: 1em auto;min-width:50%;"
|+ style="font-size: 75%;" |<span id='table-2'></span>Table. 2 Estimated Number of Viruses For Different Particle Diameters
|- style="border-top: 2px solid;"
| style="border-right: 2px solid;" | Droplet Diameter [mm]
| style="border-left: 2px solid;border-right: 2px solid;" | Volume [mm<math display="inline">^3</math>]
| style="border-left: 2px solid;border-right: 2px solid;" | Viruses/droplet
| style="border-left: 2px solid;" | Droplets Needed for 1 Virus
|- style="border-top: 2px solid;"
| style="border-right: 2px solid;" | 1.00E+00
| style="border-left: 2px solid;border-right: 2px solid;" | 5.24E-01
| style="border-left: 2px solid;border-right: 2px solid;" | 5.24E+02
| style="border-left: 2px solid;" | 1.00E+00
|-
| style="border-right: 2px solid;" | 1.00E-01
| style="border-left: 2px solid;border-right: 2px solid;" | 5.24E-04
| style="border-left: 2px solid;border-right: 2px solid;" | 5.24E-01
| style="border-left: 2px solid;" | 1.91E+00
|-
| style="border-right: 2px solid;" | 1.00E-02
| style="border-left: 2px solid;border-right: 2px solid;" | 5.24E-07
| style="border-left: 2px solid;border-right: 2px solid;" | 5.24E-04
| style="border-left: 2px solid;" | 1.91E+03
|- style="border-bottom: 2px solid;"
| style="border-right: 2px solid;" | 1.00E-03
| style="border-left: 2px solid;border-right: 2px solid;" | 5.24E-10
| style="border-left: 2px solid;border-right: 2px solid;" | 5.24E-07
| style="border-left: 2px solid;" | 1.91E+06
|}
Similar numbers are seen in field studies as well. The size of viruses varies from 0.02-0.3 <math display="inline">\mu m</math>, while the size of bacteria varies from 0.5-10 <math display="inline">\mu m</math>. The influenza virus RNA detected by quantitative polymerase chain reaction in human exhaled breath suggests that it may be contained in fine particles generated during tidal breathing and not only coughs <span id='citeF-36'></span><span id='citeF-55'></span><span id='citeF-56'></span><span id='citeF-87'></span>[[#cite-36|[36,55,56,87]]]. Influenza RNA and Mycobacterium tuberculosis have been reported in particles that range in size from 0.5-4.0 <math display="inline">\mu m</math> (<span id='citeF-36'></span><span id='citeF-55'></span><span id='citeF-56'></span><span id='citeF-87'></span>[[#cite-36|[36,55,56,87]]] and references cited therein).
==5 Physical Modeling of Aerosol Propagation==
When solving the two-phase equations, the air, as a continuum, is best represented by a set of partial differential equations (the Navier-Stokes equations) that are numerically solved on a mesh. Thus, the gas characteristics are calculated at the mesh points within the flowfield. However, as the droplets/particles may be relatively sparse in the flowfield, they can be modeled by either:
* A continuum description, i.e. in the same manner as the fluid flow, or
* A particle (or Lagrangian) description, where individual particles (or groups of particles) are monitored and tracked in the flow.
Although the continuum (so-called multi-fluid) method has been used for some applications, the inherent assumptions of the continuum approach lead to several disadvantages which may be countered with a Lagrangian treatment for dilute flows. The continuum assumption cannot robustly account for local differences in particle characteristics, particularly if the particles are polydispersed. In addition, the only boundary conditions that can be considered in a straightforward manner are slipping and sticking, whereas reflection boundary conditions, such as specular and diffuse reflection, may be additionally considered with a Lagrangian approach. Numerical diffusion of the particle density is eliminated by employing Lagrangian particles due to their pointwise spatial accuracy.
While a Lagrangian approach offers many potential advantages, this method also creates problems that need to be addressed. For instance, large numbers of particles may cause a Lagrangian analysis to be memory intensive. This problem is circumvented by treating parcels of particles, i.e. doing the detailed analysis for one particle and then applying the effect to many. In addition, continuous mapping and remapping of particles to their respective elements may increase computational requirements, particularly for unstructured grids.
===5.1 Equations Describing the Motion of the Air===
As seen from the experimental evidence, the velocities of air encountered during coughing and sneezing never exceed a Mach-number of <math display="inline">Ma=0.1</math>. Therefore, the air may be assumed as a Newtonian, incompressible liquid, where buoyancy effects are modeled via the Boussinesq approximation. The equations describing the conservation of momentum, mass and energy for incompressible, Newtonian flows may be written as
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \rho \vvec _{,t} + \rho \vvec \cdot \Grd \vvec + \Grd p = \nabla \cdot \mu \nabla \vvec + \rho \gvec + \beta \rho \gvec (T - T_0) + \svec _v ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (6.1)
|}
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \Div \vvec = 0 ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (6.2)
|}
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \rho c_p T_{,t} + \rho c_p \vvec \cdot \Grd T = \nabla \cdot k \nabla T + s_e ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (6.3)
|}
Here <math display="inline">\rho , \vvec , p, \mu , \gvec , \beta , T, T_0, c_p, k</math> denote the density, velocity vector, pressure, viscosity, gravity vector, coefficient of thermal expansion, temperature, reference temperature, specific heat coefficient and conductivity respectively, and <math display="inline">\svec _v, s_e</math> momentum and energy source terms (e.g. due to particles or external forces/heat sources). For turbulent flows both the viscosity and the conductivity are obtained either from additional equations or directly via a large eddy simulation (LES) assumption through monotonicity induced LES (MILES) <span id='citeF-20'></span><span id='citeF-38'></span><span id='citeF-39'></span><span id='citeF-47'></span>[[#cite-20|[20,38,39,47]]].
===5.2 Equations Describing the Motion of Particles/Droplets===
In order to describe the interaction of particles/droplets with the flow, the mass, forces and energy/work exchanged between the flowfield and the particles must be defined. As before, we denote for '''fluid (air)''' by <math display="inline">\rho , p, T, k, v_i, \mu </math> and <math display="inline">c_p</math> the density, pressure, temperature, conductivity, velocity in direction <math display="inline">x_i</math>, viscosity, and the specific heat at constant pressure. For the '''particles''', we denote by <math display="inline">\rho _p, T_p, v_{pi}, d, c_{pp}</math> and <math display="inline">Q</math> the density, temperature, velocity in direction <math display="inline">x_i</math>, equivalent diameter, and heat transferred per unit volume. In what follows, we will refer to droplet and particles, collectively as particles.
Making the classical assumptions that the particles may be represented by an equivalent sphere of diameter <math display="inline">d</math>, the drag forces <math display="inline">\Dvec </math> acting on the particles will be due to the difference of fluid and particle velocity:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \Dvec = {{\pi d^2} \over 4} \cdot c_D \cdot { 1 \over 2} \rho | \vvec - \vvec _p | ( \vvec - \vvec _p ) ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (7)
|}
The '''drag coefficient''' <math display="inline">c_D</math> is obtained empirically from the Reynolds-number <math display="inline">Re</math>:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> Re = {{\rho | \vvec - \vvec _p | d } \over { \mu }} </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (8)
|}
as (see, e.g. <span id='citeF-95'></span>[[#cite-95|[95]]]):
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> c_D = max\left(0.1 , {24 \over Re} \left(1 + 0.15 Re^{0.687} \right)\right) </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (9)
|}
The lower bound of <math display="inline">c_D=0.1</math> is required to obtain the proper limit for the Euler equations, when <math display="inline">Re \rightarrow \infty </math>. The heat transferred between the particles and the fluid is given by
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> Q = {{\pi d^2} \over 4} \cdot \left[h_f \cdot ( T - T_p ) + \sigma ^* \cdot ( T^4 - T_p^4 ) \right] ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (10)
|}
where <math display="inline">h_f</math> is the film coefficient and <math display="inline">\sigma ^*</math> the radiation coefficient. For the class of problems considered here, the particle temperature and kinetic energy are such that the radiation coefficient <math display="inline">\sigma ^*</math> may be ignored. The film coefficient <math display="inline">h_f</math> is obtained from the Nusselt-Number <math display="inline">Nu</math>:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> Nu = 2 + 0.459 Pr^{0.333} Re^{0.55} ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (11)
|}
where <math display="inline">Pr</math> is the Prandtl-number of the gas
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> Pr = {k \over \mu } ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (12)
|}
as
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> h_f = {{ Nu \cdot k }\over d} ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (13)
|}
Having established the forces and heat flux, the particle motion and temperature are obtained from Newton's law and the first law of thermodynamics. For the particle velocities, we have:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \rho _p {{\pi d^3} \over 6 } \cdot {{ d\vvec _p} \over {dt}} = \Dvec + \rho _p {{\pi d^3} \over 6 } \gvec ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (14)
|}
This implies that:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> {{ d\vvec _p} \over {dt}} = {{3 \rho } \over {4 \rho _p d}} \cdot c_d | \vvec - \vvec _p | ( \vvec - \vvec _p ) + \gvec = \alpha _v | \vvec - \vvec _p | ( \vvec - \vvec _p ) + \gvec ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (15)
|}
where <math display="inline">\alpha _v=3\rho c_d / (4 \rho _p d)</math>. The particle positions are obtained from:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> {{ d\xvec _p} \over {dt}} = \vvec _p ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (16)
|}
The temperature change in a particle is given by:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \rho _p c_{pp} {{\pi d^3} \over 6 } \cdot {{ dT_p} \over {dt}} = Q ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (17)
|}
which may be expressed as:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> {{ dT_p} \over {dt}} = {{3 k}\over 4 c_{pp} \rho _p d^2} \cdot Nu \cdot ( T - T_p ) = \alpha _T ( T - T_p ) ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (18)
|}
with <math display="inline">\alpha _T=3 k/(4 c_{pp} \rho _p d^2)</math>. Equations (15, 16, 18) may be formulated as a system of Ordinary Differential Equations (ODEs) of the form:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> {{d\uvec _p} \over {dt}} = \rvec (\uvec _p, \xvec , \uvec _f) ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (19)
|}
where <math display="inline">\uvec _p, \xvec , \uvec _f</math> denote the particle unknowns, the position of the particle and the fluid unknowns at the position of the particle.
===5.3 Numerical Integration of the Motion of the Air===
The last six decades have seen a large number of schemes that may be used to solve numerically the incompressible Navier-Stokes equations given by Eqns.(6.1-6.3). In the present case, the following design criteria were implemented:
* Spatial discretization using '''unstructured grids''' (in order to allow for arbitrary geometries and adaptive refinement);
* Spatial approximation of unknowns with '''simple linear finite elements''' (in order to have a simple input/output and code structure);
* Edge-based data structures (for reduced access to memory and indirect addressing);
* Temporal approximation using '''implicit integration of viscous terms and pressure''' (the interesting scales are the ones associated with advection);
* Temporal approximation using '''explicit, high-order integration of advective terms''';
* Low-storage, iterative solvers for the resulting systems of equations (in order to solve large 3-D problems); and
* Steady results that are '''independent from the timestep''' chosen (in order to have confidence in convergence studies).
The resulting discretization in time is given by the following projection scheme <span id='citeF-68'></span><span id='citeF-71'></span>[[#cite-68|[68,71]]]:
* Advective-Diffusive Prediction: <math display="inline">\vvec ^n, p^n \rightarrow \vvec ^{*}</math>
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \svec' = - \Grd p^n + \rho \gvec + \beta \rho \gvec (T^n - T_0) + \svec _v ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (20)
|}
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \vvec ^i = \vvec ^n + \alpha ^i \gamma \dt \left( - \vvec ^{i-1} \cdot \Grd \vvec ^{i-1} \nabla \cdot \mu \nabla \vvec ^{i-1} + \svec' \right) ~~; ~~i=1,k-1~~; </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (21a)
|}
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \left[{ 1 \over \dt } - \theta \nabla \cdot \mu \nabla \right] \left(\vvec ^{k} - \vvec ^n \right) + \vvec ^{k-1} \cdot \Grd \vvec ^{k-1} = \nabla \cdot \mu \nabla \vvec ^{k-1} + \svec' ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (21b)
|}
* Pressure Correction: <math display="inline">p^n \rightarrow p^{n+1}</math>
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \Div \vvec ^{n+1} = 0 ~~; </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (22)
|}
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> {{ \vvec ^{n+1} - \vvec ^{*} }\over \dt } + \Grd ( p^{n+1} - p^n ) = 0 ~~; </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (23)
|}
* which results in
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \nabla ^2 ( p^{n+1} - p^n ) = {{\Div \vvec ^{*} }\over \dt } ~~; </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (24)
|}
* Velocity Correction: <math display="inline">\vvec ^{*} \rightarrow \vvec ^{n+1}</math>
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \vvec ^{n+1} = \vvec ^{*} - \dt \Grd ( p^{n+1} - p^n ) ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (25)
|}
<math display="inline">\theta </math> denotes the implicitness-factor for the viscous terms (<math display="inline">\theta=1</math>: 1st order, fully implicit, <math display="inline">\theta=0.5</math>: 2nd order, Crank-Nicholson). <math display="inline">\alpha ^i</math> are the standard low-storage Runge-Kutta coefficients <math display="inline">\alpha ^i=1/(k+1-i)</math>. The <math display="inline">k-1</math> stages of Eqn.(21a) may be seen as a predictor (or replacement) of <math display="inline">\vvec ^n</math> by <math display="inline">\vvec ^{k-1}</math>. The original right-hand side has not been modified, so that at steady-state <math display="inline">\vvec ^n=\vvec ^{k-1}</math>, preserving the requirement that the steady-state be independent of the timestep <math display="inline">\dt </math>. The factor <math display="inline">\gamma </math> denotes the local ratio of the stability limit for explicit timestepping for the viscous terms versus the timestep chosen. Given that the advective and viscous timestep limits are proportional to:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \dt _a \approx {h \over {|\vvec |}} ~~;~~ \dt _v \approx {{\rho h^2} \over \mu } ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (26)
|}
we immediately obtain
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \gamma = {{\dt _v} \over {\dt _a}} \approx {{\rho |\vvec | h }\over \mu } \approx Re_h ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (27)
|}
or, in its final form:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \gamma = min(1,Re_h) ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (28)
|}
In regions away from boundary layers, this factor is <math display="inline">O(1)</math>, implying that a high-order Runge-Kutta scheme is recovered. Conversely, for regions where <math display="inline">Re_h=O(0)</math>, the scheme reverts back to the usual 1-stage Crank-Nicholson scheme. Besides higher accuracy, an important benefit of explicit multistage advection schemes is the larger timestep one can employ. The increase in allowable timestep is roughly proportional to the number of stages used (and has been exploited extensively for compressible flow simulations <span id='citeF-49'></span>[[#cite-49|[49]]]). Given that for an incompressible solver of the projection type given by Eqns.(20-25) most of the CPU time is spent solving the pressure-Poisson system Eqn.(24), the speedup achieved is also roughly proportional to the number of stages used.
At steady state, <math display="inline">\vvec ^{*}=\vvec ^n=\vvec ^{n+1}</math> and the residuals of the pressure correction vanish, implying that the result does not depend on the timestep <math display="inline">\dt </math>.
The spatial discretization of these equations is carried out via linear finite elements. The resulting matrix system is re-written as an edge-based solver, allowing the use of consistent numerical fluxes to stabilize the advection and divergence operators <span id='citeF-71'></span>[[#cite-71|[71]]].
The energy (temperature) equation (Eqn.(6.3)) is integrated in a manner similar to the advective-diffusive prediction (Eqn(21)), i.e. with an explicit, high order Runge-Kutta scheme for the advective parts and an implicit, 2nd order Crank-Nicholson scheme for the conductivity.
===5.4 Numerical Integration of the Motion of Particles/Droplets===
The equations describing the position, velocity and temperature of a particle (Eqns. 15-19) may be formulated as a system of nonlinear Ordinary Differential Equations of the form:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> {{d\uvec _p} \over {dt}} = \rvec (\uvec _p, \xvec , \uvec _f) ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (29)
|}
They can be integrated numerically in a variety of ways. Due to its speed, low memory requirements and simplicity, we have chosen the following k-step low-storage Runge-Kutta procedure to integrate them:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \uvec ^{n+i}_p = \uvec ^n_p + \alpha ^i \Delta t \cdot \rvec (\uvec ^{n+i-1}_p, \xvec ^{n+i-1}, \uvec ^{n+i-1}_f) ~~, ~~ i=1,k ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (30)
|}
For linear ODEs the choice
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \alpha ^i= {1 \over {k+1-i}} ~~,~~ i=1,k </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (31)
|}
leads to a scheme that is <math display="inline">k</math>-th order accurate in time. Note that in each step the location of the particle with respect to the fluid mesh needs to be updated in order to obtain the proper values for the fluid unknowns. The default number of stages used is <math display="inline">k=4</math>. This would seem unnecessarily high, given that the flow solver is of second-order accuracy, and that the particles are integrated separately from the flow solver before the next (flow) timestep, i.e. in a staggered manner. However, it was found that the 4-stage particle integration preserves very well the motion in vortical structures and leads to less `wall sliding' close to the boundaries of the domain <span id='citeF-78'></span>[[#cite-78|[78]]]. The stability/ accuracy of the particle integrator should not be a problem as the particle motion will always be slower than the maximum wave speed of the fluid (fluid velocity).
The transfer of forces and heat flux between the fluid and the particles must be accomplished in a conservative way, i.e. whatever is added to the fluid must be subtracted from the particles and vice-versa. The finite element discretization of the fluid equations will lead to a system of ODE's of the form:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \Mmat \duvec = \rvec ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (32)
|}
where <math display="inline">\Mmat , \duvec </math> and <math display="inline">\rvec </math> denote, respectively, the consistent mass matrix, increment of the unknowns vector and right-hand side vector. Given the `host element' of each particle, i.e. the fluid mesh element that contains the particle, the forces and heat transferred to <math display="inline">\rvec </math> are added as follows:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \rvec ^i_D = \sum _{el~surr~i} N^i(\xvec _p) \Dvec _p ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (33)
|}
Here <math display="inline">N^i(\xvec _p)</math> denotes the shape-function values of the host element for the point coordinates <math display="inline">\xvec _p</math>, and the sum extends over all elements that surround node <math display="inline">i</math>. As the sum of all shape-function values is unity at every point:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \sum N^i(\xvec ) = 1 ~~\forall \xvec ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (34)
|}
this procedure is strictly conservative.
From Eqns.(15-18) and their equivalent numerical integration via Eqn.(30), the change in momentum and energy for one particle is given by:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> \fvec _p = \rho _p {{\pi d^3}\over 6} {{\left(\vvec ^{n+1}_p - \vvec ^n_p \right)} \over {\Delta t}} ~~, </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (35)
|}
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> q_p = \rho _p c_{pp} {{\pi d^3}\over 6} {{\left(T^{n+1}_p - T^n_p \right)} \over {\Delta t}} ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (36)
|}
These quantities are multiplied by the number of particles in a packet in order to obtain the final values transmitted to the fluid. Before going on, we summarize the basic steps required in order to update the particles one timestep:
* Initialize Fluid Source-Terms: <math display="inline">\rvec=0</math>
* '''DO''' : For Each Particle:
* - DO: For Each Runge-Kutta Stage:
* ~ - Find Host Element of Particle: IELEM, <math display="inline">N^i(\xvec )</math>
* ~ - Obtain Fluid Variables Required
* ~ - Update Particle: Velocities, Position, Temperature, ...
* - ENDDO
* - Transfer Loads to Element Nodes
* '''ENDDO'''
====5.4.1 Particle Parcels====
For a large number of very small particles, it becomes impossible to carry every individual particle in a simulation. The solution is to:
* Agglomerate the particles into so-called packets of <math display="inline">N_p</math> particles;
* Integrate the governing equations for one individual particle; and
* Transfer back to the fluid <math display="inline">N_p</math> times the effect of one particle.
Beyond a reasonable number of particles per element (typically <math display="inline">> 8</math>), this procedure produces accurate results without any deterioration in physical fidelity.
====5.4.2 Other Numerics====
In order to achieve a robust particle integrator, a number of additional precautions and algorithms need to be implemented. The most important of these are:
* Agglomeration/Subdivision of Particle Parcels: As the fluid mesh may be adaptively refined and coarsened in time, or the particle traverses elements of different sizes, it may be important to adapt the parcel concentrations as well. This is necessary to ensure that there is sufficient parcel representation in each element and yet, that there are not too many parcels as to constitute an inefficient use of CPU and memory.
* Limiting During Particle Updates: As the particles are integrated independently from the flow solver, it is not difficult to envision situations where for the extreme cases of very light or very heavy particles physically meaningless or unstable results may be obtained. In order to prevent this, the changes in particle velocities and temperatures are limited in order not to exceed the differences in velocities and temperature between the particles and the fluid <span id='citeF-78'></span>[[#cite-78|[78]]].
* Particle Contact/Merging: In some situations, particles may collide or merge in a certain region of space.
* Particle Tracking: A common feature of all particle-grid applications is that the particles do not move far between timesteps. This makes physical sense: if a particle jumped ten gridpoints during one timestep, it would have no chance to exchange information with the points along the way, leading to serious errors. Therefore, the assumption that the new host elements of the particles are in the vicinity of the current ones is a valid one. For this reason, the most efficient way to search for the new host elements is via the vectorized neighbour-to-neighbour algorithm described in <span id='citeF-59'></span><span id='citeF-71'></span>[[#cite-59|[59,71]]].
==6 Examples==
The techniques described above were implemented in FEFLO, a general-purpose computational fluid dynamics (CFD) code based on the following general principles:
* Use of unstructured grids (automatic grid generation and mesh refinement);
* Finite element discretization of space;
* Separate flow modules for compressible and incompressible flows;
* Edge-based data structures for speed;
* Optimal data structures for different architectures;
* Bottom-up coding from the subroutine level to assure an open-ended, expandable architecture.
The code has had a long history of relevant applications involving compressible flow simulations in the areas of transonic flow <span id='citeF-81'></span><span id='citeF-82'></span><span id='citeF-83'></span><span id='citeF-84'></span><span id='citeF-63'></span><span id='citeF-85'></span>[[#cite-81|[81,82,83,84,63,85]]], store separation <span id='citeF-7'></span><span id='citeF-10'></span><span id='citeF-12'></span><span id='citeF-14'></span><span id='citeF-15'></span>[[#cite-7|[7,10,12,14,15]]], blast-structure interaction <span id='citeF-6'></span><span id='citeF-8'></span><span id='citeF-11'></span><span id='citeF-13'></span><span id='citeF-16'></span>[[#cite-6|[6,8,11,13,16]]], <span id='citeF-66'></span><span id='citeF-72'></span><span id='citeF-94'></span><span id='citeF-105'></span><span id='citeF-97'></span>[[#cite-66|[66,72,94,105,97]]], incompressible flows <span id='citeF-91'></span><span id='citeF-93'></span><span id='citeF-65'></span><span id='citeF-68'></span><span id='citeF-5'></span><span id='citeF-76'></span>[[#cite-91|[91,93,65,68,5,76]]], free-surface hydrodynamics <span id='citeF-62'></span><span id='citeF-69'></span><span id='citeF-70'></span>[[#cite-62|[62,69,70]]], dispersion <span id='citeF-22'></span><span id='citeF-23'></span><span id='citeF-67'></span><span id='citeF-24'></span>[[#cite-22|[22,23,67,24]]], patient-based haemodynamics <span id='citeF-26'></span><span id='citeF-63'></span><span id='citeF-27'></span><span id='citeF-1'></span><span id='citeF-73'></span>[[#cite-26|[26,63,27,1,73]]] and aeroacoustics <span id='citeF-57'></span>[[#cite-57|[57]]]. The code has been ported to vector <span id='citeF-64'></span>[[#cite-64|[64]]], shared memory <span id='citeF-61'></span><span id='citeF-96'></span>[[#cite-61|[61,96]]], distributed memory <span id='citeF-91'></span><span id='citeF-60'></span><span id='citeF-92'></span><span id='citeF-74'></span>[[#cite-91|[91,60,92,74]]] and GPU-based <span id='citeF-30'></span><span id='citeF-31'></span><span id='citeF-32'></span><span id='citeF-33'></span><span id='citeF-75'></span>[[#cite-30|[30,31,32,33,75]]] machines.
The cases shown all simulate sneezing/coughing in different environments. The ambient temperature was assumed to be <math display="inline">20^o</math>C. In order to simulate a sneeze/cough, the velocity and temperature in a spherical region of radius (<math display="inline">r=5~cm</math>) near the patient's mouth was reset at the beginning of each timestep according to the following triangular function:
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> f(t)= \cases { {t \over t_{mid}} ~~if: 0 \le t \le t_{mid} </math>
|-
| style="text-align: center;" | <math> 1 - {{t-t_{mid}}\over t_{mid}} ~~if: t_{mid} \le t \le 2 t_{mid} </math>
|-
| style="text-align: center;" | <math> 0 ~~if: 2 t_{mid} \le t } ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (37)
|}
{| class="formulaSCP" style="width: 100%; text-align: left;"
|-
|
{| style="text-align: left; margin:auto;width: 100%;"
|-
| style="text-align: center;" | <math> v(t) = 5 f(t) ~[m/sec] ~~,~~ T(t) = 20 + f(t) ( 37 - 20 ) ~~. </math>
|}
| style="width: 5px;text-align: right;white-space: nowrap;" | (38)
|}
The droplets were initialized with 4 different sizes and different velocities, and released every <math display="inline">0.005</math> seconds during <math display="inline">0.1</math> seconds. This resulted in a final number of particle packets of <math display="inline">n_p=25,662</math>. The temperature was set to <math display="inline">T_p=37^oC</math> and the velocity to <math display="inline">v=5~m/sec</math>. Table 3 summarizes the diameters and resulting mass distribution.
{| class="floating_tableSCP wikitable" style="text-align: center; margin: 1em auto;min-width:50%;"
|+ style="font-size: 75%;" |<span id='table-3'></span>Table. 3 Initial Conditions for Particles
|- style="border-top: 2px solid;"
| style="border-right: 2px solid;" | Droplet Diameter [mm]
| style="border-left: 2px solid;border-right: 2px solid;" | Mass [gr<math display="inline">^3</math>]
| style="border-left: 2px solid;border-right: 2px solid;" | Nr. of Packets
| style="border-left: 2px solid;" | Nr. of Particles
|- style="border-top: 2px solid;"
| style="border-right: 2px solid;" | 1.00E+00
| style="border-left: 2px solid;border-right: 2px solid;" | 5.50E+00
| style="border-left: 2px solid;border-right: 2px solid;" | 1.05E+03
| style="border-left: 2px solid;" | 1.05E+04
|-
| style="border-right: 2px solid;" | 1.00E-01
| style="border-left: 2px solid;border-right: 2px solid;" | 0.11E+00
| style="border-left: 2px solid;border-right: 2px solid;" | 2.10E+03
| style="border-left: 2px solid;" | 2.10E+05
|-
| style="border-right: 2px solid;" | 1.00E-02
| style="border-left: 2px solid;border-right: 2px solid;" | 0.58E-02
| style="border-left: 2px solid;border-right: 2px solid;" | 1.12E+04
| style="border-left: 2px solid;" | 1.12E+07
|- style="border-bottom: 2px solid;"
| style="border-right: 2px solid;" | 1.00E-03
| style="border-left: 2px solid;border-right: 2px solid;" | 0.58E-05
| style="border-left: 2px solid;border-right: 2px solid;" | 1.12E+04
| style="border-left: 2px solid;" | 1.12E+08
|}
In the cases shown different temporal scales appear:
* The fast, ballistic drop of the larger (<math display="inline">d=1~mm</math>) particles, occurring in the range of <math display="inline">O(1)~sec</math>;
* The slower drop of particles of diameter <math display="inline">d=O(0.1)~mm</math>, occurring in the range of <math display="inline">O(10)~sec</math>; and
* The transport of the even smaller particles through the air, occurring in the range of <math display="inline">O(100)~sec</math>.
We have attempted to show these phases in the results, and for this reason the results are not displayed at equal time intervals. Unless otherwise noted, the particles have been colored according to the '''logarithm''' of the diameter, with red colors representing the largest and blue the smallest particles.
The examples given show clearly the dangers of droplet- and aerosol- based infections in the built environment.
===6.1 Sneezing in Transportation Security Agency (TSA) Queues===
One of the obvious vectors for viral contamination and spread are security and passport examination queues in airports. Air flow is moderate, passengers are in very close proximity, and in some airports queues wind back and forth in narrow lanes. Figure 3a,b show the arrangement of pedestrians, as well as the discretization chosen. Note the smaller elements close to the bodies and in the region of interest between the two pedestrians in the middle row. This particular mesh had 12.74Mels. The distribution of particles and the absolute value of the velocity in the centerplane over time can be discerned from Figures 3c-e. One can see that the large (red) particles follow a ballistic path and have some influence on the flow (e.g. at time <math display="inline">t=0.20</math>). This `ballistic phase' ends at about <math display="inline">t=1~sec</math>. The (green) particles of size <math display="inline">d=0.1~mm</math> are quickly stopped by the air, and then sink slowly towards the floor in close proximity to the individual sneezing. The even smaller (cyan, blue) particles rise with the cloud of warmer air exhaled by the sneezing individual, and disperse much further at later times.
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 3a TSA Queue: Arrangement of Pedestrians and Surface Mesh</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 3b TSA Queue: Surface Mesh and Cut Plane</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 3c TSA Queue: Particle Distribution at <math>t=0.02~sec</math></div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 3d TSA Queue: Particle Distribution at <math>t=0.10~sec</math></div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 3e TSA Queue: Particle Distribution at <math>t=0.20~sec</math></div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 3f TSA Queue: Particle Distribution at <math>t=0.40~sec</math></div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 3g TSA Queue: Particle Distribution at <math>t=0.80~sec</math></div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 3h TSA Queue: Particle Distribution at <math>t=1.60~sec</math></div>
===6.2 Sneezing in a Generic Hospital Room===
This case considers a typical hospital room. Of interest here was the dispersion of particles in the '''first minute''' after coughing, in particular the reach into neighbouring halls and the amount of `negative pressure' needed to keep all contaminants in the room. Figure 4a shows the arrangement of the room, with patient and caregiver clearly visible. This particular mesh had 2.25Mels. The distribution of particles over time can be discerned from Figures 4c-l. As before, one can see that the large (red) particles follow a ballistic path. This `ballistic phase' ends at about <math display="inline">t=1~sec</math>. The (green) particles of size <math display="inline">d=0.1~mm</math> are quickly stopped by the air, and then sink slowly towards the patient. The even smaller (cyan, blue) particles rise with the cloud of warmer air exhaled by the sneezing individual, and disperse much further at later times, covering almost the entire room. The velocity distribution in the room may be inferred from Figure 4m.
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 4a Hospital Room: Surface Mesh</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 4b Hospital Room: Particle Distribution at t=0.0 sec</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 4c Hospital Room: Particle Distribution at t=0.2 sec</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 4d Hospital Room: Particle Distribution at t=0.4 sec</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 4e Hospital Room: Particle Distribution at t=0.6 sec</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 4f Hospital Room: Particle Distribution at t=1.0 sec</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 4g Hospital Room: Particle Distribution at t=2.0 sec</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 4h Hospital Room: Particle Distribution at t=4.0 sec</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 4i Hospital Room: Particle Distribution at t=10.0 sec</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 4j Hospital Room: Particle Distribution at t=20.0 sec</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 4k Hospital Room: Particle Distribution at t=30.0 sec</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 4l Hospital Room: Particle Distribution at t=50.0 sec</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 4m Hospital Room: Surface Velocities at t=60.0 sec</div>
==7 Reopening After the Crisis==
A lingering question facing all levels of society is how and when to reopen facilities where people congregate in close proximity. One key technology that would allow opening is testing and sensing. We consider sensing in the sequel. Several vendors have announced measuring devices for Covid-19 in the next half year. Given that these sensors are expensive, and that a hospital or university many need hundreds of these, the question becomes how best to deploy them. In other words: given an arbitrary number of contamination or infection scenarios, which is the minimum number of sensors needed to detect them, and where should they be placed ? A partial answer to this non-trivial question was given in <span id='citeF-67'></span><span id='citeF-110'></span>[[#cite-67|[67,110]]]. If we assume a given number of sensors, every contaminant/infection scenario (location and amount of release, flow conditions, etc.) will lead to a sensor input. The data recorded from all the possible release scenarios at all possible sensor locations allows the identification of the best or optimal sensor locations. Clearly, if only one sensor is to be placed, it should be at the location that recorded the highest number of releases. This argument can be used recursively by removing from further consideration all releases already recorded by sensors previously placed. The procedure is repeated recursively until no undetected release cases are left, or the available sensors have been exhausted.
See <span id='citeF-21'></span><span id='citeF-45'></span>[[#cite-21|[21,45]]] for an in-depth analysis of robust sensor placement under uncertainty.
===7.1 Hospital Room===
This case considers the same hospital room as shown before. The boundary conditions determining the flow are assumed as steady, with air entering the room through vents 1-3 and exiting the room through the bathroom exhaust or the door. Figures 5a-c show the outlay of the room, average velocities and the `age of air' after 5 minutes. Note the high values for the age of air in the corners and the back of the room. This particular mesh had 2.2Mels. Four contaminant release scenarios were considered: cases 1-3 assumed contaminant coming in through each of the vents (separately) during the first minute, while case 4 assumed virus production from the patient for a period of 10 seconds. The case was run for 5 minutes of real time, and the contaminant concentration was measured on all walls/ceilings. The maximum concentrations measured have been summarized in Figure 5d. Note the different areas covered depending on the release scenario. It was assumed that sensors should only be allowed above a certain height, and should be located on a wall or the ceiling. Table 4 summarizes the points that measured data above a set threshold. As one can see, none of the possible sensor locations is able to measure/detect all 4 cases, and many possible sensor locations do not detect even a single case. There are many possible pairs of sensors that can detect all 4 cases. The pair selected is the one that achieves the highest relative measurement values, and is shown in Figure 5e. Note that this makes good sense: one sensor close the HVAC exits, and one close to the patient.
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 5a Hospital Room: Outlay of Room and Boundary Conditions</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 5b Hospital Room: Average Velocities (5 mins)</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 5c Hospital Room: Age of Air (5 mins)</div>
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 5d Hospital Room: Maximum Contaminant Concentration Over 5 Minutes</div>
{| class="floating_tableSCP wikitable" style="text-align: center; margin: 1em auto;min-width:50%;"
|+ style="font-size: 75%;" |<span id='table-4'></span>Table. 4 Data Measurement Summary
|- style="border-top: 2px solid;"
| style="border-right: 2px solid;" | Cases Measured
| style="border-left: 2px solid;" | Number
|- style="border-top: 2px solid;"
| style="border-right: 2px solid;" | 0
| style="border-left: 2px solid;" | 4308
|-
| style="border-right: 2px solid;" | 1
| style="border-left: 2px solid;" | 3377
|-
| style="border-right: 2px solid;" | 2
| style="border-left: 2px solid;" | 1010
|-
| style="border-right: 2px solid;" | 3
| style="border-left: 2px solid;" | 0
|- style="border-bottom: 2px solid;"
| style="border-right: 2px solid;" | 4
| style="border-left: 2px solid;" | 0
|}
<div class="center" style="width: auto; margin-left: auto; margin-right: auto;"> </div> <div class="center" style="width: auto; margin-left: auto; margin-right: auto;">Figure 5e Hospital Room: Optimal Sensor Locations</div>
==8 Conclusions and Outlook==
The present paper has summarized some of the mechanical characteristics of virus contaminants and the transmission via droplets and aerosols. The ordinary and partial differential equations describing the physics of these processes with high fidelity were given, as well as appropriate numerical schemes to solve them. Several examples taken from recent evaluations of the built environment were given, as well as the optimal placement of sensors.
Current efforts are directed at increasing the realism of the physical processes modeled (e.g. by adding the effect of moving pedestrians <span id='citeF-79'></span>[[#cite-79|[79]]]), streamlining the simulation toolbox and workflow, and fielding these tools so that the post-pandemic opening can occur as smoothly as possible.
==Acknowledgements==
H. Antil is partially supported by NSF grants DMS-1818772, DMS-1913004, the Air Force Office of Scientific Research (AFOSR) under Award NO: FA9550-19-1-0036, and Department of Navy, Naval PostGraduate School under Award NO: N00244-20-1-0005
===BIBLIOGRAPHY===
<div id="cite-1"></div>
'''[[#citeF-1|[1]]]''' S. Appanaboyina, F. Mut, R. Löhner, C. M. Putman and J. R. Cebral - Computational Fluid Dynamics of Stented Intracranial Aneurysms Using Adaptive Embedded Unstructured Grids; ''Int. J. Num. Meth. Fluids '' 57, 5, 475-493 (2008).
<div id="cite-2"></div>
'''[2]''' S. Asadi, A.S. Wexler, C.D. Cappa, S. Barreda, N.M. Bouvier and W. Ristenpart - Aerosol Emission and Superemission During Human Speech Increase with Voice Loudness; ''Nature Scientific Reports ''9, (1):2348 (2019). www.nature.com/scientificreports/ https://doi.org/10.1038/s41598-019-38808-z
<div id="cite-3"></div>
'''[[#citeF-3|[3]]]''' S. Asadi, A.S. Wexler, C.D. Cappa, S. Barreda, N.M. Bouvier and W. Ristenpart - Effect of Voicing and Articulation Manner on Aerosol Particle Emission During Human Speech ''PLoS ONE'' 15(1):e0227699 (2020). https://doi.org/10.1371/journal.pone.0227699
<div id="cite-4"></div>
'''[[#citeF-4|[4]]]''' S. Asadi, N.M. Bouvier, A.S. Wexler and W. Ristenpart - The Coronavirus Pandemic and Aerosols: Does COVID-19 Transmit via Expiratory Particles ? ''Aerosol Science and Technology '' (2020). https://doi.org/10.1080/02786826.2020.1749229
<div id="cite-5"></div>
'''[[#citeF-5|[5]]]''' R. Aubry, F. Mut, R. Löhner and J. R. Cebral - Deflated Preconditioned Conjugate Gradient Solvers for the Pressure-Poisson Equation; ''J. Comp. Phys. ''227, 24, 10196-10208 (2008).
<div id="cite-6"></div>
'''[[#citeF-6|[6]]]''' J.D. Baum and R. Löhner - Numerical Simulation of Shock Interaction with a Modern Main Battlefield Tank; ''AIAA''-91-1666 (1991).
<div id="cite-7"></div>
'''[[#citeF-7|[7]]]''' J.D. Baum and R. Löhner - Numerical Simulation of Pilot/Seat Ejection from an F-16; ''AIAA''-93-0783 (1993).
<div id="cite-8"></div>
'''[[#citeF-8|[8]]]''' J.D. Baum. H. Luo and R. Löhner - Numerical Simulation of a Blast Inside a Boeing 747; ''AIAA''-93-3091 (1993).
<div id="cite-9"></div>
'''[9]''' J.D. Baum, H. Luo and R. Löhner - Numerical Simulation of a Blast Withing a Multi-Room Shelter; pp. 451-463 in ''Proc. MABS-13 Conf.'' The Hague, Netherlands, September (1993).
<div id="cite-10"></div>
'''[[#citeF-10|[10]]]''' J.D. Baum, H. Luo and R. Löhner - A New ALE Adaptive Unstructured Methodology for the Simulation of Moving Bodies; ''AIAA''-94-0414 (1994).
<div id="cite-11"></div>
'''[[#citeF-11|[11]]]''' J.D. Baum, H. Luo and R. Löhner - Numerical Simulation of Blast in the World Trade Center; ''AIAA''-95-0085 (1995).
<div id="cite-12"></div>
'''[[#citeF-12|[12]]]''' J.D. Baum, H. Luo and R. Löhner - Validation of a New ALE, Adaptive Unstructured Moving Body Methodology for Multi-Store Ejection Simulations; ''AIAA''-95-1792 (1995).
<div id="cite-13"></div>
'''[[#citeF-13|[13]]]''' J.D. Baum, H. Luo, R. Löhner, C. Yang, D. Pelessone and C. Charman - Coupled Fluid/Structure Modeling of Shock Interaction with a Truck; ''AIAA''-96-0795 (1996).
<div id="cite-14"></div>
'''[[#citeF-14|[14]]]''' J.D. Baum, H. Luo, R. Löhner, E. Goldberg and A. Feldhun - Application of Unstructured Adaptive Moving Body Methodology to the Simulation of Fuel Tank Separation from an F-16 c/d Fighter; ''AIAA''-97-0166 (1997).
<div id="cite-15"></div>
'''[[#citeF-15|[15]]]''' J.D. Baum, R. Löhner, T.J. Marquette and H. Luo - Numerical Simulation of Aircraft Canopy Trajectory; ''AIAA''-97-1885 (1997).
<div id="cite-16"></div>
'''[[#citeF-16|[16]]]''' J.D. Baum, H. Luo, E. Mestreau, R. Löhner, D. Pelessone and C. Charman - Coupled CFD/CSD Methodology for Modeling Weapon Detonation and Fragmentation; AIAA-99-0794 (1999).
<div id="cite-17"></div>
'''[17]''' J.D. Baum, E. Mestreau, H. Luo, R. Löhner, D. Pelessone, M.E. Giltrud and J.K. Gran - Modeling of Near-Field Blast Wave Evolution; ''AIAA''-06-0191 (2006).
<div id="cite-18"></div>
'''[18]''' K. Balakrishnan and S. Menon - On the Role of Ambient Reactive Particles in the Mixing and Afterburn Behind Explosive Blast Waves; ''Combust. Sci. and Tech. '' 182, 186–214 (2010).
<div id="cite-19"></div>
'''[19]''' K. Benkiewicz and K. Hayashi - Two-Dimensional Numerical Simulations of Multi-Headed Detonations in Oxygen-Aluminum Mixtures Using an Adaptive Mesh Refinement; ''Shock Waves '', 12, 5, 385-402 (2003).
<div id="cite-20"></div>
'''[[#citeF-20|[20]]]''' J.P. Boris, F.F. Grinstein, E.S. Oran, and R.J. Kolbe - New Insights Into Large Eddy Simulation; ''Fluid Dynamics Research ''10, 199-228 (1992).
<div id="cite-21"></div>
'''[[#citeF-21|[21]]]''' J.A. Burns and C.N. Rautenberg - The Infinite-Dimensional Optimal Filtering Problem with Mobile and Stationary Sensor Networks; ''Numerical Functional Analysis and Optimization ''36, 2, 181-224 (2015). https://doi.org/10.1080/01630563.2014.970647
<div id="cite-22"></div>
'''[[#citeF-22|[22]]]''' F. Camelli and R. Löhner - Assessing Maximum Possible Damage for Contaminant Release Events; ''Engineering Computations '' 21, 7, 748-760 (2004).
<div id="cite-23"></div>
'''[[#citeF-23|[23]]]''' F. Camelli, R. Löhner, W.C. Sandberg and R. Ramamurti - VLES Study of Ship Stack Gas Dynamics; ''AIAA''-04-0072 (2004).
<div id="cite-24"></div>
'''[[#citeF-24|[24]]]''' F. Camelli and R. Löhner - VLES Study of Flow and Dispersion Patterns in Heterogeneous Urban Areas; ''AIAA''-06-1419 (2006).
<div id="cite-25"></div>
'''[25]''' F. Camelli, J. Lien, D. Dayong, D. W. Wong, M. Rice, R. Löhner and C. Yang - Generating Seamless Surfaces for Transport and Dispersion Modeling in GIS; submitted to ''GeoInformatica '' 16, 2, 207-327 (2012).
<div id="cite-26"></div>
'''[[#citeF-26|[26]]]''' J.R. Cebral and R. Löhner - From Medical Images to Anatomically Accurate Finite Element Grids; ''Int. J. Num. Meth. Eng. ''51, 985-1008 (2001).
<div id="cite-27"></div>
'''[[#citeF-27|[27]]]''' J.R. Cebral and R. Löhner - Efficient Simulation of Blood Flow Past Complex Endovascular Devices Using an Adaptive Embedding Technique; ''IEEE Transactions on Medical Imaging ''24, 4, 468-476 (2005).
<div id="cite-28"></div>
'''[28]''' C. Chao, M.P. Wan, L. Morawska, G. Johnson, R. Graham, Z. Ristovski M. Hargreaves, K. Mengersen, L. Kerrie C. Steve, Y. Li, X. Xie and S. Katoshevski - Characterization of Expiration Air Jets and Droplet Size Distributions Immediately at the Mouth Opening; ''J. of Aerosol Science ''40, 2, 122-133 (2009).
<div id="cite-29"></div>
'''[29]''' R. Clift, J.R. Grace and M.E. Weber - ''Bubbles, Drops and Particles''; Academic Press, New York (1978).
<div id="cite-30"></div>
'''[[#citeF-30|[30]]]''' A. Corrigan, F. Camelli and R. Löhner - Porting Of An Edge-Based CFD Solver to GPUs; ''AIAA''-10-0523 (2010).
<div id="cite-31"></div>
'''[[#citeF-31|[31]]]''' A. Corrigan, F. Camelli, R. Löhner and F. Mut - Porting of FEFLO to GPUs; ''Proc. ECCOMAS CFD 2010 Conf.'' Lisbon, Portugal, June 14-17 (2010).
<div id="cite-32"></div>
'''[[#citeF-32|[32]]]''' A. Corrigan, F.F. Camelli, R. Löhner and J. Wallin - Running Unstructured Grid Based CFD Solvers on Modern Graphics Hardware; ''Int. J. Num. Meth. Fluids ''66, 221-229 (2011).
<div id="cite-33"></div>
'''[[#citeF-33|[33]]]''' A. Corrigan and R. Löhner - Porting of FEFLO to Multi-GPU Clusters; ''AIAA''-11-0948 (2011).
<div id="cite-34"></div>
'''[34]''' N.G. Deen, M. v.Sint Annaland and J.A.M. Kuipers - Direct Numerical Simulation of Particle Mixing in Dispersed Gas-Liquid-Solid Flows Using a Combined Volume of Fluid and Discrete Particle Approach; ''Proc. Fifth Int. Conf. on CFD in the Process Industries'', CSIRO, Melbourne, Australia, 13-15 December (2006).
<div id="cite-35"></div>
'''[35]''' L. Dietz, P.F. Horve, D.A. Coil, M. Fretz, J.A. Eisen and L. van den Wymelenberg - 2019 Novel Coronavirus (COVID-19) Pandemic: Built Environment Considerations to Reduce Transmission; ''mSystems ''5:e00245-20 (2020). doi:10.1128/mSystems.00245-20.
<div id="cite-36"></div>
'''[[#citeF-36|[36]]]''' P. Fabian, J.J. McDevitt, W.H. Dehaan, R.O.P. Fung, B.J. Cowling, K.H. Chan, et al. - Influenza Virus in Human Exhaled Breath: An Observational Study; ''PLoS ONE ''3:e2691 (2008).
<div id="cite-37"></div>
'''[[#citeF-37|[37]]]''' D.R. Franz, P.B. Jahrling, A.M. Friedlander, et al. - Clinical Recognition and Management of Patients Exposed to Biological Warfare Agents; ''JAMA ''278:399e411 (1997).
<div id="cite-38"></div>
'''[[#citeF-38|[38]]]''' C. Fureby and F. Grinstein - Monotonically Integrated Large Eddy Simulation of Free Shear Flows; ''AIAA J. ''37, 5, 544-556 (1999).
<div id="cite-39"></div>
'''[[#citeF-39|[39]]]''' F.F. Grinstein and C. Fureby - Recent Progress on MILES for High-Reynolds-Number Flows; ''J. Fluids Engineering ''124, 848-861 (2002).
<div id="cite-40"></div>
'''[[#citeF-40|[40]]]''' J.K. Gupta, C-H. Lin and Q. Chen - Flow Dynamics and Characterization of a Cough; ''Indoor Air ''19, 517–525 (2009).
<div id="cite-41"></div>
'''[[#citeF-41|[41]]]''' J.K. Gupta, C-H. Lin and Q. Chen - Characterizing Exhaled Airflow from Breathing and Talking; ''Indoor Air '' 20, 31-39 (2010).
<div id="cite-42"></div>
'''[42]''' J.K. Gupta, C-H. Lin and Q. Chen - Inhalation of Expiratory Droplets in Aircraft Cabins; ''Indoor Air ''21, 341-350 (2011). doi:10.1111/j.1600-0668.2011.00709.x
<div id="cite-43"></div>
'''[43]''' J.K. Gupta, C-H. Lin and Q. Chen - Transport of Expiratory Droplets in an Aircraft Cabin; ''Indoor Air '' 21, 3-11 (2011).
<div id="cite-44"></div>
'''[44]''' S.K. Halloran, A.S. Wexler and W.D. Ristenpart - A Comprehensive Breath Plume Model for Disease Transmission via Expiratory Aerosols; ''PLoS ONE ''7(5):e37088 (2012). https://doi.org/10.1371/journal.pone.0037088
<div id="cite-45"></div>
'''[[#citeF-45|[45]]]''' M. Hintermüller, C.N. Rautenberg, M. Mohammadi and M. Kanitsar - Optimal Sensor Placement: A Robust Approach; ''SIAM J. Control Optim. ''55(6), 3609-3639 (2017). https://doi.org/10.1137/16M1088867
<div id="cite-46"></div>
'''[46]''' J. Hoberock and N. Bell - Thrust: Parallel Template Library, Version 1.3 (2010).
<div id="cite-47"></div>
'''[[#citeF-47|[47]]]''' S.R. Idelsohn, N. Nigro, A. Larreteguy, J.M. Gimenez and P. Ryshakov - A Pseudo-DNS Method for the Simulation of Incompressible Fluid Flows with Instabilities at Different Scales; '' Int. J. Comp. Particle Mechanics'' (2019). https://doi.org/10.1007/s40571-019-00264-x
<div id="cite-48"></div>
'''[48]''' M. Ip, J.W. Tang, D.S.C. Hui, A.L.N. Wong, M.T.V. Chan, G.M. Joynt, A.T.P. So, S.D. Hall, P.K.S. Chan and J.J.Y. Sung - Airflow and Droplet Spreading Around Oxygen Masks: A Simulation Model for Infection Control Research; ''AJIC '' 35, 10, 684-689 (2007).
<div id="cite-49"></div>
'''[[#citeF-49|[49]]]''' A. Jameson, W. Schmidt and E. Turkel - Numerical Solution of the Euler Equations by Finite Volume Methods using Runge-Kutta Time-Stepping Schemes; ''AIAA''-81-1259 (1981).
<div id="cite-50"></div>
'''[[#citeF-50|[50]]]''' G.R. Johnson, L. Morawska, Z.D. Ristovski, M. Hargreaves, K. Mengersen, C.Y.H. Chao, M.P. Wan, Y. Li , X. Xie, D. Katoshevski, S. Corbette - Modality of Human Expired Aerosol Size Distributions ''J. of Aerosol Science ''42, 839-851 (2011).
<div id="cite-51"></div>
'''[[#citeF-51|[51]]]''' G. Kampf, D. Todt, S. Pfaender, E. Steinmann - Persistence of Coronaviruses on Inanimate Surfaces and Their Inactivation With Biocidal Agents; ''J. of Hospital Infection'' 104, 3, 246-251, March 01 (2020). https://doi.org/10.1016/j.jhin.2020.01.022
<div id="cite-52"></div>
'''[52]''' C.K. Kim, J.G. Moon, J.S. Hwang, M.C. Lai and K.S. Im - Afterburning of TNT Explosive Products in Air With Aluminum Particles; ''AIAA''-2008-1029 (2008).
<div id="cite-53"></div>
'''[[#citeF-53|[53]]]''' Y.-I. Kim et al. - Infection and Rapid Transmission of SARS-CoV-2 in Ferrets; ''Cell Host and Microbe ''27, 1-6 (2020). https://doi.org/10.1016/j.chom.2020.03.023
<div id="cite-54"></div>
'''[54]''' Y. Li et al. - Role of Ventilation in Airborne Transmission of Infactious Agents in the Built Environment - A Multidisciplinary Systematic Review; ''Indoor Air ''17, 2-18 (2007).
<div id="cite-55"></div>
'''[[#citeF-55|[55]]]''' W.G. Lindsley, F.M. Blachere, R.E. Thewlis, A. Vishnu, K.A. Davis, G. Cao, et al. - Measurements of Airborne Influenza Virus in Aerosol Particles from Human Coughs; ''PLoS ONE ''5:e15100 (2010).
<div id="cite-56"></div>
'''[[#citeF-56|[56]]]''' W.G. Lindsley, T.A. Pearce, J.B. Hudnall, K.A. Davis, S.M. Davis, M.A. Fisher, et al. - Quantity and Size Distribution of Cough-Generated Aerosol Particles Produced by Influenza Patients During and After Illness; ''J. Occup. Environ. Hyg. '' 9, 443-9. (2012).
<div id="cite-57"></div>
'''[[#citeF-57|[57]]]''' J. Liu, K. Kailasanath, R. Ramamurti, D. Munday, E. Gutmark and R. Löhner - Large-Eddy Simulations of a Supersonic Jet and Its Near-Field Acoustic Properties; ''AIAA J. ''47, 8, 1849-1864 (2009).
<div id="cite-58"></div>
'''[58]''' R. Löhner, K. Morgan, J. Peraire and M. Vahdati - Finite Element Flux-Corrected Transport (FEM-FCT) for the Euler and Navier-Stokes Equations; ''Int. J. Num. Meth. Fluids ''7, 1093-1109 (1987).
<div id="cite-59"></div>
'''[[#citeF-59|[59]]]''' R. Löhner and J. Ambrosiano - A Vectorized Particle Tracer for Unstructured Grids; ''J. Comp. Phys. ''91, 1, 22-31 (1990).
<div id="cite-60"></div>
'''[[#citeF-60|[60]]]''' R. Löhner and R. Ramamurti - A Load Balancing Algorithm for Unstructured Grids; ''Comp. Fluid Dyn. ''5, 39-58 (1995).
<div id="cite-61"></div>
'''[[#citeF-61|[61]]]''' R. Löhner - Renumbering Strategies for Unstructured-Grid Solvers Operating on Shared-Memory, Cache-Based Parallel Machines; ''Comp. Meth. Appl. Mech. Eng. ''163, 95-109 (1998).
<div id="cite-62"></div>
'''[[#citeF-62|[62]]]''' R. Löhner, C. Yang and E. Oñate - Viscous Free Surface Hydrodynamics Using Unstructured Grids; ''Proc. 22nd Symp. Naval Hydrodynamics'', Washington, D.C., August (1998).
<div id="cite-63"></div>
'''[[#citeF-63|[63]]]''' R. Löhner, Chi Yang, J. Cebral, O. Soto, F. Camelli, J.D. Baum, H. Luo, E. Mestreau, D. Sharov, R. Ramamurti, W. Sandberg and Ch. Oh - Advances in FEFLO; ''AIAA''-01-0592 (2001).
<div id="cite-64"></div>
'''[[#citeF-64|[64]]]''' R. Löhner and M. Galle - Minimization of Indirect Addressing for Edge-Based Field Solvers; ''Comm. Num. Meth. Eng. ''18, 335-343 (2002).
<div id="cite-65"></div>
'''[[#citeF-65|[65]]]''' R. Löhner - Multistage Explicit Advective Prediction for Projection-Type Incompressible Flow Solvers; ''J. Comp. Phys. ''195, 143-152 (2004).
<div id="cite-66"></div>
'''[[#citeF-66|[66]]]''' R. Löhner, J.D. Baum and D. Rice - Comparison of Coarse and Fine Mesh 3-D Euler Predictions for Blast Loads on Generic Building Configurations; ''Proc. MABS-18 Conf.'', Bad Reichenhall, Germany, September (2004).
<div id="cite-67"></div>
'''[[#citeF-67|[67]]]''' R. Löhner and F. Camelli - Optimal Placement of Sensors for Contaminant Detection Based on Detailed 3-D CFD Simulations; ''Engineering Computations ''22, 3, 260-273 (2005).
<div id="cite-68"></div>
'''[[#citeF-68|[68]]]''' R. Löhner, Chi Yang, J.R. Cebral, F. Camelli, O. Soto and J. Waltz - Improving the Speed and Accuracy of Projection-Type Incompressible Flow Solvers; ''Comp. Meth. Appl. Mech. Eng. ''195, 23-24, 3087-3109 (2006).
<div id="cite-69"></div>
'''[[#citeF-69|[69]]]''' R. Löhner, Chi Yang and E. Oñate - On the Simulation of Flows with Violent Free Surface Motion; ''Comp. Meth. Appl. Mech. Eng. ''195, 5597-5620 (2006).
<div id="cite-70"></div>
'''[[#citeF-70|[70]]]''' R. Löhner, Chi Yang and E. Oñate - Simulation of Flows With Violent Free Surface Motion and Moving Objects Using Unstructured Grids; ''Int. J. Num. Meth. Fluids '' 53, 1315-1338 (2007).
<div id="cite-71"></div>
'''[[#citeF-71|[71]]]''' R. Löhner - ''Applied CFD Techniques, Second Edition''; J. Wiley & Sons (2008).
<div id="cite-72"></div>
'''[[#citeF-72|[72]]]''' R. Löhner, H. Luo, J.D. Baum and D. Rice - Improvements in Speed for Explicit, Transient Compressible Flow Solvers; ''Int. J. Num. Meth. Fluids '' 56, 12, 2229-2244 (2008).
<div id="cite-73"></div>
'''[[#citeF-73|[73]]]''' R. Löhner, J.R. Cebral, F.F. Camelli, S. Appanaboyina, J.D. Baum, E.L. Mestreau and O. Soto - Adaptive Embedded and Immersed Unstructured Grid Techniques; ''Comp. Meth. Appl. Mech. Eng. ''197, 2173-2197 (2008).
<div id="cite-74"></div>
'''[[#citeF-74|[74]]]''' R. Löhner, F. Mut and F.F. Camelli - Timings OF FEFLO on the SGI-ICE Machines; ''AIAA''-11-1064 (2011).
<div id="cite-75"></div>
'''[[#citeF-75|[75]]]''' R. Löhner and A. Corrigan - Semi-Automatic Porting if a General Fortran CFD Code to GPUs: The Difficult Modules; ''AIAA''-11-3219 (2011).
<div id="cite-76"></div>
'''[[#citeF-76|[76]]]''' R. Löhner, F. Mut, J.R. Cebral, R. Aubry and G. Houzeaux; Deflated Preconditioned Conjugate Gradient Solvers for the Pressure-Poisson Equation: Extensions and Improvements; ''Int. J. Num. Meth. Eng. ''87, 1-5, 2-14 (2011).
<div id="cite-77"></div>
'''[77]''' R. Löhner - F2GPU - A General Fortran to GPU Translator; ''Proc. NVIDIA GTC Conf. '', San Jose, CA, May (2012).
<div id="cite-78"></div>
'''[[#citeF-78|[78]]]''' R. Löhner, F. Camelli, J.D. Baum, F. Togashi and O. Soto - On Mesh-Particle Techniques; ''Comp. Part. Mech. ''1, 199-209 (2014).
<div id="cite-79"></div>
'''[[#citeF-79|[79]]]''' R. Löhner and F. Camelli - Tightly Coupled Computational Fluid and Crowd Dynamics; pp. 505-509 in ''Proc. Pedestrian and Evacuation Dynamics 2016 (PED 2016)'', (W. Song, J. Ma and L. Fu eds.), University of Science and Technology Press, Hefei, China, Oct 17-21 (2016).
<div id="cite-80"></div>
'''[[#citeF-80|[80]]]''' R.G. Loudon and R.M. Roberts - Droplet Expulsion from the Respiratory Tract; ''Am. Rev. Respir. Dis. '' 95, 3, 435–442 (1967).
<div id="cite-81"></div>
'''[[#citeF-81|[81]]]''' H. Luo, J.D. Baum and R. Löhner - Edge-Based Finite Element Scheme for the Euler Equations; ''AIAA J. ''32, 6, 1183-1190 (1994).
<div id="cite-82"></div>
'''[[#citeF-82|[82]]]''' H. Luo, J.D. Baum, R. Löhner and J. Cabello - Implicit Finite Element Schemes and Boundary Conditions for Compressible Flows on Unstructured Grids; ''AIAA''-94-0816 (1994).
<div id="cite-83"></div>
'''[[#citeF-83|[83]]]''' H. Luo, J.D. Baum and R. Löhner - An Accurate, Fast, Matrix-Free Implicit Method for Computing Unsteady Flows on Unstructured Grids; ''AIAA''-99-0937 (1999).
<div id="cite-84"></div>
'''[[#citeF-84|[84]]]''' H. Luo, D. Sharov, J.D. Baum and R. Löhner - A Class of Matrix-free Implicit Methods for Compressible Flows on Unstructured Grids; ''First International Conference on Computational Fluid Dynamics'', Kyoto, Japan, July 10-14 (2000).
<div id="cite-85"></div>
'''[[#citeF-85|[85]]]''' H. Luo, J.D. Baum and R. Löhner - A Fast, Matrix-Free Implicit Method for Computing Low Mach Number Flows on Unstructured Grids; ''Int. J. CFD ''14, 133-157 (2001).
<div id="cite-86"></div>
'''[86]''' D. Merrill and A. Grimshaw - Revisiting Sorting for GPGPU Stream Architectures; ''UVA CS Rep. CS2010-03'', Charlottesville, VA (2010).
<div id="cite-87"></div>
'''[[#citeF-87|[87]]]''' D.K. Milton, M.P. Fabian, B.J. Cowling, M.L. Grantham, J.J. McDevitt - Influenza Virus Aerosols in Human Exhaled Breath: Particle Size, Culturability, and Effect of Surgical Masks; ''PLoS Pathog. '' 9:e1003205 (2013).
<div id="cite-88"></div>
'''[88]''' NVIDIA Corporation. NVIDIA CUDA 3.2 Programming Guide (2010).
<div id="cite-89"></div>
'''[89]''' J. Peraire, M. Vahdati, K. Morgan and O.C. Zienkiewicz - Adaptive Remeshing for Compressible Flow Computations; ''J. Comp. Phys. ''72, 449-466 (1987).
<div id="cite-90"></div>
'''[90]''' P. Peterson - F2PY: Tool for Connecting Fortran and Python Programs; ''Int. J. Computational Science and Engineering ''4, 296-305 (2009).
<div id="cite-91"></div>
'''[[#citeF-91|[91]]]''' R. Ramamurti and R. Löhner - Simulation of Flow Past Complex Geometries Using a Parallel Implicit Incompressible Flow Solver; pp. 1049,1050 in ''Proc. 11th AIAA CFD Conf. '', Orlando, FL, July (1993).
<div id="cite-92"></div>
'''[[#citeF-92|[92]]]''' R. Ramamurti and R. Löhner - A Parallel Implicit Incompressible Flow Solver Using Unstructured Meshes; ''Computers and Fluids '' 5, 119-132 (1996).
<div id="cite-93"></div>
'''[[#citeF-93|[93]]]''' R. Ramamurti, W.C. Sandberg and R. Löhner - Computation of Unsteady Flow Past Deforming Geometries; ''Int. J. Comp. Fluid Dyn. '', 83-99 (1999).
<div id="cite-94"></div>
'''[[#citeF-94|[94]]]''' D.L. Rice, J.D. Baum, F. Togashi, R. Löhner and A. Amini - First-Principles Blast Diffraction Simulations on a Notebook: Accuracy, Resolution and Turn-Around Issues; ''Proc. MABS-20 Conf.'', Oslo, Norway, September (2008).
<div id="cite-95"></div>
'''[[#citeF-95|[95]]]''' H. Schlichting - ''Boundary Layer Theory''; McGraw-Hill (1979).
<div id="cite-96"></div>
'''[[#citeF-96|[96]]]''' D. Sharov, H. Luo, J.D. Baum and R. Löhner - Implementation of Untructured Grid GMRES+LU-SGS Method on Shared-Memory, Cache-Based Parallel Computers; ''AIAA''-00-0927 (2000).
<div id="cite-97"></div>
'''[[#citeF-97|[97]]]''' A. Stück, F. Camelli and R. Löhner - Adjoint-Based Design of Shock Mitigation Devices; ''Int. J. Num. Meth. Fluids '' 64, 443-472 (2010).
<div id="cite-98"></div>
'''[[#citeF-98|[98]]]''' J.W. Tang, Y. Li, I. Eames, P.K.S. Chan and G.L. Ridgway Factors Involved in the Aerosol Transmission of Infection and Control of Ventilation in Healthcare Premises; ''J. of Hospital Infection ''64, 100-114 (2006).
<div id="cite-99"></div>
'''[99]''' J.W. Tang, C.J. Noakes, P.V. Nielsen, I. Eames, A. Nicolle, Y. Li and G.S. Settles - Observing and Quantifying Airflows in the Infection Control of Aerosol- and Airborne-Transmitted Diseases: An Overview of Approaches; ''J. of Hospital Infection ''77 213-222 (2011).
<div id="cite-100"></div>
'''[[#citeF-100|[100]]]''' J.W. Tang, A.D. Nicolle, J. Pantelic, G.C. Koh, L. Wang, M. Amin, C.A. Klettner, D.K.W. Cheong, C. Sekhar and K.W. Tham - Airflow Dynamics of Coughing in Healthy Human Volunteers by Shadowgraph Imaging: An Aid to Aerosol Infection Control; ''PLoS ONE ''7, 4: e34818 (2012). doi:10.1371/journal.pone.0034818
<div id="cite-101"></div>
'''[[#citeF-101|[101]]]''' J.W. Tang, A.D. Nicolle, C.A. Klettner, J. Pantelic, L. Wang, A. Bin Suhaimi, A.Y.L. Tan, G.W.X. Ong, R. Su, C. Sekhar, D.K.W. Cheong and K.W. Tham - Airflow Dynamics of Human Jets: Sneezing and Breathing - Potential Sources of Infectious Aerosols; ''PLoS ONE ''8, 4: e59970 (2013). doi:10.1371/journal.pone.0059970
<div id="cite-102"></div>
'''[[#citeF-102|[102]]]''' P.F.M. Teunis, N. Brienen, M.E.E. Kretzschmar - High Infectivity and Pathogenicity of Influenza A Virus Via Aerosol and Droplet Transmission; ''Epidemics ''2, 215–222 (2010).
<div id="cite-103"></div>
'''[103]''' R. Tilch, A. Tabbal, M. Zhu, F. Decker and R. Löhner - Combination of Body-Fitted and Embedded Grids for External Vehicle Aerodynamics; ''Engineering Computations ''25, 1, 28-41 (2008).
<div id="cite-104"></div>
'''[[#citeF-104|[104]]]''' K. K.-W. To et al. - Temporal Profiles of Viral Load in Posterior Oropharyngeal Saliva Samples and Serum Antibody Responses During Infection by SARS-CoV-2: An Observational Cohort Study; ''Lancet Infect. Dis. '' (online) (2020). https://doi.org/10.1016/S1473-3099(20)30196-1
<div id="cite-105"></div>
'''[[#citeF-105|[105]]]''' F. Togashi, J.D. Baum, E. Mestreau, R. Löhner, and D. Sunshine; Numerical Modeling of Long-Duration Blast Wave Evolution in Confined Facilities; ''AIAA''-09-1531 (2009).
<div id="cite-106"></div>
'''[[#citeF-106|[106]]]''' N. van Doremalen, T. Bushmaker, D.H. Morris, M.G. Holbrook, A. Gamble, B.N. Williamson, A. Tamin, J.L. Harcourt, N.J. Thornburg, S.I. Gerber, J.O. Lloyd-Smith, E. de Wit, V.J. Munster - Aerosol and Surface Stability of SARS-CoV-2 as Compared with SARS-CoV-1; ''The New England Journal of Medicine ''382, 16, April 16 (2020). DOI: 10.1056/NEJMc2004973
<div id="cite-107"></div>
'''[107]''' A.W. Vreman, B.J. Geurts, N.G. Deen and J.A.M. Kuipers - Large-Eddy Simulation of a Particle Laden Turbulent Channel Flow; ''Proc. Direct and Large-Eddy Simulation V'', ERCOFTAC Series Volume 9, pp 271-278 (2004).
<div id="cite-108"></div>
'''[[#citeF-108|[108]]]''' J. Wei, Y. Li - Airborne Spread of Infectious Agents in the Indoor Environment; ''American J. of Infection Control ''44, S102-S108 (2016). http://dx.doi.org/10.1016/j.ajic.2016.06.003
<div id="cite-109"></div>
'''[[#citeF-109|[109]]]''' X. Xie, Y. Li, A.T.Y. Chwang, P.L. Ho, W.H. Seto - How Far Droplets Can Move in Indoor Environments - Revisiting the wells Evaporation-Falling Curve; ''Indoor Air ''17, 211-225 (2007). doi:10.1111/j.1600-0668.2006.00469.x
<div id="cite-110"></div>
'''[[#citeF-110|[110]]]''' T. Zhang, Q. Chen and C.-H. Lin - Optimal Sensor Placement for Airborne Contaminant Detection in an Aircraft Cabin; ''HVAC&R Research ''13, 5, 683-696 (2007).
<div id="cite-111"></div>
'''[111]''' Y. Zhang, G. Feng, Z. Kang, Y. Bi and Y. Cai - Numerical Simulation of Coughed Droplets in Conference Room; ''10th International Symposium on Heating, Ventilation and Air Conditioning, ISHVAC2017'', October, 19-22 Jinan, China (2017), ''Procedia Engineering ''205, 302–308 (2017).
Return to Lohner et al 2020b.
Published on 01/01/2020
DOI: 10.1007/s00466-020-01881-7
Licence: CC BY-NC-SA license
Are you one of the authors of this document?