00001
00002
00003
00004 #ifndef DYNAMICS_H_
00005 #define DYNAMICS_H_
00006
00008 void DynaIterStart(void);
00009
00011 void DynaIterEnd(void);
00012
00014 void DynaStartZone(void);
00015
00017 void DynaEndZone(void);
00018
00020 void DynaIonize(void);
00021
00023 void DynaZero( void );
00024
00026 void DynaCreateArrays( void );
00027
00031 class Parser;
00032 void ParseDynaWind( Parser &p );
00033
00037 void ParseDynaTime( Parser &p );
00038
00040 void DynaPrtZone( void );
00041
00046 void DynaSave(FILE* ipPnunit , char chJob );
00047
00052 void DynaPunchTimeDep( FILE* ipPnunit , const char *chJob );
00053
00054 realnum DynaFlux(double depth);
00055
00057 struct t_dynamics
00058 {
00060 bool lgAdvection;
00061
00063 double Cool_r, Heat_v, dHeatdT;
00064
00065 double Cool(), Heat(), dCooldT();
00066
00068 double CoolMax, HeatMax;
00069
00071 double Rate;
00072
00074 double **Source ;
00075
00077 double ***StatesElem;
00078
00080 double *molecules;
00081
00083 bool lgISO[NISO];
00084
00086 bool lgMETALS;
00087
00089 bool lgCoolHeat;
00090
00093 bool lg_coronal_time_init;
00094
00096 bool lgTimeDependentStatic;
00097
00099 double time_elapsed;
00100
00102 bool lgRecom;
00103
00105 bool lgStatic_completed;
00106
00108 double AdvecLengthInit;
00109
00111 double FluxCenter;
00112
00114 char chPresMode[20];
00115
00117 double ShockDepth;
00118
00121 double ShockMach;
00122
00126 long int n_initial_relax;
00127
00129 double FluxScale;
00130
00132 bool lgFluxDScale;
00133
00135 double FluxIndex;
00136
00138 double dRad;
00139
00141 double oldFullDepth;
00142
00152
00153 double convergence_error;
00154
00156 double convergence_tolerance;
00157
00159 double discretization_error;
00160
00162 double error_scale1 , error_scale2;
00163
00166 bool lgSetPresMode;
00167
00169 realnum Upstream_density;
00170
00171 realnum DivergePresInteg;
00172
00174 bool lgEquilibrium;
00175
00176
00177 bool lgTracePrint;
00178
00179
00180
00181 double timestep_init,
00182 timestep,
00183 timestep_stop,
00184 timestep_factor;
00185
00186
00187 };
00188 extern t_dynamics dynamics;
00189
00190 #endif