MCPcopy Create free account
hub / github.com/NGSolve/ngsolve / operator()

Method operator()

comp/python_comp.cpp:132–148  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

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

Callers

nothing calls this directly

Calls 5

InnerProductFunction · 0.50
VBMethod · 0.45
GetDualShapeNodesMethod · 0.45
DimensionMethod · 0.45
shared_from_thisMethod · 0.45

Tested by

no test coverage detected