TrioCFD 1.9.8
TrioCFD documentation
Loading...
Searching...
No Matches
Lois_R12_c1.h
1/****************************************************************************
2* Copyright (c) 2021, CEA
3* All rights reserved.
4*
5* Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
6* 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
7* 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
8* 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
9*
10* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
11* IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
12* OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
13*
14*****************************************************************************/
15
16#ifndef Lois_R12_c1_included
17#define Lois_R12_c1_included
18
19#include <arch.h>
20#include <Lois_eau_c3.h>
21#define HAVE_LIBC3 0
22/* prototypes des fonctions Fortran */
23#ifdef HAVE_LIBC3
24extern "C" {
25#ifdef F77_Majuscule
26// FPSATR12 Sat temperature from pressure
27 int F77DECLARE(FPSATR12)(const int *nsca, const double *p,
28 double *tsp, double *dtsp1,
29 int* ill, int* ivstat, int* ierrth);
30
31// FHSATR12 Sat enthalpy from sat temperature, densities and pressure
32 int F77DECLARE(FHSATR12)(const int *nsca, const double *tsp, const double *rvsat, const double *rlsat, const double *p,
33 double *hvsp, double *hlsp,
34 const double *dtsp1, const double *drvsat1, const double *drlsat1,
35 double *dhvsp1, double *dhlsp1);
36
37// FROVLR12 Densities from gas&liquid temperature, pressure
38 int F77DECLARE(FROVLR12)(const int *nsca, const double *p, const double *tg, const double *tl,
39 double *rg, double *rl,
40 const double *dtl1,
41 double *drl1, double *drg1,
42 int* ill, int* ivstat, int* ierrth);
43
44// FSIGMAR12 Get surface tension from sat temperature
45 int F77DECLARE(FSIGMAR12)(const int *nsca, const double* tsp, const double* dtsp1,
46 double* sigma, double* dsig1);
47
48// FCONLR12 Liquid phase conductivity from liquid temperature
49 int F77DECLARE(FCONLR12)(const int *nsca, const double *tl, const double *dtl1, const double *dtl2,
50 double *lambl, double *dlambl1, double *dlambl2);
51
52// FCONVR12 Gas phase conductivity from liquid temperature
53 int F77DECLARE(FCONVR12)(const int *nsca, const double *tg, const double *dtg1, const double *dtg3,
54 double *lambv, double *dlambv1, double *dlambv3);
55
56// FCONLR12 Liquid phase viscosity from liquid temperature
57 int F77DECLARE(FMULR12)(const int *nsca, const double *tl, const double *dtl1, const double *dtl2,
58 double *tmul, double *dtmul1, double *dtmul2);
59
60// FCONVR12 Gas phase viscosity from liquid temperature
61 int F77DECLARE(FMUVR12)(const int *nsca, const double *p, const double *tg, const double *dtg1, const double *dtg3,
62 double *tmug, double *dtmug1, double *dtmug3);
63
64// FCPLR12 Liquid phase Cp & numerous derivatives from tl
65 int F77DECLARE(FCPLR12)(const int *nsca, const double *tl,
66 double * cpl, double* dtl1, double* dtl2,
67 double* drl1, double* drl2, double* dcpl1, double*dcpl2,
68 int* ill, int* ivstat, int* ierrth);
69
70// FCPLR12 Gas phase Cp & derivatives from tg and rhog
71 int F77DECLARE(FCPVR12)(const int *nsca, const double *tg, const double *dtg1, const double *dtg3,
72 const double* rg, const double* drg1, const double* drg3,
73 double* cpv, double* dcpv1, double* dcpv3);
74
75// FCPLR12 Gas phase enthalpy from pressure and gas temperature
76 int F77DECLARE(FPTHGR12)(const int *nsca, const double *p, const double *tg,
77 double* hg,
78 int* ill, int* ivstat, int* ierrth);
79
80// FCPLR12 Liquid phase enthalpy from liquid temperature
81 int F77DECLARE(FPTHLR12)(const int *nsca, const double *tl,
82 double* hl,
83 int* ill, int* ivstat, int* ierrth);
84
85// FCPLR12 Gas phase temperature and derivatives from enthalpy and pressure
86 int F77DECLARE(FTGR12)(const int *nsca, const double *p, const double *hg, const double *tsp, const double *rvsat,
87 double* tg, double* dtg1, double* dtg3,
88 double* rg, double* drg1, double* drg3,
89 int* ill, int* ivstat, int* ierrth);
90
91// FCPLR12 Liquid phase temperature from enthalpy and pressure
92 int F77DECLARE(FTLR12)(const int *nsca, const double *p, const double *tsp, const double *rvsat, const double *hvsat, const double *hl,
93 double* tl, double* rl,
94 int* ill, int* ivstat, int* ierrth);
95
96#else
97// FPSATR12 Sat temperature from pressure
98 int F77DECLARE(fpsatr12)(const int *nsca, const double *p,
99 double *tsp, double *dtsp1,
100 int* ill, int* ivstat, int* ierrth);
101
102// FHSATR12 Sat enthalpy from sat temperature, densities and pressure
103 int F77DECLARE(fhsatr12)(const int *nsca, const double *tsp, const double *rvsat, const double *rlsat, const double *p,
104 double *hvsp, double *hlsp,
105 const double *dtsp1, const double *drvsat1, const double *drlsat1,
106 double *dhvsp1, double *dhlsp1);
107
108// FROVLR12 Densities from gas&liquid temperature, pressure
109 int F77DECLARE(frovlr12)(const int *nsca, const double *p, const double *tg, const double *tl,
110 double *rg, double *rl,
111 const double *dtl1,
112 double *drl1, double *drg1,
113 int* ill, int* ivstat, int* ierrth);
114
115// FSIGMAR12 Get surface tension from sat temperature
116 int F77DECLARE(fsigmar12)(const int *nsca, const double* tsp, const double* dtsp1,
117 double* sigma, double* dsig1);
118
119// FCONLR12 Liquid phase conductivity from liquid temperature
120 int F77DECLARE(fconlr12)(const int *nsca, const double *tl, const double *dtl1, const double *dtl2,
121 double *lambl, double *dlambl1, double *dlambl2);
122
123// FCONVR12 Gas phase conductivity from liquid temperature
124 int F77DECLARE(fconvr12)(const int *nsca, const double *tg, const double *dtg1, const double *dtg3,
125 double *lambv, double *dlambv1, double *dlambv3);
126
127// FCONLR12 Liquid phase viscosity from liquid temperature
128 int F77DECLARE(fmulr12)(const int *nsca, const double *tl, const double *dtl1, const double *dtl2,
129 double *tmul, double *dtmul1, double *dtmul2);
130
131// FCONVR12 Gas phase viscosity from liquid temperature
132 int F77DECLARE(fmuvr12)(const int *nsca, const double *p, const double *tg, const double *dtg1, const double *dtg3,
133 double *tmug, double *dtmug1, double *dtmug3);
134
135// FCPLR12 Liquid phase Cp & numerous derivatives from tl
136 int F77DECLARE(fcplr12)(const int *nsca, const double *tl,
137 double * cpl, double* dtl1, double* dtl2,
138 double* drl1, double* drl2, double* dcpl1, double*dcpl2,
139 int* ill, int* ivstat, int* ierrth);
140
141// FCPLR12 Gas phase Cp & derivatives from tg and rhog
142 int F77DECLARE(fcpvr12)(const int *nsca, const double *tg, const double *dtg1, const double *dtg3,
143 const double* rg, const double* drg1, const double* drg3,
144 double* cpv, double* dcpv1, double* dcpv3);
145
146// FCPLR12 Gas phase enthalpy from pressure and gas temperature
147 int F77DECLARE(fpthgr12)(const int *nsca, const double *p, const double *tg,
148 double* hg,
149 int* ill, int* ivstat, int* ierrth);
150
151// FCPLR12 Liquid phase enthalpy from liquid temperature
152 int F77DECLARE(fpthlr12)(const int *nsca, const double *tl,
153 double* hl,
154 int* ill, int* ivstat, int* ierrth);
155
156// FCPLR12 Gas phase temperature and derivatives from enthalpy and pressure
157 int F77DECLARE(ftgr12)(const int *nsca, const double *p, const double *hg, const double *tsp, const double *rvsat,
158 double* tg, double* dtg1, double* dtg3,
159 double* rg, double* drg1, double* drg3,
160 int* ill, int* ivstat, int* ierrth);
161
162// FCPLR12 Liquid phase temperature from enthalpy and pressure
163 int F77DECLARE(ftlr12)(const int *nsca, const double *p, const double *tsp, const double *rvsat, const double *hvsat, const double *hl,
164 double* tl, double* rl,
165 int* ill, int* ivstat, int* ierrth);
166
167
168#endif
169
170#ifndef F77_Majuscule
171 inline int F77NAME(FPSATR12)(const int *nsca, const double *p,
172 double *tsp, double *dtsp1,
173 int* ill, int* ivstat, int* ierrth)
174 {
175 return F77NAME(fpsatr12)(nsca, p,tsp, dtsp1,ill, ivstat, ierrth);
176 }
177
178 inline int F77NAME(FHSATR12)(const int *nsca, const double *tsp, const double *rvsat, const double *rlsat, const double *p,
179 double *hvsp, double *hlsp,
180 const double *dtsp1, const double *drvsat1, const double *drlsat1,
181 double *dhvsp1, double *dhlsp1)
182 {
183 return F77NAME(fhsatr12)(nsca, tsp, rvsat, rlsat, p,hvsp, hlsp,dtsp1, drvsat1, drlsat1,dhvsp1, dhlsp1);
184 }
185
186 inline int F77NAME(FROVLR12)(const int *nsca, const double *p, const double *tg, const double *tl,
187 double *rg, double *rl,
188 const double *dtl1,
189 double *drl1, double *drg1,
190 int* ill, int* ivstat, int* ierrth)
191 {
192 return F77NAME(frovlr12)(nsca, p, tg, tl,rg, rl,dtl1,drl1, drg1,ill, ivstat, ierrth);
193 }
194
195 inline int F77NAME(FSIGMAR12)(const int *nsca, const double* tsp, const double* dtsp1,
196 double* sigma, double* dsig1)
197 {
198 return F77NAME(fsigmar12)( nsca, tsp, dtsp1,sigma, dsig1);
199 }
200
201 inline int F77NAME(FCONLR12)(const int *nsca, const double *tl, const double *dtl1, const double *dtl2,
202 double *lambl, double *dlambl1, double *dlambl2)
203 {
204 return F77NAME(fconlr12)(nsca, tl, dtl1, dtl2,lambl, dlambl1, dlambl2);
205 }
206
207 inline int F77NAME(FCONVR12)(const int *nsca, const double *tg, const double *dtg1, const double *dtg3,
208 double *lambv, double *dlambv1, double *dlambv3)
209 {
210 return F77NAME(fconvr12)( nsca, tg, dtg1, dtg3,lambv, dlambv1, dlambv3);
211 }
212
213 inline int F77NAME(FMULR12)(const int *nsca, const double *tl, const double *dtl1, const double *dtl2,
214 double *tmul, double *dtmul1, double *dtmul2)
215 {
216 return F77NAME(fmulr12)( nsca, tl, dtl1, dtl2,tmul, dtmul1, dtmul2);
217 }
218
219 inline int F77NAME(FMUVR12)(const int *nsca, const double *p, const double *tg, const double *dtg1, const double *dtg3,
220 double *tmug, double *dtmug1, double *dtmug3)
221 {
222 return F77NAME(fmuvr12)( nsca, p, tg, dtg1, dtg3,tmug, dtmug1, dtmug3);
223 }
224
225 inline int F77NAME(FCPLR12)(const int *nsca, const double *tl,
226 double * cpl, double* dtl1, double* dtl2,
227 double* drl1, double* drl2, double* dcpl1, double*dcpl2,
228 int* ill, int* ivstat, int* ierrth)
229 {
230 return F77NAME(fcplr12)( nsca, tl, cpl, dtl1, dtl2,drl1, drl2, dcpl1, dcpl2,ill, ivstat, ierrth);
231 }
232
233 inline int F77NAME(FCPVR12)(const int *nsca, const double *tg, const double *dtg1, const double *dtg3,
234 const double* rg, const double* drg1, const double* drg3,
235 double* cpv, double* dcpv1, double* dcpv3)
236 {
237 return F77NAME(fcpvr12)( nsca, tg, dtg1, dtg3, rg, drg1, drg3,cpv, dcpv1, dcpv3);
238 }
239
240 inline int F77NAME(FPTHGR12)(const int *nsca, const double *p, const double *tg,
241 double* hg,
242 int* ill, int* ivstat, int* ierrth)
243 {
244 return F77NAME(fpthgr12)( nsca, p, tg, hg, ill, ivstat, ierrth);
245 }
246
247 inline int F77NAME(FPTHLR12)(const int *nsca, const double *tl,
248 double* hl,
249 int* ill, int* ivstat, int* ierrth)
250 {
251 return F77NAME(fpthlr12)( nsca, tl, hl, ill, ivstat, ierrth);
252 }
253
254 inline int F77NAME(FTGR12)(const int *nsca, const double *p, const double *hg, const double *tsp, const double *rvsat,
255 double* tg, double* dtg1, double* dtg3,
256 double* rg, double* drg1, double* drg3,
257 int* ill, int* ivstat, int* ierrth)
258 {
259 return F77NAME(ftgr12)(nsca, p, hg, tsp, rvsat, tg, dtg1, dtg3,rg, drg1, drg3,ill, ivstat, ierrth);
260 }
261
262 inline int F77NAME(FTLR12)(const int *nsca, const double *p, const double *tsp, const double *rvsat, const double *hvsat, const double *hl,
263 double* tl, double* rl,
264 int* ill, int* ivstat, int* ierrth)
265 {
266 return F77NAME(ftlr12)( nsca, p, tsp, rvsat, hvsat, hl,tl, rl, ill, ivstat, ierrth);
267 }
268#endif
269}
270#endif
271
272#endif