diff --git a/interface/multifluid.cpp b/interface/multifluid.cpp index d9b0d241369b09c880daad6d81af725337599a47..4f30bd0e11af0515ded96bee3eced8644c2241ae 100644 --- a/interface/multifluid.cpp +++ b/interface/multifluid.cpp @@ -16,6 +16,11 @@ void add_AmmoniaWaterTillnerRoth(py::module&m ){ .def("get_Tr", &AmmoniaWaterTillnerRoth::get_Treducing<Eigen::ArrayXd>) .def("get_rhor", &AmmoniaWaterTillnerRoth::get_rhoreducing<Eigen::ArrayXd>) .def("alphar_departure", &AmmoniaWaterTillnerRoth::alphar_departure<double, double, double>, py::arg("tau"), py::arg("delta"), py::arg("xNH3")) + .def("dalphar_departure_ddelta", [](const AmmoniaWaterTillnerRoth& c, const double& tau, const double& delta, const double& xNH3) { + autodiff::Real<1, double> delta_ = delta; + auto f = [&c, &tau, &xNH3](const auto& delta_) { return c.alphar_departure(tau, delta_, xNH3); }; + return derivatives(f, along(1), at(delta_))[1]; + }, py::arg("tau"), py::arg("delta"), py::arg("xNH3")) ; add_derivatives<AmmoniaWaterTillnerRoth>(m, wAW); }