@@ -63,7 +63,7 @@ struct NumericalIntegrator
63
63
*/
64
64
template <typename DerivativeTraits>
65
65
Eigen::MatrixXd singleLayer (const Vacuum<DerivativeTraits, NumericalIntegrator> & gf, const std::vector<Element> & e) const {
66
- integrator::KernelS kernelS = pcm::bind (&Vacuum<DerivativeTraits, NumericalIntegrator>::kernelS, gf, pcm::_1, pcm::_2 );
66
+ integrator::KernelS kernelS = gf. exportKernelS ( );
67
67
integrator::Diagonal diagS = pcm::bind (&integrator::integrateS<32 , 16 >, kernelS, pcm::_1);
68
68
return integrator::singleLayer (e, diagS, kernelS);
69
69
}
@@ -73,7 +73,7 @@ struct NumericalIntegrator
73
73
*/
74
74
template <typename DerivativeTraits>
75
75
Eigen::MatrixXd doubleLayer (const Vacuum<DerivativeTraits, NumericalIntegrator> & gf, const std::vector<Element> & e) const {
76
- integrator::KernelD kernelD = pcm::bind (&Vacuum<DerivativeTraits, NumericalIntegrator>::kernelD, gf, pcm::_1, pcm::_2, pcm::_3 );
76
+ integrator::KernelD kernelD = gf. exportKernelD ( );
77
77
integrator::Diagonal diagD = pcm::bind (&integrator::integrateD<32 , 16 >, kernelD, pcm::_1);
78
78
return integrator::doubleLayer (e, diagD, kernelD);
79
79
}
@@ -86,7 +86,7 @@ struct NumericalIntegrator
86
86
*/
87
87
template <typename DerivativeTraits>
88
88
Eigen::MatrixXd singleLayer (const UniformDielectric<DerivativeTraits, NumericalIntegrator> & gf, const std::vector<Element> & e) const {
89
- integrator::KernelS kernelS = pcm::bind (&UniformDielectric<DerivativeTraits, NumericalIntegrator>::kernelS, gf, pcm::_1, pcm::_2 );
89
+ integrator::KernelS kernelS = gf. exportKernelS ( );
90
90
integrator::Diagonal diagS = pcm::bind (&integrator::integrateS<32 , 16 >, kernelS, pcm::_1);
91
91
return integrator::singleLayer (e, diagS, kernelS);
92
92
}
@@ -96,7 +96,7 @@ struct NumericalIntegrator
96
96
*/
97
97
template <typename DerivativeTraits>
98
98
Eigen::MatrixXd doubleLayer (const UniformDielectric<DerivativeTraits, NumericalIntegrator> & gf, const std::vector<Element> & e) const {
99
- integrator::KernelD kernelD = pcm::bind (&UniformDielectric<DerivativeTraits, NumericalIntegrator>::kernelD, gf, pcm::_1, pcm::_2, pcm::_3 );
99
+ integrator::KernelD kernelD = gf. exportKernelD ( );
100
100
integrator::Diagonal diagD = pcm::bind (&integrator::integrateD<32 , 16 >, kernelD, pcm::_1);
101
101
return integrator::doubleLayer (e, diagD, kernelD);
102
102
}
@@ -109,7 +109,7 @@ struct NumericalIntegrator
109
109
*/
110
110
template <typename DerivativeTraits>
111
111
Eigen::MatrixXd singleLayer (const IonicLiquid<DerivativeTraits, NumericalIntegrator> & gf, const std::vector<Element> & e) const {
112
- integrator::KernelS kernelS = pcm::bind (&IonicLiquid<DerivativeTraits, NumericalIntegrator>::kernelS, gf, pcm::_1, pcm::_2 );
112
+ integrator::KernelS kernelS = gf. exportKernelS ( );
113
113
integrator::Diagonal diagS = pcm::bind (&integrator::integrateS<32 , 16 >, kernelS, pcm::_1);
114
114
return integrator::singleLayer (e, diagS, kernelS);
115
115
}
@@ -119,7 +119,7 @@ struct NumericalIntegrator
119
119
*/
120
120
template <typename DerivativeTraits>
121
121
Eigen::MatrixXd doubleLayer (const IonicLiquid<DerivativeTraits, NumericalIntegrator> & gf, const std::vector<Element> & e) const {
122
- integrator::KernelD kernelD = pcm::bind (&IonicLiquid<DerivativeTraits, NumericalIntegrator>::kernelD, gf, pcm::_1, pcm::_2, pcm::_3 );
122
+ integrator::KernelD kernelD = gf. exportKernelD ( );
123
123
integrator::Diagonal diagD = pcm::bind (&integrator::integrateD<32 , 16 >, kernelD, pcm::_1);
124
124
return integrator::doubleLayer (e, diagD, kernelD);
125
125
}
@@ -132,7 +132,7 @@ struct NumericalIntegrator
132
132
*/
133
133
template <typename DerivativeTraits>
134
134
Eigen::MatrixXd singleLayer (const AnisotropicLiquid<DerivativeTraits, NumericalIntegrator> & gf, const std::vector<Element> & e) const {
135
- integrator::KernelS kernelS = pcm::bind (&AnisotropicLiquid<DerivativeTraits, NumericalIntegrator>::kernelS, gf, pcm::_1, pcm::_2 );
135
+ integrator::KernelS kernelS = gf. exportKernelS ( );
136
136
integrator::Diagonal diagS = pcm::bind (&integrator::integrateS<32 , 16 >, kernelS, pcm::_1);
137
137
return integrator::singleLayer (e, diagS, kernelS);
138
138
}
@@ -142,7 +142,7 @@ struct NumericalIntegrator
142
142
*/
143
143
template <typename DerivativeTraits>
144
144
Eigen::MatrixXd doubleLayer (const AnisotropicLiquid<DerivativeTraits, NumericalIntegrator> & gf, const std::vector<Element> & e) const {
145
- integrator::KernelD kernelD = pcm::bind (&AnisotropicLiquid<DerivativeTraits, NumericalIntegrator>::kernelD, gf, pcm::_1, pcm::_2, pcm::_3 );
145
+ integrator::KernelD kernelD = gf. exportKernelD ( );
146
146
integrator::Diagonal diagD = pcm::bind (&integrator::integrateD<32 , 16 >, kernelD, pcm::_1);
147
147
return integrator::doubleLayer (e, diagD, kernelD);
148
148
}
0 commit comments