diff options
Diffstat (limited to 'DOCUMENTATION')
-rw-r--r-- | DOCUMENTATION | 250 |
1 files changed, 250 insertions, 0 deletions
diff --git a/DOCUMENTATION b/DOCUMENTATION new file mode 100644 index 0000000..5562a2c --- /dev/null +++ b/DOCUMENTATION @@ -0,0 +1,250 @@ +-------------------------------------------------------------------- +--------- N R L M S I S E - 0 0 M O D E L 2 0 0 1 ---------- +-------------------------------------------------------------------- + + +Table of Contents +----------------- + +1. Legal Information +2. Brief Description +3. Source Code Availability +4. This C Release + 4.1 Files + 4.2 Differences between FORTRAN and C version +5. Interface +6. Release Notes +7. Testing Output + + + +1. LEGAL INFORMATION +==================== + +This package is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Please inform the +maintainer of the C release (Dominik Brodowski - devel@brodo.de) of +any patches and bug-fixes you implement for NRLMSISE-00 so that this C +package can be updated with these improvements. + + + +2. BRIEF DESCRIPTION +==================== + +The NRLMSIS-00 empirical atmosphere model was developed by Mike +Picone, Alan Hedin, and Doug Drob based on the MSISE90 model. + +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. For someone interested only in the +thermosphere (above 120 km), the author recommends the MSIS-86 +model. MSISE is also not the model of preference for specialized +tropospheric work. It is rather for studies that reach across several +atmospheric boundaries. +(quoted from http://nssdc.gsfc.nasa.gov/space/model/atmos/nrlmsise00.html) + + + +3. SOURCE CODE AVAILABILITY +=========================== + +The authors of the NRLMSISE-00 model have released a FORTRAN version +which is available at +http://uap-www.nrl.navy.mil/models_web/msis/msis_home.htm + +Based on the Official Beta Release 1.0 (NRLMSISE-00.DIST12.TXT) +Dominik Brodowski wrote an implementation in C which is available on +http://www.brodo.de/english/pub/nrlmsise/ +Please check for updates often during the next weeks, since the C +package probably has some bugs. Additionally, some modifications +to the NRLMSISE-00 FORTRAN package will be published soon, and I'll +try to update the C package accordingly within a few days. + + + +4. THIS C RELEASE +================= + +When "INLINE" is not externally defined the source code should be +clean, plain ANSI which any C compiler should be able to work with. If +you find any problems, please report them to the maintainer Dominik +Brodowski at devel@brodo.de. Thank you! + + +4.1 Files +--------- + +DOCUMENTATION - this Documentation +nrlmsise-00.h - header file for nrlmsise-00 +nrlmsise-00.c - source code for nrlmsise-00 +nrlmsise-00_data.c - block data for nrlmsise-00 +nrlmsise-00_test.c - test-driver for nrlmsise-00 +makefile - makefile for nrlmsise-test (gnu-make and gcc) + + +4.2 Differences between FORTRAN and C version +--------------------------------------------- + +The C package does not save the last results internally to speed up +program execution as the FORTRAN version does. + +The "switches" have to be specified before _every_ call. + +The "DL" array is not printed in the testing routine since it's not an +output value. + +The C version probably contains some bugs and still has to be regarded +more unstable than the FORTRAN relase. Please report any bugs or +incorrect values to the maintainer at devel@brodo.de + + + +5. INTERFACE +============ + +To access the NRLMSISE-00 functions you need to include the header +file nrlmsise-00.h. In this file you can find comments which explain +the in- and output, and the differences between the various functions. + + + +6. RELEASE NOTES +================ + +20020302 - first release + + + +7. TESTING OUTPUT +================= + +nrlmsise-test should generate the following output: + + +6.665177E+05 1.138806E+08 1.998211E+07 3.964051E+05 3.557465E+03 4.074402E-15 3.475312E+04 4.095913E+06 2.667273E+04 1.250540E+03 1.241416E+03 + +3.407293E+06 1.586333E+08 1.391117E+07 3.214942E+05 1.559618E+03 5.001593E-15 4.854208E+04 4.380967E+06 6.956682E+03 1.166754E+03 1.161710E+03 + +1.123767E+05 6.934130E+04 4.247105E+01 1.303616E-01 2.618848E-05 2.756772E-18 2.016750E+04 5.741256E+03 2.374394E+04 1.239892E+03 1.239891E+03 + +7.078194E+07 1.946309E+11 6.115826E+12 1.183637E+12 6.023212E+10 3.563077E-10 1.059880E+07 2.615737E+05 2.819879E-42 1.027318E+03 2.068878E+02 + +1.851122E+06 1.476555E+08 1.579356E+07 2.595354E+05 1.588781E+03 4.809426E-15 5.816167E+04 5.478984E+06 1.264446E+03 1.212396E+03 1.208135E+03 + +8.673095E+05 1.278862E+08 1.822577E+07 2.879564E+05 2.402962E+03 4.355639E-15 3.686389E+04 3.897276E+06 2.667273E+04 1.220146E+03 1.212712E+03 + +5.776251E+05 6.979139E+07 1.236814E+07 2.456484E+05 1.405739E+03 2.470458E-15 5.291986E+04 1.069814E+06 2.667273E+04 1.116385E+03 1.112999E+03 + +3.740304E+05 4.782720E+07 5.240380E+06 1.711538E+05 5.501649E+02 1.571632E-15 8.896776E+04 1.979741E+06 9.121815E+03 1.031247E+03 1.024848E+03 + +6.748339E+05 1.245315E+08 2.369010E+07 4.839898E+05 4.578781E+03 4.564039E-15 3.244595E+04 5.370833E+06 2.667273E+04 1.306052E+03 1.293374E+03 + +5.528601E+05 1.198041E+08 3.495798E+07 9.203305E+05 1.096255E+04 4.973819E-15 2.686428E+04 4.889974E+06 2.805445E+04 1.361868E+03 1.347389E+03 + +1.375488E+14 0.000000E+00 2.049687E+19 5.498695E+18 2.451733E+17 1.261066E-03 0.000000E+00 0.000000E+00 0.000000E+00 1.027318E+03 2.814648E+02 + +4.427443E+13 0.000000E+00 6.597567E+18 1.769929E+18 7.891680E+16 4.059139E-04 0.000000E+00 0.000000E+00 0.000000E+00 1.027318E+03 2.274180E+02 + +2.127829E+12 0.000000E+00 3.170791E+17 8.506280E+16 3.792741E+15 1.950822E-05 0.000000E+00 0.000000E+00 0.000000E+00 1.027318E+03 2.374389E+02 + +1.412184E+11 0.000000E+00 2.104370E+16 5.645392E+15 2.517142E+14 1.294709E-06 0.000000E+00 0.000000E+00 0.000000E+00 1.027318E+03 2.795551E+02 + +1.261027E+10 0.000000E+00 1.874533E+15 4.809049E+14 2.239685E+13 1.141612E-07 0.000000E+00 0.000000E+00 0.000000E+00 1.027318E+03 2.190732E+02 + +5.196477E+05 1.274494E+08 4.850450E+07 1.695722E+06 2.354487E+04 5.880606E-15 2.500078E+04 6.279210E+06 2.667273E+04 1.426412E+03 1.408608E+03 + +5.673929E+07 1.259077E+11 4.929562E+12 1.021646E+12 4.993465E+10 2.900560E-10 8.831229E+06 2.252516E+05 2.415246E-42 1.027318E+03 1.934071E+02 + + +DAY 172 81 172 172 172 +UT 29000 29000 75000 29000 29000 +ALT 400 400 1000 100 400 +LAT 60 60 60 60 0 +LONG -70 -70 -70 -70 -70 +LST 16 16 16 16 16 +F107A 150 150 150 150 150 +F107 150 150 150 150 150 + + +TINF 1250.54 1166.75 1239.89 1027.32 1212.40 +TG 1241.42 1161.71 1239.89 206.89 1208.14 +HE 6.665e+05 3.407e+06 1.124e+05 7.078e+07 1.851e+06 +O 1.139e+08 1.586e+08 6.934e+04 1.946e+11 1.477e+08 +N2 1.998e+07 1.391e+07 4.247e+01 6.116e+12 1.579e+07 +O2 3.964e+05 3.215e+05 1.304e-01 1.184e+12 2.595e+05 +AR 3.557e+03 1.560e+03 2.619e-05 6.023e+10 1.589e+03 +H 3.475e+04 4.854e+04 2.017e+04 1.060e+07 5.816e+04 +N 4.096e+06 4.381e+06 5.741e+03 2.616e+05 5.479e+06 +ANM 0 2.667e+04 6.957e+03 2.374e+04 2.820e-42 1.264e+03 +RHO 4.074e-15 5.002e-15 2.757e-18 3.563e-10 4.809e-15 + + +DAY 172 172 172 172 172 +UT 29000 29000 29000 29000 29000 +ALT 400 400 400 400 400 +LAT 60 60 60 60 60 +LONG 0 -70 -70 -70 -70 +LST 16 4 16 16 16 +F107A 150 150 70 150 150 +F107 150 150 150 180 150 + + +TINF 1220.15 1116.39 1031.25 1306.05 1361.87 +TG 1212.71 1113.00 1024.85 1293.37 1347.39 +HE 8.673e+05 5.776e+05 3.740e+05 6.748e+05 5.529e+05 +O 1.279e+08 6.979e+07 4.783e+07 1.245e+08 1.198e+08 +N2 1.823e+07 1.237e+07 5.240e+06 2.369e+07 3.496e+07 +O2 2.880e+05 2.456e+05 1.712e+05 4.840e+05 9.203e+05 +AR 2.403e+03 1.406e+03 5.502e+02 4.579e+03 1.096e+04 +H 3.686e+04 5.292e+04 8.897e+04 3.245e+04 2.686e+04 +N 3.897e+06 1.070e+06 1.980e+06 5.371e+06 4.890e+06 +ANM 0 2.667e+04 2.667e+04 9.122e+03 2.667e+04 2.805e+04 +RHO 4.356e-15 2.470e-15 1.572e-15 4.564e-15 4.974e-15 + + +DAY 172 172 172 172 172 +UT 29000 29000 29000 29000 29000 +ALT 0 10 30 50 70 +LAT 60 60 60 60 60 +LONG -70 -70 -70 -70 -70 +LST 16 16 16 16 16 +F107A 150 150 150 150 150 +F107 150 150 150 150 150 + + +TINF 1027.32 1027.32 1027.32 1027.32 1027.32 +TG 281.46 227.42 237.44 279.56 219.07 +HE 1.375e+14 4.427e+13 2.128e+12 1.412e+11 1.261e+10 +O 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00 +N2 2.050e+19 6.598e+18 3.171e+17 2.104e+16 1.875e+15 +O2 5.499e+18 1.770e+18 8.506e+16 5.645e+15 4.809e+14 +AR 2.452e+17 7.892e+16 3.793e+15 2.517e+14 2.240e+13 +H 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00 +N 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00 +ANM 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00 +RHO 1.261e-03 4.059e-04 1.951e-05 1.295e-06 1.142e-07 + + +Note: These values equal those of the official FORTRAN package with +one notable exception: the FORTRAN version reports for "anomalous +oxygen" in test-runs 4 and 17 exactly 0.000E-00, while my C compiler +generates code which calculates 2.820e-42. When only 16-bit wide +double variables are used, this value reduces to 0.000E-00 as well. + + + +======================================================== + +Rosenheim, Germany, on March 5th, 2002 + +Dominik Brodowski |