18std::shared_ptr<Kernel>
NAD_AdaptM_Kernel(std::shared_ptr<Kernel> kmodel, std::string NAD_Kernel_name) {
19 bool take_ownership_false =
false;
24 std::shared_ptr<Kernel> ker(
new Kernel(NAD_Kernel_name));
27 std::shared_ptr<Kernel> kinte(
new Kernel(
"MULTI_Integrator"));
32 std::shared_ptr<Kernel_Update_p> ku_p(
new Kernel_Update_p(0.5e0 / (
double) split));
34 std::shared_ptr<Kernel_Update_c> ku_c(
new Kernel_Update_c(0.5e0 / (
double) split));
35 std::shared_ptr<Kernel> kele;
36 kele = std::shared_ptr<Kernel_Elec_NAD>(
new Kernel_Elec_NAD(0.5e0 / (
double) split));
40 for (
int i = 0; i < split; ++i) {
41 kinte->appendChild(ku_p);
42 kinte->appendChild(krepr);
43 kinte->appendChild(ku_c);
44 kinte->appendChild(kele);
45 kinte->appendChild(kforc);
48 kinte->appendChild(ku_x);
49 kinte->appendChild(ku_x);
50 kinte->appendChild(kmodel);
51 kinte->appendChild(krepr);
53 for (
int i = 0; i < split; ++i) {
54 kinte->appendChild(ku_c);
55 kinte->appendChild(kele);
56 kinte->appendChild(kforc);
57 kinte->appendChild(ku_p);
58 kinte->appendChild(krepr);
61 kinte->appendChild(kforc);
63 kinte->appendChild(std::shared_ptr<Kernel_Conserve>(
new Kernel_Conserve()));
66 kiter->appendChild(krecd);
67 kiter->appendChild(kinte);
71 .appendChild(std::shared_ptr<Kernel_Random>(
new Kernel_Random()))
74 .appendChild(std::shared_ptr<Kernel_Prioritization>(