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