Skip to content
Snippets Groups Projects
PCSAFT.cpp 976 B
Newer Older
  • Learn to ignore specific revisions
  • #include "pybind11_wrapper.hpp"
    
    #include "teqp/models/PCSAFT.hpp"
    #include "teqp/derivs.hpp"
    
    void add_PCSAFT(py::module& m) {
    
    	py::class_<SAFTCoeffs>(m, "SAFTCoeffs")
    	.def(py::init<>())
    	.def_readwrite("name", &SAFTCoeffs::name)
    	.def_readwrite("m", &SAFTCoeffs::m)
    	.def_readwrite("sigma_Angstrom", &SAFTCoeffs::sigma_Angstrom)
    	.def_readwrite("epsilon_over_k", &SAFTCoeffs::epsilon_over_k)
    	.def_readwrite("BibTeXKey", &SAFTCoeffs::BibTeXKey)
    	;
    
    	auto wPCSAFT = py::class_<PCSAFTMixture>(m, "PCSAFTEOS")
    	.def(py::init<const std::vector<std::string>&>(), py::arg("names"))
    	.def(py::init<const std::vector<SAFTCoeffs>&>(), py::arg("coeffs"))
    	.def("print_info", &PCSAFTMixture::print_info)
    	.def("max_rhoN", &PCSAFTMixture::max_rhoN<Eigen::ArrayXd>)
    	.def("get_m", &PCSAFTMixture::get_m)
    	.def("get_sigma_Angstrom", &PCSAFTMixture::get_sigma_Angstrom)
    	.def("get_epsilon_over_k_K", &PCSAFTMixture::get_epsilon_over_k_K)
    	;
    	add_derivatives<PCSAFTMixture>(m, wPCSAFT);
    }