Commit Graph

399 Commits

Author SHA1 Message Date
Ian Bell
068e737388 TP flash basically working again for mixtures
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-08 00:08:18 +02:00
Ian Bell
af03189c5b Fixed a lot of little things to get multi-component phase envelopes to build.
Testing of mixture derivatives entirely refactored - much cleaner

Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-07 21:56:34 +02:00
Ian Bell
295f963a45 Phase envelope construction is working - some edge cases to deal with, but looking good overall
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-07 15:18:20 +02:00
Ian Bell
62beb5814a Excess functions take std::size_t
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-07 15:06:14 +02:00
Ian Bell
5342ac2204 Clear the phase envelope before making the next one.
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-07 00:54:44 +02:00
Ian Bell
518aeca7d8 Fixed MixedParameters.cpp to remove c++11 functionality
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-07 00:34:13 +02:00
Ian Bell
e92ed95a98 Cleaned up the c_Y functions for GERG to make use of the beta functions relationship beta_ij = 1/beta_ji
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-06 21:43:53 +02:00
Ian Bell
7466ffd6d5 PhaseEnvelope added to CoolProp.i SWIG interface
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-06 21:41:41 +02:00
Ian Bell
cdc21e38e8 PhaseEnvelopeData can be extracted using the get_phase_envelope_data function from the AbstractState
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-06 21:41:14 +02:00
Ian Bell
783f27f0dc ExcessHEFunction.h all unsigned int replaced with std::size_t
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-06 21:39:37 +02:00
Ian Bell
b6f9ce89ed Moved PhaseEnvelope.h to include folder
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-06 21:08:43 +02:00
Ian Bell
e9297e8dc5 Calculate enthalpy and entropy as part of phase envelope
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-06 19:56:54 +02:00
Ian Bell
46135f69b6 Broke up the critical determination term for easier debugging
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-06 19:03:02 +02:00
Ian Bell
b8b4187d49 Interpolation for phase envelopes is based on *new* value for rhomolar_vap - much better
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-06 18:27:05 +02:00
Ian Bell
73c90b4b01 Gas constants are now all set to CODATA 2010 value and terms n_i in residual terms are multiplied by R_u_old/R_u_new
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-06 18:09:01 +02:00
Ian Bell
047f63861d Provide a body for the function that MSVC doesn't like
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-06 18:01:06 +02:00
Ian Bell
ea4bc07273 FlashRoutines uses parameters instead of int for other parameter
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-06 18:00:41 +02:00
Ian Bell
354c924ca6 Excess is header only completion
Fixed bug with init of Q for phase envelope construction

Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-06 16:10:12 +02:00
Ian Bell
ee6d6ecadc Excess is now header-only
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-06 15:47:46 +02:00
Ian Bell
8fdd1fddaf Refactor of mixing parameters successful
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-06 15:41:33 +02:00
Ian Bell
f7d639db51 Phase envelope construction working now for Ethane/Propane for a range of mole fractions
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-05 12:03:52 +01:00
Ian Bell
905fec810d Phase envelope code and data structures set up
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-05 10:09:36 +01:00
Ian Bell
f5ad4c9595 Updated flash routines at low temperature to close https://github.com/CoolProp/CoolProp/issues/124
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-03 18:32:42 +01:00
Ian Bell
b7b502ef81 Changed the cast for benzene higher-order viscosity
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-03 17:39:02 +01:00
Ian Bell
0c38f2600c Remove std::size_t cast in ReducingFunctions
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-03 17:38:13 +01:00
Ian Bell
fca950907f Implemented benzene viscosity correlation of Avgeri et al. from JPCRD, 2014
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-09-02 14:56:04 +01:00
Ian Bell
5e470617c9 Newton-raphson works for mixtures
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-30 19:19:10 +02:00
Ian Bell
d539f5cde8 Yes!! Composition derivatives working almost entirely. 2014-08-28 21:52:25 +02:00
Ian Bell
e7aa3df917 Implemented the x_N dependent form of the composition derivatives. Mostly working but derivatives with respect to x_N DO NOT work
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-28 01:22:10 +02:00
Ian Bell
b518684404 Squashed MSVC errors about pow functions
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-27 16:33:02 +02:00
Ian Bell
e062e0dbf6 Ancillary saturation solver works a bit better, still some issues.
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-26 23:20:24 +02:00
Ian Bell
dafa165dd8 Add note for methanol
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-26 23:15:04 +02:00
Ian Bell
29170cd44c Tidy derivatives
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-26 23:13:55 +02:00
Ian Bell
bbc97ac230 Added methanol viscosity correlation to close https://github.com/CoolProp/CoolProp/issues/82
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-26 23:12:16 +02:00
Ian Bell
5316a1fd93 Added a bunch of mixture derivative tests (all passing).
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-26 21:00:45 +02:00
Ian Bell
05f4c64049 Potentially fixed critical spline code for linear and quadratic "splines". Closes https://github.com/CoolProp/CoolProp/issues/111
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-26 19:31:25 +02:00
Ian Bell
648c01aee8 Fixed CoolProp-Tests.cpp to not require CoolPropLib.cpp
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-26 15:17:47 +02:00
Ian Bell
e0e0b1e234 First cut at new NR solver for bubble/dew points with mixtures. Sort of works, seems like there is a problem with one of the derivatives
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-26 13:47:34 +02:00
Ian Bell
07cc87b8b2 A partial resolution of https://github.com/CoolProp/CoolProp/issues/107
All internal values are molar, so the error message is only truly useful if you are using molar units

Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-26 13:44:49 +02:00
Ian Bell
f6a4f7e239 Added tests for new outputs
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-26 13:30:41 +02:00
Ian Bell
12d62b076b Added critical point values for REFPROP to close https://github.com/CoolProp/CoolProp/issues/117
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-26 13:14:17 +02:00
Ian Bell
289c1b3b61 Mixture derivatives now use std::size_t instead of int everywhere
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-25 18:36:47 +02:00
Ian Bell
a6850b8f19 Successive substitution is working again
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-25 15:37:30 +02:00
Ian Bell
9435b2d136 Moved mixture derivatives into their own file and more functions take references rather than pointers
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-25 13:32:25 +02:00
Ian Bell
d9ef19a3a8 Improved docs for mixture derivatives
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-25 11:34:33 +02:00
Ian Bell
c398ea91a7 Added more tests for second derivatives
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-24 20:45:07 +02:00
Ian Bell
799422fe40 Implemented generalized second derivative, seems to work, implemented at PropsSI level too
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-24 17:26:46 +02:00
Ian Bell
4b082029c4 Finally repaired flash routines.
Some edge cases remain

Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-24 13:40:46 +02:00
Ian Bell
16251c4fb1 Fixed sat_T at very low pressures
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-23 16:54:27 +02:00
Ian Bell
d3261395bf Replaced all fabs() with std::abs()
Signed-off-by: Ian Bell <ian.h.bell@gmail.com>
2014-08-23 14:56:07 +02:00