65 #include "opendf_phys.bind"
67 py::module models_m = m.def_submodule(
"models");
68 py::module solvers_m = m.def_submodule(
"solvers");
72 class PyTrampoline_Model :
public Model {
77 py::class_<Model, PyTrampoline_Model>(models_m,
"Model", py::dynamic_attr())
78 .def(py::init<const Param&>())
79 .def(py::init<const std::string&>())
80 .def_readwrite(
"tag", &Model::tag)
81 .def(
"ref_workr", &Model::ref_workr, py::return_value_policy::reference_internal)
82 .def(
"ref_workc", &Model::ref_workc, py::return_value_policy::reference_internal);
84 class PyTrampoline_ForceField :
public ForceField {
86 using ForceField::ForceField;
89 py::class_<ForceField, Model, PyTrampoline_ForceField>(models_m,
"ForceField", py::dynamic_attr())
90 .def(py::init<const Param&>())
91 .def(py::init<const std::string&>())
92 .def_readwrite(
"type", &ForceField::type);
94 class PyTrampoline_BO_ForceField :
public BO_ForceField {
96 using BO_ForceField::BO_ForceField;
98 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& itraj)
override {
103 nr, np, nm, rdim, itraj
107 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
116 int nspec()
override {
125 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
126 const int& rdim)
override {
131 V, dV, ddV, R, P, flag, rdim
135 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
136 const int& rdim,
const int& itraj,
const int& isamp)
override {
141 V, dV, ddV, R, P, flag, rdim, itraj, isamp
145 int CheckForceField()
override {
154 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
155 const int& itraj,
const int& isamp)
override {
160 ofs0, nr, np, nm, rdim, itraj, isamp
165 py::class_<BO_ForceField, ForceField, PyTrampoline_BO_ForceField>(models_m,
"BO_ForceField", py::dynamic_attr())
166 .def(py::init<const Param&>())
167 .def(py::init<const std::string&>())
168 .def(
"ref_mod_M", &BO_ForceField::ref_mod_M, py::return_value_policy::reference_internal)
169 .def(
"ref_mod_W", &BO_ForceField::ref_mod_W, py::return_value_policy::reference_internal)
170 .def(
"ref_mod_R0", &BO_ForceField::ref_mod_R0, py::return_value_policy::reference_internal)
171 .def(
"ref_mod_P0", &BO_ForceField::ref_mod_P0, py::return_value_policy::reference_internal)
172 .def(
"ref_mod_sigmaR", &BO_ForceField::ref_mod_sigmaR, py::return_value_policy::reference_internal)
173 .def(
"ref_mod_sigmaP", &BO_ForceField::ref_mod_sigmaP, py::return_value_policy::reference_internal)
174 .def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
175 .def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
176 .def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
177 .def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
178 .def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
179 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
180 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
183 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
186 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
187 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
188 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
190 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
193 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
194 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
195 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
196 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
197 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
198 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
201 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
204 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
205 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
206 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
207 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
208 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
213 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
216 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
217 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
218 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
219 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
222 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
225 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
226 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
227 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
228 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
229 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
233 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
237 class PyTrampoline_Water_ForceField :
public Water_ForceField {
239 using Water_ForceField::Water_ForceField;
241 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& icycle)
override {
246 nr, np, nm, rdim, icycle
250 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
259 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
260 const int& rdim)
override {
265 V, dV, ddV, R, P, flag, rdim
269 int nspec()
override {
278 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
279 const int& rdim,
const int& itraj,
const int& isamp)
override {
284 V, dV, ddV, R, P, flag, rdim, itraj, isamp
288 int CheckForceField()
override {
297 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
298 const int& itraj,
const int& isamp)
override {
303 ofs0, nr, np, nm, rdim, itraj, isamp
308 py::class_<Water_ForceField, BO_ForceField, PyTrampoline_Water_ForceField>(models_m,
"Water_ForceField", py::dynamic_attr())
309 .def(py::init<const Param&>())
310 .def(py::init<const std::string&>())
311 .def(
"ref_charge_arr", &Water_ForceField::ref_charge_arr, py::return_value_policy::reference_internal)
312 .def(
"ref_pbox", &Water_ForceField::ref_pbox, py::return_value_policy::reference_internal)
313 .def_static(
"name", &Water_ForceField::name)
314 .def(
"ForceField_init", [](Water_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
315 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
316 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
319 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, icycle);
322 .
def(
"ForceField_spec", [](Water_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
323 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
324 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
326 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
329 .
def(
"ForceField_npes", [](Water_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
330 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
331 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
332 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
333 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
336 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
339 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
340 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
341 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
342 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
343 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
344 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
345 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
348 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
351 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
352 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
353 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
355 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
358 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
359 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
360 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
361 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
362 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
363 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
366 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
369 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
370 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
371 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
372 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
373 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
378 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
381 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
382 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
383 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
384 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
387 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
390 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
391 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
392 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
393 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
394 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
398 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
402 class PyTrampoline_SmallMol_ForceField :
public SmallMol_ForceField {
404 using SmallMol_ForceField::SmallMol_ForceField;
406 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& icycle)
override {
411 nr, np, nm, rdim, icycle
415 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
424 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
425 const int& rdim)
override {
430 V, dV, ddV, R, P, flag, rdim
434 int nspec()
override {
443 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
444 const int& rdim,
const int& itraj,
const int& isamp)
override {
449 V, dV, ddV, R, P, flag, rdim, itraj, isamp
453 int CheckForceField()
override {
462 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
463 const int& itraj,
const int& isamp)
override {
468 ofs0, nr, np, nm, rdim, itraj, isamp
473 py::class_<SmallMol_ForceField, BO_ForceField, PyTrampoline_SmallMol_ForceField>(models_m,
"SmallMol_ForceField", py::dynamic_attr())
474 .def(py::init<const Param&>())
475 .def(py::init<const std::string&>())
476 .def_static(
"name", &SmallMol_ForceField::name)
477 .def(
"ForceField_init", [](SmallMol_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
478 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
479 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
482 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, icycle);
485 .
def(
"ForceField_spec", [](SmallMol_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
486 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
487 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
489 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
492 .
def(
"ForceField_npes", [](SmallMol_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
493 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
494 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
495 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
496 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
499 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
502 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
503 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
504 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
505 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
506 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
507 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
508 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
511 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
514 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
515 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
516 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
518 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
521 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
522 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
523 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
524 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
525 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
526 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
529 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
532 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
533 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
534 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
535 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
536 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
541 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
544 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
545 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
546 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
547 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
550 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
553 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
554 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
555 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
556 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
557 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
561 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
565 class PyTrampoline_SCTEST_ForceField :
public SCTEST_ForceField {
567 using SCTEST_ForceField::SCTEST_ForceField;
569 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& icycle)
override {
574 nr, np, nm, rdim, icycle
578 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
587 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
588 const int& rdim)
override {
593 V, dV, ddV, R, P, flag, rdim
597 int nspec()
override {
606 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
607 const int& rdim,
const int& itraj,
const int& isamp)
override {
612 V, dV, ddV, R, P, flag, rdim, itraj, isamp
616 int CheckForceField()
override {
625 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
626 const int& itraj,
const int& isamp)
override {
631 ofs0, nr, np, nm, rdim, itraj, isamp
636 py::class_<SCTEST_ForceField, BO_ForceField, PyTrampoline_SCTEST_ForceField>(models_m,
"SCTEST_ForceField", py::dynamic_attr())
637 .def(py::init<const Param&>())
638 .def(py::init<const std::string&>())
639 .def_static(
"name", &SCTEST_ForceField::name)
640 .def(
"ForceField_init", [](SCTEST_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
641 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
642 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
645 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, icycle);
648 .
def(
"ForceField_spec", [](SCTEST_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
649 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
650 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
652 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
655 .
def(
"ForceField_npes", [](SCTEST_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
656 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
657 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
658 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
659 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
662 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
665 .
def(
"ForceField_npes_SC1D", [](SCTEST_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
666 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
667 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
668 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
669 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
672 return self.ForceField_npes_SC1D(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
675 .
def(
"ForceField_npes_SC2D", [](SCTEST_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
676 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
677 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
678 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
679 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
682 return self.ForceField_npes_SC2D(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
685 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
686 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
687 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
688 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
689 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
690 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
691 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
694 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
697 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
698 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
699 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
701 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
704 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
705 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
706 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
707 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
708 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
709 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
712 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
715 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
716 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
717 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
718 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
719 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
724 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
727 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
728 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
729 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
730 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
733 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
736 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
737 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
738 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
739 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
740 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
744 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
748 class PyTrampoline_LiquidNe_ForceField :
public LiquidNe_ForceField {
750 using LiquidNe_ForceField::LiquidNe_ForceField;
752 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& icycle)
override {
757 nr, np, nm, rdim, icycle
761 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
770 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
771 const int& rdim)
override {
776 V, dV, ddV, R, P, flag, rdim
780 int nspec()
override {
789 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
790 const int& rdim,
const int& itraj,
const int& isamp)
override {
795 V, dV, ddV, R, P, flag, rdim, itraj, isamp
799 int CheckForceField()
override {
808 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
809 const int& itraj,
const int& isamp)
override {
814 ofs0, nr, np, nm, rdim, itraj, isamp
819 py::class_<LiquidNe_ForceField, BO_ForceField, PyTrampoline_LiquidNe_ForceField>(models_m,
"LiquidNe_ForceField", py::dynamic_attr())
820 .def(py::init<const Param&>())
821 .def_static(
"name", &LiquidNe_ForceField::name)
822 .def(
"ForceField_init", [](LiquidNe_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
823 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
824 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
827 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, icycle);
830 .
def(
"ForceField_spec", [](LiquidNe_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
831 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
832 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
834 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
837 .
def(
"ForceField_npes", [](LiquidNe_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
838 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
839 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
840 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
841 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
844 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
847 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
848 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
849 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
850 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
851 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
852 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
853 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
856 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
859 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
860 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
861 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
863 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
866 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
867 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
868 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
869 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
870 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
871 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
874 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
877 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
878 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
879 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
880 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
881 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
886 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
889 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
890 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
891 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
892 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
895 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
898 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
899 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
900 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
901 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
902 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
906 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
910 class PyTrampoline_MD1D_ForceField :
public MD1D_ForceField {
912 using MD1D_ForceField::MD1D_ForceField;
914 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& icycle)
override {
919 nr, np, nm, rdim, icycle
923 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
932 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
933 const int& rdim)
override {
938 V, dV, ddV, R, P, flag, rdim
942 int nspec()
override {
951 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
952 const int& rdim,
const int& itraj,
const int& isamp)
override {
957 V, dV, ddV, R, P, flag, rdim, itraj, isamp
961 int CheckForceField()
override {
970 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
971 const int& itraj,
const int& isamp)
override {
976 ofs0, nr, np, nm, rdim, itraj, isamp
981 py::class_<MD1D_ForceField, BO_ForceField, PyTrampoline_MD1D_ForceField>(models_m,
"MD1D_ForceField", py::dynamic_attr())
982 .def(py::init<const Param&, const int&>())
983 .def(py::init<const Param&>())
984 .def(py::init<const std::string&>())
985 .def_static(
"name", &MD1D_ForceField::name)
986 .def(
"ForceField_init", [](MD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
987 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
988 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
991 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, icycle);
994 .
def(
"ForceField_spec", [](MD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
995 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
996 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
998 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
1001 .
def(
"ForceField_npes", [](MD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1002 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1003 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1004 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1005 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
1008 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
1011 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
1012 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
1013 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
1014 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
1015 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
1016 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
1017 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
1020 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
1023 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
1024 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
1025 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
1027 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
1030 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
1031 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1032 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1033 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1034 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1035 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
1038 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
1041 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1042 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1043 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1044 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1045 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
1050 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
1053 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
1054 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
1055 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
1056 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
1059 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
1062 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
1063 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
1064 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
1065 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
1066 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
1070 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
1074 class PyTrampoline_Nad_ForceField :
public Nad_ForceField {
1076 using Nad_ForceField::Nad_ForceField;
1078 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& fdim)
override {
1083 nr, np, nm, rdim, fdim
1087 int nspec()
override {
1096 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
1097 const int& rdim)
override {
1102 V, dV, ddV, R, P, flag, rdim
1106 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
1107 const int& rdim,
const int& itraj,
const int& isamp)
override {
1112 V, dV, ddV, R, P, flag, rdim, itraj, isamp
1116 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm, kids_complex* erho, kids_complex* eeac,
1117 int& eocc,
const int& rdim,
const int& fdim,
const int& itraj)
override {
1122 nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj
1126 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
1127 const int& fdim)
override {
1132 V, dV, ddV, R, flag, rdim, fdim
1136 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
1137 const int& fdim,
const int& itraj,
const int& isamp)
override {
1142 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
1146 int CheckForceField()
override {
1155 int ForceField_write(std::ofstream& ofs0, std::ofstream& ofs1, kids_real* nr, kids_real* np, kids_real* nm,
1156 kids_complex* erho, kids_complex* eeac,
int& eocc,
const int& rdim,
const int& fdim,
1157 const int& itraj,
const int& isamp)
override {
1162 ofs0, ofs1, nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj, isamp
1166 int reduce_force(kids_real* fx, kids_complex* rho, kids_real* dH,
const int& rdim,
const int& fdim)
override {
1171 fx, rho, dH, rdim, fdim
1175 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& itraj)
override {
1180 nr, np, nm, rdim, itraj
1184 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
1193 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
1194 const int& itraj,
const int& isamp)
override {
1199 ofs0, nr, np, nm, rdim, itraj, isamp
1204 py::class_<Nad_ForceField, BO_ForceField, PyTrampoline_Nad_ForceField>(models_m,
"Nad_ForceField", py::dynamic_attr())
1205 .def(py::init<const Param&>())
1206 .def(py::init<const std::string&>())
1207 .def(
"ref_mod_eac", &Nad_ForceField::ref_mod_eac, py::return_value_policy::reference_internal)
1208 .def(
"ref_mod_rho", &Nad_ForceField::ref_mod_rho, py::return_value_policy::reference_internal)
1209 .def(
"get_F",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::get_F))
1210 .def(
"ForceField_spec", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
1211 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
1212 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
1215 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, fdim);
1218 .
def(
"nspec",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::nspec))
1219 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1220 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1221 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1222 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1223 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
1226 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
1229 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1230 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1231 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1232 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1233 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
1238 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
1241 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1242 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1243 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1244 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1248 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
1251 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1252 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1253 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1254 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1260 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
1263 .
def(
"CheckForceField",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::CheckForceField))
1264 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
1265 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
1266 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
1267 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
1268 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
1269 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
1270 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
1273 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
1276 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
1277 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
1278 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
1280 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
1283 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
1284 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1285 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1286 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1287 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1288 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
1291 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
1294 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1295 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1296 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1297 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1298 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
1303 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
1306 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
1307 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
1308 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
1309 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
1312 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
1315 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
1316 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
1317 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
1318 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
1319 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
1323 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
1327 class PyTrampoline_SystemBath_ForceField :
public SystemBath_ForceField {
1329 using SystemBath_ForceField::SystemBath_ForceField;
1331 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm, kids_complex* erho, kids_complex* eeac,
1332 int& eocc,
const int& rdim,
const int& fdim,
const int& icycle)
override {
1335 SystemBath_ForceField,
1337 nr, np, nm, erho, eeac, eocc, rdim, fdim, icycle
1341 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
1342 const int& rdim)
override {
1345 SystemBath_ForceField,
1347 V, dV, ddV, R, P, flag, rdim
1351 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
1352 const int& fdim,
const int& itraj,
const int& isamp)
override {
1355 SystemBath_ForceField,
1357 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
1361 int ForceField_epes_SpinBoson(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
1362 const int& rdim,
const int& fdim,
const int& itraj,
const int& isamp)
override {
1365 SystemBath_ForceField,
1366 ForceField_epes_SpinBoson,
1367 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
1371 int ForceField_epes_SiteExciton(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
1372 const int& rdim,
const int& fdim,
const int& itraj,
const int& isamp)
override {
1375 SystemBath_ForceField,
1376 ForceField_epes_SiteExciton,
1377 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
1381 int ForceField_epes_General(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
1382 const int& rdim,
const int& fdim,
const int& itraj,
const int& isamp)
override {
1385 SystemBath_ForceField,
1386 ForceField_epes_General,
1387 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
1391 int reduce_force(kids_real* fx, kids_complex* rho, kids_real* dH,
const int& rdim,
const int& fdim)
override {
1394 SystemBath_ForceField,
1396 fx, rho, dH, rdim, fdim
1400 int get_nbath()
override {
1403 SystemBath_ForceField,
1409 int get_Nb()
override {
1412 SystemBath_ForceField,
1418 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& fdim)
override {
1423 nr, np, nm, rdim, fdim
1427 int nspec()
override {
1436 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
1437 const int& rdim,
const int& itraj,
const int& isamp)
override {
1442 V, dV, ddV, R, P, flag, rdim, itraj, isamp
1446 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
1447 const int& fdim)
override {
1452 V, dV, ddV, R, flag, rdim, fdim
1456 int CheckForceField()
override {
1465 int ForceField_write(std::ofstream& ofs0, std::ofstream& ofs1, kids_real* nr, kids_real* np, kids_real* nm,
1466 kids_complex* erho, kids_complex* eeac,
int& eocc,
const int& rdim,
const int& fdim,
1467 const int& itraj,
const int& isamp)
override {
1472 ofs0, ofs1, nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj, isamp
1476 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& itraj)
override {
1481 nr, np, nm, rdim, itraj
1485 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
1494 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
1495 const int& itraj,
const int& isamp)
override {
1500 ofs0, nr, np, nm, rdim, itraj, isamp
1505 py::class_<SystemBath_ForceField, Nad_ForceField, PyTrampoline_SystemBath_ForceField>(models_m,
"SystemBath_ForceField", py::dynamic_attr())
1506 .def(py::init<const Param&, const int&>())
1507 .def(py::init<const Param&>())
1508 .def(py::init<const std::string&>())
1509 .def_readwrite(
"L", &SystemBath_ForceField::L)
1510 .def(
"ref_Hsys", &SystemBath_ForceField::ref_Hsys, py::return_value_policy::reference_internal)
1511 .def(
"ref_Q", &SystemBath_ForceField::ref_Q, py::return_value_policy::reference_internal)
1512 .def(
"ref_omegas", &SystemBath_ForceField::ref_omegas, py::return_value_policy::reference_internal)
1513 .def(
"ref_coeffs", &SystemBath_ForceField::ref_coeffs, py::return_value_policy::reference_internal)
1514 .def(
"ref_CL", &SystemBath_ForceField::ref_CL, py::return_value_policy::reference_internal)
1515 .def(
"ref_QL", &SystemBath_ForceField::ref_QL, py::return_value_policy::reference_internal)
1516 .def(
"ref_Xnj", &SystemBath_ForceField::ref_Xnj, py::return_value_policy::reference_internal)
1517 .def_static(
"name", &SystemBath_ForceField::name)
1518 .def(
"ForceField_npes", [](SystemBath_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1519 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1520 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1521 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1522 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
1525 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
1528 .
def(
"ForceField_epes", [](SystemBath_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1529 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1530 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1531 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1537 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
1540 .
def(
"ForceField_epes_SpinBoson", [](SystemBath_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1541 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1542 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1543 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1549 return self.ForceField_epes_SpinBoson(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
1552 .
def(
"ForceField_epes_SiteExciton", [](SystemBath_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1553 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1554 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1555 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1561 return self.ForceField_epes_SiteExciton(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
1564 .
def(
"ForceField_epes_General", [](SystemBath_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1565 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1566 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1567 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1573 return self.ForceField_epes_General(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
1576 .
def(
"get_nbath",
static_cast<int (SystemBath_ForceField::*)()
>(&SystemBath_ForceField::get_nbath))
1577 .
def(
"get_Nb",
static_cast<int (SystemBath_ForceField::*)()
>(&SystemBath_ForceField::get_Nb))
1578 .
def(
"get_F",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::get_F))
1579 .
def(
"ForceField_spec", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
1580 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
1581 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
1584 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, fdim);
1587 .
def(
"nspec",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::nspec))
1588 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1589 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1590 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1591 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1592 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
1595 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
1598 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1599 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1600 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1601 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1602 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
1607 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
1610 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1611 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1612 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1613 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1617 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
1620 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1621 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1622 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1623 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1629 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
1632 .
def(
"CheckForceField",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::CheckForceField))
1633 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
1634 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
1635 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
1636 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
1637 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
1638 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
1639 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
1642 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
1645 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
1646 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
1647 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
1649 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
1652 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
1653 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1654 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1655 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1656 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1657 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
1660 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
1663 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1664 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1665 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1666 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1667 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
1672 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
1675 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
1676 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
1677 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
1678 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
1681 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
1684 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
1685 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
1686 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
1687 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
1688 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
1692 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
1696 class PyTrampoline_NAD1D_ForceField :
public NAD1D_ForceField {
1698 using NAD1D_ForceField::NAD1D_ForceField;
1700 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm, kids_complex* erho, kids_complex* eeac,
1701 int& eocc,
const int& rdim,
const int& fdim,
const int& icycle)
override {
1706 nr, np, nm, erho, eeac, eocc, rdim, fdim, icycle
1710 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& fdim)
override {
1715 nr, np, nm, rdim, fdim
1719 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
1720 const int& rdim)
override {
1725 V, dV, ddV, R, P, flag, rdim
1729 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
1730 const int& fdim)
override {
1735 V, dV, ddV, R, flag, rdim, fdim
1739 int NAD1D_plot()
override {
1748 int ForceField_epes_Morse3A(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
1749 const int& rdim,
const int& fdim)
override {
1753 ForceField_epes_Morse3A,
1754 V, dV, ddV, R, flag, rdim, fdim
1758 int ForceField_epes_Morse3B(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
1759 const int& rdim,
const int& fdim)
override {
1763 ForceField_epes_Morse3B,
1764 V, dV, ddV, R, flag, rdim, fdim
1768 int ForceField_epes_Morse3C(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
1769 const int& rdim,
const int& fdim)
override {
1773 ForceField_epes_Morse3C,
1774 V, dV, ddV, R, flag, rdim, fdim
1778 int ForceField_epes_Morse15(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
1779 const int& rdim,
const int& fdim)
override {
1783 ForceField_epes_Morse15,
1784 V, dV, ddV, R, flag, rdim, fdim
1788 int ForceField_epes_IVP1(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
1789 const int& rdim,
const int& fdim)
override {
1793 ForceField_epes_IVP1,
1794 V, dV, ddV, R, flag, rdim, fdim
1798 int ForceField_epes_IVP2(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
1799 const int& rdim,
const int& fdim)
override {
1803 ForceField_epes_IVP2,
1804 V, dV, ddV, R, flag, rdim, fdim
1808 int ForceField_epes_IVP3(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
1809 const int& rdim,
const int& fdim)
override {
1813 ForceField_epes_IVP3,
1814 V, dV, ddV, R, flag, rdim, fdim
1818 int ForceField_epes_IVP4(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
1819 const int& rdim,
const int& fdim)
override {
1823 ForceField_epes_IVP4,
1824 V, dV, ddV, R, flag, rdim, fdim
1828 int ForceField_epes_CL1D(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
1829 const int& rdim,
const int& fdim)
override {
1833 ForceField_epes_CL1D,
1834 V, dV, ddV, R, flag, rdim, fdim
1838 int ForceField_epes_JC1D(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
1839 const int& rdim,
const int& fdim)
override {
1843 ForceField_epes_JC1D,
1844 V, dV, ddV, R, flag, rdim, fdim
1848 int ForceField_epes_NA_I(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
1849 const int& rdim,
const int& fdim)
override {
1853 ForceField_epes_NA_I,
1854 V, dV, ddV, R, flag, rdim, fdim
1858 int nspec()
override {
1867 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
1868 const int& rdim,
const int& itraj,
const int& isamp)
override {
1873 V, dV, ddV, R, P, flag, rdim, itraj, isamp
1877 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
1878 const int& fdim,
const int& itraj,
const int& isamp)
override {
1883 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
1887 int CheckForceField()
override {
1896 int ForceField_write(std::ofstream& ofs0, std::ofstream& ofs1, kids_real* nr, kids_real* np, kids_real* nm,
1897 kids_complex* erho, kids_complex* eeac,
int& eocc,
const int& rdim,
const int& fdim,
1898 const int& itraj,
const int& isamp)
override {
1903 ofs0, ofs1, nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj, isamp
1907 int reduce_force(kids_real* fx, kids_complex* rho, kids_real* dH,
const int& rdim,
const int& fdim)
override {
1912 fx, rho, dH, rdim, fdim
1916 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& itraj)
override {
1921 nr, np, nm, rdim, itraj
1925 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
1934 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
1935 const int& itraj,
const int& isamp)
override {
1940 ofs0, nr, np, nm, rdim, itraj, isamp
1945 py::class_<NAD1D_ForceField, Nad_ForceField, PyTrampoline_NAD1D_ForceField>(models_m,
"NAD1D_ForceField", py::dynamic_attr())
1946 .def(py::init<const Param&, const int&>())
1947 .def(py::init<const Param&>())
1948 .def(py::init<const std::string&>())
1949 .def_static(
"name", &NAD1D_ForceField::name)
1950 .def(
"ForceField_spec", [](NAD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
1951 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
1952 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
1955 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, fdim);
1958 .
def(
"ForceField_npes", [](NAD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1959 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1960 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1961 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1962 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
1965 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
1968 .
def(
"ForceField_epes", [](NAD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1969 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1970 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1971 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1975 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
1978 .
def(
"NAD1D_plot",
static_cast<int (NAD1D_ForceField::*)()
>(&NAD1D_ForceField::NAD1D_plot))
1979 .
def(
"ForceField_epes_Morse3A", [](NAD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1980 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1981 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1982 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1986 return self.ForceField_epes_Morse3A(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
1989 .
def(
"ForceField_epes_Morse3B", [](NAD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
1990 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
1991 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
1992 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
1996 return self.ForceField_epes_Morse3B(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
1999 .
def(
"ForceField_epes_Morse3C", [](NAD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2000 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2001 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2002 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2006 return self.ForceField_epes_Morse3C(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2009 .
def(
"ForceField_epes_Morse15", [](NAD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2010 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2011 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2012 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2016 return self.ForceField_epes_Morse15(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2019 .
def(
"ForceField_epes_IVP1", [](NAD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2020 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2021 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2022 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2026 return self.ForceField_epes_IVP1(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2029 .
def(
"ForceField_epes_IVP2", [](NAD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2030 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2031 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2032 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2036 return self.ForceField_epes_IVP2(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2039 .
def(
"ForceField_epes_IVP3", [](NAD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2040 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2041 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2042 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2046 return self.ForceField_epes_IVP3(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2049 .
def(
"ForceField_epes_IVP4", [](NAD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2050 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2051 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2052 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2056 return self.ForceField_epes_IVP4(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2059 .
def(
"ForceField_epes_CL1D", [](NAD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2060 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2061 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2062 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2066 return self.ForceField_epes_CL1D(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2069 .
def(
"ForceField_epes_JC1D", [](NAD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2070 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2071 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2072 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2076 return self.ForceField_epes_JC1D(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2079 .
def(
"ForceField_epes_NA_I", [](NAD1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2080 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2081 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2082 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2086 return self.ForceField_epes_NA_I(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2089 .
def(
"get_F",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::get_F))
2090 .
def(
"ForceField_spec", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
2091 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
2092 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
2095 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, fdim);
2098 .
def(
"nspec",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::nspec))
2099 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2100 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2101 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2102 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2103 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
2106 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
2109 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2110 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2111 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2112 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2113 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
2118 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
2121 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2122 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2123 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2124 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2128 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2131 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2132 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2133 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2134 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2140 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
2143 .
def(
"CheckForceField",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::CheckForceField))
2144 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
2145 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
2146 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
2147 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
2148 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
2149 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
2150 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
2153 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
2156 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
2157 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
2158 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
2160 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
2163 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
2164 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2165 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2166 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2167 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2168 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
2171 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
2174 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2175 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2176 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2177 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2178 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
2183 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
2186 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
2187 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
2188 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
2189 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
2192 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
2195 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
2196 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
2197 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
2198 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
2199 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
2203 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
2207 class PyTrampoline_Spectrum_NAD_ForceField :
public Spectrum_NAD_ForceField {
2209 using Spectrum_NAD_ForceField::Spectrum_NAD_ForceField;
2211 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm, kids_complex* erho, kids_complex* eeac,
2212 int& eocc,
const int& rdim,
const int& fdim,
const int& icycle)
override {
2215 Spectrum_NAD_ForceField,
2217 nr, np, nm, erho, eeac, eocc, rdim, fdim, icycle
2221 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
2222 const int& rdim)
override {
2225 Spectrum_NAD_ForceField,
2227 V, dV, ddV, R, P, flag, rdim
2231 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
2232 const int& fdim)
override {
2235 Spectrum_NAD_ForceField,
2237 V, dV, ddV, R, flag, rdim, fdim
2241 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& fdim)
override {
2246 nr, np, nm, rdim, fdim
2250 int nspec()
override {
2259 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
2260 const int& rdim,
const int& itraj,
const int& isamp)
override {
2265 V, dV, ddV, R, P, flag, rdim, itraj, isamp
2269 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
2270 const int& fdim,
const int& itraj,
const int& isamp)
override {
2275 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
2279 int CheckForceField()
override {
2288 int ForceField_write(std::ofstream& ofs0, std::ofstream& ofs1, kids_real* nr, kids_real* np, kids_real* nm,
2289 kids_complex* erho, kids_complex* eeac,
int& eocc,
const int& rdim,
const int& fdim,
2290 const int& itraj,
const int& isamp)
override {
2295 ofs0, ofs1, nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj, isamp
2299 int reduce_force(kids_real* fx, kids_complex* rho, kids_real* dH,
const int& rdim,
const int& fdim)
override {
2304 fx, rho, dH, rdim, fdim
2308 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& itraj)
override {
2313 nr, np, nm, rdim, itraj
2317 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
2326 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
2327 const int& itraj,
const int& isamp)
override {
2332 ofs0, nr, np, nm, rdim, itraj, isamp
2337 py::class_<Spectrum_NAD_ForceField, Nad_ForceField, PyTrampoline_Spectrum_NAD_ForceField>(models_m,
"Spectrum_NAD_ForceField", py::dynamic_attr())
2338 .def(py::init<const Param&>())
2339 .def(py::init<const std::string&>())
2340 .def_readwrite(
"first_call", &Spectrum_NAD_ForceField::first_call)
2341 .def_readwrite(
"Fminus1", &Spectrum_NAD_ForceField::Fminus1)
2342 .def_readwrite(
"ground_shift", &Spectrum_NAD_ForceField::ground_shift)
2343 .def(
"ref_workr_v", &Spectrum_NAD_ForceField::ref_workr_v, py::return_value_policy::reference_internal)
2344 .def(
"ref_workr_dv", &Spectrum_NAD_ForceField::ref_workr_dv, py::return_value_policy::reference_internal)
2345 .def_static(
"name", &Spectrum_NAD_ForceField::name)
2346 .def(
"ForceField_npes", [](Spectrum_NAD_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2347 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2348 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2349 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2350 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
2353 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
2356 .
def(
"ForceField_epes", [](Spectrum_NAD_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2357 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2358 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2359 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2363 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2366 .
def(
"get_F",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::get_F))
2367 .
def(
"ForceField_spec", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
2368 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
2369 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
2372 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, fdim);
2375 .
def(
"nspec",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::nspec))
2376 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2377 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2378 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2379 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2380 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
2383 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
2386 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2387 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2388 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2389 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2390 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
2395 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
2398 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2399 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2400 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2401 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2405 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2408 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2409 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2410 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2411 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2417 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
2420 .
def(
"CheckForceField",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::CheckForceField))
2421 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
2422 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
2423 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
2424 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
2425 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
2426 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
2427 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
2430 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
2433 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
2434 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
2435 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
2437 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
2440 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
2441 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2442 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2443 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2444 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2445 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
2448 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
2451 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2452 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2453 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2454 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2455 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
2460 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
2463 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
2464 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
2465 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
2466 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
2469 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
2472 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
2473 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
2474 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
2475 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
2476 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
2480 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
2484 class PyTrampoline_LVCM_ForceField :
public LVCM_ForceField {
2486 using LVCM_ForceField::LVCM_ForceField;
2488 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm, kids_complex* erho, kids_complex* eeac,
2489 int& eocc,
const int& rdim,
const int& fdim,
const int& icycle)
override {
2494 nr, np, nm, erho, eeac, eocc, rdim, fdim, icycle
2498 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
2499 const int& rdim)
override {
2504 V, dV, ddV, R, P, flag, rdim
2508 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
2509 const int& fdim)
override {
2514 V, dV, ddV, R, flag, rdim, fdim
2518 int ForceField_epes_PYR(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
2519 const int& rdim,
const int& fdim)
override {
2523 ForceField_epes_PYR,
2524 V, dV, ddV, R, flag, rdim, fdim
2528 int ForceField_epes_CrCO5_2(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
2529 const int& rdim,
const int& fdim)
override {
2533 ForceField_epes_CrCO5_2,
2534 V, dV, ddV, R, flag, rdim, fdim
2538 int ForceField_epes_CrCO5_5(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
2539 const int& rdim,
const int& fdim)
override {
2543 ForceField_epes_CrCO5_5,
2544 V, dV, ddV, R, flag, rdim, fdim
2548 int ForceField_epes_BEN_5(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
2549 const int& rdim,
const int& fdim)
override {
2553 ForceField_epes_BEN_5,
2554 V, dV, ddV, R, flag, rdim, fdim
2558 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& fdim)
override {
2563 nr, np, nm, rdim, fdim
2567 int nspec()
override {
2576 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
2577 const int& rdim,
const int& itraj,
const int& isamp)
override {
2582 V, dV, ddV, R, P, flag, rdim, itraj, isamp
2586 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
2587 const int& fdim,
const int& itraj,
const int& isamp)
override {
2592 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
2596 int CheckForceField()
override {
2605 int ForceField_write(std::ofstream& ofs0, std::ofstream& ofs1, kids_real* nr, kids_real* np, kids_real* nm,
2606 kids_complex* erho, kids_complex* eeac,
int& eocc,
const int& rdim,
const int& fdim,
2607 const int& itraj,
const int& isamp)
override {
2612 ofs0, ofs1, nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj, isamp
2616 int reduce_force(kids_real* fx, kids_complex* rho, kids_real* dH,
const int& rdim,
const int& fdim)
override {
2621 fx, rho, dH, rdim, fdim
2625 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& itraj)
override {
2630 nr, np, nm, rdim, itraj
2634 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
2643 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
2644 const int& itraj,
const int& isamp)
override {
2649 ofs0, nr, np, nm, rdim, itraj, isamp
2654 py::class_<LVCM_ForceField, Nad_ForceField, PyTrampoline_LVCM_ForceField>(models_m,
"LVCM_ForceField", py::dynamic_attr())
2655 .def(py::init<const Param&, const int&>())
2656 .def(py::init<const Param&>())
2657 .def(py::init<const std::string&>())
2658 .def(
"ref_Hsys", &LVCM_ForceField::ref_Hsys, py::return_value_policy::reference_internal)
2659 .def(
"ref_ECI", &LVCM_ForceField::ref_ECI, py::return_value_policy::reference_internal)
2660 .def(
"ref_KCI", &LVCM_ForceField::ref_KCI, py::return_value_policy::reference_internal)
2661 .def_static(
"name", &LVCM_ForceField::name)
2662 .def(
"ForceField_npes", [](LVCM_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2663 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2664 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2665 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2666 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
2669 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
2672 .
def(
"ForceField_epes", [](LVCM_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2673 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2674 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2675 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2679 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2682 .
def(
"ForceField_epes_PYR", [](LVCM_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2683 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2684 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2685 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2689 return self.ForceField_epes_PYR(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2692 .
def(
"ForceField_epes_CrCO5_2", [](LVCM_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2693 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2694 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2695 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2699 return self.ForceField_epes_CrCO5_2(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2702 .
def(
"ForceField_epes_CrCO5_5", [](LVCM_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2703 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2704 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2705 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2709 return self.ForceField_epes_CrCO5_5(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2712 .
def(
"ForceField_epes_BEN_5", [](LVCM_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2713 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2714 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2715 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2719 return self.ForceField_epes_BEN_5(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2722 .
def(
"get_F",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::get_F))
2723 .
def(
"ForceField_spec", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
2724 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
2725 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
2728 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, fdim);
2731 .
def(
"nspec",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::nspec))
2732 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2733 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2734 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2735 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2736 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
2739 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
2742 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2743 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2744 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2745 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2746 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
2751 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
2754 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2755 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2756 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2757 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2761 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
2764 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2765 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2766 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2767 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2773 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
2776 .
def(
"CheckForceField",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::CheckForceField))
2777 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
2778 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
2779 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
2780 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
2781 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
2782 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
2783 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
2786 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
2789 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
2790 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
2791 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
2793 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
2796 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
2797 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2798 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2799 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2800 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2801 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
2804 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
2807 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
2808 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
2809 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
2810 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
2811 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
2816 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
2819 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
2820 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
2821 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
2822 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
2825 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
2828 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
2829 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
2830 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
2831 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
2832 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
2836 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
2840 class PyTrampoline_ManySite_ForceField :
public ManySite_ForceField {
2842 using ManySite_ForceField::ManySite_ForceField;
2844 int ForceField_heff(kids_complex* H, kids_complex* rhos,
const int& mdim,
const int& fdim)
override {
2847 ManySite_ForceField,
2853 int ForceField_heff_Ising(kids_complex* H, kids_complex* rhos,
const int& mdim,
const int& fdim)
override {
2856 ManySite_ForceField,
2857 ForceField_heff_Ising,
2862 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& fdim)
override {
2867 nr, np, nm, rdim, fdim
2871 int nspec()
override {
2880 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
2881 const int& rdim)
override {
2886 V, dV, ddV, R, P, flag, rdim
2890 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
2891 const int& rdim,
const int& itraj,
const int& isamp)
override {
2896 V, dV, ddV, R, P, flag, rdim, itraj, isamp
2900 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm, kids_complex* erho, kids_complex* eeac,
2901 int& eocc,
const int& rdim,
const int& fdim,
const int& itraj)
override {
2906 nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj
2910 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
2911 const int& fdim)
override {
2916 V, dV, ddV, R, flag, rdim, fdim
2920 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
2921 const int& fdim,
const int& itraj,
const int& isamp)
override {
2926 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
2930 int CheckForceField()
override {
2939 int ForceField_write(std::ofstream& ofs0, std::ofstream& ofs1, kids_real* nr, kids_real* np, kids_real* nm,
2940 kids_complex* erho, kids_complex* eeac,
int& eocc,
const int& rdim,
const int& fdim,
2941 const int& itraj,
const int& isamp)
override {
2946 ofs0, ofs1, nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj, isamp
2950 int reduce_force(kids_real* fx, kids_complex* rho, kids_real* dH,
const int& rdim,
const int& fdim)
override {
2955 fx, rho, dH, rdim, fdim
2959 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& itraj)
override {
2964 nr, np, nm, rdim, itraj
2968 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
2977 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
2978 const int& itraj,
const int& isamp)
override {
2983 ofs0, nr, np, nm, rdim, itraj, isamp
2988 py::class_<ManySite_ForceField, Nad_ForceField, PyTrampoline_ManySite_ForceField>(models_m,
"ManySite_ForceField", py::dynamic_attr())
2989 .def(py::init<const Param&>())
2990 .def(py::init<const std::string&>())
2991 .def_readwrite(
"M", &ManySite_ForceField::M)
2992 .def_readwrite(
"Jp", &ManySite_ForceField::Jp)
2993 .def_readwrite(
"Jz", &ManySite_ForceField::Jz)
2994 .def_readwrite(
"alpha", &ManySite_ForceField::alpha)
2995 .def_readwrite(
"omega", &ManySite_ForceField::omega)
2996 .def(
"ref_JpMat", &ManySite_ForceField::ref_JpMat, py::return_value_policy::reference_internal)
2997 .def(
"ref_JzMat", &ManySite_ForceField::ref_JzMat, py::return_value_policy::reference_internal)
2998 .def(
"ref_redX", &ManySite_ForceField::ref_redX, py::return_value_policy::reference_internal)
2999 .def(
"ref_redY", &ManySite_ForceField::ref_redY, py::return_value_policy::reference_internal)
3000 .def(
"ref_redZ", &ManySite_ForceField::ref_redZ, py::return_value_policy::reference_internal)
3001 .def_static(
"name", &ManySite_ForceField::name)
3002 .def(
"get_M",
static_cast<int (ManySite_ForceField::*)()
>(&ManySite_ForceField::get_M))
3003 .def(
"get_F",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::get_F))
3004 .def(
"ForceField_spec", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3005 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3006 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3009 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, fdim);
3012 .
def(
"nspec",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::nspec))
3013 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3014 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3015 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3016 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3017 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
3020 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
3023 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3024 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3025 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3026 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3027 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
3032 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
3035 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3036 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3037 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3038 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3042 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
3045 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3046 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3047 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3048 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3054 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
3057 .
def(
"CheckForceField",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::CheckForceField))
3058 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
3059 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
3060 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
3061 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
3062 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3063 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3064 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3067 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
3070 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3071 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3072 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3074 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
3077 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
3078 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3079 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3080 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3081 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3082 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
3085 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
3088 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3089 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3090 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3091 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3092 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
3097 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
3100 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
3101 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3102 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3103 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3106 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
3109 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
3110 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
3111 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3112 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3113 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3117 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
3121 class PyTrampoline_Scatter1D_ForceField :
public Scatter1D_ForceField {
3123 using Scatter1D_ForceField::Scatter1D_ForceField;
3125 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm, kids_complex* erho, kids_complex* eeac,
3126 int& eocc,
const int& rdim,
const int& fdim,
const int& icycle)
override {
3129 Scatter1D_ForceField,
3131 nr, np, nm, erho, eeac, eocc, rdim, fdim, icycle
3135 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& fdim)
override {
3138 Scatter1D_ForceField,
3140 nr, np, nm, rdim, fdim
3144 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
3145 const int& rdim)
override {
3148 Scatter1D_ForceField,
3150 V, dV, ddV, R, P, flag, rdim
3154 int Scatter1D_plot(
const double& Xrange)
override {
3157 Scatter1D_ForceField,
3163 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
3164 const int& fdim)
override {
3167 Scatter1D_ForceField,
3169 V, dV, ddV, R, flag, rdim, fdim
3173 int ForceField_epes_SAC(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
3174 const int& rdim,
const int& fdim)
override {
3177 Scatter1D_ForceField,
3178 ForceField_epes_SAC,
3179 V, dV, ddV, R, flag, rdim, fdim
3183 int ForceField_epes_SAC2(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
3184 const int& rdim,
const int& fdim)
override {
3187 Scatter1D_ForceField,
3188 ForceField_epes_SAC2,
3189 V, dV, ddV, R, flag, rdim, fdim
3193 int ForceField_epes_DAC(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
3194 const int& rdim,
const int& fdim)
override {
3197 Scatter1D_ForceField,
3198 ForceField_epes_DAC,
3199 V, dV, ddV, R, flag, rdim, fdim
3203 int ForceField_epes_ECR(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
3204 const int& rdim,
const int& fdim)
override {
3207 Scatter1D_ForceField,
3208 ForceField_epes_ECR,
3209 V, dV, ddV, R, flag, rdim, fdim
3213 int ForceField_epes_DBG(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
3214 const int& rdim,
const int& fdim)
override {
3217 Scatter1D_ForceField,
3218 ForceField_epes_DBG,
3219 V, dV, ddV, R, flag, rdim, fdim
3223 int ForceField_epes_DAG(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
3224 const int& rdim,
const int& fdim)
override {
3227 Scatter1D_ForceField,
3228 ForceField_epes_DAG,
3229 V, dV, ddV, R, flag, rdim, fdim
3233 int ForceField_epes_DRN(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
3234 const int& rdim,
const int& fdim)
override {
3237 Scatter1D_ForceField,
3238 ForceField_epes_DRN,
3239 V, dV, ddV, R, flag, rdim, fdim
3243 int nspec()
override {
3252 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
3253 const int& rdim,
const int& itraj,
const int& isamp)
override {
3258 V, dV, ddV, R, P, flag, rdim, itraj, isamp
3262 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
3263 const int& fdim,
const int& itraj,
const int& isamp)
override {
3268 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
3272 int CheckForceField()
override {
3281 int ForceField_write(std::ofstream& ofs0, std::ofstream& ofs1, kids_real* nr, kids_real* np, kids_real* nm,
3282 kids_complex* erho, kids_complex* eeac,
int& eocc,
const int& rdim,
const int& fdim,
3283 const int& itraj,
const int& isamp)
override {
3288 ofs0, ofs1, nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj, isamp
3292 int reduce_force(kids_real* fx, kids_complex* rho, kids_real* dH,
const int& rdim,
const int& fdim)
override {
3297 fx, rho, dH, rdim, fdim
3301 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& itraj)
override {
3306 nr, np, nm, rdim, itraj
3310 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
3319 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
3320 const int& itraj,
const int& isamp)
override {
3325 ofs0, nr, np, nm, rdim, itraj, isamp
3330 py::class_<Scatter1D_ForceField, Nad_ForceField, PyTrampoline_Scatter1D_ForceField>(models_m,
"Scatter1D_ForceField", py::dynamic_attr())
3331 .def(py::init<const Param&, const int&>())
3332 .def(py::init<const Param&>())
3333 .def(py::init<const std::string&>())
3334 .def_static(
"name", &Scatter1D_ForceField::name)
3335 .def(
"ForceField_spec", [](Scatter1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3336 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3337 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3340 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, fdim);
3343 .
def(
"ForceField_npes", [](Scatter1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3344 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3345 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3346 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3347 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
3350 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
3353 .
def(
"Scatter1D_plot",
static_cast<int (Scatter1D_ForceField::*)(
const double&)
>(&Scatter1D_ForceField::Scatter1D_plot))
3354 .
def(
"ForceField_epes", [](Scatter1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3355 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3356 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3357 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3361 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
3364 .
def(
"ForceField_epes_SAC", [](Scatter1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3365 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3366 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3367 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3371 return self.ForceField_epes_SAC(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
3374 .
def(
"ForceField_epes_SAC2", [](Scatter1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3375 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3376 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3377 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3381 return self.ForceField_epes_SAC2(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
3384 .
def(
"ForceField_epes_DAC", [](Scatter1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3385 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3386 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3387 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3391 return self.ForceField_epes_DAC(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
3394 .
def(
"ForceField_epes_ECR", [](Scatter1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3395 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3396 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3397 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3401 return self.ForceField_epes_ECR(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
3404 .
def(
"ForceField_epes_DBG", [](Scatter1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3405 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3406 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3407 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3411 return self.ForceField_epes_DBG(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
3414 .
def(
"ForceField_epes_DAG", [](Scatter1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3415 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3416 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3417 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3421 return self.ForceField_epes_DAG(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
3424 .
def(
"ForceField_epes_DRN", [](Scatter1D_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3425 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3426 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3427 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3431 return self.ForceField_epes_DRN(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
3434 .
def(
"get_F",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::get_F))
3435 .
def(
"ForceField_spec", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3436 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3437 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3440 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, fdim);
3443 .
def(
"nspec",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::nspec))
3444 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3445 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3446 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3447 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3448 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
3451 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
3454 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3455 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3456 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3457 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3458 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
3463 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
3466 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3467 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3468 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3469 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3473 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
3476 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3477 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3478 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3479 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3485 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
3488 .
def(
"CheckForceField",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::CheckForceField))
3489 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
3490 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
3491 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
3492 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
3493 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3494 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3495 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3498 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
3501 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3502 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3503 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3505 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
3508 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
3509 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3510 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3511 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3512 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3513 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
3516 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
3519 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3520 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3521 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3522 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3523 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
3528 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
3531 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
3532 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3533 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3534 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3537 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
3540 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
3541 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
3542 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3543 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3544 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3548 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
3552 class PyTrampoline_PyrCav_ForceField :
public PyrCav_ForceField {
3554 using PyrCav_ForceField::PyrCav_ForceField;
3556 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm, kids_complex* erho, kids_complex* eeac,
3557 int& eocc,
const int& rdim,
const int& fdim,
const int& icycle)
override {
3562 nr, np, nm, erho, eeac, eocc, rdim, fdim, icycle
3566 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
3567 const int& rdim)
override {
3572 V, dV, ddV, R, P, flag, rdim
3576 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
3577 const int& fdim)
override {
3582 V, dV, ddV, R, flag, rdim, fdim
3586 int ForceField_epes_PC1(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
3587 const int& rdim,
const int& fdim)
override {
3591 ForceField_epes_PC1,
3592 V, dV, ddV, R, flag, rdim, fdim
3596 int ForceField_epes_PC2(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
3597 const int& rdim,
const int& fdim)
override {
3601 ForceField_epes_PC2,
3602 V, dV, ddV, R, flag, rdim, fdim
3606 int ForceField_epes_PC3(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
3607 const int& rdim,
const int& fdim)
override {
3611 ForceField_epes_PC3,
3612 V, dV, ddV, R, flag, rdim, fdim
3616 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& fdim)
override {
3621 nr, np, nm, rdim, fdim
3625 int nspec()
override {
3634 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
3635 const int& rdim,
const int& itraj,
const int& isamp)
override {
3640 V, dV, ddV, R, P, flag, rdim, itraj, isamp
3644 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
3645 const int& fdim,
const int& itraj,
const int& isamp)
override {
3650 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
3654 int CheckForceField()
override {
3663 int ForceField_write(std::ofstream& ofs0, std::ofstream& ofs1, kids_real* nr, kids_real* np, kids_real* nm,
3664 kids_complex* erho, kids_complex* eeac,
int& eocc,
const int& rdim,
const int& fdim,
3665 const int& itraj,
const int& isamp)
override {
3670 ofs0, ofs1, nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj, isamp
3674 int reduce_force(kids_real* fx, kids_complex* rho, kids_real* dH,
const int& rdim,
const int& fdim)
override {
3679 fx, rho, dH, rdim, fdim
3683 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& itraj)
override {
3688 nr, np, nm, rdim, itraj
3692 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
3701 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
3702 const int& itraj,
const int& isamp)
override {
3707 ofs0, nr, np, nm, rdim, itraj, isamp
3712 py::class_<PyrCav_ForceField, Nad_ForceField, PyTrampoline_PyrCav_ForceField>(models_m,
"PyrCav_ForceField", py::dynamic_attr())
3713 .def(py::init<const Param&, const int&>())
3714 .def(py::init<const Param&>())
3715 .def(py::init<const std::string&>())
3716 .def(
"ref_WCI", &PyrCav_ForceField::ref_WCI, py::return_value_policy::reference_internal)
3717 .def(
"ref_ECI", &PyrCav_ForceField::ref_ECI, py::return_value_policy::reference_internal)
3718 .def(
"ref_KCI", &PyrCav_ForceField::ref_KCI, py::return_value_policy::reference_internal)
3719 .def_static(
"name", &PyrCav_ForceField::name)
3720 .def(
"ForceField_npes", [](PyrCav_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3721 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3722 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3723 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3724 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
3727 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
3730 .
def(
"ForceField_epes", [](PyrCav_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3731 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3732 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3733 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3737 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
3740 .
def(
"ForceField_epes_PC1", [](PyrCav_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3741 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3742 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3743 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3747 return self.ForceField_epes_PC1(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
3750 .
def(
"ForceField_epes_PC2", [](PyrCav_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3751 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3752 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3753 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3757 return self.ForceField_epes_PC2(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
3760 .
def(
"ForceField_epes_PC3", [](PyrCav_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3761 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3762 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3763 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3767 return self.ForceField_epes_PC3(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
3770 .
def(
"get_F",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::get_F))
3771 .
def(
"ForceField_spec", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3772 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3773 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3776 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, fdim);
3779 .
def(
"nspec",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::nspec))
3780 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3781 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3782 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3783 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3784 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
3787 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
3790 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3791 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3792 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3793 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3794 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
3799 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
3802 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3803 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3804 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3805 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3809 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
3812 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3813 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3814 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3815 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3821 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
3824 .
def(
"CheckForceField",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::CheckForceField))
3825 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
3826 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
3827 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
3828 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
3829 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3830 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3831 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3834 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
3837 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3838 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3839 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3841 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
3844 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
3845 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3846 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3847 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3848 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3849 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
3852 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
3855 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
3856 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
3857 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
3858 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
3859 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
3864 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
3867 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
3868 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3869 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3870 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3873 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
3876 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
3877 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
3878 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
3879 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
3880 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
3884 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
3888 class PyTrampoline_AtomCED_ForceField :
public AtomCED_ForceField {
3890 using AtomCED_ForceField::AtomCED_ForceField;
3892 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm, kids_complex* erho, kids_complex* eeac,
3893 int& eocc,
const int& rdim,
const int& fdim,
const int& icycle)
override {
3898 nr, np, nm, erho, eeac, eocc, rdim, fdim, icycle
3902 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
3903 const int& rdim)
override {
3908 V, dV, ddV, R, P, flag, rdim
3912 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
3913 const int& fdim)
override {
3918 V, dV, ddV, R, flag, rdim, fdim
3922 int reduce_force(kids_real* fx, kids_complex* rho, kids_real* dH,
const int& rdim,
const int& fdim)
override {
3927 fx, rho, dH, rdim, fdim
3931 int get_Nb()
override {
3940 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& fdim)
override {
3945 nr, np, nm, rdim, fdim
3949 int nspec()
override {
3958 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
3959 const int& rdim,
const int& itraj,
const int& isamp)
override {
3964 V, dV, ddV, R, P, flag, rdim, itraj, isamp
3968 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
3969 const int& fdim,
const int& itraj,
const int& isamp)
override {
3974 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
3978 int CheckForceField()
override {
3987 int ForceField_write(std::ofstream& ofs0, std::ofstream& ofs1, kids_real* nr, kids_real* np, kids_real* nm,
3988 kids_complex* erho, kids_complex* eeac,
int& eocc,
const int& rdim,
const int& fdim,
3989 const int& itraj,
const int& isamp)
override {
3994 ofs0, ofs1, nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj, isamp
3998 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& itraj)
override {
4003 nr, np, nm, rdim, itraj
4007 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
4016 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
4017 const int& itraj,
const int& isamp)
override {
4022 ofs0, nr, np, nm, rdim, itraj, isamp
4027 py::class_<AtomCED_ForceField, Nad_ForceField, PyTrampoline_AtomCED_ForceField>(models_m,
"AtomCED_ForceField", py::dynamic_attr())
4028 .def(py::init<const Param&, const int&>())
4029 .def(py::init<const Param&>())
4030 .def(py::init<const std::string&>())
4031 .def(
"ref_Hsys", &AtomCED_ForceField::ref_Hsys, py::return_value_policy::reference_internal)
4032 .def(
"ref_omegas", &AtomCED_ForceField::ref_omegas, py::return_value_policy::reference_internal)
4033 .def(
"ref_coeffs", &AtomCED_ForceField::ref_coeffs, py::return_value_policy::reference_internal)
4034 .def_static(
"name", &AtomCED_ForceField::name)
4035 .def(
"ForceField_npes", [](AtomCED_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4036 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4037 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4038 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4039 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
4042 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
4045 .
def(
"ForceField_epes", [](AtomCED_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4046 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4047 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4048 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4052 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
4055 .
def(
"get_Nb",
static_cast<int (AtomCED_ForceField::*)()
>(&AtomCED_ForceField::get_Nb))
4056 .
def(
"get_F",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::get_F))
4057 .
def(
"ForceField_spec", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
4058 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
4059 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
4062 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, fdim);
4065 .
def(
"nspec",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::nspec))
4066 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4067 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4068 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4069 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4070 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
4073 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
4076 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4077 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4078 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4079 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4080 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
4085 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
4088 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4089 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4090 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4091 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4095 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
4098 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4099 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4100 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4101 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4107 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
4110 .
def(
"CheckForceField",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::CheckForceField))
4111 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
4112 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
4113 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
4114 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
4115 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
4116 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
4117 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
4120 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
4123 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
4124 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
4125 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
4127 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
4130 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
4131 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4132 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4133 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4134 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4135 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
4138 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
4141 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4142 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4143 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4144 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4145 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
4150 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
4153 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
4154 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
4155 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
4156 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
4159 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
4162 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
4163 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
4164 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
4165 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
4166 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
4170 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
4174 class PyTrampoline_ZnPc_ForceField :
public ZnPc_ForceField {
4176 using ZnPc_ForceField::ZnPc_ForceField;
4178 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm, kids_complex* erho, kids_complex* eeac,
4179 int& eocc,
const int& rdim,
const int& fdim,
const int& icycle)
override {
4184 nr, np, nm, erho, eeac, eocc, rdim, fdim, icycle
4188 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
4189 const int& rdim)
override {
4194 V, dV, ddV, R, P, flag, rdim
4198 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
4199 const int& fdim,
const int& itraj,
const int& isamp)
override {
4204 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
4208 int get_nbath()
override {
4217 int get_Nb()
override {
4226 int ForceField_epes_SpinBoson(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
4227 const int& rdim,
const int& fdim,
const int& itraj,
const int& isamp)
override {
4230 SystemBath_ForceField,
4231 ForceField_epes_SpinBoson,
4232 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
4236 int ForceField_epes_SiteExciton(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
4237 const int& rdim,
const int& fdim,
const int& itraj,
const int& isamp)
override {
4240 SystemBath_ForceField,
4241 ForceField_epes_SiteExciton,
4242 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
4246 int ForceField_epes_General(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
4247 const int& rdim,
const int& fdim,
const int& itraj,
const int& isamp)
override {
4250 SystemBath_ForceField,
4251 ForceField_epes_General,
4252 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
4256 int reduce_force(kids_real* fx, kids_complex* rho, kids_real* dH,
const int& rdim,
const int& fdim)
override {
4259 SystemBath_ForceField,
4261 fx, rho, dH, rdim, fdim
4265 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& fdim)
override {
4270 nr, np, nm, rdim, fdim
4274 int nspec()
override {
4283 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
4284 const int& rdim,
const int& itraj,
const int& isamp)
override {
4289 V, dV, ddV, R, P, flag, rdim, itraj, isamp
4293 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
4294 const int& fdim)
override {
4299 V, dV, ddV, R, flag, rdim, fdim
4303 int CheckForceField()
override {
4312 int ForceField_write(std::ofstream& ofs0, std::ofstream& ofs1, kids_real* nr, kids_real* np, kids_real* nm,
4313 kids_complex* erho, kids_complex* eeac,
int& eocc,
const int& rdim,
const int& fdim,
4314 const int& itraj,
const int& isamp)
override {
4319 ofs0, ofs1, nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj, isamp
4323 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& itraj)
override {
4328 nr, np, nm, rdim, itraj
4332 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
4341 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
4342 const int& itraj,
const int& isamp)
override {
4347 ofs0, nr, np, nm, rdim, itraj, isamp
4352 py::class_<ZnPc_ForceField, SystemBath_ForceField, PyTrampoline_ZnPc_ForceField>(models_m,
"ZnPc_ForceField", py::dynamic_attr())
4353 .def(py::init<const Param&>())
4354 .def(py::init<const std::string&>())
4355 .def(
"ref_idxarr_L", &ZnPc_ForceField::ref_idxarr_L, py::return_value_policy::reference_internal)
4356 .def(
"ref_idxarr_es", &ZnPc_ForceField::ref_idxarr_es, py::return_value_policy::reference_internal)
4357 .def(
"ref_idxarr_hs", &ZnPc_ForceField::ref_idxarr_hs, py::return_value_policy::reference_internal)
4358 .def(
"ref_dQe1", &ZnPc_ForceField::ref_dQe1, py::return_value_policy::reference_internal)
4359 .def(
"ref_dQe2", &ZnPc_ForceField::ref_dQe2, py::return_value_policy::reference_internal)
4360 .def(
"ref_dQc", &ZnPc_ForceField::ref_dQc, py::return_value_policy::reference_internal)
4361 .def(
"ref_dQa", &ZnPc_ForceField::ref_dQa, py::return_value_policy::reference_internal)
4362 .def(
"ref_w2dQe1", &ZnPc_ForceField::ref_w2dQe1, py::return_value_policy::reference_internal)
4363 .def(
"ref_w2dQe2", &ZnPc_ForceField::ref_w2dQe2, py::return_value_policy::reference_internal)
4364 .def(
"ref_w2dQc", &ZnPc_ForceField::ref_w2dQc, py::return_value_policy::reference_internal)
4365 .def(
"ref_w2dQa", &ZnPc_ForceField::ref_w2dQa, py::return_value_policy::reference_internal)
4366 .def(
"ref_Etilde", &ZnPc_ForceField::ref_Etilde, py::return_value_policy::reference_internal)
4367 .def(
"ref_Vtilde", &ZnPc_ForceField::ref_Vtilde, py::return_value_policy::reference_internal)
4368 .def(
"ref_te_tilde", &ZnPc_ForceField::ref_te_tilde, py::return_value_policy::reference_internal)
4369 .def(
"ref_th_tilde", &ZnPc_ForceField::ref_th_tilde, py::return_value_policy::reference_internal)
4370 .def(
"ref_tect_tilde", &ZnPc_ForceField::ref_tect_tilde, py::return_value_policy::reference_internal)
4371 .def(
"ref_thct_tilde", &ZnPc_ForceField::ref_thct_tilde, py::return_value_policy::reference_internal)
4372 .def(
"ref_eigen_E", &ZnPc_ForceField::ref_eigen_E, py::return_value_policy::reference_internal)
4373 .def(
"ref_eigen_T", &ZnPc_ForceField::ref_eigen_T, py::return_value_policy::reference_internal)
4374 .def_static(
"name", &ZnPc_ForceField::name)
4375 .def(
"index",
static_cast<int (ZnPc_ForceField::*)(
const int&,
const int&,
const int&)
>(&ZnPc_ForceField::index))
4376 .def(
"init_Hamiltonian",
static_cast<int (ZnPc_ForceField::*)()
>(&ZnPc_ForceField::init_Hamiltonian))
4377 .def(
"ForceField_npes", [](ZnPc_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4378 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4379 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4380 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4381 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
4384 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
4387 .
def(
"ForceField_epes", [](ZnPc_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4388 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4389 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4390 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4396 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
4399 .
def(
"get_nbath",
static_cast<int (ZnPc_ForceField::*)()
>(&ZnPc_ForceField::get_nbath))
4400 .
def(
"get_Nb",
static_cast<int (ZnPc_ForceField::*)()
>(&ZnPc_ForceField::get_Nb))
4401 .
def(
"ForceField_npes", [](SystemBath_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4402 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4403 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4404 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4405 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
4408 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
4411 .
def(
"ForceField_epes", [](SystemBath_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4412 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4413 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4414 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4420 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
4423 .
def(
"ForceField_epes_SpinBoson", [](SystemBath_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4424 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4425 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4426 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4432 return self.ForceField_epes_SpinBoson(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
4435 .
def(
"ForceField_epes_SiteExciton", [](SystemBath_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4436 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4437 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4438 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4444 return self.ForceField_epes_SiteExciton(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
4447 .
def(
"ForceField_epes_General", [](SystemBath_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4448 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4449 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4450 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4456 return self.ForceField_epes_General(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
4459 .
def(
"get_nbath",
static_cast<int (SystemBath_ForceField::*)()
>(&SystemBath_ForceField::get_nbath))
4460 .
def(
"get_Nb",
static_cast<int (SystemBath_ForceField::*)()
>(&SystemBath_ForceField::get_Nb))
4461 .
def(
"get_F",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::get_F))
4462 .
def(
"ForceField_spec", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
4463 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
4464 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
4467 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, fdim);
4470 .
def(
"nspec",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::nspec))
4471 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4472 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4473 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4474 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4475 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
4478 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
4481 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4482 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4483 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4484 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4485 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
4490 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
4493 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4494 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4495 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4496 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4500 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
4503 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4504 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4505 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4506 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4512 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
4515 .
def(
"CheckForceField",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::CheckForceField))
4516 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
4517 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
4518 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
4519 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
4520 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
4521 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
4522 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
4525 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
4528 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
4529 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
4530 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
4532 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
4535 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
4536 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4537 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4538 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4539 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4540 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
4543 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
4546 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4547 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4548 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4549 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4550 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
4555 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
4558 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
4559 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
4560 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
4561 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
4564 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
4567 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
4568 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
4569 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
4570 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
4571 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
4575 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
4579 class PyTrampoline_GAUSS16_ForceField :
public GAUSS16_ForceField {
4581 using GAUSS16_ForceField::GAUSS16_ForceField;
4583 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm, kids_complex* erho, kids_complex* eeac,
4584 int& eocc,
const int& rdim,
const int& fdim,
const int& icycle)
override {
4589 nr, np, nm, erho, eeac, eocc, rdim, fdim, icycle
4593 int ForceField_epes(kids_real* E, kids_real* dE, kids_real* ddE,
4595 const int& flag,
const int& rdim,
const int& fdim)
override {
4600 E, dE, ddE, R, flag, rdim, fdim
4604 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& fdim)
override {
4609 nr, np, nm, rdim, fdim
4613 int nspec()
override {
4622 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
4623 const int& rdim)
override {
4628 V, dV, ddV, R, P, flag, rdim
4632 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
4633 const int& rdim,
const int& itraj,
const int& isamp)
override {
4638 V, dV, ddV, R, P, flag, rdim, itraj, isamp
4642 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
4643 const int& fdim,
const int& itraj,
const int& isamp)
override {
4648 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
4652 int CheckForceField()
override {
4661 int ForceField_write(std::ofstream& ofs0, std::ofstream& ofs1, kids_real* nr, kids_real* np, kids_real* nm,
4662 kids_complex* erho, kids_complex* eeac,
int& eocc,
const int& rdim,
const int& fdim,
4663 const int& itraj,
const int& isamp)
override {
4668 ofs0, ofs1, nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj, isamp
4672 int reduce_force(kids_real* fx, kids_complex* rho, kids_real* dH,
const int& rdim,
const int& fdim)
override {
4677 fx, rho, dH, rdim, fdim
4681 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& itraj)
override {
4686 nr, np, nm, rdim, itraj
4690 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
4699 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
4700 const int& itraj,
const int& isamp)
override {
4705 ofs0, nr, np, nm, rdim, itraj, isamp
4710 py::class_<GAUSS16_ForceField, Nad_ForceField, PyTrampoline_GAUSS16_ForceField>(models_m,
"GAUSS16_ForceField", py::dynamic_attr())
4711 .def(py::init<const Param&>())
4712 .def(py::init<const std::string&>())
4713 .def(
"ref_atoms", &GAUSS16_ForceField::ref_atoms, py::return_value_policy::reference_internal)
4714 .def(
"ref_mod_Hess", &GAUSS16_ForceField::ref_mod_Hess, py::return_value_policy::reference_internal)
4715 .def(
"ref_mod_Tmat", &GAUSS16_ForceField::ref_mod_Tmat, py::return_value_policy::reference_internal)
4716 .def(
"ref_nr_samp", &GAUSS16_ForceField::ref_nr_samp, py::return_value_policy::reference_internal)
4717 .def(
"ref_np_samp", &GAUSS16_ForceField::ref_np_samp, py::return_value_policy::reference_internal)
4718 .def_static(
"name", &GAUSS16_ForceField::name)
4719 .def(
"ForceField_epes", [](GAUSS16_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> E_arr,
4720 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dE_arr,
4721 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddE_arr,
4722 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4726 return self.ForceField_epes(E_arr.mutable_data(), dE_arr.mutable_data(), ddE_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
4729 .
def(
"parse_g16",
static_cast<int (GAUSS16_ForceField::*)(
const std::string&)
>(&GAUSS16_ForceField::parse_g16))
4730 .
def(
"calc_hess", [](GAUSS16_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4732 return self.calc_hess(R_arr.mutable_data(), rdim);
4735 .
def(
"get_F",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::get_F))
4736 .
def(
"ForceField_spec", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
4737 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
4738 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
4741 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, fdim);
4744 .
def(
"nspec",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::nspec))
4745 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4746 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4747 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4748 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4749 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
4752 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
4755 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4756 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4757 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4758 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4759 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
4764 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
4767 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4768 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4769 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4770 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4774 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
4777 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4778 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4779 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4780 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4786 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
4789 .
def(
"CheckForceField",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::CheckForceField))
4790 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
4791 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
4792 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
4793 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
4794 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
4795 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
4796 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
4799 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
4802 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
4803 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
4804 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
4806 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
4809 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
4810 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4811 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4812 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4813 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4814 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
4817 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
4820 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
4821 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
4822 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
4823 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
4824 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
4829 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
4832 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
4833 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
4834 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
4835 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
4838 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
4841 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
4842 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
4843 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
4844 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
4845 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
4849 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
4853 class PyTrampoline_MNDO99_ForceField :
public MNDO99_ForceField {
4855 using MNDO99_ForceField::MNDO99_ForceField;
4857 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm, kids_complex* erho, kids_complex* eeac,
4858 int& eocc,
const int& rdim,
const int& fdim,
const int& itraj)
override {
4863 nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj
4867 int ForceField_epes(kids_real* E, kids_real* dE, kids_real* ddE,
4870 const int& rdim,
const int& fdim,
4871 const int& itraj,
const int& istep)
override {
4876 E, dE, ddE, R, flag, rdim, fdim, itraj, istep
4880 int ForceField_write(std::ofstream& ofs0, std::ofstream& ofs1, kids_real* nr, kids_real* np, kids_real* nm,
4881 kids_complex* erho, kids_complex* eeac,
int& eocc,
const int& rdim,
const int& fdim,
4882 const int& itraj,
const int& istep)
override {
4887 ofs0, ofs1, nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj, istep
4891 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& fdim)
override {
4896 nr, np, nm, rdim, fdim
4900 int nspec()
override {
4909 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
4910 const int& rdim)
override {
4915 V, dV, ddV, R, P, flag, rdim
4919 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
4920 const int& rdim,
const int& itraj,
const int& isamp)
override {
4925 V, dV, ddV, R, P, flag, rdim, itraj, isamp
4929 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
4930 const int& fdim)
override {
4935 V, dV, ddV, R, flag, rdim, fdim
4939 int CheckForceField()
override {
4948 int reduce_force(kids_real* fx, kids_complex* rho, kids_real* dH,
const int& rdim,
const int& fdim)
override {
4953 fx, rho, dH, rdim, fdim
4957 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& itraj)
override {
4962 nr, np, nm, rdim, itraj
4966 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
4975 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
4976 const int& itraj,
const int& isamp)
override {
4981 ofs0, nr, np, nm, rdim, itraj, isamp
4986 py::class_<MNDO99_ForceField, Nad_ForceField, PyTrampoline_MNDO99_ForceField>(models_m,
"MNDO99_ForceField", py::dynamic_attr())
4987 .def(py::init<const Param&>())
4988 .def(py::init<const std::string&>())
4989 .def(
"ref_atoms", &MNDO99_ForceField::ref_atoms, py::return_value_policy::reference_internal)
4990 .def(
"ref_mod_Hess", &MNDO99_ForceField::ref_mod_Hess, py::return_value_policy::reference_internal)
4991 .def(
"ref_mod_Tmat", &MNDO99_ForceField::ref_mod_Tmat, py::return_value_policy::reference_internal)
4992 .def(
"ref_nr_samp", &MNDO99_ForceField::ref_nr_samp, py::return_value_policy::reference_internal)
4993 .def(
"ref_np_samp", &MNDO99_ForceField::ref_np_samp, py::return_value_policy::reference_internal)
4994 .def(
"ref_nac_prev", &MNDO99_ForceField::ref_nac_prev, py::return_value_policy::reference_internal)
4995 .def(
"ref_nac", &MNDO99_ForceField::ref_nac, py::return_value_policy::reference_internal)
4996 .def(
"ref_ener", &MNDO99_ForceField::ref_ener, py::return_value_policy::reference_internal)
4997 .def(
"ref_ener2", &MNDO99_ForceField::ref_ener2, py::return_value_policy::reference_internal)
4998 .def(
"ref_grad", &MNDO99_ForceField::ref_grad, py::return_value_policy::reference_internal)
4999 .def_static(
"name", &MNDO99_ForceField::name)
5000 .def(
"ForceField_epes", [](MNDO99_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> E_arr,
5001 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dE_arr,
5002 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddE_arr,
5003 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5009 return self.ForceField_epes(E_arr.mutable_data(), dE_arr.mutable_data(), ddE_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, istep);
5012 .
def(
"parse_mndo99",
static_cast<int (MNDO99_ForceField::*)(
const std::string&)
>(&MNDO99_ForceField::parse_mndo99))
5013 .
def(
"new_keyword",
static_cast<std::string (MNDO99_ForceField::*)(
const MNDO99KW_map&)
>(&MNDO99_ForceField::new_keyword))
5014 .
def(
"new_task", [](MNDO99_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5015 const std::string& file,
5016 const std::string& task_flag,
5018 return self.new_task(R_arr.mutable_data(), file, task_flag, rdim);
5021 .
def(
"track_nac_sign",
static_cast<int (MNDO99_ForceField::*)()
>(&MNDO99_ForceField::track_nac_sign))
5022 .
def(
"parse_standard",
static_cast<int (MNDO99_ForceField::*)(
const std::string&)
>(&MNDO99_ForceField::parse_standard))
5023 .
def(
"parse_hessian",
static_cast<int (MNDO99_ForceField::*)(
const std::string&)
>(&MNDO99_ForceField::parse_hessian))
5024 .
def(
"calc_normalmode", [](MNDO99_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5026 return self.calc_normalmode(R_arr.mutable_data(), rdim);
5029 .
def(
"calc_samp",
static_cast<int (MNDO99_ForceField::*)()
>(&MNDO99_ForceField::calc_samp))
5030 .
def(
"calc_scan",
static_cast<int (MNDO99_ForceField::*)()
>(&MNDO99_ForceField::calc_scan))
5031 .
def(
"get_F",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::get_F))
5032 .
def(
"ForceField_spec", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
5033 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
5034 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
5037 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, fdim);
5040 .
def(
"nspec",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::nspec))
5041 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
5042 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
5043 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
5044 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5045 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
5048 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
5051 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
5052 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
5053 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
5054 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5055 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
5060 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
5063 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
5064 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
5065 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
5066 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5070 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
5073 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
5074 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
5075 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
5076 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5082 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
5085 .
def(
"CheckForceField",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::CheckForceField))
5086 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
5087 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
5088 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
5089 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
5090 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
5091 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
5092 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
5095 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
5098 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
5099 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
5100 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
5102 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
5105 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
5106 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
5107 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
5108 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
5109 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5110 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
5113 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
5116 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
5117 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
5118 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
5119 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5120 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
5125 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
5128 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
5129 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
5130 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
5131 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
5134 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
5137 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
5138 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
5139 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
5140 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
5141 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
5145 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
5149 class PyTrampoline_PythonFF_ForceField :
public PythonFF_ForceField {
5151 using PythonFF_ForceField::PythonFF_ForceField;
5153 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm, kids_complex* erho, kids_complex* eeac,
5154 int& eocc,
const int& rdim,
const int& fdim,
const int& itraj)
override {
5157 PythonFF_ForceField,
5159 nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj
5163 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
5164 const int& rdim)
override {
5167 PythonFF_ForceField,
5169 V, dV, ddV, R, P, flag, rdim
5173 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
5174 const int& fdim)
override {
5177 PythonFF_ForceField,
5179 V, dV, ddV, R, flag, rdim, fdim
5183 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& fdim)
override {
5188 nr, np, nm, rdim, fdim
5192 int nspec()
override {
5201 int ForceField_npes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R, kids_real* P,
const int& flag,
5202 const int& rdim,
const int& itraj,
const int& isamp)
override {
5207 V, dV, ddV, R, P, flag, rdim, itraj, isamp
5211 int ForceField_epes(kids_real* V, kids_real* dV, kids_real* ddV, kids_real* R,
const int& flag,
const int& rdim,
5212 const int& fdim,
const int& itraj,
const int& isamp)
override {
5217 V, dV, ddV, R, flag, rdim, fdim, itraj, isamp
5221 int CheckForceField()
override {
5230 int ForceField_write(std::ofstream& ofs0, std::ofstream& ofs1, kids_real* nr, kids_real* np, kids_real* nm,
5231 kids_complex* erho, kids_complex* eeac,
int& eocc,
const int& rdim,
const int& fdim,
5232 const int& itraj,
const int& isamp)
override {
5237 ofs0, ofs1, nr, np, nm, erho, eeac, eocc, rdim, fdim, itraj, isamp
5241 int reduce_force(kids_real* fx, kids_complex* rho, kids_real* dH,
const int& rdim,
const int& fdim)
override {
5246 fx, rho, dH, rdim, fdim
5250 int ForceField_init(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
const int& itraj)
override {
5255 nr, np, nm, rdim, itraj
5259 int ForceField_spec(kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim)
override {
5268 int ForceField_write(std::ofstream& ofs0, kids_real* nr, kids_real* np, kids_real* nm,
const int& rdim,
5269 const int& itraj,
const int& isamp)
override {
5274 ofs0, nr, np, nm, rdim, itraj, isamp
5279 py::class_<PythonFF_ForceField, Nad_ForceField, PyTrampoline_PythonFF_ForceField>(models_m,
"PythonFF_ForceField", py::dynamic_attr())
5280 .def(py::init<const Param&>())
5281 .def(py::init<const std::string&>())
5282 .def_static(
"name", &PythonFF_ForceField::name)
5283 .def(
"ForceField_npes", [](PythonFF_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
5284 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
5285 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
5286 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5287 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
5290 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
5293 .
def(
"ForceField_epes", [](PythonFF_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
5294 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
5295 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
5296 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5300 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
5303 .
def(
"get_F",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::get_F))
5304 .
def(
"ForceField_spec", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
5305 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
5306 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
5309 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, fdim);
5312 .
def(
"nspec",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::nspec))
5313 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
5314 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
5315 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
5316 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5317 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
5320 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
5323 .
def(
"ForceField_npes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
5324 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
5325 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
5326 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5327 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
5332 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
5335 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
5336 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
5337 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
5338 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5342 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim);
5345 .
def(
"ForceField_epes", [](Nad_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
5346 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
5347 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
5348 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5354 return self.ForceField_epes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), flag, rdim, fdim, itraj, isamp);
5357 .
def(
"CheckForceField",
static_cast<int (Nad_ForceField::*)()
>(&Nad_ForceField::CheckForceField))
5358 .
def(
"get_N",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_N))
5359 .
def(
"get_Ndim",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::get_Ndim))
5360 .
def(
"Suggest_dt",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_dt))
5361 .
def(
"Suggest_tend",
static_cast<double (BO_ForceField::*)()
>(&BO_ForceField::Suggest_tend))
5362 .
def(
"ForceField_init", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
5363 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
5364 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
5367 return self.ForceField_init(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
5370 .
def(
"ForceField_spec", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
5371 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
5372 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
5374 return self.ForceField_spec(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim);
5377 .
def(
"nspec",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::nspec))
5378 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
5379 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
5380 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
5381 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5382 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
5385 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim);
5388 .
def(
"ForceField_npes", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> V_arr,
5389 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dV_arr,
5390 py::array_t<kids_real, py::array::c_style | py::array::forcecast> ddV_arr,
5391 py::array_t<kids_real, py::array::c_style | py::array::forcecast> R_arr,
5392 py::array_t<kids_real, py::array::c_style | py::array::forcecast> P_arr,
5397 return self.ForceField_npes(V_arr.mutable_data(), dV_arr.mutable_data(), ddV_arr.mutable_data(), R_arr.mutable_data(), P_arr.mutable_data(), flag, rdim, itraj, isamp);
5400 .
def(
"ForceField_init_default_build",
static_cast<int (BO_ForceField::*)(
const double&,
const int&)
>(&BO_ForceField::ForceField_init_default_build))
5401 .
def(
"ForceField_init_default", [](BO_ForceField& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
5402 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
5403 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
5406 return self.ForceField_init_default(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj);
5409 .
def(
"CheckForceField",
static_cast<int (BO_ForceField::*)()
>(&BO_ForceField::CheckForceField))
5410 .
def(
"ForceField_write", [](BO_ForceField& self, std::ofstream& ofs0,
5411 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
5412 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
5413 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
5417 return self.ForceField_write(ofs0, nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), rdim, itraj, isamp);
5421 class PyTrampoline_Solver :
public Solver {
5423 using Solver::Solver;
5425 int run_impl()
override {
5434 int run_parallel()
override {
5443 int init(
int flag)
override {
5452 int final(
int flag)
override {
5461 int cache(
int flag)
override {
5471 py::class_<Solver, Model, PyTrampoline_Solver>(solvers_m,
"Solver", py::dynamic_attr())
5472 .def(py::init<const Param&, Model*>())
5473 .def(py::init<const std::string&, Model*>())
5474 .def_readwrite(
"save", &Solver::save)
5475 .def_readwrite(
"para_flag", &Solver::para_flag)
5476 .def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
5477 .def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
5478 .def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
5479 .def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
5480 .def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
5481 .def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
5483 class PyTrampoline_Traj_Solver :
public Traj_Solver {
5485 using Traj_Solver::Traj_Solver;
5487 int ff_calc1(
const int& level)
override {
5496 int init_ofs(
const int& itraj)
override {
5505 int init(
const int& itraj)
override {
5514 int final(
const int& itraj)
override {
5523 int rst_output(
const int& traj_in)
override {
5532 int rst_read(
const int& traj_in)
override {
5541 int check_break(
int& succ)
override {
5550 int traj_property(
const kids_real& dt)
override {
5559 int update_r(
const kids_real& dt)
override {
5568 int update_p(
const kids_real& dt)
override {
5577 int update_thermo(
const kids_real& dt)
override {
5586 int traj(TCFnucl& tcfer,
const int& N)
override {
5595 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
5599 traj_velocityverlet,
5604 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
5613 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
5622 int run_impl()
override {
5631 int run_parallel()
override {
5640 int init(
int flag)
override {
5649 int final(
int flag)
override {
5658 int cache(
int flag)
override {
5668 py::class_<Traj_Solver, Solver, PyTrampoline_Traj_Solver>(solvers_m,
"Traj_Solver", py::dynamic_attr())
5669 .def(py::init<const Param&, Model*>())
5670 .def(py::init<const std::string&, Model*>())
5671 .def(
"ref_Htot", &Traj_Solver::ref_Htot, py::return_value_policy::reference_internal)
5672 .def(
"ref_Ltot", &Traj_Solver::ref_Ltot, py::return_value_policy::reference_internal)
5673 .def(
"ref_Stot", &Traj_Solver::ref_Stot, py::return_value_policy::reference_internal)
5674 .def(
"ref_Ktot", &Traj_Solver::ref_Ktot, py::return_value_policy::reference_internal)
5675 .def(
"ref_Vtot", &Traj_Solver::ref_Vtot, py::return_value_policy::reference_internal)
5676 .def(
"ref_nr0", &Traj_Solver::ref_nr0, py::return_value_policy::reference_internal)
5677 .def(
"ref_np0", &Traj_Solver::ref_np0, py::return_value_policy::reference_internal)
5678 .def(
"ref_nr", &Traj_Solver::ref_nr, py::return_value_policy::reference_internal)
5679 .def(
"ref_np", &Traj_Solver::ref_np, py::return_value_policy::reference_internal)
5680 .def(
"ref_nm", &Traj_Solver::ref_nm, py::return_value_policy::reference_internal)
5681 .def(
"ref_nf", &Traj_Solver::ref_nf, py::return_value_policy::reference_internal)
5682 .def(
"ref_vpes", &Traj_Solver::ref_vpes, py::return_value_policy::reference_internal)
5683 .def(
"ref_grad", &Traj_Solver::ref_grad, py::return_value_policy::reference_internal)
5684 .def(
"ref_hess", &Traj_Solver::ref_hess, py::return_value_policy::reference_internal)
5685 .def_static(
"name", &Traj_Solver::name)
5686 .def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
5687 .def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
5688 .def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
5689 .def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
5690 .def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
5691 .def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
5692 .def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
5693 .def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
5694 .def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
5695 .def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
5696 .def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
5697 .def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
5698 .def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
5699 .def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
5700 .def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
5701 .def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
5702 .def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
5703 .def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
5704 .def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
5705 .def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
5706 .def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
5707 .def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
5708 .def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
5710 class PyTrampoline_PIMDTraj_Solver :
public PIMDTraj_Solver {
5712 using PIMDTraj_Solver::PIMDTraj_Solver;
5714 int ff_calc1(
const int& level)
override {
5723 int update_r(
const kids_real& dt)
override {
5732 int update_p(
const kids_real& dt)
override {
5741 int update_p_harm(
const kids_real& dt)
override {
5750 int caylay_update_half(
5751 const kids_real& dt)
override {
5760 int BAOAB(
int& succ,
5761 int step)
override {
5770 int BCOCB(
int& succ,
int step)
override {
5779 int update_thermo(
const kids_real& dt)
override {
5788 int traj(TCFnucl& tcfer,
const int& PN)
override {
5797 int traj_Middle(TCFnucl& tcfer,
const int& PN)
override {
5806 int traj_property(
const kids_real& dt)
override {
5815 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
5824 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
5833 int run_impl()
override {
5842 int run_parallel()
override {
5851 int init(
const int& itraj)
override {
5860 int rot_trans_corr(
int Natom, kids_real* m_in, kids_real* x_in, kids_real* p_in, kids_real* F_in,
5861 bool cal_force =
true)
override {
5866 Natom, m_in, x_in, p_in, F_in, cal_force
5870 int pseudo_inv(
int N, kids_real* A, kids_real* invA, kids_real* vectmp, kids_real eps)
override {
5875 N, A, invA, vectmp, eps
5879 int cross(kids_real* vec1, kids_real* vec2, kids_real* prod)
override {
5888 int rst_output(
const int& traj_in)
override {
5897 int rst_read(
const int& traj_in)
override {
5906 int init_ofs(
const int& itraj)
override {
5915 int final(
const int& itraj)
override {
5924 int check_break(
int& succ)
override {
5933 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
5937 traj_velocityverlet,
5942 int init(
int flag)
override {
5951 int final(
int flag)
override {
5960 int cache(
int flag)
override {
5970 py::class_<PIMDTraj_Solver, Traj_Solver, PyTrampoline_PIMDTraj_Solver>(solvers_m,
"PIMDTraj_Solver", py::dynamic_attr())
5971 .def(py::init<Param, Model*>())
5972 .def(py::init<const std::string&, Model*>())
5973 .def(
"ref_nrs", &PIMDTraj_Solver::ref_nrs, py::return_value_policy::reference_internal)
5974 .def(
"ref_nks", &PIMDTraj_Solver::ref_nks, py::return_value_policy::reference_internal)
5975 .def(
"ref_nps", &PIMDTraj_Solver::ref_nps, py::return_value_policy::reference_internal)
5976 .def(
"ref_nms", &PIMDTraj_Solver::ref_nms, py::return_value_policy::reference_internal)
5977 .def(
"ref_nfs", &PIMDTraj_Solver::ref_nfs, py::return_value_policy::reference_internal)
5978 .def(
"ref_nfks", &PIMDTraj_Solver::ref_nfks, py::return_value_policy::reference_internal)
5979 .def(
"ref_masswgt", &PIMDTraj_Solver::ref_masswgt, py::return_value_policy::reference_internal)
5980 .def(
"ref_bfwgt", &PIMDTraj_Solver::ref_bfwgt, py::return_value_policy::reference_internal)
5981 .def(
"ref_D2", &PIMDTraj_Solver::ref_D2, py::return_value_policy::reference_internal)
5982 .def(
"ref_Tran", &PIMDTraj_Solver::ref_Tran, py::return_value_policy::reference_internal)
5983 .def(
"ref_vpeses", &PIMDTraj_Solver::ref_vpeses, py::return_value_policy::reference_internal)
5984 .def(
"ref_grads", &PIMDTraj_Solver::ref_grads, py::return_value_policy::reference_internal)
5985 .def(
"ref_hesses", &PIMDTraj_Solver::ref_hesses, py::return_value_policy::reference_internal)
5986 .def_static(
"name", &PIMDTraj_Solver::name)
5987 .def(
"ff_calc1",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::ff_calc1))
5988 .def(
"update_r",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_r))
5989 .def(
"update_p",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_p))
5990 .def(
"update_p_harm",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_p_harm))
5991 .def(
"caylay_update_half",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::caylay_update_half))
5992 .def(
"BAOAB",
static_cast<int (PIMDTraj_Solver::*)(
int&,
int)
>(&PIMDTraj_Solver::BAOAB))
5993 .def(
"BCOCB",
static_cast<int (PIMDTraj_Solver::*)(
int&,
int)
>(&PIMDTraj_Solver::BCOCB))
5994 .def(
"update_thermo",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_thermo))
5995 .def(
"traj",
static_cast<int (PIMDTraj_Solver::*)(TCFnucl&,
const int&)
>(&PIMDTraj_Solver::traj))
5996 .def(
"traj_Middle",
static_cast<int (PIMDTraj_Solver::*)(TCFnucl&,
const int&)
>(&PIMDTraj_Solver::traj_Middle))
5997 .def(
"traj_property",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::traj_property))
5998 .def(
"sampler",
static_cast<int (PIMDTraj_Solver::*)(
const int&, TCFnucl&)
>(&PIMDTraj_Solver::sampler))
5999 .def(
"estimator",
static_cast<int (PIMDTraj_Solver::*)(
const int&, TCFnucl&)
>(&PIMDTraj_Solver::estimator))
6000 .def(
"run_impl",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::run_impl))
6001 .def(
"run_parallel",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::run_parallel))
6002 .def(
"init",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::init))
6003 .def(
"all_X2K",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::all_X2K))
6004 .def(
"all_K2X",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::all_K2X))
6005 .def(
"all_FX2FK",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::all_FX2FK))
6006 .def(
"rot_trans_corr", [](PIMDTraj_Solver& self,
int Natom,
6007 py::array_t<kids_real, py::array::c_style | py::array::forcecast> m_in_arr,
6008 py::array_t<kids_real, py::array::c_style | py::array::forcecast> x_in_arr,
6009 py::array_t<kids_real, py::array::c_style | py::array::forcecast> p_in_arr,
6010 py::array_t<kids_real, py::array::c_style | py::array::forcecast> F_in_arr,
6012 return self.rot_trans_corr(Natom, m_in_arr.mutable_data(), x_in_arr.mutable_data(), p_in_arr.mutable_data(), F_in_arr.mutable_data(), cal_force);
6015 .
def(
"pseudo_inv", [](PIMDTraj_Solver& self,
int N,
6016 py::array_t<kids_real, py::array::c_style | py::array::forcecast> A_arr,
6017 py::array_t<kids_real, py::array::c_style | py::array::forcecast> invA_arr,
6018 py::array_t<kids_real, py::array::c_style | py::array::forcecast> vectmp_arr,
6020 return self.pseudo_inv(N, A_arr.mutable_data(), invA_arr.mutable_data(), vectmp_arr.mutable_data(), eps);
6023 .
def(
"cross", [](PIMDTraj_Solver& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> vec1_arr,
6024 py::array_t<kids_real, py::array::c_style | py::array::forcecast> vec2_arr,
6025 py::array_t<kids_real, py::array::c_style | py::array::forcecast> prod_arr) {
6026 return self.cross(vec1_arr.mutable_data(), vec2_arr.mutable_data(), prod_arr.mutable_data());
6029 .
def(
"rst_output",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::rst_output))
6030 .
def(
"rst_read",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::rst_read))
6031 .
def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
6032 .
def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
6033 .
def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
6034 .
def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
6035 .
def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
6036 .
def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
6037 .
def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
6038 .
def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
6039 .
def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
6040 .
def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
6041 .
def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
6042 .
def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
6043 .
def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
6044 .
def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
6045 .
def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
6046 .
def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
6047 .
def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
6048 .
def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
6049 .
def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
6050 .
def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
6051 .
def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
6052 .
def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
6053 .
def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
6055 class PyTrampoline_MESPIMDTraj_Solver :
public MESPIMDTraj_Solver {
6057 using MESPIMDTraj_Solver::MESPIMDTraj_Solver;
6059 int init(
const int& itraj)
override {
6068 int ff_calc1(
const int& level = 1)
override {
6077 int ff_Oi(
int i, kids_real* Oi_pos, kids_real* dVi_pos, kids_real* Oi, kids_real* dOi, kids_real* Vi,
6078 kids_real* dVi)
override {
6083 i, Oi_pos, dVi_pos, Oi, dOi, Vi, dVi
6087 int ff_OO()
override {
6096 kids_real esti_term1(kids_real* Q,
const bool& dressed =
true,
const bool& fixed =
false)
override {
6105 kids_real esti_term2(kids_real* Q1, kids_real* Q2,
const bool& dressed1 =
true,
const bool& dressed2 =
true,
6106 const bool& fixed1 =
false,
const bool& fixed2 =
false)
override {
6111 Q1, Q2, dressed1, dressed2, fixed1, fixed2
6115 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
6124 int update_r(
const kids_real& dt)
override {
6133 int update_p(
const kids_real& dt)
override {
6142 int update_p_harm(
const kids_real& dt)
override {
6151 int caylay_update_half(
6152 const kids_real& dt)
override {
6161 int BAOAB(
int& succ,
6162 int step)
override {
6171 int BCOCB(
int& succ,
int step)
override {
6180 int update_thermo(
const kids_real& dt)
override {
6189 int traj(TCFnucl& tcfer,
const int& PN)
override {
6198 int traj_Middle(TCFnucl& tcfer,
const int& PN)
override {
6207 int traj_property(
const kids_real& dt)
override {
6216 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
6225 int run_impl()
override {
6234 int run_parallel()
override {
6243 int rot_trans_corr(
int Natom, kids_real* m_in, kids_real* x_in, kids_real* p_in, kids_real* F_in,
6244 bool cal_force =
true)
override {
6249 Natom, m_in, x_in, p_in, F_in, cal_force
6253 int pseudo_inv(
int N, kids_real* A, kids_real* invA, kids_real* vectmp, kids_real eps)
override {
6258 N, A, invA, vectmp, eps
6262 int cross(kids_real* vec1, kids_real* vec2, kids_real* prod)
override {
6271 int rst_output(
const int& traj_in)
override {
6280 int rst_read(
const int& traj_in)
override {
6289 int init_ofs(
const int& itraj)
override {
6298 int final(
const int& itraj)
override {
6307 int check_break(
int& succ)
override {
6316 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
6320 traj_velocityverlet,
6325 int init(
int flag)
override {
6334 int final(
int flag)
override {
6343 int cache(
int flag)
override {
6353 py::class_<MESPIMDTraj_Solver, PIMDTraj_Solver, PyTrampoline_MESPIMDTraj_Solver>(solvers_m,
"MESPIMDTraj_Solver", py::dynamic_attr())
6354 .def(py::init<const Param&, Model*>())
6355 .def(py::init<const std::string&, Model*>())
6356 .def(
"ref_Vs", &MESPIMDTraj_Solver::ref_Vs, py::return_value_policy::reference_internal)
6357 .def(
"ref_dVs", &MESPIMDTraj_Solver::ref_dVs, py::return_value_policy::reference_internal)
6358 .def(
"ref_ddVs", &MESPIMDTraj_Solver::ref_ddVs, py::return_value_policy::reference_internal)
6359 .def(
"ref_Es", &MESPIMDTraj_Solver::ref_Es, py::return_value_policy::reference_internal)
6360 .def(
"ref_dEs", &MESPIMDTraj_Solver::ref_dEs, py::return_value_policy::reference_internal)
6361 .def(
"ref_Ts", &MESPIMDTraj_Solver::ref_Ts, py::return_value_policy::reference_internal)
6362 .def(
"ref_mat_fA", &MESPIMDTraj_Solver::ref_mat_fA, py::return_value_policy::reference_internal)
6363 .def(
"ref_mat_fD", &MESPIMDTraj_Solver::ref_mat_fD, py::return_value_policy::reference_internal)
6364 .def(
"ref_O_pos", &MESPIMDTraj_Solver::ref_O_pos, py::return_value_policy::reference_internal)
6365 .def(
"ref_dV_pos", &MESPIMDTraj_Solver::ref_dV_pos, py::return_value_policy::reference_internal)
6366 .def(
"ref_O", &MESPIMDTraj_Solver::ref_O, py::return_value_policy::reference_internal)
6367 .def(
"ref_OO", &MESPIMDTraj_Solver::ref_OO, py::return_value_policy::reference_internal)
6368 .def(
"ref_OOb", &MESPIMDTraj_Solver::ref_OOb, py::return_value_policy::reference_internal)
6369 .def(
"ref_OOe", &MESPIMDTraj_Solver::ref_OOe, py::return_value_policy::reference_internal)
6370 .def(
"ref_OObe", &MESPIMDTraj_Solver::ref_OObe, py::return_value_policy::reference_internal)
6371 .def(
"ref_dO", &MESPIMDTraj_Solver::ref_dO, py::return_value_policy::reference_internal)
6372 .def(
"ref_V2", &MESPIMDTraj_Solver::ref_V2, py::return_value_policy::reference_internal)
6373 .def(
"ref_hRdOO", &MESPIMDTraj_Solver::ref_hRdOO, py::return_value_policy::reference_internal)
6374 .def(
"ref_hRcdOO", &MESPIMDTraj_Solver::ref_hRcdOO, py::return_value_policy::reference_internal)
6375 .def(
"ref_hRdOVO", &MESPIMDTraj_Solver::ref_hRdOVO, py::return_value_policy::reference_internal)
6376 .def(
"ref_hRcdOVO", &MESPIMDTraj_Solver::ref_hRcdOVO, py::return_value_policy::reference_internal)
6377 .def(
"ref_rho", &MESPIMDTraj_Solver::ref_rho, py::return_value_policy::reference_internal)
6378 .def(
"ref_rho_op", &MESPIMDTraj_Solver::ref_rho_op, py::return_value_policy::reference_internal)
6379 .def(
"ref_eac0", &MESPIMDTraj_Solver::ref_eac0, py::return_value_policy::reference_internal)
6380 .def(
"ref_rho0", &MESPIMDTraj_Solver::ref_rho0, py::return_value_policy::reference_internal)
6381 .def_static(
"name", &MESPIMDTraj_Solver::name)
6382 .def(
"init",
static_cast<int (MESPIMDTraj_Solver::*)(
const int&)
>(&MESPIMDTraj_Solver::init))
6383 .def(
"ff_calc1",
static_cast<int (MESPIMDTraj_Solver::*)(
const int&)
>(&MESPIMDTraj_Solver::ff_calc1))
6384 .def(
"ff_Oi", [](MESPIMDTraj_Solver& self,
int i,
6385 py::array_t<kids_real, py::array::c_style | py::array::forcecast> Oi_pos_arr,
6386 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dVi_pos_arr,
6387 py::array_t<kids_real, py::array::c_style | py::array::forcecast> Oi_arr,
6388 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dOi_arr,
6389 py::array_t<kids_real, py::array::c_style | py::array::forcecast> Vi_arr,
6390 py::array_t<kids_real, py::array::c_style | py::array::forcecast> dVi_arr) {
6391 return self.ff_Oi(i, Oi_pos_arr.mutable_data(), dVi_pos_arr.mutable_data(), Oi_arr.mutable_data(), dOi_arr.mutable_data(), Vi_arr.mutable_data(), dVi_arr.mutable_data());
6394 .
def(
"ff_OO",
static_cast<int (MESPIMDTraj_Solver::*)()
>(&MESPIMDTraj_Solver::ff_OO))
6395 .
def(
"esti_term1", [](MESPIMDTraj_Solver& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> Q_arr,
6396 const bool& dressed,
6397 const bool& fixed) {
6398 return self.esti_term1(Q_arr.mutable_data(), dressed, fixed);
6401 .
def(
"esti_term2", [](MESPIMDTraj_Solver& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> Q1_arr,
6402 py::array_t<kids_real, py::array::c_style | py::array::forcecast> Q2_arr,
6403 const bool& dressed1,
6404 const bool& dressed2,
6406 const bool& fixed2) {
6407 return self.esti_term2(Q1_arr.mutable_data(), Q2_arr.mutable_data(), dressed1, dressed2, fixed1, fixed2);
6410 .
def(
"estimator",
static_cast<int (MESPIMDTraj_Solver::*)(
const int&, TCFnucl&)
>(&MESPIMDTraj_Solver::estimator))
6411 .
def(
"ff_calc1",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::ff_calc1))
6412 .
def(
"update_r",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_r))
6413 .
def(
"update_p",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_p))
6414 .
def(
"update_p_harm",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_p_harm))
6415 .
def(
"caylay_update_half",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::caylay_update_half))
6416 .
def(
"BAOAB",
static_cast<int (PIMDTraj_Solver::*)(
int&,
int)
>(&PIMDTraj_Solver::BAOAB))
6417 .
def(
"BCOCB",
static_cast<int (PIMDTraj_Solver::*)(
int&,
int)
>(&PIMDTraj_Solver::BCOCB))
6418 .
def(
"update_thermo",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_thermo))
6419 .
def(
"traj",
static_cast<int (PIMDTraj_Solver::*)(TCFnucl&,
const int&)
>(&PIMDTraj_Solver::traj))
6420 .
def(
"traj_Middle",
static_cast<int (PIMDTraj_Solver::*)(TCFnucl&,
const int&)
>(&PIMDTraj_Solver::traj_Middle))
6421 .
def(
"traj_property",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::traj_property))
6422 .
def(
"sampler",
static_cast<int (PIMDTraj_Solver::*)(
const int&, TCFnucl&)
>(&PIMDTraj_Solver::sampler))
6423 .
def(
"estimator",
static_cast<int (PIMDTraj_Solver::*)(
const int&, TCFnucl&)
>(&PIMDTraj_Solver::estimator))
6424 .
def(
"run_impl",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::run_impl))
6425 .
def(
"run_parallel",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::run_parallel))
6426 .
def(
"init",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::init))
6427 .
def(
"all_X2K",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::all_X2K))
6428 .
def(
"all_K2X",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::all_K2X))
6429 .
def(
"all_FX2FK",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::all_FX2FK))
6430 .
def(
"rot_trans_corr", [](PIMDTraj_Solver& self,
int Natom,
6431 py::array_t<kids_real, py::array::c_style | py::array::forcecast> m_in_arr,
6432 py::array_t<kids_real, py::array::c_style | py::array::forcecast> x_in_arr,
6433 py::array_t<kids_real, py::array::c_style | py::array::forcecast> p_in_arr,
6434 py::array_t<kids_real, py::array::c_style | py::array::forcecast> F_in_arr,
6436 return self.rot_trans_corr(Natom, m_in_arr.mutable_data(), x_in_arr.mutable_data(), p_in_arr.mutable_data(), F_in_arr.mutable_data(), cal_force);
6439 .
def(
"pseudo_inv", [](PIMDTraj_Solver& self,
int N,
6440 py::array_t<kids_real, py::array::c_style | py::array::forcecast> A_arr,
6441 py::array_t<kids_real, py::array::c_style | py::array::forcecast> invA_arr,
6442 py::array_t<kids_real, py::array::c_style | py::array::forcecast> vectmp_arr,
6444 return self.pseudo_inv(N, A_arr.mutable_data(), invA_arr.mutable_data(), vectmp_arr.mutable_data(), eps);
6447 .
def(
"cross", [](PIMDTraj_Solver& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> vec1_arr,
6448 py::array_t<kids_real, py::array::c_style | py::array::forcecast> vec2_arr,
6449 py::array_t<kids_real, py::array::c_style | py::array::forcecast> prod_arr) {
6450 return self.cross(vec1_arr.mutable_data(), vec2_arr.mutable_data(), prod_arr.mutable_data());
6453 .
def(
"rst_output",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::rst_output))
6454 .
def(
"rst_read",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::rst_read))
6455 .
def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
6456 .
def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
6457 .
def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
6458 .
def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
6459 .
def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
6460 .
def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
6461 .
def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
6462 .
def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
6463 .
def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
6464 .
def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
6465 .
def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
6466 .
def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
6467 .
def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
6468 .
def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
6469 .
def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
6470 .
def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
6471 .
def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
6472 .
def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
6473 .
def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
6474 .
def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
6475 .
def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
6476 .
def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
6477 .
def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
6479 class PyTrampoline_PIMDPARATraj_Solver :
public PIMDPARATraj_Solver {
6481 using PIMDPARATraj_Solver::PIMDPARATraj_Solver;
6483 int ff_calc1(
const int& level)
override {
6486 PIMDPARATraj_Solver,
6492 int update_r(
const kids_real& dt)
override {
6495 PIMDPARATraj_Solver,
6501 int update_p(
const kids_real& dt)
override {
6504 PIMDPARATraj_Solver,
6510 int update_p_harm(
const kids_real& dt)
override {
6513 PIMDPARATraj_Solver,
6519 int caylay_update_half(
6520 const kids_real& dt)
override {
6523 PIMDPARATraj_Solver,
6529 int BAOAB(
int& succ,
6530 int step)
override {
6533 PIMDPARATraj_Solver,
6539 int BCOCB(
int& succ,
int step)
override {
6542 PIMDPARATraj_Solver,
6548 int update_thermo(
const kids_real& dt)
override {
6551 PIMDPARATraj_Solver,
6557 int traj(TCFnucl& tcfer,
const int& PN)
override {
6560 PIMDPARATraj_Solver,
6566 int traj_Middle(TCFnucl& tcfer,
const int& PN)
override {
6569 PIMDPARATraj_Solver,
6575 int traj_property(
const kids_real& dt)
override {
6578 PIMDPARATraj_Solver,
6584 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
6587 PIMDPARATraj_Solver,
6593 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
6596 PIMDPARATraj_Solver,
6602 int run_impl()
override {
6605 PIMDPARATraj_Solver,
6611 int run_parallel()
override {
6614 PIMDPARATraj_Solver,
6620 int init(
const int& itraj)
override {
6623 PIMDPARATraj_Solver,
6629 int final(
const int& itraj)
override {
6632 PIMDPARATraj_Solver,
6638 int all_X2K()
override {
6641 PIMDPARATraj_Solver,
6647 int all_K2X()
override {
6650 PIMDPARATraj_Solver,
6656 int all_FX2FK()
override {
6659 PIMDPARATraj_Solver,
6665 int rot_trans_corr(
int Natom, kids_real* m_in, kids_real* x_in, kids_real* p_in, kids_real* F_in,
6666 bool cal_force =
true)
override {
6669 PIMDPARATraj_Solver,
6671 Natom, m_in, x_in, p_in, F_in, cal_force
6675 int cons_rot()
override {
6678 PIMDPARATraj_Solver,
6684 int pseudo_inv(
int N, kids_real* A, kids_real* invA, kids_real* vectmp, kids_real eps)
override {
6687 PIMDPARATraj_Solver,
6689 N, A, invA, vectmp, eps
6693 int cross(kids_real* vec1, kids_real* vec2, kids_real* prod)
override {
6696 PIMDPARATraj_Solver,
6702 int rst_output(
const int& traj_in)
override {
6705 PIMDPARATraj_Solver,
6711 int rst_read(
const int& traj_in)
override {
6714 PIMDPARATraj_Solver,
6720 int init_ofs(
const int& itraj)
override {
6729 int check_break(
int& succ)
override {
6738 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
6742 traj_velocityverlet,
6747 int init(
int flag)
override {
6756 int final(
int flag)
override {
6765 int cache(
int flag)
override {
6775 py::class_<PIMDPARATraj_Solver, Traj_Solver, PyTrampoline_PIMDPARATraj_Solver>(solvers_m,
"PIMDPARATraj_Solver", py::dynamic_attr())
6776 .def(py::init<Param, Model*>())
6777 .def(
"ref_nrs", &PIMDPARATraj_Solver::ref_nrs, py::return_value_policy::reference_internal)
6778 .def(
"ref_nks", &PIMDPARATraj_Solver::ref_nks, py::return_value_policy::reference_internal)
6779 .def(
"ref_nps", &PIMDPARATraj_Solver::ref_nps, py::return_value_policy::reference_internal)
6780 .def(
"ref_nms", &PIMDPARATraj_Solver::ref_nms, py::return_value_policy::reference_internal)
6781 .def(
"ref_nfs", &PIMDPARATraj_Solver::ref_nfs, py::return_value_policy::reference_internal)
6782 .def(
"ref_nfks", &PIMDPARATraj_Solver::ref_nfks, py::return_value_policy::reference_internal)
6783 .def(
"ref_masswgt", &PIMDPARATraj_Solver::ref_masswgt, py::return_value_policy::reference_internal)
6784 .def(
"ref_bfwgt", &PIMDPARATraj_Solver::ref_bfwgt, py::return_value_policy::reference_internal)
6785 .def(
"ref_D2", &PIMDPARATraj_Solver::ref_D2, py::return_value_policy::reference_internal)
6786 .def(
"ref_Tran", &PIMDPARATraj_Solver::ref_Tran, py::return_value_policy::reference_internal)
6787 .def(
"ref_vpeses", &PIMDPARATraj_Solver::ref_vpeses, py::return_value_policy::reference_internal)
6788 .def(
"ref_grads", &PIMDPARATraj_Solver::ref_grads, py::return_value_policy::reference_internal)
6789 .def(
"ref_hesses", &PIMDPARATraj_Solver::ref_hesses, py::return_value_policy::reference_internal)
6790 .def_static(
"name", &PIMDPARATraj_Solver::name)
6791 .def(
"ff_calc1",
static_cast<int (PIMDPARATraj_Solver::*)(
const int&)
>(&PIMDPARATraj_Solver::ff_calc1))
6792 .def(
"update_r",
static_cast<int (PIMDPARATraj_Solver::*)(
const kids_real&)
>(&PIMDPARATraj_Solver::update_r))
6793 .def(
"update_p",
static_cast<int (PIMDPARATraj_Solver::*)(
const kids_real&)
>(&PIMDPARATraj_Solver::update_p))
6794 .def(
"update_p_harm",
static_cast<int (PIMDPARATraj_Solver::*)(
const kids_real&)
>(&PIMDPARATraj_Solver::update_p_harm))
6795 .def(
"caylay_update_half",
static_cast<int (PIMDPARATraj_Solver::*)(
const kids_real&)
>(&PIMDPARATraj_Solver::caylay_update_half))
6796 .def(
"BAOAB",
static_cast<int (PIMDPARATraj_Solver::*)(
int&,
int)
>(&PIMDPARATraj_Solver::BAOAB))
6797 .def(
"BCOCB",
static_cast<int (PIMDPARATraj_Solver::*)(
int&,
int)
>(&PIMDPARATraj_Solver::BCOCB))
6798 .def(
"update_thermo",
static_cast<int (PIMDPARATraj_Solver::*)(
const kids_real&)
>(&PIMDPARATraj_Solver::update_thermo))
6799 .def(
"traj",
static_cast<int (PIMDPARATraj_Solver::*)(TCFnucl&,
const int&)
>(&PIMDPARATraj_Solver::traj))
6800 .def(
"traj_Middle",
static_cast<int (PIMDPARATraj_Solver::*)(TCFnucl&,
const int&)
>(&PIMDPARATraj_Solver::traj_Middle))
6801 .def(
"traj_property",
static_cast<int (PIMDPARATraj_Solver::*)(
const kids_real&)
>(&PIMDPARATraj_Solver::traj_property))
6802 .def(
"sampler",
static_cast<int (PIMDPARATraj_Solver::*)(
const int&, TCFnucl&)
>(&PIMDPARATraj_Solver::sampler))
6803 .def(
"estimator",
static_cast<int (PIMDPARATraj_Solver::*)(
const int&, TCFnucl&)
>(&PIMDPARATraj_Solver::estimator))
6804 .def(
"run_impl",
static_cast<int (PIMDPARATraj_Solver::*)()
>(&PIMDPARATraj_Solver::run_impl))
6805 .def(
"run_parallel",
static_cast<int (PIMDPARATraj_Solver::*)()
>(&PIMDPARATraj_Solver::run_parallel))
6806 .def(
"init",
static_cast<int (PIMDPARATraj_Solver::*)(
const int&)
>(&PIMDPARATraj_Solver::init))
6807 .def(
"final",
static_cast<int (PIMDPARATraj_Solver::*)(
const int&)
>(&PIMDPARATraj_Solver::final))
6808 .def(
"all_X2K",
static_cast<int (PIMDPARATraj_Solver::*)()
>(&PIMDPARATraj_Solver::all_X2K))
6809 .def(
"all_K2X",
static_cast<int (PIMDPARATraj_Solver::*)()
>(&PIMDPARATraj_Solver::all_K2X))
6810 .def(
"all_FX2FK",
static_cast<int (PIMDPARATraj_Solver::*)()
>(&PIMDPARATraj_Solver::all_FX2FK))
6811 .def(
"rot_trans_corr", [](PIMDPARATraj_Solver& self,
int Natom,
6812 py::array_t<kids_real, py::array::c_style | py::array::forcecast> m_in_arr,
6813 py::array_t<kids_real, py::array::c_style | py::array::forcecast> x_in_arr,
6814 py::array_t<kids_real, py::array::c_style | py::array::forcecast> p_in_arr,
6815 py::array_t<kids_real, py::array::c_style | py::array::forcecast> F_in_arr,
6817 return self.rot_trans_corr(Natom, m_in_arr.mutable_data(), x_in_arr.mutable_data(), p_in_arr.mutable_data(), F_in_arr.mutable_data(), cal_force);
6820 .
def(
"cons_rot",
static_cast<int (PIMDPARATraj_Solver::*)()
>(&PIMDPARATraj_Solver::cons_rot))
6821 .
def(
"pseudo_inv", [](PIMDPARATraj_Solver& self,
int N,
6822 py::array_t<kids_real, py::array::c_style | py::array::forcecast> A_arr,
6823 py::array_t<kids_real, py::array::c_style | py::array::forcecast> invA_arr,
6824 py::array_t<kids_real, py::array::c_style | py::array::forcecast> vectmp_arr,
6826 return self.pseudo_inv(N, A_arr.mutable_data(), invA_arr.mutable_data(), vectmp_arr.mutable_data(), eps);
6829 .
def(
"cross", [](PIMDPARATraj_Solver& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> vec1_arr,
6830 py::array_t<kids_real, py::array::c_style | py::array::forcecast> vec2_arr,
6831 py::array_t<kids_real, py::array::c_style | py::array::forcecast> prod_arr) {
6832 return self.cross(vec1_arr.mutable_data(), vec2_arr.mutable_data(), prod_arr.mutable_data());
6835 .
def(
"rst_output",
static_cast<int (PIMDPARATraj_Solver::*)(
const int&)
>(&PIMDPARATraj_Solver::rst_output))
6836 .
def(
"rst_read",
static_cast<int (PIMDPARATraj_Solver::*)(
const int&)
>(&PIMDPARATraj_Solver::rst_read))
6837 .
def(
"mpiSendx", [](PIMDPARATraj_Solver& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> x_mpi_arr) {
6838 return self.mpiSendx(x_mpi_arr.mutable_data());
6841 .
def(
"mpiRecvf", [](PIMDPARATraj_Solver& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> f_mpi_arr,
6843 return self.mpiRecvf(f_mpi_arr.mutable_data(), nsize);
6846 .
def(
"printdata",
static_cast<int (PIMDPARATraj_Solver::*)()
>(&PIMDPARATraj_Solver::printdata))
6847 .
def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
6848 .
def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
6849 .
def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
6850 .
def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
6851 .
def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
6852 .
def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
6853 .
def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
6854 .
def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
6855 .
def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
6856 .
def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
6857 .
def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
6858 .
def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
6859 .
def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
6860 .
def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
6861 .
def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
6862 .
def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
6863 .
def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
6864 .
def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
6865 .
def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
6866 .
def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
6867 .
def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
6868 .
def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
6869 .
def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
6871 class PyTrampoline_MBPIMDTraj_Solver :
public MBPIMDTraj_Solver {
6873 using MBPIMDTraj_Solver::MBPIMDTraj_Solver;
6875 int spring_force()
override {
6884 int update_p_harm(
const kids_real &dt)
override {
6893 int estimator(
const int &isamp, TCFnucl &tcfer)
override {
6902 int ff_calc1(
const int& level)
override {
6911 int update_r(
const kids_real& dt)
override {
6920 int update_p(
const kids_real& dt)
override {
6929 int caylay_update_half(
6930 const kids_real& dt)
override {
6939 int BAOAB(
int& succ,
6940 int step)
override {
6949 int BCOCB(
int& succ,
int step)
override {
6958 int update_thermo(
const kids_real& dt)
override {
6967 int traj(TCFnucl& tcfer,
const int& PN)
override {
6976 int traj_Middle(TCFnucl& tcfer,
const int& PN)
override {
6985 int traj_property(
const kids_real& dt)
override {
6994 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
7003 int run_impl()
override {
7012 int run_parallel()
override {
7021 int init(
const int& itraj)
override {
7030 int rot_trans_corr(
int Natom, kids_real* m_in, kids_real* x_in, kids_real* p_in, kids_real* F_in,
7031 bool cal_force =
true)
override {
7036 Natom, m_in, x_in, p_in, F_in, cal_force
7040 int pseudo_inv(
int N, kids_real* A, kids_real* invA, kids_real* vectmp, kids_real eps)
override {
7045 N, A, invA, vectmp, eps
7049 int cross(kids_real* vec1, kids_real* vec2, kids_real* prod)
override {
7058 int rst_output(
const int& traj_in)
override {
7067 int rst_read(
const int& traj_in)
override {
7076 int init_ofs(
const int& itraj)
override {
7085 int final(
const int& itraj)
override {
7094 int check_break(
int& succ)
override {
7103 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
7107 traj_velocityverlet,
7112 int init(
int flag)
override {
7121 int final(
int flag)
override {
7130 int cache(
int flag)
override {
7140 py::class_<MBPIMDTraj_Solver, PIMDTraj_Solver, PyTrampoline_MBPIMDTraj_Solver>(solvers_m,
"MBPIMDTraj_Solver", py::dynamic_attr())
7141 .def(py::init<Param, Model*>())
7142 .def(py::init<const std::string&, Model*>())
7143 .def(
"ref_fV", &MBPIMDTraj_Solver::ref_fV, py::return_value_policy::reference_internal)
7144 .def(
"ref_fE", &MBPIMDTraj_Solver::ref_fE, py::return_value_policy::reference_internal)
7145 .def(
"ref_VHO", &MBPIMDTraj_Solver::ref_VHO, py::return_value_policy::reference_internal)
7146 .def(
"ref_dV_spring", &MBPIMDTraj_Solver::ref_dV_spring, py::return_value_policy::reference_internal)
7147 .def(
"ref_dE_spring", &MBPIMDTraj_Solver::ref_dE_spring, py::return_value_policy::reference_internal)
7148 .def_static(
"name", &MBPIMDTraj_Solver::name)
7149 .def(
"spring_force",
static_cast<int (MBPIMDTraj_Solver::*)()
>(&MBPIMDTraj_Solver::spring_force))
7150 .def(
"update_p_harm",
static_cast<int (MBPIMDTraj_Solver::*)(
const kids_real&)
>(&MBPIMDTraj_Solver::update_p_harm))
7151 .def(
"estimator",
static_cast<int (MBPIMDTraj_Solver::*)(
const int&, TCFnucl&)
>(&MBPIMDTraj_Solver::estimator))
7152 .def(
"ff_calc1",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::ff_calc1))
7153 .def(
"update_r",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_r))
7154 .def(
"update_p",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_p))
7155 .def(
"update_p_harm",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_p_harm))
7156 .def(
"caylay_update_half",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::caylay_update_half))
7157 .def(
"BAOAB",
static_cast<int (PIMDTraj_Solver::*)(
int&,
int)
>(&PIMDTraj_Solver::BAOAB))
7158 .def(
"BCOCB",
static_cast<int (PIMDTraj_Solver::*)(
int&,
int)
>(&PIMDTraj_Solver::BCOCB))
7159 .def(
"update_thermo",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_thermo))
7160 .def(
"traj",
static_cast<int (PIMDTraj_Solver::*)(TCFnucl&,
const int&)
>(&PIMDTraj_Solver::traj))
7161 .def(
"traj_Middle",
static_cast<int (PIMDTraj_Solver::*)(TCFnucl&,
const int&)
>(&PIMDTraj_Solver::traj_Middle))
7162 .def(
"traj_property",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::traj_property))
7163 .def(
"sampler",
static_cast<int (PIMDTraj_Solver::*)(
const int&, TCFnucl&)
>(&PIMDTraj_Solver::sampler))
7164 .def(
"estimator",
static_cast<int (PIMDTraj_Solver::*)(
const int&, TCFnucl&)
>(&PIMDTraj_Solver::estimator))
7165 .def(
"run_impl",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::run_impl))
7166 .def(
"run_parallel",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::run_parallel))
7167 .def(
"init",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::init))
7168 .def(
"all_X2K",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::all_X2K))
7169 .def(
"all_K2X",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::all_K2X))
7170 .def(
"all_FX2FK",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::all_FX2FK))
7171 .def(
"rot_trans_corr", [](PIMDTraj_Solver& self,
int Natom,
7172 py::array_t<kids_real, py::array::c_style | py::array::forcecast> m_in_arr,
7173 py::array_t<kids_real, py::array::c_style | py::array::forcecast> x_in_arr,
7174 py::array_t<kids_real, py::array::c_style | py::array::forcecast> p_in_arr,
7175 py::array_t<kids_real, py::array::c_style | py::array::forcecast> F_in_arr,
7177 return self.rot_trans_corr(Natom, m_in_arr.mutable_data(), x_in_arr.mutable_data(), p_in_arr.mutable_data(), F_in_arr.mutable_data(), cal_force);
7180 .
def(
"pseudo_inv", [](PIMDTraj_Solver& self,
int N,
7181 py::array_t<kids_real, py::array::c_style | py::array::forcecast> A_arr,
7182 py::array_t<kids_real, py::array::c_style | py::array::forcecast> invA_arr,
7183 py::array_t<kids_real, py::array::c_style | py::array::forcecast> vectmp_arr,
7185 return self.pseudo_inv(N, A_arr.mutable_data(), invA_arr.mutable_data(), vectmp_arr.mutable_data(), eps);
7188 .
def(
"cross", [](PIMDTraj_Solver& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> vec1_arr,
7189 py::array_t<kids_real, py::array::c_style | py::array::forcecast> vec2_arr,
7190 py::array_t<kids_real, py::array::c_style | py::array::forcecast> prod_arr) {
7191 return self.cross(vec1_arr.mutable_data(), vec2_arr.mutable_data(), prod_arr.mutable_data());
7194 .
def(
"rst_output",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::rst_output))
7195 .
def(
"rst_read",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::rst_read))
7196 .
def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
7197 .
def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
7198 .
def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
7199 .
def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
7200 .
def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
7201 .
def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
7202 .
def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
7203 .
def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
7204 .
def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
7205 .
def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
7206 .
def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
7207 .
def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
7208 .
def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
7209 .
def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
7210 .
def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
7211 .
def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
7212 .
def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
7213 .
def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
7214 .
def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
7215 .
def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
7216 .
def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
7217 .
def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
7218 .
def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
7220 class PyTrampoline_PILD_Solver :
public PILD_Solver {
7222 using PILD_Solver::PILD_Solver;
7224 int update_thermo(
const kids_real& dt)
override {
7233 int update_p(
const kids_real& dt)
override {
7242 int init(
const int& itraj)
override {
7251 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
7260 int ff_calc1(
const int& level)
override {
7269 int update_r(
const kids_real& dt)
override {
7278 int update_p_harm(
const kids_real& dt)
override {
7287 int caylay_update_half(
7288 const kids_real& dt)
override {
7297 int BAOAB(
int& succ,
7298 int step)
override {
7307 int BCOCB(
int& succ,
int step)
override {
7316 int traj(TCFnucl& tcfer,
const int& PN)
override {
7325 int traj_Middle(TCFnucl& tcfer,
const int& PN)
override {
7334 int traj_property(
const kids_real& dt)
override {
7343 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
7352 int run_impl()
override {
7361 int run_parallel()
override {
7370 int rot_trans_corr(
int Natom, kids_real* m_in, kids_real* x_in, kids_real* p_in, kids_real* F_in,
7371 bool cal_force =
true)
override {
7376 Natom, m_in, x_in, p_in, F_in, cal_force
7380 int pseudo_inv(
int N, kids_real* A, kids_real* invA, kids_real* vectmp, kids_real eps)
override {
7385 N, A, invA, vectmp, eps
7389 int cross(kids_real* vec1, kids_real* vec2, kids_real* prod)
override {
7398 int rst_output(
const int& traj_in)
override {
7407 int rst_read(
const int& traj_in)
override {
7416 int init_ofs(
const int& itraj)
override {
7425 int final(
const int& itraj)
override {
7434 int check_break(
int& succ)
override {
7443 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
7447 traj_velocityverlet,
7452 int init(
int flag)
override {
7461 int final(
int flag)
override {
7470 int cache(
int flag)
override {
7480 py::class_<PILD_Solver, PIMDTraj_Solver, PyTrampoline_PILD_Solver>(solvers_m,
"PILD_Solver", py::dynamic_attr())
7481 .def(py::init<Param, Model*>())
7482 .def(py::init<const std::string&, Model*>())
7483 .def(
"ref_M_therm", &PILD_Solver::ref_M_therm, py::return_value_policy::reference_internal)
7484 .def_static(
"name", &PILD_Solver::name)
7485 .def(
"update_thermo",
static_cast<int (PILD_Solver::*)(
const kids_real&)
>(&PILD_Solver::update_thermo))
7486 .def(
"update_p",
static_cast<int (PILD_Solver::*)(
const kids_real&)
>(&PILD_Solver::update_p))
7487 .def(
"init",
static_cast<int (PILD_Solver::*)(
const int&)
>(&PILD_Solver::init))
7488 .def(
"estimator",
static_cast<int (PILD_Solver::*)(
const int&, TCFnucl&)
>(&PILD_Solver::estimator))
7489 .def(
"ff_calc1",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::ff_calc1))
7490 .def(
"update_r",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_r))
7491 .def(
"update_p",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_p))
7492 .def(
"update_p_harm",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_p_harm))
7493 .def(
"caylay_update_half",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::caylay_update_half))
7494 .def(
"BAOAB",
static_cast<int (PIMDTraj_Solver::*)(
int&,
int)
>(&PIMDTraj_Solver::BAOAB))
7495 .def(
"BCOCB",
static_cast<int (PIMDTraj_Solver::*)(
int&,
int)
>(&PIMDTraj_Solver::BCOCB))
7496 .def(
"update_thermo",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_thermo))
7497 .def(
"traj",
static_cast<int (PIMDTraj_Solver::*)(TCFnucl&,
const int&)
>(&PIMDTraj_Solver::traj))
7498 .def(
"traj_Middle",
static_cast<int (PIMDTraj_Solver::*)(TCFnucl&,
const int&)
>(&PIMDTraj_Solver::traj_Middle))
7499 .def(
"traj_property",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::traj_property))
7500 .def(
"sampler",
static_cast<int (PIMDTraj_Solver::*)(
const int&, TCFnucl&)
>(&PIMDTraj_Solver::sampler))
7501 .def(
"estimator",
static_cast<int (PIMDTraj_Solver::*)(
const int&, TCFnucl&)
>(&PIMDTraj_Solver::estimator))
7502 .def(
"run_impl",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::run_impl))
7503 .def(
"run_parallel",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::run_parallel))
7504 .def(
"init",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::init))
7505 .def(
"all_X2K",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::all_X2K))
7506 .def(
"all_K2X",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::all_K2X))
7507 .def(
"all_FX2FK",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::all_FX2FK))
7508 .def(
"rot_trans_corr", [](PIMDTraj_Solver& self,
int Natom,
7509 py::array_t<kids_real, py::array::c_style | py::array::forcecast> m_in_arr,
7510 py::array_t<kids_real, py::array::c_style | py::array::forcecast> x_in_arr,
7511 py::array_t<kids_real, py::array::c_style | py::array::forcecast> p_in_arr,
7512 py::array_t<kids_real, py::array::c_style | py::array::forcecast> F_in_arr,
7514 return self.rot_trans_corr(Natom, m_in_arr.mutable_data(), x_in_arr.mutable_data(), p_in_arr.mutable_data(), F_in_arr.mutable_data(), cal_force);
7517 .
def(
"pseudo_inv", [](PIMDTraj_Solver& self,
int N,
7518 py::array_t<kids_real, py::array::c_style | py::array::forcecast> A_arr,
7519 py::array_t<kids_real, py::array::c_style | py::array::forcecast> invA_arr,
7520 py::array_t<kids_real, py::array::c_style | py::array::forcecast> vectmp_arr,
7522 return self.pseudo_inv(N, A_arr.mutable_data(), invA_arr.mutable_data(), vectmp_arr.mutable_data(), eps);
7525 .
def(
"cross", [](PIMDTraj_Solver& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> vec1_arr,
7526 py::array_t<kids_real, py::array::c_style | py::array::forcecast> vec2_arr,
7527 py::array_t<kids_real, py::array::c_style | py::array::forcecast> prod_arr) {
7528 return self.cross(vec1_arr.mutable_data(), vec2_arr.mutable_data(), prod_arr.mutable_data());
7531 .
def(
"rst_output",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::rst_output))
7532 .
def(
"rst_read",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::rst_read))
7533 .
def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
7534 .
def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
7535 .
def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
7536 .
def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
7537 .
def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
7538 .
def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
7539 .
def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
7540 .
def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
7541 .
def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
7542 .
def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
7543 .
def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
7544 .
def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
7545 .
def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
7546 .
def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
7547 .
def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
7548 .
def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
7549 .
def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
7550 .
def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
7551 .
def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
7552 .
def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
7553 .
def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
7554 .
def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
7555 .
def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
7557 class PyTrampoline_CentroidMD_Solver :
public CentroidMD_Solver {
7559 using CentroidMD_Solver::CentroidMD_Solver;
7561 int update_thermo(
const kids_real& dt)
override {
7570 int init(
const int& itraj)
override {
7579 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
7588 int ff_calc1(
const int& level)
override {
7597 int update_r(
const kids_real& dt)
override {
7606 int update_p(
const kids_real& dt)
override {
7615 int update_p_harm(
const kids_real& dt)
override {
7624 int caylay_update_half(
7625 const kids_real& dt)
override {
7634 int BAOAB(
int& succ,
7635 int step)
override {
7644 int BCOCB(
int& succ,
int step)
override {
7653 int traj(TCFnucl& tcfer,
const int& PN)
override {
7662 int traj_Middle(TCFnucl& tcfer,
const int& PN)
override {
7671 int traj_property(
const kids_real& dt)
override {
7680 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
7689 int run_impl()
override {
7698 int run_parallel()
override {
7707 int rot_trans_corr(
int Natom, kids_real* m_in, kids_real* x_in, kids_real* p_in, kids_real* F_in,
7708 bool cal_force =
true)
override {
7713 Natom, m_in, x_in, p_in, F_in, cal_force
7717 int pseudo_inv(
int N, kids_real* A, kids_real* invA, kids_real* vectmp, kids_real eps)
override {
7722 N, A, invA, vectmp, eps
7726 int cross(kids_real* vec1, kids_real* vec2, kids_real* prod)
override {
7735 int rst_output(
const int& traj_in)
override {
7744 int rst_read(
const int& traj_in)
override {
7753 int init_ofs(
const int& itraj)
override {
7762 int final(
const int& itraj)
override {
7771 int check_break(
int& succ)
override {
7780 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
7784 traj_velocityverlet,
7789 int init(
int flag)
override {
7798 int final(
int flag)
override {
7807 int cache(
int flag)
override {
7817 py::class_<CentroidMD_Solver, PIMDTraj_Solver, PyTrampoline_CentroidMD_Solver>(solvers_m,
"CentroidMD_Solver", py::dynamic_attr())
7818 .def(py::init<Param, Model*>())
7819 .def(py::init<const std::string&, Model*>())
7820 .def_static(
"name", &CentroidMD_Solver::name)
7821 .def(
"update_thermo",
static_cast<int (CentroidMD_Solver::*)(
const kids_real&)
>(&CentroidMD_Solver::update_thermo))
7822 .def(
"init",
static_cast<int (CentroidMD_Solver::*)(
const int&)
>(&CentroidMD_Solver::init))
7823 .def(
"estimator",
static_cast<int (CentroidMD_Solver::*)(
const int&, TCFnucl&)
>(&CentroidMD_Solver::estimator))
7824 .def(
"ff_calc1",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::ff_calc1))
7825 .def(
"update_r",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_r))
7826 .def(
"update_p",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_p))
7827 .def(
"update_p_harm",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_p_harm))
7828 .def(
"caylay_update_half",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::caylay_update_half))
7829 .def(
"BAOAB",
static_cast<int (PIMDTraj_Solver::*)(
int&,
int)
>(&PIMDTraj_Solver::BAOAB))
7830 .def(
"BCOCB",
static_cast<int (PIMDTraj_Solver::*)(
int&,
int)
>(&PIMDTraj_Solver::BCOCB))
7831 .def(
"update_thermo",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::update_thermo))
7832 .def(
"traj",
static_cast<int (PIMDTraj_Solver::*)(TCFnucl&,
const int&)
>(&PIMDTraj_Solver::traj))
7833 .def(
"traj_Middle",
static_cast<int (PIMDTraj_Solver::*)(TCFnucl&,
const int&)
>(&PIMDTraj_Solver::traj_Middle))
7834 .def(
"traj_property",
static_cast<int (PIMDTraj_Solver::*)(
const kids_real&)
>(&PIMDTraj_Solver::traj_property))
7835 .def(
"sampler",
static_cast<int (PIMDTraj_Solver::*)(
const int&, TCFnucl&)
>(&PIMDTraj_Solver::sampler))
7836 .def(
"estimator",
static_cast<int (PIMDTraj_Solver::*)(
const int&, TCFnucl&)
>(&PIMDTraj_Solver::estimator))
7837 .def(
"run_impl",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::run_impl))
7838 .def(
"run_parallel",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::run_parallel))
7839 .def(
"init",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::init))
7840 .def(
"all_X2K",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::all_X2K))
7841 .def(
"all_K2X",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::all_K2X))
7842 .def(
"all_FX2FK",
static_cast<int (PIMDTraj_Solver::*)()
>(&PIMDTraj_Solver::all_FX2FK))
7843 .def(
"rot_trans_corr", [](PIMDTraj_Solver& self,
int Natom,
7844 py::array_t<kids_real, py::array::c_style | py::array::forcecast> m_in_arr,
7845 py::array_t<kids_real, py::array::c_style | py::array::forcecast> x_in_arr,
7846 py::array_t<kids_real, py::array::c_style | py::array::forcecast> p_in_arr,
7847 py::array_t<kids_real, py::array::c_style | py::array::forcecast> F_in_arr,
7849 return self.rot_trans_corr(Natom, m_in_arr.mutable_data(), x_in_arr.mutable_data(), p_in_arr.mutable_data(), F_in_arr.mutable_data(), cal_force);
7852 .
def(
"pseudo_inv", [](PIMDTraj_Solver& self,
int N,
7853 py::array_t<kids_real, py::array::c_style | py::array::forcecast> A_arr,
7854 py::array_t<kids_real, py::array::c_style | py::array::forcecast> invA_arr,
7855 py::array_t<kids_real, py::array::c_style | py::array::forcecast> vectmp_arr,
7857 return self.pseudo_inv(N, A_arr.mutable_data(), invA_arr.mutable_data(), vectmp_arr.mutable_data(), eps);
7860 .
def(
"cross", [](PIMDTraj_Solver& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> vec1_arr,
7861 py::array_t<kids_real, py::array::c_style | py::array::forcecast> vec2_arr,
7862 py::array_t<kids_real, py::array::c_style | py::array::forcecast> prod_arr) {
7863 return self.cross(vec1_arr.mutable_data(), vec2_arr.mutable_data(), prod_arr.mutable_data());
7866 .
def(
"rst_output",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::rst_output))
7867 .
def(
"rst_read",
static_cast<int (PIMDTraj_Solver::*)(
const int&)
>(&PIMDTraj_Solver::rst_read))
7868 .
def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
7869 .
def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
7870 .
def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
7871 .
def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
7872 .
def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
7873 .
def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
7874 .
def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
7875 .
def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
7876 .
def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
7877 .
def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
7878 .
def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
7879 .
def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
7880 .
def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
7881 .
def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
7882 .
def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
7883 .
def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
7884 .
def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
7885 .
def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
7886 .
def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
7887 .
def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
7888 .
def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
7889 .
def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
7890 .
def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
7892 class PyTrampoline_NadTraj_Solver :
public NadTraj_Solver {
7894 using NadTraj_Solver::NadTraj_Solver;
7896 int ff_calc1(
const int& level,
const bool& refered =
false)
override {
7905 int ff_calc2()
override {
7914 int evolve_elec(kids_complex* Uevolve)
override {
7923 int init_occ2eac(
const int& itraj)
override {
7932 int init_ofs(
const int& itraj)
override {
7941 int init(
const int& itraj)
override {
7950 int final(
const int& itraj)
override {
7959 int check_break(
int& succ)
override {
7968 int rst_output(
const int& itraj)
override {
7977 int rst_read(
const int& itraj)
override {
7986 int traj_property(
const kids_real& dt)
override {
7995 int traj(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
8004 int traj_velocityverlet(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
8008 traj_velocityverlet,
8013 int kernel0(kids_complex* rhox,
const int& F)
override {
8022 int kernelt(kids_complex* rhox,
const int& F)
override {
8031 int correlation(
const int& isamp, NAD_TCFer& tcfer)
override {
8040 int run_impl()
override {
8049 int run_parallel()
override {
8058 int ff_calc1(
const int& level)
override {
8067 int update_r(
const kids_real& dt)
override {
8076 int update_p(
const kids_real& dt)
override {
8085 int update_thermo(
const kids_real& dt)
override {
8094 int traj(TCFnucl& tcfer,
const int& N)
override {
8103 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
8107 traj_velocityverlet,
8112 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
8121 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
8130 int init(
int flag)
override {
8139 int final(
int flag)
override {
8148 int cache(
int flag)
override {
8158 py::class_<NadTraj_Solver, Traj_Solver, PyTrampoline_NadTraj_Solver>(solvers_m,
"NadTraj_Solver", py::dynamic_attr())
8159 .def(py::init<const Param&, Model*>())
8160 .def(py::init<const std::string&, Model*>())
8161 .def(
"ref_mvc", &NadTraj_Solver::ref_mvc, py::return_value_policy::reference_internal)
8162 .def(
"ref_fmean", &NadTraj_Solver::ref_fmean, py::return_value_policy::reference_internal)
8163 .def(
"ref_fcorr", &NadTraj_Solver::ref_fcorr, py::return_value_policy::reference_internal)
8164 .def(
"ref_V", &NadTraj_Solver::ref_V, py::return_value_policy::reference_internal)
8165 .def(
"ref_dV", &NadTraj_Solver::ref_dV, py::return_value_policy::reference_internal)
8166 .def(
"ref_ddV", &NadTraj_Solver::ref_ddV, py::return_value_policy::reference_internal)
8167 .def(
"ref_E", &NadTraj_Solver::ref_E, py::return_value_policy::reference_internal)
8168 .def(
"ref_T", &NadTraj_Solver::ref_T, py::return_value_policy::reference_internal)
8169 .def(
"ref_T0", &NadTraj_Solver::ref_T0, py::return_value_policy::reference_internal)
8170 .def(
"ref_dE", &NadTraj_Solver::ref_dE, py::return_value_policy::reference_internal)
8171 .def(
"ref_ddE", &NadTraj_Solver::ref_ddE, py::return_value_policy::reference_internal)
8172 .def(
"ref_L", &NadTraj_Solver::ref_L, py::return_value_policy::reference_internal)
8173 .def(
"ref_nacv", &NadTraj_Solver::ref_nacv, py::return_value_policy::reference_internal)
8174 .def(
"ref_eac0", &NadTraj_Solver::ref_eac0, py::return_value_policy::reference_internal)
8175 .def(
"ref_rho0", &NadTraj_Solver::ref_rho0, py::return_value_policy::reference_internal)
8176 .def(
"ref_rhot", &NadTraj_Solver::ref_rhot, py::return_value_policy::reference_internal)
8177 .def(
"ref_U", &NadTraj_Solver::ref_U, py::return_value_policy::reference_internal)
8178 .def(
"ref_H", &NadTraj_Solver::ref_H, py::return_value_policy::reference_internal)
8179 .def(
"ref_dH", &NadTraj_Solver::ref_dH, py::return_value_policy::reference_internal)
8180 .def(
"ref_ddH", &NadTraj_Solver::ref_ddH, py::return_value_policy::reference_internal)
8181 .def(
"ref_S", &NadTraj_Solver::ref_S, py::return_value_policy::reference_internal)
8182 .def(
"ref_dL", &NadTraj_Solver::ref_dL, py::return_value_policy::reference_internal)
8183 .def(
"ref_ddL", &NadTraj_Solver::ref_ddL, py::return_value_policy::reference_internal)
8184 .def(
"ref_eac", &NadTraj_Solver::ref_eac, py::return_value_policy::reference_internal)
8185 .def(
"ref_eacf", &NadTraj_Solver::ref_eacf, py::return_value_policy::reference_internal)
8186 .def(
"ref_eacb", &NadTraj_Solver::ref_eacb, py::return_value_policy::reference_internal)
8187 .def(
"ref_gmat", &NadTraj_Solver::ref_gmat, py::return_value_policy::reference_internal)
8188 .def(
"ref_rho", &NadTraj_Solver::ref_rho, py::return_value_policy::reference_internal)
8189 .def_static(
"name", &NadTraj_Solver::name)
8190 .def(
"ff_calc1",
static_cast<int (NadTraj_Solver::*)(
const int&,
const bool&)
>(&NadTraj_Solver::ff_calc1))
8191 .def(
"ff_calc2",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::ff_calc2))
8192 .def(
"init_occ2eac",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_occ2eac))
8193 .def(
"init_ofs",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_ofs))
8194 .def(
"init",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init))
8195 .def(
"final",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::final))
8196 .def(
"check_break",
static_cast<int (NadTraj_Solver::*)(
int&)
>(&NadTraj_Solver::check_break))
8197 .def(
"rst_output",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_output))
8198 .def(
"rst_read",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_read))
8199 .def(
"traj_property",
static_cast<int (NadTraj_Solver::*)(
const kids_real&)
>(&NadTraj_Solver::traj_property))
8200 .def(
"traj",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj))
8201 .def(
"traj_velocityverlet",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj_velocityverlet))
8202 .def(
"sampler",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::sampler))
8203 .def(
"correlation",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::correlation))
8204 .def(
"run_impl",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_impl))
8205 .def(
"run_parallel",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_parallel))
8206 .def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
8207 .def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
8208 .def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
8209 .def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
8210 .def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
8211 .def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
8212 .def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
8213 .def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
8214 .def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
8215 .def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
8216 .def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
8217 .def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
8218 .def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
8219 .def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
8220 .def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
8221 .def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
8222 .def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
8223 .def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
8224 .def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
8225 .def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
8226 .def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
8227 .def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
8228 .def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
8230 class PyTrampoline_MMD_Solver :
public MMD_Solver {
8232 using MMD_Solver::MMD_Solver;
8234 int init(
const int& itraj)
override {
8243 int kernel0(kids_complex* rhox,
const int& F)
override {
8252 int kernelt(kids_complex* rhox,
const int& F)
override {
8261 int ff_calc1(
const int& level,
const bool& refered =
false)
override {
8270 int ff_calc2()
override {
8279 int evolve_elec(kids_complex* Uevolve)
override {
8288 int init_occ2eac(
const int& itraj)
override {
8297 int init_ofs(
const int& itraj)
override {
8306 int final(
const int& itraj)
override {
8315 int check_break(
int& succ)
override {
8324 int rst_output(
const int& itraj)
override {
8333 int rst_read(
const int& itraj)
override {
8342 int traj_property(
const kids_real& dt)
override {
8351 int traj(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
8360 int traj_velocityverlet(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
8364 traj_velocityverlet,
8369 int correlation(
const int& isamp, NAD_TCFer& tcfer)
override {
8378 int run_impl()
override {
8387 int run_parallel()
override {
8396 int ff_calc1(
const int& level)
override {
8405 int update_r(
const kids_real& dt)
override {
8414 int update_p(
const kids_real& dt)
override {
8423 int update_thermo(
const kids_real& dt)
override {
8432 int traj(TCFnucl& tcfer,
const int& N)
override {
8441 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
8445 traj_velocityverlet,
8450 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
8459 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
8468 int init(
int flag)
override {
8477 int final(
int flag)
override {
8486 int cache(
int flag)
override {
8496 py::class_<MMD_Solver, NadTraj_Solver, PyTrampoline_MMD_Solver>(solvers_m,
"MMD_Solver", py::dynamic_attr())
8497 .def(py::init<Param, Model*>())
8498 .def(py::init<const std::string&, Model*>())
8499 .def_static(
"name", &MMD_Solver::name)
8500 .def(
"init",
static_cast<int (MMD_Solver::*)(
const int&)
>(&MMD_Solver::init))
8501 .def(
"ff_calc1",
static_cast<int (NadTraj_Solver::*)(
const int&,
const bool&)
>(&NadTraj_Solver::ff_calc1))
8502 .def(
"ff_calc2",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::ff_calc2))
8503 .def(
"init_occ2eac",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_occ2eac))
8504 .def(
"init_ofs",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_ofs))
8505 .def(
"init",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init))
8506 .def(
"final",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::final))
8507 .def(
"check_break",
static_cast<int (NadTraj_Solver::*)(
int&)
>(&NadTraj_Solver::check_break))
8508 .def(
"rst_output",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_output))
8509 .def(
"rst_read",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_read))
8510 .def(
"traj_property",
static_cast<int (NadTraj_Solver::*)(
const kids_real&)
>(&NadTraj_Solver::traj_property))
8511 .def(
"traj",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj))
8512 .def(
"traj_velocityverlet",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj_velocityverlet))
8513 .def(
"sampler",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::sampler))
8514 .def(
"correlation",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::correlation))
8515 .def(
"run_impl",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_impl))
8516 .def(
"run_parallel",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_parallel))
8517 .def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
8518 .def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
8519 .def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
8520 .def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
8521 .def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
8522 .def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
8523 .def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
8524 .def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
8525 .def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
8526 .def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
8527 .def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
8528 .def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
8529 .def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
8530 .def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
8531 .def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
8532 .def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
8533 .def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
8534 .def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
8535 .def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
8536 .def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
8537 .def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
8538 .def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
8539 .def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
8541 class PyTrampoline_CMM_Solver :
public CMM_Solver {
8543 using CMM_Solver::CMM_Solver;
8545 int init_occ2eac(
const int& itraj)
override {
8554 int init(
const int& itraj)
override {
8563 int kernel_cmm(kids_complex* rhox, kids_real& xic, kids_real& gammac,
const int& F)
override {
8568 rhox, xic, gammac, F
8572 int kernel0(kids_complex* rhox,
const int& F)
override {
8581 int kernelt(kids_complex* rhox,
const int& F)
override {
8590 int ff_calc1(
const int& level,
const bool& refered =
false)
override {
8599 int ff_calc2()
override {
8608 int evolve_elec(kids_complex* Uevolve)
override {
8617 int init_ofs(
const int& itraj)
override {
8626 int final(
const int& itraj)
override {
8635 int check_break(
int& succ)
override {
8644 int rst_output(
const int& itraj)
override {
8653 int rst_read(
const int& itraj)
override {
8662 int traj_property(
const kids_real& dt)
override {
8671 int traj(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
8680 int traj_velocityverlet(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
8684 traj_velocityverlet,
8689 int correlation(
const int& isamp, NAD_TCFer& tcfer)
override {
8698 int run_impl()
override {
8707 int run_parallel()
override {
8716 int ff_calc1(
const int& level)
override {
8725 int update_r(
const kids_real& dt)
override {
8734 int update_p(
const kids_real& dt)
override {
8743 int update_thermo(
const kids_real& dt)
override {
8752 int traj(TCFnucl& tcfer,
const int& N)
override {
8761 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
8765 traj_velocityverlet,
8770 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
8779 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
8788 int init(
int flag)
override {
8797 int final(
int flag)
override {
8806 int cache(
int flag)
override {
8816 py::class_<CMM_Solver, NadTraj_Solver, PyTrampoline_CMM_Solver>(solvers_m,
"CMM_Solver", py::dynamic_attr())
8817 .def(py::init<Param, Model*>())
8818 .def(py::init<const std::string&, Model*>())
8819 .def_static(
"name", &CMM_Solver::name)
8820 .def(
"init_occ2eac",
static_cast<int (CMM_Solver::*)(
const int&)
>(&CMM_Solver::init_occ2eac))
8821 .def(
"init",
static_cast<int (CMM_Solver::*)(
const int&)
>(&CMM_Solver::init))
8822 .def(
"ff_calc1",
static_cast<int (NadTraj_Solver::*)(
const int&,
const bool&)
>(&NadTraj_Solver::ff_calc1))
8823 .def(
"ff_calc2",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::ff_calc2))
8824 .def(
"init_occ2eac",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_occ2eac))
8825 .def(
"init_ofs",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_ofs))
8826 .def(
"init",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init))
8827 .def(
"final",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::final))
8828 .def(
"check_break",
static_cast<int (NadTraj_Solver::*)(
int&)
>(&NadTraj_Solver::check_break))
8829 .def(
"rst_output",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_output))
8830 .def(
"rst_read",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_read))
8831 .def(
"traj_property",
static_cast<int (NadTraj_Solver::*)(
const kids_real&)
>(&NadTraj_Solver::traj_property))
8832 .def(
"traj",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj))
8833 .def(
"traj_velocityverlet",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj_velocityverlet))
8834 .def(
"sampler",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::sampler))
8835 .def(
"correlation",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::correlation))
8836 .def(
"run_impl",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_impl))
8837 .def(
"run_parallel",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_parallel))
8838 .def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
8839 .def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
8840 .def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
8841 .def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
8842 .def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
8843 .def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
8844 .def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
8845 .def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
8846 .def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
8847 .def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
8848 .def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
8849 .def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
8850 .def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
8851 .def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
8852 .def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
8853 .def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
8854 .def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
8855 .def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
8856 .def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
8857 .def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
8858 .def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
8859 .def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
8860 .def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
8862 class PyTrampoline_SQC_Solver :
public SQC_Solver {
8864 using SQC_Solver::SQC_Solver;
8866 int init_occ2eac(
const int& itraj)
override {
8875 int init(
const int& itraj)
override {
8884 int kernel0(kids_complex* rhox,
const int& F)
override {
8893 int kernelt(kids_complex* rhox,
const int& F)
override {
8902 int ff_calc1(
const int& level,
const bool& refered =
false)
override {
8911 int ff_calc2()
override {
8920 int evolve_elec(kids_complex* Uevolve)
override {
8929 int init_ofs(
const int& itraj)
override {
8938 int final(
const int& itraj)
override {
8947 int check_break(
int& succ)
override {
8956 int rst_output(
const int& itraj)
override {
8965 int rst_read(
const int& itraj)
override {
8974 int traj_property(
const kids_real& dt)
override {
8983 int traj(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
8992 int traj_velocityverlet(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
8996 traj_velocityverlet,
9001 int correlation(
const int& isamp, NAD_TCFer& tcfer)
override {
9010 int run_impl()
override {
9019 int run_parallel()
override {
9028 int ff_calc1(
const int& level)
override {
9037 int update_r(
const kids_real& dt)
override {
9046 int update_p(
const kids_real& dt)
override {
9055 int update_thermo(
const kids_real& dt)
override {
9064 int traj(TCFnucl& tcfer,
const int& N)
override {
9073 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
9077 traj_velocityverlet,
9082 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
9091 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
9100 int init(
int flag)
override {
9109 int final(
int flag)
override {
9118 int cache(
int flag)
override {
9128 py::class_<SQC_Solver, NadTraj_Solver, PyTrampoline_SQC_Solver>(solvers_m,
"SQC_Solver", py::dynamic_attr())
9129 .def(py::init<Param, Model*>())
9130 .def(py::init<const std::string&, Model*>())
9131 .def_static(
"name", &SQC_Solver::name)
9132 .def(
"init_occ2eac",
static_cast<int (SQC_Solver::*)(
const int&)
>(&SQC_Solver::init_occ2eac))
9133 .def(
"init",
static_cast<int (SQC_Solver::*)(
const int&)
>(&SQC_Solver::init))
9134 .def(
"ff_calc1",
static_cast<int (NadTraj_Solver::*)(
const int&,
const bool&)
>(&NadTraj_Solver::ff_calc1))
9135 .def(
"ff_calc2",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::ff_calc2))
9136 .def(
"init_occ2eac",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_occ2eac))
9137 .def(
"init_ofs",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_ofs))
9138 .def(
"init",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init))
9139 .def(
"final",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::final))
9140 .def(
"check_break",
static_cast<int (NadTraj_Solver::*)(
int&)
>(&NadTraj_Solver::check_break))
9141 .def(
"rst_output",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_output))
9142 .def(
"rst_read",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_read))
9143 .def(
"traj_property",
static_cast<int (NadTraj_Solver::*)(
const kids_real&)
>(&NadTraj_Solver::traj_property))
9144 .def(
"traj",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj))
9145 .def(
"traj_velocityverlet",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj_velocityverlet))
9146 .def(
"sampler",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::sampler))
9147 .def(
"correlation",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::correlation))
9148 .def(
"run_impl",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_impl))
9149 .def(
"run_parallel",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_parallel))
9150 .def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
9151 .def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
9152 .def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
9153 .def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
9154 .def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
9155 .def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
9156 .def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
9157 .def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
9158 .def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
9159 .def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
9160 .def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
9161 .def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
9162 .def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
9163 .def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
9164 .def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
9165 .def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
9166 .def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
9167 .def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
9168 .def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
9169 .def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
9170 .def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
9171 .def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
9172 .def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
9174 class PyTrampoline_LSC_Solver :
public LSC_Solver {
9176 using LSC_Solver::LSC_Solver;
9178 int init_occ2eac(
const int& itraj)
override {
9187 int init(
const int& itraj)
override {
9196 int kernel_lsc(kids_complex* rhox, kids_real& gammac,
const int& F)
override {
9205 int kernel0(kids_complex* rhox,
const int& F)
override {
9214 int kernelt(kids_complex* rhox,
const int& F)
override {
9223 int ff_calc1(
const int& level,
const bool& refered =
false)
override {
9232 int ff_calc2()
override {
9241 int evolve_elec(kids_complex* Uevolve)
override {
9250 int init_ofs(
const int& itraj)
override {
9259 int final(
const int& itraj)
override {
9268 int check_break(
int& succ)
override {
9277 int rst_output(
const int& itraj)
override {
9286 int rst_read(
const int& itraj)
override {
9295 int traj_property(
const kids_real& dt)
override {
9304 int traj(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
9313 int traj_velocityverlet(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
9317 traj_velocityverlet,
9322 int correlation(
const int& isamp, NAD_TCFer& tcfer)
override {
9331 int run_impl()
override {
9340 int run_parallel()
override {
9349 int ff_calc1(
const int& level)
override {
9358 int update_r(
const kids_real& dt)
override {
9367 int update_p(
const kids_real& dt)
override {
9376 int update_thermo(
const kids_real& dt)
override {
9385 int traj(TCFnucl& tcfer,
const int& N)
override {
9394 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
9398 traj_velocityverlet,
9403 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
9412 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
9421 int init(
int flag)
override {
9430 int final(
int flag)
override {
9439 int cache(
int flag)
override {
9449 py::class_<LSC_Solver, NadTraj_Solver, PyTrampoline_LSC_Solver>(solvers_m,
"LSC_Solver", py::dynamic_attr())
9450 .def(py::init<Param, Model*>())
9451 .def(py::init<const std::string&, Model*>())
9452 .def_static(
"name", &LSC_Solver::name)
9453 .def(
"init_occ2eac",
static_cast<int (LSC_Solver::*)(
const int&)
>(&LSC_Solver::init_occ2eac))
9454 .def(
"init",
static_cast<int (LSC_Solver::*)(
const int&)
>(&LSC_Solver::init))
9455 .def(
"ff_calc1",
static_cast<int (NadTraj_Solver::*)(
const int&,
const bool&)
>(&NadTraj_Solver::ff_calc1))
9456 .def(
"ff_calc2",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::ff_calc2))
9457 .def(
"init_occ2eac",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_occ2eac))
9458 .def(
"init_ofs",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_ofs))
9459 .def(
"init",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init))
9460 .def(
"final",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::final))
9461 .def(
"check_break",
static_cast<int (NadTraj_Solver::*)(
int&)
>(&NadTraj_Solver::check_break))
9462 .def(
"rst_output",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_output))
9463 .def(
"rst_read",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_read))
9464 .def(
"traj_property",
static_cast<int (NadTraj_Solver::*)(
const kids_real&)
>(&NadTraj_Solver::traj_property))
9465 .def(
"traj",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj))
9466 .def(
"traj_velocityverlet",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj_velocityverlet))
9467 .def(
"sampler",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::sampler))
9468 .def(
"correlation",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::correlation))
9469 .def(
"run_impl",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_impl))
9470 .def(
"run_parallel",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_parallel))
9471 .def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
9472 .def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
9473 .def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
9474 .def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
9475 .def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
9476 .def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
9477 .def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
9478 .def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
9479 .def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
9480 .def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
9481 .def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
9482 .def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
9483 .def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
9484 .def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
9485 .def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
9486 .def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
9487 .def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
9488 .def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
9489 .def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
9490 .def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
9491 .def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
9492 .def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
9493 .def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
9495 class PyTrampoline_SMM_Solver :
public SMM_Solver {
9497 using SMM_Solver::SMM_Solver;
9499 int init_occ2eac(
const int& itraj)
override {
9508 int init(
const int& itraj)
override {
9517 int kernel_scmm(kids_complex* rhox,
const int& F)
override {
9526 int kernel0(kids_complex* rhox,
const int& F)
override {
9535 int kernelt(kids_complex* rhox,
const int& F)
override {
9544 int ff_calc1(
const int& level,
const bool& refered =
false)
override {
9553 int ff_calc2()
override {
9562 int evolve_elec(kids_complex* Uevolve)
override {
9571 int init_ofs(
const int& itraj)
override {
9580 int final(
const int& itraj)
override {
9589 int check_break(
int& succ)
override {
9598 int rst_output(
const int& itraj)
override {
9607 int rst_read(
const int& itraj)
override {
9616 int traj_property(
const kids_real& dt)
override {
9625 int traj(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
9634 int traj_velocityverlet(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
9638 traj_velocityverlet,
9643 int correlation(
const int& isamp, NAD_TCFer& tcfer)
override {
9652 int run_impl()
override {
9661 int run_parallel()
override {
9670 int ff_calc1(
const int& level)
override {
9679 int update_r(
const kids_real& dt)
override {
9688 int update_p(
const kids_real& dt)
override {
9697 int update_thermo(
const kids_real& dt)
override {
9706 int traj(TCFnucl& tcfer,
const int& N)
override {
9715 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
9719 traj_velocityverlet,
9724 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
9733 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
9742 int init(
int flag)
override {
9751 int final(
int flag)
override {
9760 int cache(
int flag)
override {
9770 py::class_<SMM_Solver, NadTraj_Solver, PyTrampoline_SMM_Solver>(solvers_m,
"SMM_Solver", py::dynamic_attr())
9771 .def(py::init<Param, Model*>())
9772 .def(py::init<const std::string&, Model*>())
9773 .def(
"ref_xi1", &SMM_Solver::ref_xi1, py::return_value_policy::reference_internal)
9774 .def_static(
"name", &SMM_Solver::name)
9775 .def(
"init_occ2eac",
static_cast<int (SMM_Solver::*)(
const int&)
>(&SMM_Solver::init_occ2eac))
9776 .def(
"init",
static_cast<int (SMM_Solver::*)(
const int&)
>(&SMM_Solver::init))
9777 .def(
"ff_calc1",
static_cast<int (NadTraj_Solver::*)(
const int&,
const bool&)
>(&NadTraj_Solver::ff_calc1))
9778 .def(
"ff_calc2",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::ff_calc2))
9779 .def(
"init_occ2eac",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_occ2eac))
9780 .def(
"init_ofs",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_ofs))
9781 .def(
"init",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init))
9782 .def(
"final",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::final))
9783 .def(
"check_break",
static_cast<int (NadTraj_Solver::*)(
int&)
>(&NadTraj_Solver::check_break))
9784 .def(
"rst_output",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_output))
9785 .def(
"rst_read",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_read))
9786 .def(
"traj_property",
static_cast<int (NadTraj_Solver::*)(
const kids_real&)
>(&NadTraj_Solver::traj_property))
9787 .def(
"traj",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj))
9788 .def(
"traj_velocityverlet",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj_velocityverlet))
9789 .def(
"sampler",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::sampler))
9790 .def(
"correlation",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::correlation))
9791 .def(
"run_impl",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_impl))
9792 .def(
"run_parallel",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_parallel))
9793 .def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
9794 .def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
9795 .def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
9796 .def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
9797 .def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
9798 .def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
9799 .def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
9800 .def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
9801 .def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
9802 .def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
9803 .def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
9804 .def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
9805 .def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
9806 .def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
9807 .def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
9808 .def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
9809 .def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
9810 .def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
9811 .def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
9812 .def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
9813 .def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
9814 .def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
9815 .def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
9817 class PyTrampoline_Multi_NadTraj_Solver :
public Multi_NadTraj_Solver {
9819 using Multi_NadTraj_Solver::Multi_NadTraj_Solver;
9821 int ff_calc1(
const int& level,
const bool& refered =
false)
override {
9824 Multi_NadTraj_Solver,
9830 int multi_ff_calc1(
const int& level,
const bool& refered =
false)
override {
9833 Multi_NadTraj_Solver,
9839 int ff_calc2()
override {
9842 Multi_NadTraj_Solver,
9848 int multi_ff_calc2()
override {
9851 Multi_NadTraj_Solver,
9857 int evolve_elec(kids_complex* Uevolve)
override {
9860 Multi_NadTraj_Solver,
9866 int multi_evolve_elec(kids_complex* Uevolve)
override {
9869 Multi_NadTraj_Solver,
9875 int update_p(
const kids_real& dt_in)
override {
9878 Multi_NadTraj_Solver,
9884 int update_r(
const kids_real& dt_in)
override {
9887 Multi_NadTraj_Solver,
9893 int update_thermo(
const kids_real& dt_in)
override {
9896 Multi_NadTraj_Solver,
9902 int init(
const int& itraj)
override {
9905 Multi_NadTraj_Solver,
9911 int multi_init(
const int& itraj)
override {
9914 Multi_NadTraj_Solver,
9920 int init_occ2eac(
const int& itraj)
override {
9929 int init_ofs(
const int& itraj)
override {
9938 int final(
const int& itraj)
override {
9947 int check_break(
int& succ)
override {
9956 int rst_output(
const int& itraj)
override {
9965 int rst_read(
const int& itraj)
override {
9974 int traj_property(
const kids_real& dt)
override {
9983 int traj(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
9992 int traj_velocityverlet(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
9996 traj_velocityverlet,
10001 int kernel0(kids_complex* rhox,
const int& F)
override {
10010 int kernelt(kids_complex* rhox,
const int& F)
override {
10019 int correlation(
const int& isamp, NAD_TCFer& tcfer)
override {
10028 int run_impl()
override {
10037 int run_parallel()
override {
10046 int ff_calc1(
const int& level)
override {
10055 int traj(TCFnucl& tcfer,
const int& N)
override {
10064 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
10068 traj_velocityverlet,
10073 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
10082 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
10091 int init(
int flag)
override {
10100 int final(
int flag)
override {
10109 int cache(
int flag)
override {
10119 py::class_<Multi_NadTraj_Solver, NadTraj_Solver, PyTrampoline_Multi_NadTraj_Solver>(solvers_m,
"Multi_NadTraj_Solver", py::dynamic_attr())
10120 .def(py::init<const Param&, Model*, const int&>())
10121 .def(py::init<const std::string&, Model*>())
10122 .def(
"ref_nrs", &Multi_NadTraj_Solver::ref_nrs, py::return_value_policy::reference_internal)
10123 .def(
"ref_nps", &Multi_NadTraj_Solver::ref_nps, py::return_value_policy::reference_internal)
10124 .def(
"ref_nms", &Multi_NadTraj_Solver::ref_nms, py::return_value_policy::reference_internal)
10125 .def(
"ref_nfs", &Multi_NadTraj_Solver::ref_nfs, py::return_value_policy::reference_internal)
10126 .def(
"ref_vpeses", &Multi_NadTraj_Solver::ref_vpeses, py::return_value_policy::reference_internal)
10127 .def(
"ref_grads", &Multi_NadTraj_Solver::ref_grads, py::return_value_policy::reference_internal)
10128 .def(
"ref_hesses", &Multi_NadTraj_Solver::ref_hesses, py::return_value_policy::reference_internal)
10129 .def(
"ref_Vs", &Multi_NadTraj_Solver::ref_Vs, py::return_value_policy::reference_internal)
10130 .def(
"ref_dVs", &Multi_NadTraj_Solver::ref_dVs, py::return_value_policy::reference_internal)
10131 .def(
"ref_ddVs", &Multi_NadTraj_Solver::ref_ddVs, py::return_value_policy::reference_internal)
10132 .def(
"ref_Es", &Multi_NadTraj_Solver::ref_Es, py::return_value_policy::reference_internal)
10133 .def(
"ref_Ts", &Multi_NadTraj_Solver::ref_Ts, py::return_value_policy::reference_internal)
10134 .def(
"ref_dEs", &Multi_NadTraj_Solver::ref_dEs, py::return_value_policy::reference_internal)
10135 .def(
"ref_nacvs", &Multi_NadTraj_Solver::ref_nacvs, py::return_value_policy::reference_internal)
10136 .def(
"ref_Ls", &Multi_NadTraj_Solver::ref_Ls, py::return_value_policy::reference_internal)
10137 .def(
"ref_Ss", &Multi_NadTraj_Solver::ref_Ss, py::return_value_policy::reference_internal)
10138 .def(
"ref_rhos", &Multi_NadTraj_Solver::ref_rhos, py::return_value_policy::reference_internal)
10139 .def(
"ref_Us", &Multi_NadTraj_Solver::ref_Us, py::return_value_policy::reference_internal)
10140 .def_static(
"name", &Multi_NadTraj_Solver::name)
10141 .def(
"ff_calc1",
static_cast<int (Multi_NadTraj_Solver::*)(
const int&,
const bool&)
>(&Multi_NadTraj_Solver::ff_calc1))
10142 .def(
"multi_ff_calc1",
static_cast<int (Multi_NadTraj_Solver::*)(
const int&,
const bool&)
>(&Multi_NadTraj_Solver::multi_ff_calc1))
10143 .def(
"ff_calc2",
static_cast<int (Multi_NadTraj_Solver::*)()
>(&Multi_NadTraj_Solver::ff_calc2))
10144 .def(
"multi_ff_calc2",
static_cast<int (Multi_NadTraj_Solver::*)()
>(&Multi_NadTraj_Solver::multi_ff_calc2))
10145 .def(
"update_p",
static_cast<int (Multi_NadTraj_Solver::*)(
const kids_real&)
>(&Multi_NadTraj_Solver::update_p))
10146 .def(
"update_r",
static_cast<int (Multi_NadTraj_Solver::*)(
const kids_real&)
>(&Multi_NadTraj_Solver::update_r))
10147 .def(
"update_thermo",
static_cast<int (Multi_NadTraj_Solver::*)(
const kids_real&)
>(&Multi_NadTraj_Solver::update_thermo))
10148 .def(
"init",
static_cast<int (Multi_NadTraj_Solver::*)(
const int&)
>(&Multi_NadTraj_Solver::init))
10149 .def(
"multi_init",
static_cast<int (Multi_NadTraj_Solver::*)(
const int&)
>(&Multi_NadTraj_Solver::multi_init))
10150 .def(
"ff_calc1",
static_cast<int (NadTraj_Solver::*)(
const int&,
const bool&)
>(&NadTraj_Solver::ff_calc1))
10151 .def(
"ff_calc2",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::ff_calc2))
10152 .def(
"init_occ2eac",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_occ2eac))
10153 .def(
"init_ofs",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_ofs))
10154 .def(
"init",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init))
10155 .def(
"final",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::final))
10156 .def(
"check_break",
static_cast<int (NadTraj_Solver::*)(
int&)
>(&NadTraj_Solver::check_break))
10157 .def(
"rst_output",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_output))
10158 .def(
"rst_read",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_read))
10159 .def(
"traj_property",
static_cast<int (NadTraj_Solver::*)(
const kids_real&)
>(&NadTraj_Solver::traj_property))
10160 .def(
"traj",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj))
10161 .def(
"traj_velocityverlet",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj_velocityverlet))
10162 .def(
"sampler",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::sampler))
10163 .def(
"correlation",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::correlation))
10164 .def(
"run_impl",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_impl))
10165 .def(
"run_parallel",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_parallel))
10166 .def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
10167 .def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
10168 .def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
10169 .def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
10170 .def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
10171 .def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
10172 .def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
10173 .def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
10174 .def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
10175 .def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
10176 .def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
10177 .def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
10178 .def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
10179 .def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
10180 .def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
10181 .def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
10182 .def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
10183 .def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
10184 .def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
10185 .def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
10186 .def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
10187 .def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
10188 .def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
10190 class PyTrampoline_PMM_Solver :
public PMM_Solver {
10192 using PMM_Solver::PMM_Solver;
10194 int traj(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
10203 int multi_evolve_elec(kids_complex* Uevolve)
override {
10212 int multi_ff_calc2()
override {
10221 int multi_init(
const int& itraj)
override {
10230 int multi_reinit(
const int& itraj)
override {
10239 int kernel0(kids_complex* rhox,
const int& F)
override {
10248 int kernelt(kids_complex* rhox,
const int& F)
override {
10257 int ff_calc1(
const int& level,
const bool& refered =
false)
override {
10260 Multi_NadTraj_Solver,
10266 int multi_ff_calc1(
const int& level,
const bool& refered =
false)
override {
10269 Multi_NadTraj_Solver,
10275 int ff_calc2()
override {
10278 Multi_NadTraj_Solver,
10284 int evolve_elec(kids_complex* Uevolve)
override {
10287 Multi_NadTraj_Solver,
10293 int update_p(
const kids_real& dt_in)
override {
10296 Multi_NadTraj_Solver,
10302 int update_r(
const kids_real& dt_in)
override {
10305 Multi_NadTraj_Solver,
10311 int update_thermo(
const kids_real& dt_in)
override {
10314 Multi_NadTraj_Solver,
10320 int init(
const int& itraj)
override {
10323 Multi_NadTraj_Solver,
10329 int init_occ2eac(
const int& itraj)
override {
10338 int init_ofs(
const int& itraj)
override {
10347 int final(
const int& itraj)
override {
10356 int check_break(
int& succ)
override {
10365 int rst_output(
const int& itraj)
override {
10374 int rst_read(
const int& itraj)
override {
10383 int traj_property(
const kids_real& dt)
override {
10392 int traj_velocityverlet(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
10396 traj_velocityverlet,
10401 int correlation(
const int& isamp, NAD_TCFer& tcfer)
override {
10410 int run_impl()
override {
10419 int run_parallel()
override {
10428 int ff_calc1(
const int& level)
override {
10437 int traj(TCFnucl& tcfer,
const int& N)
override {
10446 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
10450 traj_velocityverlet,
10455 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
10464 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
10473 int init(
int flag)
override {
10482 int final(
int flag)
override {
10491 int cache(
int flag)
override {
10501 py::class_<PMM_Solver, Multi_NadTraj_Solver, PyTrampoline_PMM_Solver>(solvers_m,
"PMM_Solver", py::dynamic_attr())
10502 .def(py::init<const Param&, Model*>())
10503 .def(py::init<const std::string&, Model*>())
10504 .def(
"ref_drhos", &PMM_Solver::ref_drhos, py::return_value_policy::reference_internal)
10505 .def(
"ref_deltarhos", &PMM_Solver::ref_deltarhos, py::return_value_policy::reference_internal)
10506 .def(
"ref_rhosumt", &PMM_Solver::ref_rhosumt, py::return_value_policy::reference_internal)
10507 .def(
"ref_rhoavg", &PMM_Solver::ref_rhoavg, py::return_value_policy::reference_internal)
10508 .def(
"ref_rho_corr", &PMM_Solver::ref_rho_corr, py::return_value_policy::reference_internal)
10509 .def_static(
"name", &PMM_Solver::name)
10510 .def(
"traj",
static_cast<int (PMM_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&PMM_Solver::traj))
10511 .def(
"multi_ff_calc2",
static_cast<int (PMM_Solver::*)()
>(&PMM_Solver::multi_ff_calc2))
10512 .def(
"multi_init",
static_cast<int (PMM_Solver::*)(
const int&)
>(&PMM_Solver::multi_init))
10513 .def(
"multi_reinit",
static_cast<int (PMM_Solver::*)(
const int&)
>(&PMM_Solver::multi_reinit))
10514 .def(
"ff_calc1",
static_cast<int (Multi_NadTraj_Solver::*)(
const int&,
const bool&)
>(&Multi_NadTraj_Solver::ff_calc1))
10515 .def(
"multi_ff_calc1",
static_cast<int (Multi_NadTraj_Solver::*)(
const int&,
const bool&)
>(&Multi_NadTraj_Solver::multi_ff_calc1))
10516 .def(
"ff_calc2",
static_cast<int (Multi_NadTraj_Solver::*)()
>(&Multi_NadTraj_Solver::ff_calc2))
10517 .def(
"multi_ff_calc2",
static_cast<int (Multi_NadTraj_Solver::*)()
>(&Multi_NadTraj_Solver::multi_ff_calc2))
10518 .def(
"update_p",
static_cast<int (Multi_NadTraj_Solver::*)(
const kids_real&)
>(&Multi_NadTraj_Solver::update_p))
10519 .def(
"update_r",
static_cast<int (Multi_NadTraj_Solver::*)(
const kids_real&)
>(&Multi_NadTraj_Solver::update_r))
10520 .def(
"update_thermo",
static_cast<int (Multi_NadTraj_Solver::*)(
const kids_real&)
>(&Multi_NadTraj_Solver::update_thermo))
10521 .def(
"init",
static_cast<int (Multi_NadTraj_Solver::*)(
const int&)
>(&Multi_NadTraj_Solver::init))
10522 .def(
"multi_init",
static_cast<int (Multi_NadTraj_Solver::*)(
const int&)
>(&Multi_NadTraj_Solver::multi_init))
10523 .def(
"ff_calc1",
static_cast<int (NadTraj_Solver::*)(
const int&,
const bool&)
>(&NadTraj_Solver::ff_calc1))
10524 .def(
"ff_calc2",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::ff_calc2))
10525 .def(
"init_occ2eac",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_occ2eac))
10526 .def(
"init_ofs",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_ofs))
10527 .def(
"init",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init))
10528 .def(
"final",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::final))
10529 .def(
"check_break",
static_cast<int (NadTraj_Solver::*)(
int&)
>(&NadTraj_Solver::check_break))
10530 .def(
"rst_output",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_output))
10531 .def(
"rst_read",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_read))
10532 .def(
"traj_property",
static_cast<int (NadTraj_Solver::*)(
const kids_real&)
>(&NadTraj_Solver::traj_property))
10533 .def(
"traj",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj))
10534 .def(
"traj_velocityverlet",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj_velocityverlet))
10535 .def(
"sampler",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::sampler))
10536 .def(
"correlation",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::correlation))
10537 .def(
"run_impl",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_impl))
10538 .def(
"run_parallel",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_parallel))
10539 .def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
10540 .def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
10541 .def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
10542 .def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
10543 .def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
10544 .def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
10545 .def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
10546 .def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
10547 .def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
10548 .def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
10549 .def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
10550 .def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
10551 .def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
10552 .def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
10553 .def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
10554 .def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
10555 .def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
10556 .def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
10557 .def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
10558 .def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
10559 .def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
10560 .def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
10561 .def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
10563 class PyTrampoline_WMM_Solver :
public WMM_Solver {
10565 using WMM_Solver::WMM_Solver;
10567 int init_occ2eac(
const int& itraj)
override {
10576 int init(
const int& itraj)
override {
10585 int kernel_cmm(kids_complex* rhox, kids_real& xic, kids_real& gammac,
const int& F)
override {
10590 rhox, xic, gammac, F
10594 int kernel0(kids_complex* rhox,
const int& F)
override {
10603 int kernelt(kids_complex* rhox,
const int& F)
override {
10612 int traj_velocityverlet(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
10616 traj_velocityverlet,
10621 int ff_calc1(
const int& level,
const bool& refered =
false)
override {
10630 int ff_calc2()
override {
10639 int evolve_elec(kids_complex* Uevolve)
override {
10648 int init_ofs(
const int& itraj)
override {
10657 int final(
const int& itraj)
override {
10666 int check_break(
int& succ)
override {
10675 int rst_output(
const int& itraj)
override {
10684 int rst_read(
const int& itraj)
override {
10693 int traj_property(
const kids_real& dt)
override {
10702 int traj(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
10711 int correlation(
const int& isamp, NAD_TCFer& tcfer)
override {
10720 int run_impl()
override {
10729 int run_parallel()
override {
10738 int ff_calc1(
const int& level)
override {
10747 int update_r(
const kids_real& dt)
override {
10756 int update_p(
const kids_real& dt)
override {
10765 int update_thermo(
const kids_real& dt)
override {
10774 int traj(TCFnucl& tcfer,
const int& N)
override {
10783 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
10787 traj_velocityverlet,
10792 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
10801 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
10810 int init(
int flag)
override {
10819 int final(
int flag)
override {
10828 int cache(
int flag)
override {
10838 py::class_<WMM_Solver, NadTraj_Solver, PyTrampoline_WMM_Solver>(solvers_m,
"WMM_Solver", py::dynamic_attr())
10839 .def(py::init<Param, Model*>())
10840 .def(py::init<const std::string&, Model*>())
10841 .def_static(
"name", &WMM_Solver::name)
10842 .def(
"init_occ2eac",
static_cast<int (WMM_Solver::*)(
const int&)
>(&WMM_Solver::init_occ2eac))
10843 .def(
"init",
static_cast<int (WMM_Solver::*)(
const int&)
>(&WMM_Solver::init))
10844 .def(
"traj_velocityverlet",
static_cast<int (WMM_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&WMM_Solver::traj_velocityverlet))
10845 .def(
"ff_calc1",
static_cast<int (NadTraj_Solver::*)(
const int&,
const bool&)
>(&NadTraj_Solver::ff_calc1))
10846 .def(
"ff_calc2",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::ff_calc2))
10847 .def(
"init_occ2eac",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_occ2eac))
10848 .def(
"init_ofs",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_ofs))
10849 .def(
"init",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init))
10850 .def(
"final",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::final))
10851 .def(
"check_break",
static_cast<int (NadTraj_Solver::*)(
int&)
>(&NadTraj_Solver::check_break))
10852 .def(
"rst_output",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_output))
10853 .def(
"rst_read",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_read))
10854 .def(
"traj_property",
static_cast<int (NadTraj_Solver::*)(
const kids_real&)
>(&NadTraj_Solver::traj_property))
10855 .def(
"traj",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj))
10856 .def(
"traj_velocityverlet",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj_velocityverlet))
10857 .def(
"sampler",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::sampler))
10858 .def(
"correlation",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::correlation))
10859 .def(
"run_impl",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_impl))
10860 .def(
"run_parallel",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_parallel))
10861 .def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
10862 .def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
10863 .def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
10864 .def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
10865 .def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
10866 .def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
10867 .def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
10868 .def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
10869 .def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
10870 .def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
10871 .def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
10872 .def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
10873 .def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
10874 .def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
10875 .def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
10876 .def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
10877 .def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
10878 .def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
10879 .def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
10880 .def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
10881 .def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
10882 .def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
10883 .def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
10885 class PyTrampoline_NAD_TCFer :
public NAD_TCFer {
10887 using NAD_TCFer::NAD_TCFer;
10890 py::class_<NAD_TCFer, PyTrampoline_NAD_TCFer>(models_m,
"NAD_TCFer", py::dynamic_attr())
10891 .def(py::init<const int&, const int&, const int&, const int&, const int&, const int&>())
10892 .def_readwrite(
"lentcf", &NAD_TCFer::lentcf)
10893 .def_readwrite(
"tcf_reduced", &NAD_TCFer::tcf_reduced)
10894 .def(
"ref_val", &NAD_TCFer::ref_val, py::return_value_policy::reference_internal)
10895 .def(
"ref_tcf_0t_bool", &NAD_TCFer::ref_tcf_0t_bool, py::return_value_policy::reference_internal)
10896 .def(
"ref_tcf_0t_val", &NAD_TCFer::ref_tcf_0t_val, py::return_value_policy::reference_internal)
10897 .def(
"ref_coll", &NAD_TCFer::ref_coll, py::return_value_policy::reference_internal)
10898 .def(
"ref_stat", &NAD_TCFer::ref_stat, py::return_value_policy::reference_internal)
10899 .def(
"ref_tcf_0_bool", &NAD_TCFer::ref_tcf_0_bool, py::return_value_policy::reference_internal)
10900 .def(
"ref_tcf_t_bool", &NAD_TCFer::ref_tcf_t_bool, py::return_value_policy::reference_internal)
10901 .def(
"ref_tcf_0_val", &NAD_TCFer::ref_tcf_0_val, py::return_value_policy::reference_internal)
10902 .def(
"ref_tcf_t_val", &NAD_TCFer::ref_tcf_t_val, py::return_value_policy::reference_internal)
10903 .def(
"Clear",
static_cast<int (NAD_TCFer::*)()
>(&NAD_TCFer::Clear))
10904 .def(
"Amount",
static_cast<int (NAD_TCFer::*)(NAD_TCFer&)
>(&NAD_TCFer::Amount))
10905 .def(
"MPIAmount",
static_cast<int (NAD_TCFer::*)(NAD_TCFer&)
>(&NAD_TCFer::MPIAmount))
10906 .def(
"Count",
static_cast<int (NAD_TCFer::*)(
const int&,
const int&)
>(&NAD_TCFer::Count))
10907 .def(
"ifrecord",
static_cast<bool (NAD_TCFer::*)(
const int&,
const int&)
>(&NAD_TCFer::ifrecord))
10908 .def(
"report",
static_cast<int (NAD_TCFer::*)(
const std::string&,
const double&)
>(&NAD_TCFer::report));
10910 class PyTrampoline_Hopping_Solver :
public Hopping_Solver {
10912 using Hopping_Solver::Hopping_Solver;
10914 int init_occ2eac(
const int& itraj)
override {
10923 int init(
const int& itraj)
override {
10932 inline kids_real nucl_Ekin()
override {
10941 int SE_Hamiltonian(
const bool& refered)
override {
10950 int phase_correction()
override {
10959 int hopping_choose(
const int& iocc, kids_complex* rhox, kids_complex* H, kids_real& dt)
override {
10968 int hopping_direction(kids_real* direction,
const int& to)
override {
10977 int hopping_impulse(kids_real* direction,
const int& occ_to)
override {
10986 int time_calc()
override {
10995 int coherent_evolve(
const kids_real& dt)
override {
11004 int decoherent_evolve(
const kids_real& dt)
override {
11013 int hopping_collapse(
const kids_real& dt,
const int& to)
override {
11022 int ff_calc1(
const int& level,
const bool& refered =
false)
override {
11031 int kernel_fssh(kids_complex* rhox,
const int& F)
override {
11040 int kernel0(kids_complex* rhox,
const int& F)
override {
11049 int kernelt(kids_complex* rhox,
const int& F)
override {
11058 int check_break(
int& succ)
override {
11067 int ff_calc2()
override {
11076 int traj(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
11085 int evolve_elec(kids_complex* Uevolve)
override {
11094 int init_ofs(
const int& itraj)
override {
11103 int final(
const int& itraj)
override {
11112 int rst_output(
const int& itraj)
override {
11121 int rst_read(
const int& itraj)
override {
11130 int traj_property(
const kids_real& dt)
override {
11139 int traj_velocityverlet(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
11143 traj_velocityverlet,
11148 int correlation(
const int& isamp, NAD_TCFer& tcfer)
override {
11157 int run_impl()
override {
11166 int run_parallel()
override {
11175 int ff_calc1(
const int& level)
override {
11184 int update_r(
const kids_real& dt)
override {
11193 int update_p(
const kids_real& dt)
override {
11202 int update_thermo(
const kids_real& dt)
override {
11211 int traj(TCFnucl& tcfer,
const int& N)
override {
11220 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
11224 traj_velocityverlet,
11229 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
11238 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
11247 int init(
int flag)
override {
11256 int final(
int flag)
override {
11265 int cache(
int flag)
override {
11275 py::class_<Hopping_Solver, NadTraj_Solver, PyTrampoline_Hopping_Solver>(solvers_m,
"Hopping_Solver", py::dynamic_attr())
11276 .def(py::init<Param, Model*>())
11277 .def(py::init<const std::string&, Model*>())
11278 .def(
"ref_arg_nr", &Hopping_Solver::ref_arg_nr, py::return_value_policy::reference_internal)
11279 .def(
"ref_arg_np", &Hopping_Solver::ref_arg_np, py::return_value_policy::reference_internal)
11280 .def(
"ref_time_coh", &Hopping_Solver::ref_time_coh, py::return_value_policy::reference_internal)
11281 .def(
"ref_time_los", &Hopping_Solver::ref_time_los, py::return_value_policy::reference_internal)
11282 .def(
"ref_dnp_diss", &Hopping_Solver::ref_dnp_diss, py::return_value_policy::reference_internal)
11283 .def(
"ref_probs_dish", &Hopping_Solver::ref_probs_dish, py::return_value_policy::reference_internal)
11284 .def(
"ref_idx_dish", &Hopping_Solver::ref_idx_dish, py::return_value_policy::reference_internal)
11285 .def(
"ref_direction", &Hopping_Solver::ref_direction, py::return_value_policy::reference_internal)
11286 .def(
"ref_drho_diss", &Hopping_Solver::ref_drho_diss, py::return_value_policy::reference_internal)
11287 .def(
"ref_Uh", &Hopping_Solver::ref_Uh, py::return_value_policy::reference_internal)
11288 .def_static(
"name", &Hopping_Solver::name)
11289 .def(
"init_occ2eac",
static_cast<int (Hopping_Solver::*)(
const int&)
>(&Hopping_Solver::init_occ2eac))
11290 .def(
"init",
static_cast<int (Hopping_Solver::*)(
const int&)
>(&Hopping_Solver::init))
11291 .def(
"nucl_Ekin",
static_cast<kids_real (Hopping_Solver::*)()
>(&Hopping_Solver::nucl_Ekin))
11292 .def(
"SE_Hamiltonian",
static_cast<int (Hopping_Solver::*)(
const bool&)
>(&Hopping_Solver::SE_Hamiltonian))
11293 .def(
"phase_correction",
static_cast<int (Hopping_Solver::*)()
>(&Hopping_Solver::phase_correction))
11294 .def(
"hopping_direction", [](Hopping_Solver& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> direction_arr,
11296 return self.hopping_direction(direction_arr.mutable_data(), to);
11299 .
def(
"hopping_impulse", [](Hopping_Solver& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> direction_arr,
11300 const int& occ_to) {
11301 return self.hopping_impulse(direction_arr.mutable_data(), occ_to);
11304 .
def(
"time_calc",
static_cast<int (Hopping_Solver::*)()
>(&Hopping_Solver::time_calc))
11305 .
def(
"coherent_evolve",
static_cast<int (Hopping_Solver::*)(
const kids_real&)
>(&Hopping_Solver::coherent_evolve))
11306 .
def(
"decoherent_evolve",
static_cast<int (Hopping_Solver::*)(
const kids_real&)
>(&Hopping_Solver::decoherent_evolve))
11307 .
def(
"hopping_collapse",
static_cast<int (Hopping_Solver::*)(
const kids_real&,
const int&)
>(&Hopping_Solver::hopping_collapse))
11308 .
def(
"ff_calc1",
static_cast<int (Hopping_Solver::*)(
const int&,
const bool&)
>(&Hopping_Solver::ff_calc1))
11309 .
def(
"check_break",
static_cast<int (Hopping_Solver::*)(
int&)
>(&Hopping_Solver::check_break))
11310 .
def(
"ff_calc2",
static_cast<int (Hopping_Solver::*)()
>(&Hopping_Solver::ff_calc2))
11311 .
def(
"traj",
static_cast<int (Hopping_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&Hopping_Solver::traj))
11312 .
def(
"ff_calc1",
static_cast<int (NadTraj_Solver::*)(
const int&,
const bool&)
>(&NadTraj_Solver::ff_calc1))
11313 .
def(
"ff_calc2",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::ff_calc2))
11314 .
def(
"init_occ2eac",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_occ2eac))
11315 .
def(
"init_ofs",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_ofs))
11316 .
def(
"init",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init))
11317 .
def(
"final",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::final))
11318 .
def(
"check_break",
static_cast<int (NadTraj_Solver::*)(
int&)
>(&NadTraj_Solver::check_break))
11319 .
def(
"rst_output",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_output))
11320 .
def(
"rst_read",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_read))
11321 .
def(
"traj_property",
static_cast<int (NadTraj_Solver::*)(
const kids_real&)
>(&NadTraj_Solver::traj_property))
11322 .
def(
"traj",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj))
11323 .
def(
"traj_velocityverlet",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj_velocityverlet))
11324 .
def(
"sampler",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::sampler))
11325 .
def(
"correlation",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::correlation))
11326 .
def(
"run_impl",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_impl))
11327 .
def(
"run_parallel",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_parallel))
11328 .
def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
11329 .
def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
11330 .
def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
11331 .
def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
11332 .
def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
11333 .
def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
11334 .
def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
11335 .
def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
11336 .
def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
11337 .
def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
11338 .
def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
11339 .
def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
11340 .
def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
11341 .
def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
11342 .
def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
11343 .
def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
11344 .
def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
11345 .
def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
11346 .
def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
11347 .
def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
11348 .
def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
11349 .
def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
11350 .
def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
11352 class PyTrampoline_ProductMPS_Solver :
public ProductMPS_Solver {
11354 using ProductMPS_Solver::ProductMPS_Solver;
11356 int init(
const int& itraj)
override {
11365 int traj(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
11374 int correlation(
const int& isamp, NAD_TCFer& tcfer)
override {
11383 int ff_calc1(
const int& level,
const bool& refered =
false)
override {
11392 int ff_calc2()
override {
11401 int evolve_elec(kids_complex* Uevolve)
override {
11410 int init_occ2eac(
const int& itraj)
override {
11419 int init_ofs(
const int& itraj)
override {
11428 int final(
const int& itraj)
override {
11437 int check_break(
int& succ)
override {
11446 int rst_output(
const int& itraj)
override {
11455 int rst_read(
const int& itraj)
override {
11464 int traj_property(
const kids_real& dt)
override {
11473 int traj_velocityverlet(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
11477 traj_velocityverlet,
11482 int kernel0(kids_complex* rhox,
const int& F)
override {
11491 int kernelt(kids_complex* rhox,
const int& F)
override {
11500 int run_impl()
override {
11509 int run_parallel()
override {
11518 int ff_calc1(
const int& level)
override {
11527 int update_r(
const kids_real& dt)
override {
11536 int update_p(
const kids_real& dt)
override {
11545 int update_thermo(
const kids_real& dt)
override {
11554 int traj(TCFnucl& tcfer,
const int& N)
override {
11563 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
11567 traj_velocityverlet,
11572 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
11581 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
11590 int init(
int flag)
override {
11599 int final(
int flag)
override {
11608 int cache(
int flag)
override {
11618 py::class_<ProductMPS_Solver, NadTraj_Solver, PyTrampoline_ProductMPS_Solver>(solvers_m,
"ProductMPS_Solver", py::dynamic_attr())
11619 .def(py::init<Param, Model*>())
11620 .def(py::init<const std::string&, Model*>())
11621 .def_readwrite(
"M", &ProductMPS_Solver::M)
11622 .def_readwrite(
"F", &ProductMPS_Solver::F)
11623 .def_readwrite(
"FF", &ProductMPS_Solver::FF)
11624 .def_readwrite(
"MF", &ProductMPS_Solver::MF)
11625 .def_readwrite(
"MFF", &ProductMPS_Solver::MFF)
11626 .def_readwrite(
"type", &ProductMPS_Solver::type)
11627 .def_readwrite(
"scale", &ProductMPS_Solver::scale)
11628 .def(
"ref_rhos", &ProductMPS_Solver::ref_rhos, py::return_value_policy::reference_internal)
11629 .def(
"ref_rhos0", &ProductMPS_Solver::ref_rhos0, py::return_value_policy::reference_internal)
11630 .def(
"ref_rhost", &ProductMPS_Solver::ref_rhost, py::return_value_policy::reference_internal)
11631 .def(
"ref_Hs", &ProductMPS_Solver::ref_Hs, py::return_value_policy::reference_internal)
11632 .def_static(
"name", &ProductMPS_Solver::name)
11633 .def(
"init",
static_cast<int (ProductMPS_Solver::*)(
const int&)
>(&ProductMPS_Solver::init))
11634 .def(
"traj",
static_cast<int (ProductMPS_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&ProductMPS_Solver::traj))
11635 .def(
"correlation",
static_cast<int (ProductMPS_Solver::*)(
const int&, NAD_TCFer&)
>(&ProductMPS_Solver::correlation))
11636 .def(
"ff_calc1",
static_cast<int (NadTraj_Solver::*)(
const int&,
const bool&)
>(&NadTraj_Solver::ff_calc1))
11637 .def(
"ff_calc2",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::ff_calc2))
11638 .def(
"init_occ2eac",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_occ2eac))
11639 .def(
"init_ofs",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_ofs))
11640 .def(
"init",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init))
11641 .def(
"final",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::final))
11642 .def(
"check_break",
static_cast<int (NadTraj_Solver::*)(
int&)
>(&NadTraj_Solver::check_break))
11643 .def(
"rst_output",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_output))
11644 .def(
"rst_read",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_read))
11645 .def(
"traj_property",
static_cast<int (NadTraj_Solver::*)(
const kids_real&)
>(&NadTraj_Solver::traj_property))
11646 .def(
"traj",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj))
11647 .def(
"traj_velocityverlet",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj_velocityverlet))
11648 .def(
"sampler",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::sampler))
11649 .def(
"correlation",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::correlation))
11650 .def(
"run_impl",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_impl))
11651 .def(
"run_parallel",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_parallel))
11652 .def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
11653 .def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
11654 .def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
11655 .def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
11656 .def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
11657 .def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
11658 .def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
11659 .def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
11660 .def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
11661 .def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
11662 .def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
11663 .def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
11664 .def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
11665 .def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
11666 .def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
11667 .def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
11668 .def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
11669 .def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
11670 .def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
11671 .def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
11672 .def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
11673 .def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
11674 .def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
11676 class PyTrampoline_QCPI_Solver :
public QCPI_Solver {
11678 using QCPI_Solver::QCPI_Solver;
11680 int propagate_tensor()
override {
11689 kids_complex propagate_nuc(kids_real* nr2_trj, kids_real* np2_trj,
11690 kids_real* nr1_trj, kids_real* np1_trj,
11691 const int& prev,
const int& next,
const kids_real& dt)
override {
11696 nr2_trj, np2_trj, nr1_trj, np1_trj, prev, next, dt
11700 int init(
const int& itraj)
override {
11709 int kernel0(kids_complex* rhox,
const int& F)
override {
11718 int kernelt(kids_complex* rhox,
const int& F)
override {
11727 int traj(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
11736 int ff_calc1(
const int& level,
const bool& refered =
false)
override {
11745 int ff_calc2()
override {
11754 int evolve_elec(kids_complex* Uevolve)
override {
11763 int init_occ2eac(
const int& itraj)
override {
11772 int init_ofs(
const int& itraj)
override {
11781 int final(
const int& itraj)
override {
11790 int check_break(
int& succ)
override {
11799 int rst_output(
const int& itraj)
override {
11808 int rst_read(
const int& itraj)
override {
11817 int traj_property(
const kids_real& dt)
override {
11826 int traj_velocityverlet(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
11830 traj_velocityverlet,
11835 int correlation(
const int& isamp, NAD_TCFer& tcfer)
override {
11844 int run_impl()
override {
11853 int run_parallel()
override {
11862 int ff_calc1(
const int& level)
override {
11871 int update_r(
const kids_real& dt)
override {
11880 int update_p(
const kids_real& dt)
override {
11889 int update_thermo(
const kids_real& dt)
override {
11898 int traj(TCFnucl& tcfer,
const int& N)
override {
11907 int traj_velocityverlet(TCFnucl& tcfer,
const int& N)
override {
11911 traj_velocityverlet,
11916 int sampler(
const int& isamp, TCFnucl& tcfer)
override {
11925 int estimator(
const int& isamp, TCFnucl& tcfer)
override {
11934 int init(
int flag)
override {
11943 int final(
int flag)
override {
11952 int cache(
int flag)
override {
11962 py::class_<QCPI_Solver, NadTraj_Solver, PyTrampoline_QCPI_Solver>(solvers_m,
"QCPI_Solver", py::dynamic_attr())
11963 .def(py::init<Param, Model*>())
11964 .def(py::init<const std::string&, Model*>())
11965 .def(
"ref_idx_arr", &QCPI_Solver::ref_idx_arr, py::return_value_policy::reference_internal)
11966 .def(
"ref_nrs", &QCPI_Solver::ref_nrs, py::return_value_policy::reference_internal)
11967 .def(
"ref_nps", &QCPI_Solver::ref_nps, py::return_value_policy::reference_internal)
11968 .def(
"ref_nrs_copy", &QCPI_Solver::ref_nrs_copy, py::return_value_policy::reference_internal)
11969 .def(
"ref_nps_copy", &QCPI_Solver::ref_nps_copy, py::return_value_policy::reference_internal)
11970 .def(
"ref_nx", &QCPI_Solver::ref_nx, py::return_value_policy::reference_internal)
11971 .def(
"ref_ny", &QCPI_Solver::ref_ny, py::return_value_policy::reference_internal)
11972 .def(
"ref_nx_copy", &QCPI_Solver::ref_nx_copy, py::return_value_policy::reference_internal)
11973 .def(
"ref_ny_copy", &QCPI_Solver::ref_ny_copy, py::return_value_policy::reference_internal)
11974 .def_static(
"name", &QCPI_Solver::name)
11975 .def(
"get_index", [](QCPI_Solver& self, py::array_t<int, py::array::c_style | py::array::forcecast> arr_arr,
11979 return self.get_index(arr_arr.mutable_data(), num, base, len);
11982 .
def(
"get_Nnum", [](QCPI_Solver& self, py::array_t<int, py::array::c_style | py::array::forcecast> arr_arr,
11985 return self.get_Nnum(arr_arr.mutable_data(), base, len);
11988 .
def(
"propagate_tensor",
static_cast<int (QCPI_Solver::*)()
>(&QCPI_Solver::propagate_tensor))
11989 .
def(
"propagate_nuc", [](QCPI_Solver& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr2_trj_arr,
11990 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np2_trj_arr,
11991 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr1_trj_arr,
11992 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np1_trj_arr,
11995 const kids_real& dt) {
11996 return self.propagate_nuc(nr2_trj_arr.mutable_data(), np2_trj_arr.mutable_data(), nr1_trj_arr.mutable_data(), np1_trj_arr.mutable_data(), prev, next, dt);
11999 .
def(
"init",
static_cast<int (QCPI_Solver::*)(
const int&)
>(&QCPI_Solver::init))
12000 .
def(
"traj",
static_cast<int (QCPI_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&QCPI_Solver::traj))
12001 .
def(
"ff_calc1",
static_cast<int (NadTraj_Solver::*)(
const int&,
const bool&)
>(&NadTraj_Solver::ff_calc1))
12002 .
def(
"ff_calc2",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::ff_calc2))
12003 .
def(
"init_occ2eac",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_occ2eac))
12004 .
def(
"init_ofs",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init_ofs))
12005 .
def(
"init",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::init))
12006 .
def(
"final",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::final))
12007 .
def(
"check_break",
static_cast<int (NadTraj_Solver::*)(
int&)
>(&NadTraj_Solver::check_break))
12008 .
def(
"rst_output",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_output))
12009 .
def(
"rst_read",
static_cast<int (NadTraj_Solver::*)(
const int&)
>(&NadTraj_Solver::rst_read))
12010 .
def(
"traj_property",
static_cast<int (NadTraj_Solver::*)(
const kids_real&)
>(&NadTraj_Solver::traj_property))
12011 .
def(
"traj",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj))
12012 .
def(
"traj_velocityverlet",
static_cast<int (NadTraj_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&NadTraj_Solver::traj_velocityverlet))
12013 .
def(
"sampler",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::sampler))
12014 .
def(
"correlation",
static_cast<int (NadTraj_Solver::*)(
const int&, NAD_TCFer&)
>(&NadTraj_Solver::correlation))
12015 .
def(
"run_impl",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_impl))
12016 .
def(
"run_parallel",
static_cast<int (NadTraj_Solver::*)()
>(&NadTraj_Solver::run_parallel))
12017 .
def(
"ff_calc1",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::ff_calc1))
12018 .
def(
"init_ofs",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init_ofs))
12019 .
def(
"init",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::init))
12020 .
def(
"final",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::final))
12021 .
def(
"rst_output",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_output))
12022 .
def(
"rst_read",
static_cast<int (Traj_Solver::*)(
const int&)
>(&Traj_Solver::rst_read))
12023 .
def(
"check_break",
static_cast<int (Traj_Solver::*)(
int&)
>(&Traj_Solver::check_break))
12024 .
def(
"traj_property",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::traj_property))
12025 .
def(
"update_r",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_r))
12026 .
def(
"update_p",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_p))
12027 .
def(
"update_thermo",
static_cast<int (Traj_Solver::*)(
const kids_real&)
>(&Traj_Solver::update_thermo))
12028 .
def(
"traj",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj))
12029 .
def(
"traj_velocityverlet",
static_cast<int (Traj_Solver::*)(TCFnucl&,
const int&)
>(&Traj_Solver::traj_velocityverlet))
12030 .
def(
"sampler",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::sampler))
12031 .
def(
"estimator",
static_cast<int (Traj_Solver::*)(
const int&, TCFnucl&)
>(&Traj_Solver::estimator))
12032 .
def(
"run_impl",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_impl))
12033 .
def(
"run_parallel",
static_cast<int (Traj_Solver::*)()
>(&Traj_Solver::run_parallel))
12034 .
def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
12035 .
def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
12036 .
def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
12037 .
def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
12038 .
def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
12039 .
def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
12041 class PyTrampoline_HEOM_Solver :
public HEOM_Solver {
12043 using HEOM_Solver::HEOM_Solver;
12045 int Init_Bath(
const int& ib,
const int& Nr,
const int& Ni, kids_real& gdph_m, kids_complex* tcf_coef,
12046 kids_complex* tcf_zero, kids_complex* tcf_deri)
override {
12051 ib, Nr, Ni, gdph_m, tcf_coef, tcf_zero, tcf_deri
12055 int Generate_ADOs()
override {
12064 int run_impl()
override {
12073 int run_parallel()
override {
12082 int Evolve(kids_complex* sigma_tot_t1, kids_complex* sigma_tot_t2)
override {
12087 sigma_tot_t1, sigma_tot_t2
12091 bool if_filteration(
int* arr)
override {
12100 int init(
int flag)
override {
12109 int final(
int flag)
override {
12118 int cache(
int flag)
override {
12128 py::class_<HEOM_Solver, Solver, PyTrampoline_HEOM_Solver>(solvers_m,
"HEOM_Solver", py::dynamic_attr())
12129 .def(py::init<Param, Model*>())
12130 .def(py::init<const std::string&, Model*>())
12131 .def_readwrite(
"N", &HEOM_Solver::N)
12132 .def_readwrite(
"H", &HEOM_Solver::H)
12133 .def_readwrite(
"F", &HEOM_Solver::F)
12134 .def_readwrite(
"FF", &HEOM_Solver::FF)
12135 .def_readwrite(
"nbath", &HEOM_Solver::nbath)
12136 .def_readwrite(
"Nexpan_M", &HEOM_Solver::Nexpan_M)
12137 .def_readwrite(
"Nexpan_Nr", &HEOM_Solver::Nexpan_Nr)
12138 .def_readwrite(
"Nexpan_Ni", &HEOM_Solver::Nexpan_Ni)
12139 .def_readwrite(
"Nchs", &HEOM_Solver::Nchs)
12140 .def_readwrite(
"NADOs", &HEOM_Solver::NADOs)
12141 .def_readwrite(
"Nconn", &HEOM_Solver::Nconn)
12142 .def_readwrite(
"BasisExpanType", &HEOM_Solver::BasisExpanType)
12143 .def_readwrite(
"basis_file", &HEOM_Solver::basis_file)
12144 .def_readwrite(
"sstep", &HEOM_Solver::sstep)
12145 .def_readwrite(
"nstep", &HEOM_Solver::nstep)
12146 .def_readwrite(
"adia_pure", &HEOM_Solver::adia_pure)
12147 .def_readwrite(
"occ0", &HEOM_Solver::occ0)
12148 .def_readwrite(
"dt", &HEOM_Solver::dt)
12149 .def_readwrite(
"tend", &HEOM_Solver::tend)
12150 .def_readwrite(
"vscale", &HEOM_Solver::vscale)
12151 .def(
"ref_csr_iADOs", &HEOM_Solver::ref_csr_iADOs, py::return_value_policy::reference_internal)
12152 .def(
"ref_csr_connec_LD", &HEOM_Solver::ref_csr_connec_LD, py::return_value_policy::reference_internal)
12153 .def(
"ref_csr_connec", &HEOM_Solver::ref_csr_connec, py::return_value_policy::reference_internal)
12154 .def(
"ref_csr_type", &HEOM_Solver::ref_csr_type, py::return_value_policy::reference_internal)
12155 .def(
"ref_csr_ivalue", &HEOM_Solver::ref_csr_ivalue, py::return_value_policy::reference_internal)
12156 .def(
"ref_csr_cvalue", &HEOM_Solver::ref_csr_cvalue, py::return_value_policy::reference_internal)
12157 .def(
"ref_Tcftype", &HEOM_Solver::ref_Tcftype, py::return_value_policy::reference_internal)
12158 .def(
"ref_tcf_site", &HEOM_Solver::ref_tcf_site, py::return_value_policy::reference_internal)
12159 .def(
"ref_Esys", &HEOM_Solver::ref_Esys, py::return_value_policy::reference_internal)
12160 .def(
"ref_tcf_coef", &HEOM_Solver::ref_tcf_coef, py::return_value_policy::reference_internal)
12161 .def(
"ref_tcf_zero", &HEOM_Solver::ref_tcf_zero, py::return_value_policy::reference_internal)
12162 .def(
"ref_tcf_deri", &HEOM_Solver::ref_tcf_deri, py::return_value_policy::reference_internal)
12163 .def(
"ref_sigma_tot", &HEOM_Solver::ref_sigma_tot, py::return_value_policy::reference_internal)
12164 .def(
"ref_rdm_arr", &HEOM_Solver::ref_rdm_arr, py::return_value_policy::reference_internal)
12165 .def(
"ref_Tsys", &HEOM_Solver::ref_Tsys, py::return_value_policy::reference_internal)
12166 .def(
"ref_Hsys", &HEOM_Solver::ref_Hsys, py::return_value_policy::reference_internal)
12167 .def(
"ref_T0", &HEOM_Solver::ref_T0, py::return_value_policy::reference_internal)
12168 .def(
"ref_Hsys_time", &HEOM_Solver::ref_Hsys_time, py::return_value_policy::reference_internal)
12169 .def(
"ref_eac0", &HEOM_Solver::ref_eac0, py::return_value_policy::reference_internal)
12170 .def(
"ref_rho0", &HEOM_Solver::ref_rho0, py::return_value_policy::reference_internal)
12171 .def_static(
"name", &HEOM_Solver::name)
12172 .def(
"Generate_ADOs",
static_cast<int (HEOM_Solver::*)()
>(&HEOM_Solver::Generate_ADOs))
12173 .def(
"run_impl",
static_cast<int (HEOM_Solver::*)()
>(&HEOM_Solver::run_impl))
12174 .def(
"run_parallel",
static_cast<int (HEOM_Solver::*)()
>(&HEOM_Solver::run_parallel))
12175 .def(
"if_filteration", [](HEOM_Solver& self, py::array_t<int, py::array::c_style | py::array::forcecast> arr_arr) {
12176 return self.if_filteration(arr_arr.mutable_data());
12179 .
def(
"findarr", [](HEOM_Solver& self, py::array_t<int, py::array::c_style | py::array::forcecast> arr_arr,
12180 const long long int& iX,
12182 return self.findarr(arr_arr.mutable_data(), iX, N);
12185 .
def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
12186 .
def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
12187 .
def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
12188 .
def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
12189 .
def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
12190 .
def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
12192 class PyTrampoline_RedField_Solver :
public RedField_Solver {
12194 using RedField_Solver::RedField_Solver;
12196 int run_impl()
override {
12205 int run_parallel()
override {
12214 int init(
int flag)
override {
12223 int final(
int flag)
override {
12232 int cache(
int flag)
override {
12242 py::class_<RedField_Solver, Solver, PyTrampoline_RedField_Solver>(solvers_m,
"RedField_Solver", py::dynamic_attr())
12243 .def(py::init<Param, Model*>())
12244 .def(py::init<const std::string&, Model*>())
12245 .def(
"ref_Eele", &RedField_Solver::ref_Eele, py::return_value_policy::reference_internal)
12246 .def(
"ref_Tele", &RedField_Solver::ref_Tele, py::return_value_policy::reference_internal)
12247 .def(
"ref_Hele", &RedField_Solver::ref_Hele, py::return_value_policy::reference_internal)
12248 .def(
"ref_mDE", &RedField_Solver::ref_mDE, py::return_value_policy::reference_internal)
12249 .def(
"ref_Qtran", &RedField_Solver::ref_Qtran, py::return_value_policy::reference_internal)
12250 .def(
"ref_C_mDE", &RedField_Solver::ref_C_mDE, py::return_value_policy::reference_internal)
12251 .def(
"ref_GM_tensor", &RedField_Solver::ref_GM_tensor, py::return_value_policy::reference_internal)
12252 .def(
"ref_R_tensor", &RedField_Solver::ref_R_tensor, py::return_value_policy::reference_internal)
12253 .def(
"ref_eac0", &RedField_Solver::ref_eac0, py::return_value_policy::reference_internal)
12254 .def(
"ref_rho0", &RedField_Solver::ref_rho0, py::return_value_policy::reference_internal)
12255 .def(
"ref_rhoadia", &RedField_Solver::ref_rhoadia, py::return_value_policy::reference_internal)
12256 .def(
"ref_rhodia", &RedField_Solver::ref_rhodia, py::return_value_policy::reference_internal)
12257 .def(
"ref_rho1", &RedField_Solver::ref_rho1, py::return_value_policy::reference_internal)
12258 .def(
"ref_rho2", &RedField_Solver::ref_rho2, py::return_value_policy::reference_internal)
12259 .def(
"ref_rho3", &RedField_Solver::ref_rho3, py::return_value_policy::reference_internal)
12260 .def(
"ref_rho4", &RedField_Solver::ref_rho4, py::return_value_policy::reference_internal)
12261 .def(
"ref_rhotmp", &RedField_Solver::ref_rhotmp, py::return_value_policy::reference_internal)
12262 .def_static(
"name", &RedField_Solver::name)
12263 .def(
"run_impl",
static_cast<int (RedField_Solver::*)()
>(&RedField_Solver::run_impl))
12264 .def(
"calc_R_tensor",
static_cast<int (RedField_Solver::*)()
>(&RedField_Solver::calc_R_tensor))
12265 .def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
12266 .def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
12267 .def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
12268 .def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
12269 .def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
12270 .def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
12272 class PyTrampoline_SSE_Solver :
public SSE_Solver {
12274 using SSE_Solver::SSE_Solver;
12276 int init(
const int& itraj)
override {
12285 int correlation(
const int& isamp, NAD_TCFer& tcfer)
override {
12294 int sampler(
const int& isamp, NAD_TCFer& tcfer)
override {
12303 int action_on_wavafunction(kids_complex* eacnew, kids_complex* eac,
const kids_real& t)
override {
12307 action_on_wavafunction,
12312 int action_on_wavafunction_adia(kids_complex* eacnew, kids_complex* eac,
const kids_real& t)
override {
12316 action_on_wavafunction_adia,
12321 int time_kernel(kids_complex* Ker,
const kids_real& t)
override {
12330 int call_memory_array_adia(
const kids_real& dt)
override {
12334 call_memory_array_adia,
12339 int sse(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
12348 int sse_adia(NAD_TCFer& tcfer,
const int& N,
const int& F)
override {
12357 int action_on_wavafunction_adia_mem(kids_complex* eacnew, kids_complex* eacold,
const int& hstep,
12358 const bool& hupdate)
override {
12362 action_on_wavafunction_adia_mem,
12363 eacnew, eacold, hstep, hupdate
12367 int run_parallel()
override {
12376 int run_impl()
override {
12385 int init(
int flag)
override {
12394 int final(
int flag)
override {
12403 int cache(
int flag)
override {
12413 py::class_<SSE_Solver, Solver, PyTrampoline_SSE_Solver>(solvers_m,
"SSE_Solver", py::dynamic_attr())
12414 .def(py::init<Param, Model*>())
12415 .def(py::init<const std::string&, Model*>())
12416 .def(
"ref_rand1", &SSE_Solver::ref_rand1, py::return_value_policy::reference_internal)
12417 .def(
"ref_rand2", &SSE_Solver::ref_rand2, py::return_value_policy::reference_internal)
12418 .def(
"ref_Eele", &SSE_Solver::ref_Eele, py::return_value_policy::reference_internal)
12419 .def(
"ref_DE", &SSE_Solver::ref_DE, py::return_value_policy::reference_internal)
12420 .def(
"ref_w", &SSE_Solver::ref_w, py::return_value_policy::reference_internal)
12421 .def(
"ref_tanhqwb", &SSE_Solver::ref_tanhqwb, py::return_value_policy::reference_internal)
12422 .def(
"ref_xicoeff1", &SSE_Solver::ref_xicoeff1, py::return_value_policy::reference_internal)
12423 .def(
"ref_xicoeff2", &SSE_Solver::ref_xicoeff2, py::return_value_policy::reference_internal)
12424 .def(
"ref_alpha_pref", &SSE_Solver::ref_alpha_pref, py::return_value_policy::reference_internal)
12425 .def(
"ref_CL", &SSE_Solver::ref_CL, py::return_value_policy::reference_internal)
12426 .def(
"ref_DEpW", &SSE_Solver::ref_DEpW, py::return_value_policy::reference_internal)
12427 .def(
"ref_DEmW", &SSE_Solver::ref_DEmW, py::return_value_policy::reference_internal)
12428 .def(
"ref_coeff_DEpW", &SSE_Solver::ref_coeff_DEpW, py::return_value_policy::reference_internal)
12429 .def(
"ref_coeff_DEmW", &SSE_Solver::ref_coeff_DEmW, py::return_value_policy::reference_internal)
12430 .def(
"ref_Hele", &SSE_Solver::ref_Hele, py::return_value_policy::reference_internal)
12431 .def(
"ref_Tele", &SSE_Solver::ref_Tele, py::return_value_policy::reference_internal)
12432 .def(
"ref_T0", &SSE_Solver::ref_T0, py::return_value_policy::reference_internal)
12433 .def(
"ref_Xzero", &SSE_Solver::ref_Xzero, py::return_value_policy::reference_internal)
12434 .def(
"ref_Xtran", &SSE_Solver::ref_Xtran, py::return_value_policy::reference_internal)
12435 .def(
"ref_Qzero", &SSE_Solver::ref_Qzero, py::return_value_policy::reference_internal)
12436 .def(
"ref_Qtran", &SSE_Solver::ref_Qtran, py::return_value_policy::reference_internal)
12437 .def(
"ref_BL", &SSE_Solver::ref_BL, py::return_value_policy::reference_internal)
12438 .def(
"ref_tmpbarr1", &SSE_Solver::ref_tmpbarr1, py::return_value_policy::reference_internal)
12439 .def(
"ref_tmpbarr2", &SSE_Solver::ref_tmpbarr2, py::return_value_policy::reference_internal)
12440 .def(
"ref_eac", &SSE_Solver::ref_eac, py::return_value_policy::reference_internal)
12441 .def(
"ref_eac_adia", &SSE_Solver::ref_eac_adia, py::return_value_policy::reference_internal)
12442 .def(
"ref_eac0", &SSE_Solver::ref_eac0, py::return_value_policy::reference_internal)
12443 .def(
"ref_rho0", &SSE_Solver::ref_rho0, py::return_value_policy::reference_internal)
12444 .def(
"ref_rhot", &SSE_Solver::ref_rhot, py::return_value_policy::reference_internal)
12445 .def(
"ref_fact1", &SSE_Solver::ref_fact1, py::return_value_policy::reference_internal)
12446 .def(
"ref_fact2", &SSE_Solver::ref_fact2, py::return_value_policy::reference_internal)
12447 .def(
"ref_fact3", &SSE_Solver::ref_fact3, py::return_value_policy::reference_internal)
12448 .def(
"ref_fact4", &SSE_Solver::ref_fact4, py::return_value_policy::reference_internal)
12449 .def(
"ref_eactmp", &SSE_Solver::ref_eactmp, py::return_value_policy::reference_internal)
12450 .def(
"ref_eactmp1", &SSE_Solver::ref_eactmp1, py::return_value_policy::reference_internal)
12451 .def(
"ref_eactmp2", &SSE_Solver::ref_eactmp2, py::return_value_policy::reference_internal)
12452 .def(
"ref_eacadd1", &SSE_Solver::ref_eacadd1, py::return_value_policy::reference_internal)
12453 .def(
"ref_eacadd2", &SSE_Solver::ref_eacadd2, py::return_value_policy::reference_internal)
12454 .def(
"ref_eactran", &SSE_Solver::ref_eactran, py::return_value_policy::reference_internal)
12455 .def(
"ref_crand1", &SSE_Solver::ref_crand1, py::return_value_policy::reference_internal)
12456 .def(
"ref_crand2", &SSE_Solver::ref_crand2, py::return_value_policy::reference_internal)
12457 .def(
"ref_invexpiEt", &SSE_Solver::ref_invexpiEt, py::return_value_policy::reference_internal)
12458 .def(
"ref_U", &SSE_Solver::ref_U, py::return_value_policy::reference_internal)
12459 .def(
"ref_expiwt", &SSE_Solver::ref_expiwt, py::return_value_policy::reference_internal)
12460 .def(
"ref_expiDEt", &SSE_Solver::ref_expiDEt, py::return_value_policy::reference_internal)
12461 .def(
"ref_invexpiwt", &SSE_Solver::ref_invexpiwt, py::return_value_policy::reference_internal)
12462 .def(
"ref_invexpiDEt", &SSE_Solver::ref_invexpiDEt, py::return_value_policy::reference_internal)
12463 .def(
"ref_expiwdht", &SSE_Solver::ref_expiwdht, py::return_value_policy::reference_internal)
12464 .def(
"ref_invexpiwdht", &SSE_Solver::ref_invexpiwdht, py::return_value_policy::reference_internal)
12465 .def(
"ref_expiwt_now", &SSE_Solver::ref_expiwt_now, py::return_value_policy::reference_internal)
12466 .def(
"ref_invexpiwt_now", &SSE_Solver::ref_invexpiwt_now, py::return_value_policy::reference_internal)
12467 .def(
"ref_Xtmpj", &SSE_Solver::ref_Xtmpj, py::return_value_policy::reference_internal)
12468 .def(
"ref_Xtmp2j", &SSE_Solver::ref_Xtmp2j, py::return_value_policy::reference_internal)
12469 .def(
"ref_xi", &SSE_Solver::ref_xi, py::return_value_policy::reference_internal)
12470 .def(
"ref_time_ker", &SSE_Solver::ref_time_ker, py::return_value_policy::reference_internal)
12471 .def(
"ref_mem_arr", &SSE_Solver::ref_mem_arr, py::return_value_policy::reference_internal)
12472 .def_static(
"name", &SSE_Solver::name)
12473 .def(
"init",
static_cast<int (SSE_Solver::*)(
const int&)
>(&SSE_Solver::init))
12474 .def(
"correlation",
static_cast<int (SSE_Solver::*)(
const int&, NAD_TCFer&)
>(&SSE_Solver::correlation))
12475 .def(
"sampler",
static_cast<int (SSE_Solver::*)(
const int&, NAD_TCFer&)
>(&SSE_Solver::sampler))
12476 .def(
"call_memory_array_adia",
static_cast<int (SSE_Solver::*)(
const kids_real&)
>(&SSE_Solver::call_memory_array_adia))
12477 .def(
"sse",
static_cast<int (SSE_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&SSE_Solver::sse))
12478 .def(
"sse_adia",
static_cast<int (SSE_Solver::*)(NAD_TCFer&,
const int&,
const int&)
>(&SSE_Solver::sse_adia))
12479 .def(
"run_parallel",
static_cast<int (SSE_Solver::*)()
>(&SSE_Solver::run_parallel))
12480 .def(
"run",
static_cast<int (Solver::*)()
>(&Solver::run))
12481 .def(
"run_impl",
static_cast<int (Solver::*)()
>(&Solver::run_impl))
12482 .def(
"run_parallel",
static_cast<int (Solver::*)()
>(&Solver::run_parallel))
12483 .def(
"init",
static_cast<int (Solver::*)(
int)
>(&Solver::init))
12484 .def(
"final",
static_cast<int (Solver::*)(
int)
>(&Solver::final))
12485 .def(
"cache",
static_cast<int (Solver::*)(
int)
>(&Solver::cache));
12487 class PyTrampoline_Bath :
public Bath {
12492 py::class_<Bath, Model, PyTrampoline_Bath>(models_m,
"Bath", py::dynamic_attr())
12493 .def(py::init<const Param&, const int&, const int&>())
12494 .def(py::init<const std::string&, const int&, const int&>())
12495 .def_readwrite(
"coup_type", &Bath::coup_type)
12496 .def_readwrite(
"coup_flag", &Bath::coup_flag)
12497 .def_readwrite(
"spec_type", &Bath::spec_type)
12498 .def_readwrite(
"spec_flag", &Bath::spec_flag)
12499 .def_readwrite(
"omegac", &Bath::omegac)
12500 .def_readwrite(
"lambda", &Bath::lambda)
12501 .def_readwrite(
"beta", &Bath::beta)
12502 .def_readwrite(
"nbath", &Bath::nbath)
12503 .def_readwrite(
"F", &Bath::F)
12504 .def(
"ref_Q", &Bath::ref_Q, py::return_value_policy::reference_internal)
12505 .def(
"Discretization", [](Bath& self, py::array_t<double, py::array::c_style | py::array::forcecast> W_arr_arr,
12506 py::array_t<double, py::array::c_style | py::array::forcecast> C_arr_arr,
12508 return self.Discretization(W_arr_arr.mutable_data(), C_arr_arr.mutable_data(), Nb);
12511 .
def(
"J_Ohmic",
static_cast<double (Bath::*)(
const double&)
>(&Bath::J_Ohmic))
12512 .
def(
"J_Debye",
static_cast<double (Bath::*)(
const double&)
>(&Bath::J_Debye))
12513 .
def(
"J_Refit", [](Bath& self,
const double& w,
12514 py::array_t<double, py::array::c_style | py::array::forcecast> W_arr_arr,
12515 py::array_t<double, py::array::c_style | py::array::forcecast> C_arr_arr,
12517 return self.J_Refit(w, W_arr_arr.mutable_data(), C_arr_arr.mutable_data(), Nb);
12520 .
def(
"J", [](Bath& self,
const double& w,
12521 py::array_t<double, py::array::c_style | py::array::forcecast> W_arr_arr,
12522 py::array_t<double, py::array::c_style | py::array::forcecast> C_arr_arr,
12524 return self.J(w, W_arr_arr.mutable_data(), C_arr_arr.mutable_data(), Nb);
12527 .
def(
"fun_Cw_Re", [](Bath& self,
const double& w,
12528 py::array_t<double, py::array::c_style | py::array::forcecast> W_arr_arr,
12529 py::array_t<double, py::array::c_style | py::array::forcecast> C_arr_arr,
12531 return self.fun_Cw_Re(w, W_arr_arr.mutable_data(), C_arr_arr.mutable_data(), Nb);
12535 class PyTrampoline_Thermostat :
public Thermostat {
12537 using Thermostat::Thermostat;
12539 int evolve(kids_real* nr, kids_real* np, kids_real* nm,
const kids_real& dt,
const int& N,
const int& start = 0,
12540 kids_real gammal_in = -1.0f)
override {
12545 nr, np, nm, dt, N, start, gammal_in
12550 py::class_<Thermostat, Model, PyTrampoline_Thermostat>(models_m,
"Thermostat", py::dynamic_attr())
12551 .def(py::init<const Param&>())
12552 .def(py::init<const std::string&>())
12553 .def_readwrite(
"beta", &Thermostat::beta)
12554 .def(
"ref_nhc_r", &Thermostat::ref_nhc_r, py::return_value_policy::reference_internal)
12555 .def(
"ref_nhc_p", &Thermostat::ref_nhc_p, py::return_value_policy::reference_internal)
12556 .def(
"ref_nhc_G", &Thermostat::ref_nhc_G, py::return_value_policy::reference_internal)
12557 .def(
"ref_nhc_Q", &Thermostat::ref_nhc_Q, py::return_value_policy::reference_internal)
12558 .def(
"init_alloc",
static_cast<int (Thermostat::*)(
const int&)
>(&Thermostat::init_alloc))
12559 .def(
"dothermo",
static_cast<bool (Thermostat::*)(
const int&)
>(&Thermostat::dothermo))
12560 .def(
"set_gammal",
static_cast<void (Thermostat::*)(kids_real)
>(&Thermostat::set_gammal))
12561 .def(
"evolve", [](Thermostat& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
12562 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
12563 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
12564 const kids_real& dt,
12567 kids_real gammal_in) {
12568 return self.evolve(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), dt, N, start, gammal_in);
12571 .
def(
"run_NHC", [](Thermostat& self, py::array_t<kids_real, py::array::c_style | py::array::forcecast> nr_arr,
12572 py::array_t<kids_real, py::array::c_style | py::array::forcecast> np_arr,
12573 py::array_t<kids_real, py::array::c_style | py::array::forcecast> nm_arr,
12574 const kids_real& dt,
12577 kids_real gammal_in) {
12578 return self.run_NHC(nr_arr.mutable_data(), np_arr.mutable_data(), nm_arr.mutable_data(), dt, N, start, gammal_in);