teqp 0.22.0
|
Namespaces | |
namespace | adapter |
Classes | |
class | AbstractModel |
struct | IterationMatrices |
Typedefs | |
using | ModelPointerFactoryFunction = std::function<std::unique_ptr<teqp::cppinterface::AbstractModel>(const nlohmann::json &j)> |
using | makefunc = ModelPointerFactoryFunction |
Functions | |
template<typename Array > | |
auto | build_iteration_Jv (const std::vector< char > &vars, const Eigen::Array< double, 3, 3 > &A, const double R, const double T, const double rho, const Array &z) |
A convenience function for calculation of Jacobian terms of the form \( J_{i0} = \frac{\partial y}{\partial T} \) and \( J_{i1} = \frac{\partial y}{\partial \rho} \) where \(y\) is one of the thermodynamic variables in vars. | |
std::unique_ptr< AbstractModel > | make_model (const nlohmann::json &, bool validate=true) |
std::unique_ptr< AbstractModel > | make_multifluid_model (const std::vector< std::string > &components, const std::string &coolprop_root, const std::string &BIPcollectionpath={}, const nlohmann::json &flags={}, const std::string &departurepath={}) |
std::unique_ptr< AbstractModel > | build_model_ptr (const nlohmann::json &json, bool validate=true) |
nlohmann::json | get_model_schema (const std::string &kind) |
Return the schema for the given model kind. | |
void | add_model_pointer_factory_function (const std::string &key, ModelPointerFactoryFunction &func) |
This function allows you to inject your own model factory function into the set of factory functions implemented in teqp. This allows you to add your own model at runtime. As an example of how to do this, see src/test_runtime_model_inclusion.cpp. | |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_CPA (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_genericSAFT (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_GERG2004resid (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_GERG2008resid (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_GERG2004idealgas (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_GERG2008idealgas (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_IdealHelmholtz (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_LKP (const nlohmann::json &j) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_SW_EspindolaHeredia2009 (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_EXP6_Kataoka1992 (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_Mie_Pohl2023 (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_Mie_Chaparro2023 (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_2CLJF (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_2CLJF_Dipole (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_2CLJF_Quadrupole (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_multifluid (const nlohmann::json &j) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_multifluid_ECS_HuberEly1994 (const nlohmann::json &j) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_AmmoniaWaterTillnerRoth () |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_LJ126_TholJPCRD2016 () |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_LJ126_KolafaNezbeda1994 () |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_LJ126_Johnson1993 () |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_multifluid_activity (const nlohmann::json &j) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_multifluid_association (const nlohmann::json &j) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_PCSAFT (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_PCSAFTPureGrossSadowski2001 (const nlohmann::json &spec) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_SAFTVRMie (const nlohmann::json &j) |
std::unique_ptr< teqp::cppinterface::AbstractModel > | make_SOFTSAFT (const nlohmann::json &spec) |
Definition at line 45 of file teqp_impl_factory.cpp.
using teqp::cppinterface::ModelPointerFactoryFunction = std::function<std::unique_ptr<teqp::cppinterface::AbstractModel>(const nlohmann::json &j)> |
Definition at line 209 of file teqpcpp.hpp.
void teqp::cppinterface::add_model_pointer_factory_function | ( | const std::string & | key, |
ModelPointerFactoryFunction & | func ) |
This function allows you to inject your own model factory function into the set of factory functions implemented in teqp. This allows you to add your own model at runtime. As an example of how to do this, see src/test_runtime_model_inclusion.cpp.
key | The key used to define the model |
func | The ModelPointerFactoryFunction factory function used to generate the wrapped model |
Definition at line 137 of file teqp_impl_factory.cpp.
auto teqp::cppinterface::build_iteration_Jv | ( | const std::vector< char > & | vars, |
const Eigen::Array< double, 3, 3 > & | A, | ||
const double | R, | ||
const double | T, | ||
const double | rho, | ||
const Array & | z ) |
A convenience function for calculation of Jacobian terms of the form \( J_{i0} = \frac{\partial y}{\partial T} \) and \( J_{i1} = \frac{\partial y}{\partial \rho} \) where \(y\) is one of the thermodynamic variables in vars.
vars | A set of chars, allowed are 'H','S','U','P','T','D' |
A | The matrix of derivatives of \(\alpha^{\rm ig} + \alpha^{\rm r}\), perhaps obtained from teqp::DerivativeHolderSquare, or via get_deriv_mat2 of the AbstractModel |
R | The molar gas constant |
T | Temperature |
rho | Molar density |
z | Mole fractions |
Definition at line 26 of file derivs.hpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::build_model_ptr | ( | const nlohmann::json & | json, |
bool | validate = true ) |
Definition at line 101 of file teqp_impl_factory.cpp.
nlohmann::json teqp::cppinterface::get_model_schema | ( | const std::string & | kind | ) |
Return the schema for the given model kind.
Definition at line 48 of file teqp_impl_factory.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_2CLJF | ( | const nlohmann::json & | spec | ) |
Definition at line 25 of file model_factory_model_potentials.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_2CLJF_Dipole | ( | const nlohmann::json & | spec | ) |
Definition at line 28 of file model_factory_model_potentials.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_2CLJF_Quadrupole | ( | const nlohmann::json & | spec | ) |
Definition at line 31 of file model_factory_model_potentials.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_AmmoniaWaterTillnerRoth | ( | ) |
Definition at line 16 of file model_factory_multifluid.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_CPA | ( | const nlohmann::json & | spec | ) |
Definition at line 9 of file model_factory_CPA.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_EXP6_Kataoka1992 | ( | const nlohmann::json & | spec | ) |
Definition at line 16 of file model_factory_model_potentials.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_genericSAFT | ( | const nlohmann::json & | spec | ) |
Definition at line 7 of file model_factory_genericsaft.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_GERG2004idealgas | ( | const nlohmann::json & | spec | ) |
Definition at line 14 of file model_factory_GERG.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_GERG2004resid | ( | const nlohmann::json & | spec | ) |
Definition at line 8 of file model_factory_GERG.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_GERG2008idealgas | ( | const nlohmann::json & | spec | ) |
Definition at line 17 of file model_factory_GERG.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_GERG2008resid | ( | const nlohmann::json & | spec | ) |
Definition at line 11 of file model_factory_GERG.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_IdealHelmholtz | ( | const nlohmann::json & | spec | ) |
Definition at line 9 of file model_factory_IdealHelmholtz.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_LJ126_Johnson1993 | ( | ) |
Definition at line 25 of file model_factory_multifluid.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_LJ126_KolafaNezbeda1994 | ( | ) |
Definition at line 22 of file model_factory_multifluid.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_LJ126_TholJPCRD2016 | ( | ) |
Definition at line 19 of file model_factory_multifluid.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_LKP | ( | const nlohmann::json & | j | ) |
Definition at line 7 of file model_factory_LKP.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_Mie_Chaparro2023 | ( | const nlohmann::json & | spec | ) |
Definition at line 22 of file model_factory_model_potentials.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_Mie_Pohl2023 | ( | const nlohmann::json & | spec | ) |
Definition at line 19 of file model_factory_model_potentials.cpp.
std::unique_ptr< AbstractModel > teqp::cppinterface::make_model | ( | const nlohmann::json & | j, |
bool | validate = true ) |
Definition at line 133 of file teqp_impl_factory.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_multifluid | ( | const nlohmann::json & | j | ) |
Definition at line 10 of file model_factory_multifluid.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_multifluid_activity | ( | const nlohmann::json & | j | ) |
Definition at line 7 of file model_factory_multifluid_activity.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_multifluid_association | ( | const nlohmann::json & | j | ) |
Definition at line 7 of file model_factory_multifluid_association.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_multifluid_ECS_HuberEly1994 | ( | const nlohmann::json & | j | ) |
Definition at line 13 of file model_factory_multifluid.cpp.
std::unique_ptr< AbstractModel > teqp::cppinterface::make_multifluid_model | ( | const std::vector< std::string > & | components, |
const std::string & | coolprop_root, | ||
const std::string & | BIPcollectionpath = {}, | ||
const nlohmann::json & | flags = {}, | ||
const std::string & | departurepath = {} ) |
Definition at line 129 of file teqp_impl_factory.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_PCSAFT | ( | const nlohmann::json & | spec | ) |
Definition at line 7 of file model_factory_pcsaft.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_PCSAFTPureGrossSadowski2001 | ( | const nlohmann::json & | spec | ) |
Definition at line 10 of file model_factory_pcsaft.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_SAFTVRMie | ( | const nlohmann::json & | j | ) |
Definition at line 7 of file model_factory_SAFTVRMie.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_SOFTSAFT | ( | const nlohmann::json & | spec | ) |
Definition at line 7 of file model_factory_softsaft.cpp.
std::unique_ptr< teqp::cppinterface::AbstractModel > teqp::cppinterface::make_SW_EspindolaHeredia2009 | ( | const nlohmann::json & | spec | ) |
Definition at line 13 of file model_factory_model_potentials.cpp.