teqp 0.23.1
Loading...
Searching...
No Matches
model_factory_GERG.cpp
Go to the documentation of this file.
3
4#include "model_flags.hpp" // Contains (optionally) macros to disable various models
5
6#ifndef DISABLE_GERG200X
8#endif
9
10namespace teqp{
11 namespace cppinterface{
12#ifndef DISABLE_GERG200X
13 std::unique_ptr<teqp::cppinterface::AbstractModel> make_GERG2004resid(const nlohmann::json &spec){
15 }
16 std::unique_ptr<teqp::cppinterface::AbstractModel> make_GERG2008resid(const nlohmann::json &spec){
18 }
19 std::unique_ptr<teqp::cppinterface::AbstractModel> make_GERG2004idealgas(const nlohmann::json &spec){
21 }
22 std::unique_ptr<teqp::cppinterface::AbstractModel> make_GERG2008idealgas(const nlohmann::json &spec){
24 }
25#else
26 std::unique_ptr<teqp::cppinterface::AbstractModel> make_GERG2004resid(const nlohmann::json &){
27 throw teqp::NotImplementedError("The GERG-2004 residual model has been disabled");
28 }
29 std::unique_ptr<teqp::cppinterface::AbstractModel> make_GERG2008resid(const nlohmann::json &){
30 throw teqp::NotImplementedError("The GERG-2008 residual model has been disabled");
31 }
32 std::unique_ptr<teqp::cppinterface::AbstractModel> make_GERG2004idealgas(const nlohmann::json &){
33 throw teqp::NotImplementedError("The GERG-2004 ideal-gas model has been disabled");
34 }
35 std::unique_ptr<teqp::cppinterface::AbstractModel> make_GERG2008idealgas(const nlohmann::json &){
36 throw teqp::NotImplementedError("The GERG-2008 ideal-gas model has been disabled");
37 }
38#endif
39 }
40}
auto make_owned(const TemplatedModel &tmodel)
std::unique_ptr< teqp::cppinterface::AbstractModel > make_GERG2004idealgas(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_GERG2008idealgas(const nlohmann::json &spec)