Cloudy
Spectral Synthesis Code for Astrophysics
Loading...
Searching...
No Matches
dynamics.h
Go to the documentation of this file.
1/* This file is part of Cloudy and is copyright (C)1978-2025 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#include "container_classes.h"
9
11void DynaIterStart(void);
12
14void DynaIterEnd(void);
15
17void DynaStartZone(void);
18
20void DynaEndZone(void);
21
23void DynaIonize(void);
24
26void DynaCreateArrays( void );
27
31class Parser;
32void ParseDynaWind( Parser &p );
33
37void ParseDynaTime( Parser &p );
38
40void DynaPrtZone( void );
41
46void DynaSave(FILE* ipPnunit , char chJob );
47
52void DynaPunchTimeDep( FILE* ipPnunit , const char *chJob );
53
54realnum DynaFlux(double depth);
55
57struct t_dynamics : public module
58{
59 const char *chName() const
60 {
61 return "dynamics";
62 }
63 void zero();
65
77 bool isInitialRelaxIteration( long int iteration );
78
79 bool doNonEquilibriumSolve( long int iteration );
80
81
84
87
88 double Cool(), Heat(), dCooldT();
89
92
94 double Rate;
95
98
101
103 vector<double> molecules;
104
106 bool lgISO[NISO];
107
110
113
117
120
123
126
129
132
135
137 char chPresMode[20];
138
141
144 double ShockMach;
145
150
152 double FluxScale;
153
156
158 double FluxIndex;
159
161 double dRad;
162
165
175 /* the error from comparing this iteration with the previous one */
177
180
183
186
190
193
195
198
199 /* set true with trace option on time command */
201
202 /* initial timestep (seconds) read off time command,
203 * each iteration accounts for this much time */
208};
209extern t_dynamics dynamics;
210
211#endif /* DYNAMICS_H_ */
long int iteration
Definition cddefines.cpp:17
const int NISO
Definition cddefines.h:321
float realnum
Definition cddefines.h:127
Definition parser.h:43
module()
Definition module.h:29
Definition container_classes.h:916
Definition warnings.h:11
t_dynamics dynamics
Definition dynamics.cpp:45
void DynaIterEnd(void)
Definition dynamics.cpp:988
void ParseDynaWind(Parser &p)
Definition dynamics.cpp:1863
void ParseDynaTime(Parser &p)
Definition dynamics.cpp:1716
void DynaSave(FILE *ipPnunit, char chJob)
Definition dynamics.cpp:2213
void DynaIterStart(void)
Definition dynamics.cpp:2272
void DynaPunchTimeDep(FILE *ipPnunit, const char *chJob)
Definition dynamics.cpp:2104
realnum DynaFlux(double depth)
Definition dynamics.cpp:1423
void DynaPrtZone(void)
Definition dynamics.cpp:2074
void DynaIonize(void)
Definition dynamics.cpp:295
void DynaCreateArrays(void)
Definition dynamics.cpp:1531
void DynaEndZone(void)
Definition dynamics.cpp:967
void DynaStartZone(void)
Definition dynamics.cpp:512
Definition dynamics.h:58
void comment(t_warnings &)
Definition dynamics.h:64
long int n_initial_relax
Definition dynamics.h:149
vector< double > molecules
Definition dynamics.h:103
double timestep_stop
Definition dynamics.h:206
double AdvecLengthInit
Definition dynamics.h:131
realnum Upstream_density
Definition dynamics.h:192
double FluxCenter
Definition dynamics.h:134
double discretization_error
Definition dynamics.h:182
bool lg_coronal_time_init
Definition dynamics.h:116
double convergence_tolerance
Definition dynamics.h:179
double FluxScale
Definition dynamics.h:152
bool doNonEquilibriumSolve(long int iteration)
Definition dynamics.cpp:57
double error_scale1
Definition dynamics.h:185
void zero()
Definition dynamics.cpp:1451
const char * chName() const
Definition dynamics.h:59
double timestep
Definition dynamics.h:205
double timestep_factor
Definition dynamics.h:207
double Cool()
Definition dynamics.cpp:2252
char chPresMode[20]
Definition dynamics.h:137
bool lgTracePrint
Definition dynamics.h:200
bool lgTimeDependentStatic
Definition dynamics.h:119
bool lgRecom
Definition dynamics.h:125
realnum DivergePresInteg
Definition dynamics.h:194
double ShockDepth
Definition dynamics.h:140
double dCooldT()
Definition dynamics.cpp:2267
double FluxIndex
Definition dynamics.h:158
double dRad
Definition dynamics.h:161
double CoolMax
Definition dynamics.h:91
double Cool_r
Definition dynamics.h:86
double convergence_error
Definition dynamics.h:176
double ShockMach
Definition dynamics.h:144
double HeatMax
Definition dynamics.h:91
multi_arr< double, 2 > Source
Definition dynamics.h:97
bool lgISO[NISO]
Definition dynamics.h:106
double Heat_v
Definition dynamics.h:86
bool lgSetPresMode
Definition dynamics.h:189
double Rate
Definition dynamics.h:94
double Heat()
Definition dynamics.cpp:2238
multi_arr< double, 3 > StatesElem
Definition dynamics.h:100
double oldFullDepth
Definition dynamics.h:164
bool lgAdvection
Definition dynamics.h:83
double time_elapsed
Definition dynamics.h:122
bool isInitialRelaxIteration(long int iteration)
isInitialRelaxIteration - Check if initial iteration
Definition dynamics.cpp:48
double timestep_init
Definition dynamics.h:204
bool lgEquilibrium
Definition dynamics.h:197
bool lgFluxDScale
Definition dynamics.h:155
bool lgStatic_completed
Definition dynamics.h:128
double dHeatdT
Definition dynamics.h:86
bool lgCoolHeat
Definition dynamics.h:112
double error_scale2
Definition dynamics.h:185
bool lgMETALS
Definition dynamics.h:109