Line data Source code
1 0 : // Distributed under the MIT License.
2 : // See LICENSE.txt for details.
3 :
4 : #pragma once
5 :
6 : #include "DataStructures/Tensor/TypeAliases.hpp"
7 :
8 : /// \cond
9 : class DataVector;
10 : namespace ylm {
11 : template <typename Frame>
12 : class Strahlkorper;
13 : } // namespace ylm
14 : /// \endcond
15 :
16 : namespace gr::surfaces {
17 : /*!
18 : * \ingroup SurfacesGroup
19 : * \brief Surface integral of a scalar on a 2D `Strahlkorper`
20 : *
21 : * \details Computes the surface integral \f$\oint dA f\f$ for a scalar \f$f\f$
22 : * on a `Strahlkorper` with area element \f$dA\f$. The area element can be
23 : * computed via `gr::surfaces::area_element()`.
24 : */
25 : template <typename Frame>
26 1 : double surface_integral_of_scalar(const Scalar<DataVector>& area_element,
27 : const Scalar<DataVector>& scalar,
28 : const ylm::Strahlkorper<Frame>& strahlkorper);
29 : } // namespace gr::surfaces
|