cloudy  trunk
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
dynamics.h
Go to the documentation of this file.
1 /* This file is part of Cloudy and is copyright (C)1978-2022 by Gary J. Ferland and
2  * others. For conditions of distribution and use see copyright notice in license.txt */
3 
4 #ifndef DYNAMICS_H_
5 #define DYNAMICS_H_
6 
7 #include "module.h"
8 
10 void DynaIterStart(void);
11 
13 void DynaIterEnd(void);
14 
16 void DynaStartZone(void);
17 
19 void DynaEndZone(void);
20 
22 void DynaIonize(void);
23 
25 void DynaCreateArrays( void );
26 
30 class Parser;
31 void ParseDynaWind( Parser &p );
32 
36 void ParseDynaTime( Parser &p );
37 
39 void DynaPrtZone( void );
40 
45 void DynaSave(FILE* ipPnunit , char chJob );
46 
51 void DynaPunchTimeDep( FILE* ipPnunit , const char *chJob );
52 
53 realnum DynaFlux(double depth);
54 
56 struct t_dynamics : public module
57 {
58  const char *chName() const
59  {
60  return "dynamics";
61  }
62  void zero();
63  void comment(t_warnings&) {}
64 
67 
69  double Cool_r, Heat_v, dHeatdT;
70 
71  double Cool(), Heat(), dCooldT();
72 
74  double CoolMax, HeatMax;
75 
77  double Rate;
78 
80  double **Source /*[LIMELM][LIMELM+2]*/;
81 
83  double ***StatesElem;
84 
86  vector<double> molecules;
87 
89  bool lgISO[NISO];
90 
92  bool lgMETALS;
93 
95  bool lgCoolHeat;
96 
100 
103 
105  double time_elapsed;
106 
108  bool lgRecom;
109 
112 
115 
117  double FluxCenter;
118 
120  char chPresMode[20];
121 
123  double ShockDepth;
124 
127  double ShockMach;
128 
132  long int n_initial_relax;
133 
135  double FluxScale;
136 
139 
141  double FluxIndex;
142 
144  double dRad;
145 
147  double oldFullDepth;
148 
158  /* the error from comparing this iteration with the previous one */
160 
163 
166 
169 
173 
176 
178 
181 
182  /* set true with trace option on time command */
184 
185  /* initial timestep (seconds) read off time command,
186  * each iteration accounts for this much time */
188  timestep,
191 
192 
193 };
194 extern t_dynamics dynamics;
195 
196 #endif /* DYNAMICS_H_ */
void DynaPrtZone(void)
Definition: dynamics.cpp:2029
double FluxCenter
Definition: dynamics.h:117
double Cool()
Definition: dynamics.cpp:2207
void ParseDynaWind(Parser &p)
Definition: dynamics.cpp:1818
double convergence_tolerance
Definition: dynamics.h:162
void DynaIterEnd(void)
Definition: dynamics.cpp:856
vector< double > molecules
Definition: dynamics.h:86
void DynaCreateArrays(void)
Definition: dynamics.cpp:1400
const int NISO
Definition: cddefines.h:311
bool lgFluxDScale
Definition: dynamics.h:138
void DynaIterStart(void)
Definition: dynamics.cpp:2227
char chPresMode[20]
Definition: dynamics.h:120
void DynaSave(FILE *ipPnunit, char chJob)
Definition: dynamics.cpp:2168
bool lgMETALS
Definition: dynamics.h:92
bool lgAdvection
Definition: dynamics.h:66
bool lgTimeDependentStatic
Definition: dynamics.h:102
bool lgTracePrint
Definition: dynamics.h:183
double ShockMach
Definition: dynamics.h:127
void DynaStartZone(void)
Definition: dynamics.cpp:377
t_dynamics dynamics
Definition: dynamics.cpp:42
Definition: parser.h:43
bool lgISO[NISO]
Definition: dynamics.h:89
double FluxScale
Definition: dynamics.h:135
bool lgStatic_completed
Definition: dynamics.h:111
double error_scale2
Definition: dynamics.h:168
double Heat_v
Definition: dynamics.h:69
void DynaEndZone(void)
Definition: dynamics.cpp:835
double Heat()
Definition: dynamics.cpp:2193
double timestep_stop
Definition: dynamics.h:187
void zero()
Definition: dynamics.cpp:1320
realnum DynaFlux(double depth)
Definition: dynamics.cpp:1292
void DynaIonize(void)
Definition: dynamics.cpp:160
double timestep
Definition: dynamics.h:187
float realnum
Definition: cddefines.h:124
double dHeatdT
Definition: dynamics.h:69
bool lgEquilibrium
Definition: dynamics.h:180
double discretization_error
Definition: dynamics.h:165
void comment(t_warnings &)
Definition: dynamics.h:63
void ParseDynaTime(Parser &p)
Definition: dynamics.cpp:1671
double dRad
Definition: dynamics.h:144
double CoolMax
Definition: dynamics.h:74
double Cool_r
Definition: dynamics.h:69
double timestep_init
Definition: dynamics.h:187
bool lgSetPresMode
Definition: dynamics.h:172
double error_scale1
Definition: dynamics.h:168
double Rate
Definition: dynamics.h:77
const char * chName() const
Definition: dynamics.h:58
double AdvecLengthInit
Definition: dynamics.h:114
double dCooldT()
Definition: dynamics.cpp:2222
double *** StatesElem
Definition: dynamics.h:83
bool lgCoolHeat
Definition: dynamics.h:95
bool lgRecom
Definition: dynamics.h:108
double ** Source
Definition: dynamics.h:80
double ShockDepth
Definition: dynamics.h:123
double time_elapsed
Definition: dynamics.h:105
long int n_initial_relax
Definition: dynamics.h:132
void DynaPunchTimeDep(FILE *ipPnunit, const char *chJob)
Definition: dynamics.cpp:2059
realnum Upstream_density
Definition: dynamics.h:175
double timestep_factor
Definition: dynamics.h:187
double convergence_error
Definition: dynamics.h:159
Definition: module.h:26
double HeatMax
Definition: dynamics.h:74
double oldFullDepth
Definition: dynamics.h:147
bool lg_coronal_time_init
Definition: dynamics.h:99
double FluxIndex
Definition: dynamics.h:141
realnum DivergePresInteg
Definition: dynamics.h:177