| 130 | |
| 131 | |
| 132 | shared_ptr<SumOfIntegrals> DualProxyFunction :: operator() (shared_ptr<CoefficientFunction> u) const |
| 133 | { |
| 134 | VorB vb = evaluator -> VB(); |
| 135 | Array<VorB> node_types { fes->GetDualShapeNodes(vb) }; |
| 136 | |
| 137 | auto sum = make_shared<SumOfIntegrals>(); |
| 138 | for (auto nt : node_types) |
| 139 | { |
| 140 | DifferentialSymbol dx(vb, nt, false, 0); |
| 141 | if (this -> Dimension() == 1) |
| 142 | sum->icfs += make_shared<Integral> (const_cast<DualProxyFunction*>(this)->shared_from_this() * u, dx); |
| 143 | else |
| 144 | sum->icfs += make_shared<Integral> (InnerProduct(const_cast<DualProxyFunction*>(this)->shared_from_this(), u), dx); |
| 145 | |
| 146 | } |
| 147 | return sum; |
| 148 | } |
| 149 | |
| 150 | |
| 151 |
nothing calls this directly
no test coverage detected