No License

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Highlights from
Air density calculation

4.0 | 7 ratings Rate this file 14 Downloads (last 30 days) File Size: 2.74 KB File ID: #12565 Version: 1.0

Air density calculation



06 Oct 2006 (Updated )

This function calculates the density of the air

| Watch this File

File Information

This function calculates the air-density based on the papers:

1)'Equation for the Determination of the Density of Moist Air'
P.Giacomo, Metrologia 18, 33-40 (1982)

2)'Equation for the Determination of the Density of Moist Air'
R.S. Davis Metrologia 29, 67-70 (1992)

   t = ambient temperature (ºC)
  hr = relative humidity [%]
   p = ambient pressure [Pa]

ver 1.0
06/10/2006 Jose Luis Prego Borges
Sensor & System Group, Universitat Politecnica de Catalunya, Spain

MATLAB release MATLAB 6.5 (R13)
Other requirements matlab 6.5
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (10)
08 Jul 2016 Diego Fraguas Tejero

21 Feb 2012 Kim DiGiovanni

Excellent! Easy to use and well developed and cited!

Comment only
21 Feb 2012 Kim DiGiovanni

26 Jan 2012 Olfert

Olfert (view profile)

missing the temperature and pressure limitations for this function?

I tried to use it to get air density in a simulation of a combustion engine with 1>=hr>=0, but it seems that after 3.5e6Pa and 1500K the function doesn't work. It returns negatives densities. I guess thats the limitations, just so it is here.

other wise great function :D

Comment only
18 Aug 2008 riva wahyudi

good for reference tehnical specification

18 Aug 2008 riva wahyudi


23 Nov 2007 paramust juntarakod

thank you for your work

Comment only
22 Jun 2007 Niclas -

Good work! Although the difference is minor, the correct conversion between degrees Celsius and Kelvin is:

t90 / °C = T90/K - 273.15

Check the ITS-90 page on:

Best regards,

25 Dec 2006 Nanthakarn Udomputtisit

10 Oct 2006 Jos x

Why not vectorize it so you can put in a list of numbers? (simply use .* instead of * etc.)
Why is f0 in the argument list?
The help should mention what "ro" is and in what units it is expressed.
End the calculations with a semi-colon to suppress the display.
For some (most) values ro is negative? Can that be true?
You should check for unphysical inputs (e.g., hr>100%).

Contact us