teqp 0.22.0
Loading...
Searching...
No Matches
deriv_adapter.hpp File Reference
#include "teqp/derivs.hpp"
#include "teqp/cpp/teqpcpp.hpp"
#include "teqp/exceptions.hpp"

Go to the source code of this file.

Classes

struct  teqp::cppinterface::adapter::Owner< ModelType >
 
struct  teqp::cppinterface::adapter::ConstViewer< ModelType >
 
class  teqp::cppinterface::adapter::OwnershipSummer< Funcs >
 A collection type that allows you to sum contributions from multiple EOS terms. More...
 
struct  teqp::cppinterface::adapter::internal::tag< T >
 
class  teqp::cppinterface::adapter::DerivativeAdapter< ModelPack >
 

Namespaces

namespace  teqp
 
namespace  teqp::cppinterface
 
namespace  teqp::cppinterface::adapter
 
namespace  teqp::cppinterface::adapter::internal
 

Macros

#define X(i, j)   virtual double get_Ar ## i ## j(const double T, const double rho, const REArrayd& molefrac) const override { return TDXDerivatives<decltype(mp.get_cref()), double, EArrayd>::template get_Arxy<i,j>(mp.get_cref(), T, rho, molefrac); };
 
#define X(i)   virtual EArrayd get_Ar0 ## i ## n(const double T, const double rho, const REArrayd& molefrac) const override { auto vals = TDXDerivatives<decltype(mp.get_cref()), double, EArrayd>::template get_Ar0n<i>(mp.get_cref(), T, rho, molefrac); return Eigen::Map<Eigen::ArrayXd>(&(vals[0]), vals.size()); };
 
#define X(i)   virtual EArrayd get_Ar ## i ## 0n(const double T, const double rho, const REArrayd& molefrac) const override { auto vals = TDXDerivatives<decltype(mp.get_cref()), double, EArrayd>::template get_Arn0<i>(mp.get_cref(), T, rho, molefrac); return Eigen::Map<Eigen::ArrayXd>(&(vals[0]), vals.size()); };
 
#define X(f)   virtual double f(const double T, const EArrayd& rhovec) const override { return IsochoricDerivatives<decltype(mp.get_cref()), double, EArrayd>::f(mp.get_cref(), T, rhovec); };
 
#define X(f)   virtual EArrayd f(const double T, const EArrayd& rhovec) const override { return IsochoricDerivatives<decltype(mp.get_cref()), double, EArrayd>::f(mp.get_cref(), T, rhovec); };
 
#define X(f)   virtual EMatrixd f(const double T, const EArrayd& rhovec) const override { return IsochoricDerivatives<decltype(mp.get_cref()), double, EArrayd>::f(mp.get_cref(), T, rhovec); };
 
#define X(f)   virtual std::tuple<double, Eigen::ArrayXd, Eigen::MatrixXd> f(const double T, const EArrayd& rhovec) const override { return IsochoricDerivatives<decltype(mp.get_cref()), double, EArrayd>::f(mp.get_cref(), T, rhovec); };
 

Functions

template<typename... Args>
OwnershipSummer< Args... > teqp::cppinterface::adapter::make_OwnershipSummer (Args &&... args)
 
template<typename TemplatedModel >
auto teqp::cppinterface::adapter::view (const TemplatedModel &tp)
 
template<typename TemplatedModel >
auto teqp::cppinterface::adapter::own (const TemplatedModel &&tp)
 
template<typename TemplatedModel >
auto teqp::cppinterface::adapter::make_owned (const TemplatedModel &tmodel)
 
template<typename TemplatedModel >
auto teqp::cppinterface::adapter::make_cview (const TemplatedModel &tmodel)
 
template<typename ModelType >
const ModelType & teqp::cppinterface::adapter::get_model_cref (const AbstractModel *am)
 Get a const reference to the model that is being held in a DerivativeAdapter instance.
 
template<typename ModelType >
ModelType & teqp::cppinterface::adapter::get_model_ref (AbstractModel *am)
 Get a mutable reference to the model.
 

Macro Definition Documentation

◆ X [1/7]

#define X ( f)    virtual double f(const double T, const EArrayd& rhovec) const override { return IsochoricDerivatives<decltype(mp.get_cref()), double, EArrayd>::f(mp.get_cref(), T, rhovec); };

Definition at line 126 of file deriv_adapter.hpp.

◆ X [2/7]

#define X ( f)    virtual EArrayd f(const double T, const EArrayd& rhovec) const override { return IsochoricDerivatives<decltype(mp.get_cref()), double, EArrayd>::f(mp.get_cref(), T, rhovec); };

Definition at line 126 of file deriv_adapter.hpp.

◆ X [3/7]

#define X ( f)    virtual EMatrixd f(const double T, const EArrayd& rhovec) const override { return IsochoricDerivatives<decltype(mp.get_cref()), double, EArrayd>::f(mp.get_cref(), T, rhovec); };

Definition at line 126 of file deriv_adapter.hpp.

◆ X [4/7]

#define X ( f)    virtual std::tuple<double, Eigen::ArrayXd, Eigen::MatrixXd> f(const double T, const EArrayd& rhovec) const override { return IsochoricDerivatives<decltype(mp.get_cref()), double, EArrayd>::f(mp.get_cref(), T, rhovec); };

Definition at line 126 of file deriv_adapter.hpp.

◆ X [5/7]

#define X ( i)    virtual EArrayd get_Ar0 ## i ## n(const double T, const double rho, const REArrayd& molefrac) const override { auto vals = TDXDerivatives<decltype(mp.get_cref()), double, EArrayd>::template get_Ar0n<i>(mp.get_cref(), T, rho, molefrac); return Eigen::Map<Eigen::ArrayXd>(&(vals[0]), vals.size()); };

Definition at line 126 of file deriv_adapter.hpp.

◆ X [6/7]

#define X ( i)    virtual EArrayd get_Ar ## i ## 0n(const double T, const double rho, const REArrayd& molefrac) const override { auto vals = TDXDerivatives<decltype(mp.get_cref()), double, EArrayd>::template get_Arn0<i>(mp.get_cref(), T, rho, molefrac); return Eigen::Map<Eigen::ArrayXd>(&(vals[0]), vals.size()); };

Definition at line 126 of file deriv_adapter.hpp.

◆ X [7/7]

#define X ( i,
j )   virtual double get_Ar ## i ## j(const double T, const double rho, const REArrayd& molefrac) const override { return TDXDerivatives<decltype(mp.get_cref()), double, EArrayd>::template get_Arxy<i,j>(mp.get_cref(), T, rho, molefrac); };

Definition at line 126 of file deriv_adapter.hpp.