Boundary Integrals

Asked by Lutz Gross

How can I integrate a function over the boundary or parts of the boundary?

Question information

Language:
English Edit question
Status:
Solved
For:
esys-escript Edit question
Assignee:
No assignee Edit question
Solved by:
Lutz Gross
Solved:
Last query:
Last reply:
Revision history for this message
Lutz Gross (l-gross) said :
#1

To integrate a function f over the boundary use

    integrate(f,where=FunctionOnBoundary(f.getDomain()))

Be aware that f must be defined on the boundary or must be interpolatable to the boundary (WARNING: In the case of finley, the boundary is defined by the face elements!!) . If you want to integrate of parts of the boundary you can use masks. For instance to integrate over the portion of the boundary where x_0==0 use

   integrate(f*whereZero(FunctionOnBoundary(f.getDomain()).getX()[0])))

Revision history for this message
Lutz Gross (l-gross) said :
#2

Lutz Gross suggests this article as an answer to your question:
FAQ #451: “integration of a function over the boundary or parts of the boundary”.