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 : namespace gsl { 15 : template <typename> 16 : struct not_null; 17 : } // namespace gsl 18 : /// \endcond 19 : 20 : namespace gr::surfaces { 21 : /*! 22 : * \ingroup SurfacesGroup 23 : * \brief Radial distance between two `Strahlkorper`s. 24 : * 25 : * \details Computes the pointwise radial distance \f$r_a-r_b\f$ between two 26 : * Strahlkorpers `strahlkorper_a` and `strahlkorper_b` that have the same 27 : * center, first (if the Strahlkorpers' resolutions are unequal) prolonging the 28 : * lower-resolution Strahlkorper to the same resolution as the higher-resolution 29 : * Strahlkorper. 30 : */ 31 : template <typename Frame> 32 1 : void radial_distance(gsl::not_null<Scalar<DataVector>*> radial_distance, 33 : const ylm::Strahlkorper<Frame>& strahlkorper_a, 34 : const ylm::Strahlkorper<Frame>& strahlkorper_b); 35 : } // namespace gr::surfaces