The NRLMSIS-00 empirical atmosphere model was developed by Mike Picone, Alan Hedin, and Doug Drob based on the MSISE90 model. The main differences to MSISE90 are noted in the comments at the top of the computer code. They involve (1) the extensive use of drag and accelerometer data on total mass density, (2) the addition of a component to the total mass density that accounts for possibly significant contributions of O+ and hot oxygen at altitudes above 500 km, and (3) the inclusion of the SMM UV occultation data on [O2].
The MSISE90 model describes the neutral temperature and densities in Earth's atmosphere from ground to thermospheric heights. Below 72.5 km the model is primarily based on the MAP Handbook (Labitzke et al., 1985) tabulation of zonal average temperature and pressure by Barnett and Corney, which was also used for the CIRA-86. Below 20 km these data were supplemented with averages from the National Meteorological Center (NMC). In addition, pitot tube, falling sphere, and grenade sounder rocket measurements from 1947 to 1972 were taken into consideration. Above 72.5 km MSISE-90 is essentially a revised MSIS-86 model taking into account data derived from space shuttle flights and newer incoherent scatter results.
K. Labitzke, J. J. Barnett, and B. Edwards (eds.), Handbook MAP 16, SCOSTEP, University of Illinois, Urbana, 1985.
A. E. Hedin, Extension of the MSIS Thermospheric Model into the Middle and Lower Atmosphere, J. Geophys. Res. 96, 1159, 1991.
J.M. Picone, A.E. Hedin, D.P. Drob, and A.C. Aikin, NRLMSISE-00 empirical model of the atmosphere: Statistical comparisons and scientific issues, J. Geophys. Res., 107(A12), 1468, doi:10.1029/2002JA009430, 2002.
Meysam Mahooti (2019). NRLMSISE-00 Atmosphere Model (https://www.mathworks.com/matlabcentral/fileexchange/56253-nrlmsise-00-atmosphere-model), MATLAB Central File Exchange. Retrieved .
Hi! I am not sure if I discovered an little problem in the code, or if this is a fix from the FORTRAN version of MSIS. In the function GTS7 we have:
% Chemistry correction
hcc01 = pdm(6,8)*pdl(1,20);
zcc01 = pdm(6,7)*pdl(2,19);
rc01 = pdm(6,4)*pdl(2,21);
However, looking at the FORTRAN version it seems that the first line should be:
hcc01 = pdm(6,8)*pdl(2,20);
On line 1471 of nrlmsise00.m, hcc01 = pdm(6,8)*pdl(1,20); is replaced by hcc01 = pdm(6,8)*pdl(2,20);
The image is added.