Inner Product of Proxyfunctions


I’m trying to compute the frobenius inner product of the gradients of Proxyfunctions to define a SymbolicBFI. My trial- and testfunction are 3D, so the respective gradients are of dimension 3x3. Now I want to compute the Frobenius inner product of two 3x3 -dimensional Proxyfunctions (that means, first compute the pointwise product of the matrices and then sum all entries). Is the ngsolve function InnerProduct doing that in my case?

Here is an example:

fes = VectorH1(mesh, order=3)
u, v = fes.TnT()
form = ngs.BilinearForm(fes, symmetric=True)
form += ngs.SymbolicBFI(InnerProduct(ngs.grad(u),ngs.grad(v)))

Thanks for helping :slight_smile:

Yes, it is doing that. You can always test it by computing the inner product by writing out the full expression.


1 Like