123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- #ifndef ATMOSPHERIC_MODEL_H
- #define ATMOSPHERIC_MODEL_H
- /* **********************************************************************c */
- /* idatm atmospheric model c */
- /* -------------------- c */
- /* c */
- /* c */
- /* you select one of the following standard atmosphere: idatm=0 to 6 c */
- /* 0 no gaseous absorption c */
- /* 1 tropical ) c */
- /* 2 midlatitude summer ) c */
- /* 3 midlatitude winter ) c */
- /* 4 subarctic summer ) from lowtran c */
- /* 5 subarctic winter ) c */
- /* 6 us standard 62 ) c */
- /* c */
- /* or you define your own atmospheric model idatm=7 or 8 c */
- /* 7 user profile (radiosonde data on 34 levels) c */
- /* enter altitude ( in km ) c */
- /* pressure ( in mb ) c */
- /* temperature ( in k ) c */
- /* h2o density (in g/m3) c */
- /* o3 density (in g/m3) c */
- /* c */
- /* for example, altitudes are from 0 to 25km step of 1km c */
- /* from 25 to 50km step of 5km c */
- /* and two values at 70km and 100km c */
- /* so you have 34*5 values to input. c */
- /* 8 enter water vapor and ozone contents c */
- /* uw (in g/cm2 ) c */
- /* uo3 (in cm-atm) c */
- /* profil is taken from us62 c */
- /* c */
- /* **********************************************************************c */
- struct AtmosModel
- {
- long int idatm; /* atmospheric model*/
- /* secondary */
- float uw;
- float uo3;
- /* primary */
- float z[34];
- float p[34];
- float t[34];
- float wh[34];
- float wo[34];
- private:
- /* methods to initialize each model */
- void us62();
- void tropic();
- void midsum();
- void midwin();
- void subsum();
- void subwin();
- void parse();
- public:
- void print();
- static AtmosModel Parse();
- };
- #endif /* ATMOSPHERIC_MODEL_H */
|