Path: AerospaceUtils/AtmosphericCalculations

% NRLMSISE-00 Model 2001 for atmospheric density

 The NRLMSISE-00 model was developed by Mike Picone, Alan Hedin, and
 Doug Drob. They also wrote a NRLMSISE-00 distribution package in 
 FORTRAN which is available at
 This code is based on the C Code by Dominik Brodowski who implemented and
 maintains the C code. You can reach him at and check for updated releases
 of this package.

 You can input the ECI position vector or latitude, longitude and
 altitude. By default, all of the solar flux parameters are computed by
 SolarFluxPrediction, so you only need enter rECI and JD. To use specific
 flux data enter it using the variable arguments. Alternatively, you can
 enter latLonAlt and JD.

 Variable arguments:

   'f107a'           81 day average of F10.7 flux
   'f107'            Daily F10.7 flux for previous day
   'ap'              Geomagnetic index (daily)
   'ap_a'            Array of daily and hourly indices, (1,7)
   'units'           'mks' otherwise will be cgs
   'plot x value'    'orbit angle' 'time' 'sun angle' 'JD from Start'
                        'altitude' index'
   'flags'           24 switches
   'solar magnitude' 'prediction', 'low', 'high'

 Type AtmNRLMSISE for a demo in an ISS orbit.

 You can use the C interface by calling:

   output = AtmNRLMSISE( 'gtd7', [], input, flags )

 This is used in the script NRLMSISTest.m and reproduces the test case
 that accompanies the C software. Globals are loaded from NRLMSIS.mat.
    p = AtmNRLMSISE(rECI,jD,varargin)

   rECI      (3,:) ECI position vector (km)
   jD        (1,:) Julian day number
   input      (.)  Input data structure, C-interface
   flags    (1,24) Flags, C-interface

   pOut      (.) Output data structure       
                 .heNumberDensity    (1,:) He number density
                 .oNumberDensity     (1,:) O number density
                 .n2NumberDensity    (1,:) N2 number density
                 .o2NumberDensity    (1,:) O2 number density
                 .arNumberDensity    (1,:) AR number density
                 .density            (1,:) Density
                 .hNumberDensity   	(1,:) H number density
                 .nNumberDensity   	(1,:) N number density
                 .anomONumberDensity	(1,:) Anomalous O number density
                 .exoTemp           	(1,:) Exoatmospheric temperature
                 .temperature      	(1,:) Temperature
                 .latitude         	(1,:) Latitude (rad)
                 .longitude        	(1,:) Longitude (Rad)
                 .altitude         	(1,:) Altitude (km)
   qOut     (.) Alternative output  data structure  
                 .d (10,:) Densities
                 .t (2,:) Temperatures

 See also SolarFluxPrediction, ECIToEF


AerospaceUtils: AeroData/NRLMSIS
AerospaceUtils: AtmosphericCalculations/LocalSolarTime
AerospaceUtils: Coord/ECIToEF
AerospaceUtils: Coord/EFToLatLonAlt
Orbit: OrbitMechanics/RVOrbGen
SC: Environs/SolarFluxPrediction
SCPro: MannedVehicle/ISSOrbit
SCPro: ProEnvirons/SolarFluxHistorical
Common: Graphics/Plot2D
Common: Graphics/TimeLabl
Common: Time/JD2DN
Common: Time/JD2Date
Common: Time/JD2T

Back to the AerospaceUtils Module page