Negative and positive pressure rooms CFD simulation

Negative and positive pressure room CFD simulation

A CFD analysis of the interaction between a positive pressure room and a negative pressure room on a typical hospital floor is presented. A negative pressure room is designed to prevent a contaminant from spreading to other parts of the building by having only flow coming into the room when the door is open. A positive pressure room does exactly the opposite by protecting the room from any external contaminants maintaining a flow of air going outside the room, read the article about negative and positive pressure rooms to find more info.

negative pressure room CFD simulation
SimWorks CFD simulation of an hospital floorplan showing in black the confinement of the infection in the negative pressure room

In this tutorial, we will carry out a CFD simulation of a hospital floor, with a positive pressure room and a negative pressure room. The positive pressure room is used a a waiting room for visitors and the negative pressure room is used as an emergency department room where infectious patients are located. A patient is placed in a bed at the centre of the negative pressure room and the potential contaminant is simulated by injecting in the room a passive scalar with the same speed of an average person breathing. The two rooms are divided by a corridor and an anteroom that is located in front of the negative pressure room and is used as a changing room. In this model, we simulate the worst possible conditions when all the doors are opened at the same time to show that the main airflow will move from the positive pressure room to the negative one and no contaminants will leave the emergency department room, this way the the risk of airborne disease transmission is minimised.

Before continuing this tutorial, we suggest to read and complete the tutorial on the simplified model of the negative pressure room which form the basis for this more advanced tutorial. 

Before starting the tutorial download SimWorks Manager, validate your 14-day free trial contacting us and download the tutorial geometry:

Load the file

The following steps are the same as the tutorial of the negative pressure room.

  1. Define a new simulation and load the igs file with the same procedure carried out for previous tutorials
  2. Hide the Roof object and define the point in mesh with coordinates 4, 4, 1.5 and its size to 0.25 (again the point size is purely for visualisation intents)
  3. Define a mesh base size of 0.25 and reduce the Surface mesh 7 refinement level to 2

Base setup

  1. Activate the Buoyancy option in the Thermal field in the Setup Define the Reference temperature as 298.15 K (25°).
  2. In the Setup tab, enable the passive scalar option and leave unchanged the name of the variable as passive scalar  
  3. Set the Number of processes to 4 and the End iteration to 1000

Boundary conditions definition

To simulate the effect of opening the doors and subsequent loss of pressure difference, in this case we will reduce the constant pressure difference in the negative pressure room to -5 Pa and in the positive pressure room to +5 Pa with respect to the environment pressure, while in the previous example the difference was +10 Pa. In this case, we will also define a passive scalar to simulate the dispersion of an infectious disease in the negative pressure room and verify that the infection does not exit the room when all the doors are open.

  1. Define a part new group with all the Outlets of the negative pressure room (select NegativePressureRoomOutlet_1 and NegativePressureRoomOutlet_2 from the Parts drop-down menu and press the Create new part group icon) and assign them a Pressure Outlet boundary condition with pressure -5.0 Pa
  2. Do the same with the Inlets of the positive pressure room and assign them a Pressure Inlet boundary condition with a temperature of 288.15 K (15° C) and 0 value for the passive scalar
  3. Define a Volumetric Flow Rate of +0.1 (m3/s) with a temperature of 288.15 K (15° C) for the inlet in the negative pressure room and set the passive scalar to 0
  4. Define a Volumetric Flow Rate of -0.05 (m3/s) for the outlet in the positive pressure room
  5. Define a constant temperature of 293.15 K (25° C) for the Walls group
  6. In the same manner as done in the previous steps, please define a Volumetric Flow Rate of +0.00014 (m3/s) for the Patient patch with a passive scalar value of 1.0 and a temperature of 308.15 K (35° C).  The volumetric flow rate is estimated considering that an average person exhales 15-18 times per minute, for a total exchange of 0.5 m3/h. This boundary condition models the injection of an infectious disease in the negative pressure room.

Output definition and running phase

The output sections (planes) number and positions and the relevant output fields are defined in the Output tab in the Simulation editor window

  1. Make sure that all the relevant output fields are ticked: U, p, T and passive_scalar
  2. Also set 30 output planes between xmin=-10 m and xmax=+10 m, do the same for the y direction and set 30 planes normal to the z direction between zmin=0 m and zmax=3 m.
  3. As usual, execute the Setup, Mesh and Run phases. See in the previous tutorials how to check the mesh quality


Once the simulation is completed, as shown in previous tutorials, right click on the simulation in the Simulation Manager tree and select Field –> Load to load  the results in the Field viewer. To visualise the main flow patters, select the velocity field U and look at one plane normal to Z. As shown in the figure below, the main airflow is moving from the positive pressure room to the negative pressure room.

It is possible to look at the pressure distribution by selecting p_rgh (which is the absolute pressure and takes into account the gravitational effect) and defining the min value to 101327 Pa and max value to 101300 Pa. The positive pressure room maintains an over-pressure of roughly 3 Pa over the negative pressure room. This positive pressure gradient drives the flow in the desired direction.

Now looking at the passive_scalar (min value 0 and max value 0.001), in the negative pressure room we can see that the contaminant is only placed inside the room and does not exit from the entrance door. Thanks to the flow entering the room (1), the contaminant is stagnating around the source and it remains contained within the room (2). The concentration (passive_scalar value) remains 0 in every point outside of the negative pressure room.

Finally, let’s visualise the effect of the inlet positions on the overall temperature distribution in the different rooms.

  1. Select the variable T and set the range from 289 K to 293 K. Define the most relevant view for your analysis. In the figure below we have activated a section normal to z and a section normal to y
  2. Create a square sampling area on top of the patient to visualise the min, max and average value 
  3. You can now see the min, max and average values of temperature in the portion of plane selected

The average temperature around the patient is about 293 K (20 degrees Celsius) while  the temperature in the positive pressure room (waiting room) is around 290 K (that is 17 degrees Celsius). As the latter is probably too cold for human comfort, you can vary the inlet air temperature and volumetric flow rate to try to improve the temperature distribution.


The main flow is moving from the positive pressure room to the corridor and finally to the negative pressure room. Even if the flow velocity is very low in certain zones, the whole system is very effective in preventing any contaminants (in this case simulated with a passive scalar) from leaving the protected negative pressure room. This makes negative pressure rooms particularly attractive to contain highly infectious diseases like the Covid-19. The passive scalar is an effective way of tracing contaminated flow and its distribution inside an environment. It is also possible to check the contaminant concentration in each point of the space and assess whether its values are critical or not (see the article about the CFD infection simulation for more info).

Finally SimWorks automatically recognises the main geometrical features of a new design iteration and applies the same boundary conditions on each geometrical part with the same name. Using this feature, it is possible to quickly iterate between design changes of the inlets and or outlets positions and geometries.


The results and the description provided above where defined to describe physical behaviours under certain circumstances. They should not be considered a medical guidance and do not account for environmental variants such as humidity or wind.

Download SimWorks and activate a free 14-day trial or contact us to find out more