Commit Graph

102 Commits

Author SHA1 Message Date
Ian Bell
2c64bdaadf Add chemical potential as abstract state method
For example:

```
auto fluids = strsplit("Methane&Ethane", '&');
auto x = { 0.6,0.4 };

shared_ptr<CoolProp::AbstractState> RP(CoolProp::AbstractState::factory("HEOS", fluids));
RP->set_mole_fractions(x);
RP->update(PT_INPUTS, 101325, 300);
auto mu1 = RP->chemical_potential(0);

RP.reset(CoolProp::AbstractState::factory("REFPROP", fluids));
RP->set_mole_fractions(x);
RP->update(PT_INPUTS, 101325, 300);
auto mu2 = RP->chemical_potential(0);
```
2016-03-30 22:10:57 -06:00
Ian Bell
913c6188a2 Allow ability to adjust the fineness of the refinement of the phase envelope from the high-level 2016-03-18 22:46:28 -07:00
Ian Bell
1c43a644ce Update critical point evaluation routines and remove some double-calculations of critical matrices 2016-02-17 17:34:26 -07:00
Ian Bell
525557f230 Add ability to get/set kij for cubics by overloading set/set_binary_interaction_double 2016-02-16 19:50:55 -07:00
Ian Bell
74e36aceac Prepare for CoolPropDbl->double; see #931 2016-01-18 19:46:18 -07:00
Ian Bell
a4b46b3738 Implement tangent plane distance; closes #808 2016-01-09 13:23:30 -07:00
Ian Bell
2dd5a90ab7 Add the ability to change the EOS for a given pure fluid 2015-12-26 13:38:50 -07:00
Ian Bell
fcf641ee64 Expose enough of the AbstractState API in order to generate phase envelopes - works!; closes #819 2015-12-19 18:36:12 -07:00
Ian Bell
1d48b8bcea Move mass_to_molar_inputs into AbstractState base class 2015-12-06 14:59:56 -07:00
Ian Bell
108f3c4289 Added get_mass_fractions function to AbstractState; see #812
Also added get_mass_fractions to python wrapper
2015-10-23 12:22:45 +02:00
Ian Bell
e05d58efa3 Hack AbstractState and its SWIG wrapper to expose the liquid and vapor mole fractions; see #824 2015-09-30 23:21:01 -06:00
Ian Bell
da015ffb68 Add the ability to access all the critical points in C++ and python; closes #807 2015-09-03 22:28:46 -06:00
Ian Bell
3ee7edb607 Add ability to get contributions to conductivity and viscosity; closes #800 2015-08-29 21:56:20 -06:00
Ian Bell
00a9b756ad Fix long double and double confusion in guesses structure 2015-08-29 21:26:29 -06:00
Ian Bell
eb1c140ca9 Add access to conformal state in AbstractState; closes #799 2015-08-29 17:27:57 -06:00
Ian Bell
2a1cae6f5a Add ability to set BIP for HEOS and REFPROP with common interface; closes #793
Serious problem remains with the setting/getting of betaT and betaV in REFPROP since asymmetry not taken into account
2015-08-28 22:59:33 -06:00
Ian Bell
c4efcceb38 Make clear() overridable (see #770) and improve docs in AbstractState 2015-08-20 14:09:32 -05:00
Ian Bell
58e7edd1dc Move fluid_param_string into backends, allowing access to CAS for REFPROP; closes #678 2015-07-26 13:35:39 -06:00
Ian Bell
e2911531b1 Unit documentation for dipole moment 2015-07-26 12:06:56 -06:00
Ian Bell
0bd20b8798 Implement access to dipole moment from REFPROP; closes #725 2015-07-26 12:05:08 -06:00
Ian Bell
3c0fc7e0b4 Fix access to Gibbs function; closes #724 2015-07-13 18:54:06 -06:00
Ian Bell
111371df98 Implement fugacity through low-level interface; closes #699 2015-06-30 22:04:08 -06:00
Ian Bell
89c7100c54 Fixed second_saturation_deriv names; closes #691
I hope this fixes it finally
2015-06-28 19:00:00 -06:00
Ian Bell
ef929fcd2a Fix cp0 for tabular backends; closes #696 2015-06-28 12:31:09 -06:00
Ian Bell
23dd866ad6 Fix variable names for second_partial_deriv and calc_second_partial_deriv; see #691 2015-06-12 05:56:25 -06:00
Ian Bell
a58a64658d Implemented ideal curves at C++ level; see #654 2015-05-29 00:40:28 -06:00
Ian Bell
0987a11480 Disable Tabular backends in high-level interface using PropsSI; closes #617 2015-05-08 20:28:35 -06:00
Ian Bell
01da76f6a0 parameters instead of int for keyed_output and trivial_keyed_output
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2015-05-08 19:39:52 -06:00
Ian Bell
04897ee1e3 Calculate true critical point using REFPROP backend; closes #652 2015-05-07 21:28:57 -06:00
Ian Bell
dd795aec57 Implement the PIP parameter of Venkatharathnam for HEOS backend through to python and B and C virial coefficients
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2015-05-06 23:27:23 -06:00
Ian Bell
8f9817b1ae Export up to 4th order derivatives of the residual Helmholtz energy term 2015-04-23 10:05:11 -06:00
Ian Bell
d190704c3a REFPROP PHI0dll function seems to be working by some miracle; closes #555 2015-03-26 22:33:07 -06:00
Ian Bell
927a394b88 Added snippets/HighLevelLowLevel.cxx
Fixed bug with rhomass for Tabular methods
2015-03-17 21:27:55 -06:00
Ian Bell
ea214085c1 Merge pull request #529 from mikekaganski/master
First bunch of Coverity Scan static analysis warning fixes
2015-03-09 07:05:50 +01:00
Ian Bell
7a375952e0 Implement calling a flash routine with guess values provided at the low-level (PQ only for now) 2015-03-06 15:38:25 -07:00
mikekaganski
af3107ed9a Fix Coverity CID 38616 2015-03-06 22:14:30 +10:00
Ian Bell
716c5a34d0 Merge branch 'master' into tabular
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2015-02-24 20:20:00 -07:00
mikekaganski
1068b724c3 CoolPropDbl
Introduce CoolPropDbl to replace long doubles. This may help to overcome
possible portability problems, and test for efficiency and precision.
2015-02-24 13:24:51 +10:00
Ian Bell
bea9f8ad6b Merge branch 'master' into tabular 2015-02-22 23:34:39 -07:00
Ian Bell
aff594bb25 Fix reducing state access for REFPROP; closes #487
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2015-02-22 23:11:40 -07:00
Ian Bell
a43693de58 Single-phase HmolarP_INPUTS are working with TTSE 2015-02-22 21:08:32 -07:00
Ian Bell
58519d5fbf Good progress on tabular interpolation code - single-phase tables can be constructed and written to file and then reloaded 2015-02-22 02:27:13 -07:00
Ian Bell
183868dee2 Implement acentric factor through AbstractState and Props1SI; closes #448
Fix all instances of accentric->acentric in fluid files and codebase.

Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2015-02-03 17:37:53 -05:00
Ian Bell
ad978bf294 Expose second derivatives through AbstractState and add test (passes)
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2015-01-04 00:34:45 -05:00
Ian Bell
9e5c3d6035 Preliminary work on two-phase derivatives and splines
Added two-phase derivative, works!
Spline for drho/dh|p works
Spline for drho/dh|p NOT WORKING

Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2015-01-01 22:58:05 -05:00
Ian Bell
50b611bd4a Move predefined mixture parsing to HelmholtzEOS initializer function; Closes #373
Renamed functions for Helmholtz backend for getting const or non-const reference to mole fractions

Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-12-31 18:06:12 -05:00
Ian Bell
733cf60b31 Call clear() in instantiator for AbstractState
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-12-30 23:04:03 -05:00
Ian Bell
9c05e93fd6 Refactor AbstractState::factory to take vector of strings
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-12-30 16:06:07 -05:00
Ian Bell
6dc00552e4 Implement the Prandtl number. Closes #372
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-12-27 00:38:37 -05:00
Ian Bell
a8375c3912 Added saturated_liquid_keyed_output and saturated_vapor_keyed_output functions to get access to internals for saturation state
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-12-26 22:24:25 -05:00