TrioCFD 1.9.8
TrioCFD documentation
Loading...
Searching...
No Matches
TPPI.h
1/****************************************************************************
2* Copyright (c) 2025, 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 TPPI_included
17#define TPPI_included
18
19#include <TPPI_tools.h>
20
21/*! @brief classe EOS_to_TRUST
22 *
23 * Interface commune pour TRUST et ses baltiks qui permet appeler les methodes de la lib EOS/CoolProp
24 * Methods disponibles en temperature et enthalpie, egalement pour la saturation
25 *
26 */
27class TPPI
28{
29public:
30 TPPI() = default;
31 virtual ~TPPI() = default;
32
33 virtual void set_fluide_generique(const char *const , const char *const ) { return not_implemented<void>(__func__); }
34 virtual void set_saturation_generique(const char *const , const char *const ) { return not_implemented<void>(__func__); }
35 virtual void set_phase(const Motcle& ) { return not_implemented<void>(__func__); }
36 virtual void set_path_refprop() { return not_implemented<void>(__func__); }
37 virtual void verify_phase(const Motcle& ) { return not_implemented<void>(__func__); }
38
39 virtual void desactivate_handler(bool op = true) { return not_implemented<void>(__func__); }
40
41 virtual double tppi_get_p_min() const = 0;
42 virtual double tppi_get_p_max() const = 0;
43
44 virtual double tppi_get_h_min() const = 0;
45 virtual double tppi_get_h_max() const = 0;
46
47 virtual double tppi_get_T_min() const = 0;
48 virtual double tppi_get_T_max() const = 0;
49
50 virtual double tppi_get_rho_min() const = 0;
51 virtual double tppi_get_rho_max() const = 0;
52
53 virtual double tppi_get_p_crit() const = 0;
54 virtual double tppi_get_h_crit() const = 0;
55 virtual double tppi_get_T_crit() const = 0;
56 virtual double tppi_get_rho_crit() const = 0;
57
58 virtual MRange all_unknowns_range();
59
60 template <typename TYPE>
61 TYPE not_implemented(const char * nom_funct) const
62 {
63 cerr << "TPPI::" << nom_funct << " should be implemented in a derived class !" << endl;
64 throw;
65 }
66
67 /*
68 * ******************* *
69 * Lois en temperature
70 * ******************* *
71 */
72 virtual int tppi_get_rho_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
73 {
74 return tppi_get_single_property_T_(Loi_en_T::RHO, P, T, R, ncomp, ind);
75 }
76
77 virtual int tppi_get_rho_dp_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
78 {
79 return tppi_get_single_property_T_(Loi_en_T::RHO_DP, P, T, R, ncomp, ind);
80 }
81
82 virtual int tppi_get_rho_dT_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
83 {
84 return tppi_get_single_property_T_(Loi_en_T::RHO_DT, P, T, R, ncomp, ind);
85 }
86
87 virtual int tppi_get_h_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
88 {
89 return tppi_get_single_property_T_(Loi_en_T::H, P, T, R, ncomp, ind);
90 }
91
92 virtual int tppi_get_h_dp_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
93 {
94 return tppi_get_single_property_T_(Loi_en_T::H_DP, P, T, R, ncomp, ind);
95 }
96
97 virtual int tppi_get_h_dT_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
98 {
99 return tppi_get_single_property_T_(Loi_en_T::H_DT, P, T, R, ncomp, ind);
100 }
101
102 virtual int tppi_get_cp_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
103 {
104 return tppi_get_single_property_T_(Loi_en_T::CP, P, T, R, ncomp, ind);
105 }
106
107 virtual int tppi_get_cp_dp_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
108 {
109 return tppi_get_single_property_T_(Loi_en_T::CP_DP, P, T, R, ncomp, ind);
110 }
111
112 virtual int tppi_get_cp_dT_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
113 {
114 return tppi_get_single_property_T_(Loi_en_T::CP_DT, P, T, R, ncomp, ind);
115 }
116
117 virtual int tppi_get_mu_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
118 {
119 return tppi_get_single_property_T_(Loi_en_T::MU, P, T, R, ncomp, ind);
120 }
121
122 virtual int tppi_get_mu_dp_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
123 {
124 return tppi_get_single_property_T_(Loi_en_T::MU_DP, P, T, R, ncomp, ind);
125 }
126
127 virtual int tppi_get_mu_dT_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
128 {
129 return tppi_get_single_property_T_(Loi_en_T::MU_DT, P, T, R, ncomp, ind);
130 }
131
132 virtual int tppi_get_lambda_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
133 {
134 return tppi_get_single_property_T_(Loi_en_T::LAMBDA, P, T, R, ncomp, ind);
135 }
136
137 virtual int tppi_get_lambda_dp_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
138 {
139 return tppi_get_single_property_T_(Loi_en_T::LAMBDA_DP, P, T, R, ncomp, ind);
140 }
141
142 virtual int tppi_get_lambda_dT_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
143 {
144 return tppi_get_single_property_T_(Loi_en_T::LAMBDA_DT, P, T, R, ncomp, ind);
145 }
146
147 virtual int tppi_get_sigma_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
148 {
149 return tppi_get_single_property_T_(Loi_en_T::SIGMA, P, T, R, ncomp, ind);
150 }
151
152 virtual int tppi_get_sigma_dp_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
153 {
154 return tppi_get_single_property_T_(Loi_en_T::SIGMA_DP, P, T, R, ncomp, ind);
155 }
156
157 virtual int tppi_get_sigma_dT_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
158 {
159 return tppi_get_single_property_T_(Loi_en_T::SIGMA_DT, P, T, R, ncomp, ind);
160 }
161
162 // appel simple si besoin : cas incompressible
163 virtual int tppi_get_beta_pT(const SpanD P, const SpanD T, SpanD R, int ncomp = 1, int ind = 0) const
164 {
165 return tppi_get_single_property_T_(Loi_en_T::BETA, P, T, R, ncomp, ind);
166 }
167
168 /*
169 * ***************** *
170 * Lois en enthalpie
171 * ***************** *
172 */
173 virtual int tppi_get_rho_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
174 {
175 return tppi_get_single_property_h_(Loi_en_h::RHO, P, H, R, ncomp, ind);
176 }
177
178 virtual int tppi_get_rho_dp_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
179 {
180 return tppi_get_single_property_h_(Loi_en_h::RHO_DP, P, H, R, ncomp, ind);
181 }
182
183 virtual int tppi_get_rho_dh_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
184 {
185 return tppi_get_single_property_h_(Loi_en_h::RHO_DH, P, H, R, ncomp, ind);
186 }
187
188 virtual int tppi_get_T_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
189 {
190 return tppi_get_single_property_h_(Loi_en_h::T, P, H, R, ncomp, ind);
191 }
192
193 virtual int tppi_get_T_dp_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
194 {
195 return tppi_get_single_property_h_(Loi_en_h::T_DP, P, H, R, ncomp, ind);
196 }
197
198 virtual int tppi_get_T_dh_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
199 {
200 return tppi_get_single_property_h_(Loi_en_h::T_DH, P, H, R, ncomp, ind);
201 }
202
203 virtual int tppi_get_cp_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
204 {
205 return tppi_get_single_property_h_(Loi_en_h::CP, P, H, R, ncomp, ind);
206 }
207
208 virtual int tppi_get_cp_dp_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
209 {
210 return tppi_get_single_property_h_(Loi_en_h::CP_DP, P, H, R, ncomp, ind);
211 }
212
213 virtual int tppi_get_cp_dh_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
214 {
215 return tppi_get_single_property_h_(Loi_en_h::CP_DH, P, H, R, ncomp, ind);
216 }
217
218 virtual int tppi_get_mu_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
219 {
220 return tppi_get_single_property_h_(Loi_en_h::MU, P, H, R, ncomp, ind);
221 }
222
223 virtual int tppi_get_mu_dp_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
224 {
225 return tppi_get_single_property_h_(Loi_en_h::MU_DP, P, H, R, ncomp, ind);
226 }
227
228 virtual int tppi_get_mu_dh_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
229 {
230 return tppi_get_single_property_h_(Loi_en_h::MU_DH, P, H, R, ncomp, ind);
231 }
232
233 virtual int tppi_get_lambda_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
234 {
235 return tppi_get_single_property_h_(Loi_en_h::LAMBDA, P, H, R, ncomp, ind);
236 }
237
238 virtual int tppi_get_lambda_dp_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
239 {
240 return tppi_get_single_property_h_(Loi_en_h::LAMBDA_DP, P, H, R, ncomp, ind);
241 }
242
243 virtual int tppi_get_lambda_dh_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
244 {
245 return tppi_get_single_property_h_(Loi_en_h::LAMBDA_DH, P, H, R, ncomp, ind);
246 }
247
248 virtual int tppi_get_sigma_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
249 {
250 return tppi_get_single_property_h_(Loi_en_h::SIGMA, P, H, R, ncomp, ind);
251 }
252
253 virtual int tppi_get_sigma_dp_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
254 {
255 return tppi_get_single_property_h_(Loi_en_h::SIGMA_DP, P, H, R, ncomp, ind);
256 }
257
258 virtual int tppi_get_sigma_dh_ph(const SpanD P, const SpanD H, SpanD R, int ncomp = 1, int ind = 0) const
259 {
260 return tppi_get_single_property_h_(Loi_en_h::SIGMA_DH, P, H, R, ncomp, ind);
261 }
262
263 // appel simple si besoin : cas incompressible
264 virtual int tppi_get_beta_ph(const SpanD P, const SpanD H, SpanD R, int ncomp, int ind) const
265 {
266 return tppi_get_single_property_h_(Loi_en_h::BETA, P, H, R, ncomp, ind);
267 }
268
269 /*
270 * ****************** *
271 * Pour la saturation
272 * ****************** *
273 */
274 virtual int tppi_get_T_sat_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
275 {
276 return tppi_get_single_sat_p_(SAT::T_SAT, P, res, ncomp, ind);
277 }
278
279 virtual int tppi_get_T_sat_d_p_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
280 {
281 return tppi_get_single_sat_p_(SAT::T_SAT_DP, P, res, ncomp, ind);
282 }
283
284 virtual int tppi_get_p_sat_T(const SpanD T, SpanD res, int ncomp = 1, int ind = 0) const
285 {
286 return tppi_get_single_sat_p_(SAT::P_SAT, T, res, ncomp, ind);
287 }
288
289 virtual int tppi_get_p_sat_d_T_T(const SpanD T, SpanD res, int ncomp = 1, int ind = 0) const
290 {
291 return tppi_get_single_sat_p_(SAT::P_SAT_DT, T, res, ncomp, ind);
292 }
293
294 virtual int tppi_get_h_l_sat_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
295 {
296 return tppi_get_single_sat_p_(SAT::HL_SAT, P, res, ncomp, ind);
297 }
298
299 virtual int tppi_get_h_l_sat_d_p_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
300 {
301 return tppi_get_single_sat_p_(SAT::HL_SAT_DP, P, res, ncomp, ind);
302 }
303
304 virtual int tppi_get_h_v_sat_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
305 {
306 return tppi_get_single_sat_p_(SAT::HV_SAT, P, res, ncomp, ind, false /* vapor */);
307 }
308
309 virtual int tppi_get_h_v_sat_d_p_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
310 {
311 return tppi_get_single_sat_p_(SAT::HV_SAT_DP, P, res, ncomp, ind, false /* vapor */);
312 }
313
314 virtual int tppi_get_lvap_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
315 {
316 return tppi_get_single_sat_p_(SAT::LV_SAT, P, res, ncomp, ind);
317 }
318
319 virtual int tppi_get_lvap_d_p_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
320 {
321 return tppi_get_single_sat_p_(SAT::LV_SAT_DP, P, res, ncomp, ind);
322 }
323
324 virtual int tppi_get_rho_l_sat_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
325 {
326 return tppi_get_single_sat_p_(SAT::RHOL_SAT, P, res, ncomp, ind);
327 }
328
329 virtual int tppi_get_rho_l_sat_d_p_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
330 {
331 return tppi_get_single_sat_p_(SAT::RHOL_SAT_DP, P, res, ncomp, ind);
332 }
333
334 virtual int tppi_get_rho_v_sat_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
335 {
336 return tppi_get_single_sat_p_(SAT::RHOV_SAT, P, res, ncomp, ind, false /* vapor */);
337 }
338
339 virtual int tppi_get_rho_v_sat_d_p_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
340 {
341 return tppi_get_single_sat_p_(SAT::RHOV_SAT_DP, P, res, ncomp, ind, false /* vapor */);
342 }
343
344 virtual int tppi_get_cp_l_sat_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
345 {
346 return tppi_get_single_sat_p_(SAT::CPL_SAT, P, res, ncomp, ind);
347 }
348
349 virtual int tppi_get_cp_l_sat_d_p_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
350 {
351 return tppi_get_single_sat_p_(SAT::CPL_SAT_DP, P, res, ncomp, ind);
352 }
353
354 virtual int tppi_get_cp_v_sat_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
355 {
356 return tppi_get_single_sat_p_(SAT::CPV_SAT, P, res, ncomp, ind, false /* vapor */);
357 }
358
359 virtual int tppi_get_cp_v_sat_d_p_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const
360 {
361 return tppi_get_single_sat_p_(SAT::CPV_SAT_DP, P, res, ncomp, ind, false /* vapor */);
362 }
363
364 virtual inline int tppi_get_lambda_l_sat_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const { return not_implemented<int>(__func__); }
365 virtual inline int tppi_get_lambda_l_sat_d_p_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const { return not_implemented<int>(__func__); }
366
367 virtual inline int tppi_get_lambda_v_sat_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const { return not_implemented<int>(__func__); }
368 virtual inline int tppi_get_lambda_v_sat_d_p_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const { return not_implemented<int>(__func__); }
369
370 virtual inline int tppi_get_mu_l_sat_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const { return not_implemented<int>(__func__); }
371 virtual inline int tppi_get_mu_l_sat_d_p_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const { return not_implemented<int>(__func__); }
372
373 virtual inline int tppi_get_mu_v_sat_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const { return not_implemented<int>(__func__); }
374 virtual inline int tppi_get_mu_v_sat_d_p_p(const SpanD P, SpanD res, int ncomp = 1, int ind = 0) const { return not_implemented<int>(__func__); }
375
376protected:
377 virtual int tppi_get_single_property_T_(Loi_en_T , const SpanD , const SpanD , SpanD , int , int ) const { return not_implemented<int>(__func__); }
378 virtual int tppi_get_single_property_h_(Loi_en_h , const SpanD , const SpanD , SpanD , int , int ) const { return not_implemented<int>(__func__); }
379 virtual int tppi_get_single_sat_p_(SAT , const SpanD , SpanD , int , int , bool is_liq = true) const { return not_implemented<int>(__func__); }
380
381public:
382 // methodes particulieres par application pour gagner en performance : utilisees dans Pb_Multiphase
383 virtual inline int tppi_get_CPMLB_pb_multiphase_pT(const MSpanD input, MLoiSpanD prop, int ncomp = 1, int id = 0) const { return not_implemented<int>(__func__); }
384 virtual inline int tppi_get_all_pb_multiphase_pT(const MSpanD input, MLoiSpanD inter, MLoiSpanD bord, int ncomp = 1, int id = 0) const { return not_implemented<int>(__func__); }
385
386 virtual inline int tppi_get_CPMLB_pb_multiphase_ph(const MSpanD input, MLoiSpanD_h prop, int ncomp = 1, int id = 0) const { return not_implemented<int>(__func__); }
387 virtual inline int tppi_get_all_pb_multiphase_ph(const MSpanD input, MLoiSpanD_h inter, MLoiSpanD_h bord, int ncomp = 1, int id = 0) const { return not_implemented<int>(__func__); }
388
389 virtual inline int tppi_get_all_flux_interfacial_pb_multiphase(const SpanD P, MSatSpanD, int ncomp = 1, int id = 0) const { return not_implemented<int>(__func__); }
390
391 // methodes particulieres par application pour gagner en performance : utilisees dans F5
392 virtual inline int tppi_get_all_prop_loi_F5(const MSpanD , MLoiSpanD_h , int ncomp = 1, int id = 0, bool is_liq = true) const { return not_implemented<int>(__func__); }
393 virtual inline int tppi_get_all_sat_loi_F5(const MSpanD input, MSatSpanD sats, int ncomp = 1, int id = 0) const { return not_implemented<int>(__func__); }
394
395 virtual void set_user_uniform_sigma(const double ) { /* Do nothing */ }
396
397};
398
399#endif /* TPPI_included */
Une chaine de caractere (Nom) en majuscules.
Definition Motcle.h:26
virtual double tppi_get_rho_crit() const =0
virtual int tppi_get_h_l_sat_d_p_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:299
virtual double tppi_get_h_max() const =0
TYPE not_implemented(const char *nom_funct) const
Definition TPPI.h:61
virtual int tppi_get_T_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:188
virtual int tppi_get_h_v_sat_d_p_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:309
TPPI()=default
virtual int tppi_get_lambda_dh_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:243
virtual int tppi_get_p_sat_d_T_T(const SpanD T, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:289
virtual double tppi_get_rho_min() const =0
virtual int tppi_get_cp_dh_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:213
virtual int tppi_get_beta_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:163
virtual void set_user_uniform_sigma(const double)
Definition TPPI.h:395
virtual double tppi_get_T_min() const =0
virtual int tppi_get_rho_dh_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:183
virtual int tppi_get_cp_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:203
virtual void desactivate_handler(bool op=true)
Definition TPPI.h:39
virtual int tppi_get_lambda_l_sat_d_p_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:365
virtual int tppi_get_lambda_v_sat_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:367
virtual int tppi_get_sigma_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:147
virtual int tppi_get_T_sat_d_p_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:279
virtual int tppi_get_CPMLB_pb_multiphase_pT(const MSpanD input, MLoiSpanD prop, int ncomp=1, int id=0) const
Definition TPPI.h:383
virtual int tppi_get_cp_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:102
virtual int tppi_get_beta_ph(const SpanD P, const SpanD H, SpanD R, int ncomp, int ind) const
Definition TPPI.h:264
virtual int tppi_get_mu_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:218
virtual int tppi_get_rho_l_sat_d_p_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:329
virtual int tppi_get_sigma_dh_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:258
virtual int tppi_get_sigma_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:248
virtual int tppi_get_cp_l_sat_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:344
virtual int tppi_get_CPMLB_pb_multiphase_ph(const MSpanD input, MLoiSpanD_h prop, int ncomp=1, int id=0) const
Definition TPPI.h:386
virtual int tppi_get_rho_dp_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:178
virtual int tppi_get_mu_dT_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:127
virtual double tppi_get_p_min() const =0
virtual int tppi_get_rho_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:173
virtual int tppi_get_p_sat_T(const SpanD T, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:284
virtual int tppi_get_lambda_v_sat_d_p_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:368
virtual void set_saturation_generique(const char *const, const char *const)
Definition TPPI.h:34
virtual int tppi_get_all_pb_multiphase_pT(const MSpanD input, MLoiSpanD inter, MLoiSpanD bord, int ncomp=1, int id=0) const
Definition TPPI.h:384
virtual int tppi_get_cp_v_sat_d_p_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:359
virtual int tppi_get_mu_v_sat_d_p_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:374
virtual double tppi_get_T_max() const =0
virtual int tppi_get_cp_dT_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:112
virtual int tppi_get_single_property_T_(Loi_en_T, const SpanD, const SpanD, SpanD, int, int) const
Definition TPPI.h:377
virtual int tppi_get_lambda_dp_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:238
virtual void set_fluide_generique(const char *const, const char *const)
Definition TPPI.h:33
virtual int tppi_get_mu_dp_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:122
virtual int tppi_get_T_sat_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:274
virtual int tppi_get_h_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:87
virtual void verify_phase(const Motcle &)
Definition TPPI.h:37
virtual int tppi_get_h_dT_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:97
virtual int tppi_get_single_sat_p_(SAT, const SpanD, SpanD, int, int, bool is_liq=true) const
Definition TPPI.h:379
virtual double tppi_get_p_crit() const =0
virtual int tppi_get_rho_v_sat_d_p_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:339
virtual int tppi_get_all_prop_loi_F5(const MSpanD, MLoiSpanD_h, int ncomp=1, int id=0, bool is_liq=true) const
Definition TPPI.h:392
virtual int tppi_get_lvap_d_p_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:319
virtual ~TPPI()=default
virtual int tppi_get_h_v_sat_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:304
virtual double tppi_get_p_max() const =0
virtual int tppi_get_lambda_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:132
virtual int tppi_get_sigma_dT_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:157
virtual int tppi_get_rho_dT_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:82
virtual int tppi_get_cp_dp_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:107
virtual int tppi_get_rho_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:72
virtual double tppi_get_h_crit() const =0
virtual int tppi_get_lambda_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:233
virtual int tppi_get_sigma_dp_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:152
virtual int tppi_get_T_dh_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:198
virtual int tppi_get_lvap_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:314
virtual int tppi_get_all_sat_loi_F5(const MSpanD input, MSatSpanD sats, int ncomp=1, int id=0) const
Definition TPPI.h:393
virtual int tppi_get_all_flux_interfacial_pb_multiphase(const SpanD P, MSatSpanD, int ncomp=1, int id=0) const
Definition TPPI.h:389
virtual int tppi_get_cp_dp_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:208
virtual int tppi_get_mu_l_sat_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:370
virtual int tppi_get_T_dp_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:193
virtual int tppi_get_lambda_l_sat_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:364
virtual int tppi_get_mu_dp_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:223
virtual int tppi_get_single_property_h_(Loi_en_h, const SpanD, const SpanD, SpanD, int, int) const
Definition TPPI.h:378
virtual int tppi_get_mu_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:117
virtual int tppi_get_h_dp_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:92
virtual double tppi_get_rho_max() const =0
virtual int tppi_get_rho_l_sat_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:324
virtual int tppi_get_mu_v_sat_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:373
virtual int tppi_get_rho_v_sat_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:334
virtual int tppi_get_rho_dp_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:77
virtual int tppi_get_cp_v_sat_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:354
virtual double tppi_get_T_crit() const =0
virtual void set_path_refprop()
Definition TPPI.h:36
virtual int tppi_get_lambda_dp_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:137
virtual MRange all_unknowns_range()
Definition TPPI.cpp:18
virtual double tppi_get_h_min() const =0
virtual void set_phase(const Motcle &)
Definition TPPI.h:35
virtual int tppi_get_all_pb_multiphase_ph(const MSpanD input, MLoiSpanD_h inter, MLoiSpanD_h bord, int ncomp=1, int id=0) const
Definition TPPI.h:387
virtual int tppi_get_h_l_sat_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:294
virtual int tppi_get_cp_l_sat_d_p_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:349
virtual int tppi_get_lambda_dT_pT(const SpanD P, const SpanD T, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:142
virtual int tppi_get_mu_l_sat_d_p_p(const SpanD P, SpanD res, int ncomp=1, int ind=0) const
Definition TPPI.h:371
virtual int tppi_get_mu_dh_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:228
virtual int tppi_get_sigma_dp_ph(const SpanD P, const SpanD H, SpanD R, int ncomp=1, int ind=0) const
Definition TPPI.h:253