HARM
harm and utilities
 All Data Structures Files Functions Variables Typedefs Macros Pages
eos.funcdeclare.h
Go to the documentation of this file.
1 
7 
8 //
9 // some useful wrappers for user simplicity:
10 //
12 extern FTYPE pressure_rho0_u_simple(int i, int j, int k, int loc, FTYPE rho, FTYPE u);
13 extern FTYPE pressure_rho0_u_simple_forcheckinversion(int i, int j, int k, int loc, FTYPE rho, FTYPE u);
14 extern FTYPE u_rho0_p_simple(int i, int j, int k, int loc, FTYPE rho, FTYPE p);
15 extern FTYPE u_rho0_T_simple(int i, int j, int k, int loc, FTYPE rho, FTYPE T);
16 extern FTYPE cs2_compute_simple(int i, int j, int k, int loc, FTYPE rho, FTYPE u);
17 extern FTYPE compute_entropy_simple(int i, int j, int k, int loc, FTYPE rho, FTYPE u);
18 extern FTYPE compute_entropy_simple_forcheckinversion(int i, int j, int k, int loc, FTYPE rho, FTYPE u);
19 extern void get_EOS_parms_simple(int*numparms, int i, int j, int k, int loc, FTYPE *parlist);
20 extern void fix_primitive_eos_scalars_simple(int i, int j, int k, int loc, FTYPE *pr);
21 
22 
23 extern void yl2advect_kazfull(FTYPE *EOSextra, FTYPE pryl, FTYPE prynu, FTYPE *prforadvect);
24 extern void ynu2advect_kazfull(FTYPE *EOSextra, FTYPE pryl, FTYPE prynu, FTYPE *prforadvect);
25 
26 extern void advect2yl_kazfull(FTYPE *EOSextra, FTYPE ylforadvect, FTYPE ynuforadvect, FTYPE *ye);
27 extern void advect2ynu_kazfull(FTYPE *EOSextra, FTYPE ylforadvect, FTYPE ynuforadvect,FTYPE *prynu);
28 
29 
30 extern FTYPE compute_temp_simple(int i, int j, int k, int loc, FTYPE rho0, FTYPE u);
31 extern int get_extrasprocessed_simple(int doall, int i, int j, int k, int loc, FTYPE *pr, FTYPE *extras, FTYPE *processed);
32 extern FTYPE compute_u_from_entropy_simple(int i, int j, int k, int loc, FTYPE rho0, FTYPE entropy);
33 extern FTYPE compute_qdot_simple(int i, int j, int k, int loc, FTYPE rho, FTYPE u);
34 extern FTYPE dpdrho0_rho0_u_simple(int i, int j, int k, int loc, FTYPE rho, FTYPE u);
35 extern FTYPE dpdu_rho0_u_simple(int i, int j, int k, int loc, FTYPE rho, FTYPE u);
36 
37 
39 //
40 // other wrappers
41 //
43 extern int ufromentropy_calc(struct of_geom *ptrgeom, FTYPE entropy, FTYPE *pr);
44 extern int entropy_calc(struct of_geom *ptrgeom, FTYPE *pr, FTYPE *entropy);
45 extern int entropy_calc_forcheckinversion(struct of_geom *ptrgeom, FTYPE *pr, FTYPE *entropy);
46 extern int invertentropyflux_calc(struct of_geom *ptrgeom, FTYPE entropyflux,int dir, struct of_state *q, FTYPE*pr);
47 
48 
49 // for old inversion methods:
50 extern FTYPE pressure_rho0_w(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE w);
51 
53 //
54 // eos stuff [should be consistent with defs.general.h ptr's and eos.c assignment to pointers and eos.c,idealgaseos.c,etc. versions of those functions.]
55 //
57 extern int pickeos_eomtype(int whicheosinput, int whicheom, int *whicheosoutput);
58 extern int initeos_eomtype(void);
59 
60 
61 extern FTYPE pressure_rho0_u(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE u);
62 extern FTYPE compute_u_from_entropy(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE entropy);
63 extern FTYPE u_rho0_p(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE p);
64 extern FTYPE u_rho0_T(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE T);
65 extern FTYPE dpdu_rho0_u(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE u);
66 extern FTYPE dpdrho0_rho0_u(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE u);
67 extern FTYPE cs2_compute(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE u);
68 extern FTYPE compute_entropy(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE u);
69 extern FTYPE compute_dSdrho(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE u);
70 extern FTYPE compute_dSdu(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE u);
71 extern FTYPE compute_specificentropy_wmrho0(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE u);
72 extern FTYPE compute_dspecificSdrho_wmrho0(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE wmrho0);
73 extern FTYPE compute_dspecificSdwmrho0_wmrho0(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE wmrho0);
74 
75 extern FTYPE pressure_wmrho0(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE wmrho0);
76 extern FTYPE compute_idwmrho0dp(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE wmrho0);
77 extern FTYPE compute_idrho0dp(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE wmrho0);
78 extern FTYPE compute_qdot(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE u);
79 extern int compute_sources_EOS(int whicheos, FTYPE *EOSextra, FTYPE *pr, struct of_geom *geom, struct of_state *q, FTYPE *Ui, FTYPE *dUother, FTYPE(*dUcomp)[NPR]);
80 extern void compute_allextras(int whicheos, int justnum, FTYPE *EOSextra, FTYPE rho0, FTYPE u,int *numextrasreturn,FTYPE*extras);
81 extern int get_extrasprocessed(int whicheos, int doall, FTYPE *EOSextra, FTYPE *pr, FTYPE *extras, FTYPE *processed);
82 extern FTYPE compute_temp(int whicheos, FTYPE *EOSextra, FTYPE rho0, FTYPE u);
83 extern void compute_EOS_parms(int whicheos, FTYPE (*EOSextra)[NSTORE2][NSTORE3][NUMEOSGLOBALS], FTYPE (*prim)[NSTORE2][NSTORE3][NPR]);
84 extern void compute_EOS_parms_full(int whicheos, FTYPE (*EOSextra)[NSTORE2][NSTORE3][NUMEOSGLOBALS], FTYPE (*prim)[NSTORE2][NSTORE3][NPR]);
85 extern void store_EOS_parms(int whicheos, int numparms, FTYPE *EOSextra, FTYPE *parlist);
86 extern void get_EOS_parms(int whicheos, int*numparms, FTYPE *EOSextra, FTYPE *parlist);
87 extern void fix_primitive_eos_scalars(int whicheos, FTYPE *EOSextra, FTYPE *pr);
88 extern void getall_forinversion(int whicheos, int eomtype, int whichd, FTYPE *EOSextra, FTYPE quant1, FTYPE quant2, FTYPE *fun, FTYPE *dfunofrho, FTYPE *dfunofu);
89 
90 
91 
93 //
94 // SPECIAL KAZ EOS GLOBAL FUNCTIONS:
95 //
97 extern void initeos_kazfulleos(void);
98 extern void read_setup_eostable(void);
99