SpECTRE Documentation Coverage Report
Current view: top level - Evolution/Systems/Cce - SpecBoundaryData.hpp Hit Total Coverage
Commit: 1f2210958b4f38fdc0400907ee7c6d5af5111418 Lines: 2 4 50.0 %
Date: 2025-12-05 05:03:31
Legend: Lines: hit not hit

          Line data    Source code
       1           0 : // Distributed under the MIT License.
       2             : // See LICENSE.txt for details.
       3             : 
       4             : #pragma once
       5             : 
       6             : #include <cstddef>
       7             : 
       8             : #include "DataStructures/ComplexDataVector.hpp"
       9             : #include "DataStructures/ComplexModalVector.hpp"
      10             : #include "DataStructures/SpinWeighted.hpp"
      11             : #include "DataStructures/Tensor/TypeAliases.hpp"
      12             : #include "Evolution/Systems/Cce/BoundaryDataTags.hpp"
      13             : 
      14             : /// \cond
      15             : class DataVector;
      16             : namespace gsl {
      17             : template <class T>
      18             : class not_null;
      19             : }  // namespace gsl
      20             : /// \endcond
      21             : 
      22             : namespace Cce {
      23             : /*
      24             :  * \brief Compute \f$\gamma_{i j}\f$, \f$\gamma^{i j}\f$,
      25             :  * \f$\partial_i \gamma_{j k}\f$, and
      26             :  * \f$\partial_t g_{i j}\f$ from input libsharp-compatible modal spatial
      27             :  * metric quantities.
      28             :  *
      29             :  * \details This function will apply a correction factor associated with a SpEC
      30             :  * bug.
      31             :  */
      32           0 : void cartesian_spatial_metric_and_derivatives_from_unnormalized_spec_modes(
      33             :     gsl::not_null<tnsr::ii<DataVector, 3>*> cartesian_spatial_metric,
      34             :     gsl::not_null<tnsr::II<DataVector, 3>*> inverse_cartesian_spatial_metric,
      35             :     gsl::not_null<tnsr::ijj<DataVector, 3>*> d_cartesian_spatial_metric,
      36             :     gsl::not_null<tnsr::ii<DataVector, 3>*> dt_cartesian_spatial_metric,
      37             :     gsl::not_null<Scalar<SpinWeighted<ComplexModalVector, 0>>*>
      38             :         interpolation_modal_buffer,
      39             :     gsl::not_null<Scalar<SpinWeighted<ComplexDataVector, 0>>*>
      40             :         interpolation_buffer,
      41             :     gsl::not_null<Scalar<SpinWeighted<ComplexDataVector, 1>>*> eth_buffer,
      42             :     gsl::not_null<Scalar<DataVector>*> radial_correction_factor,
      43             :     const tnsr::ii<ComplexModalVector, 3>& spatial_metric_coefficients,
      44             :     const tnsr::ii<ComplexModalVector, 3>& dr_spatial_metric_coefficients,
      45             :     const tnsr::ii<ComplexModalVector, 3>& dt_spatial_metric_coefficients,
      46             :     const CartesianiSphericalJ& inverse_cartesian_to_spherical_jacobian,
      47             :     const tnsr::I<DataVector, 3>& unit_cartesian_coords, size_t l_max);
      48             : 
      49             : /*!
      50             :  * \brief Compute \f$\beta^{i}\f$, \f$\partial_i \beta^{j}\f$, and
      51             :  * \f$\partial_t \beta^i\f$ from input libsharp-compatible modal spatial
      52             :  * metric quantities.
      53             :  *
      54             :  * \details This function will apply a correction factor associated with a SpEC
      55             :  * bug.
      56             :  */
      57           1 : void cartesian_shift_and_derivatives_from_unnormalized_spec_modes(
      58             :     gsl::not_null<tnsr::I<DataVector, 3>*> cartesian_shift,
      59             :     gsl::not_null<tnsr::iJ<DataVector, 3>*> d_cartesian_shift,
      60             :     gsl::not_null<tnsr::I<DataVector, 3>*> dt_cartesian_shift,
      61             :     gsl::not_null<Scalar<SpinWeighted<ComplexModalVector, 0>>*>
      62             :         interpolation_modal_buffer,
      63             :     gsl::not_null<Scalar<SpinWeighted<ComplexDataVector, 0>>*>
      64             :         interpolation_buffer,
      65             :     gsl::not_null<Scalar<SpinWeighted<ComplexDataVector, 1>>*> eth_buffer,
      66             :     const tnsr::I<ComplexModalVector, 3>& shift_coefficients,
      67             :     const tnsr::I<ComplexModalVector, 3>& dr_shift_coefficients,
      68             :     const tnsr::I<ComplexModalVector, 3>& dt_shift_coefficients,
      69             :     const CartesianiSphericalJ& inverse_cartesian_to_spherical_jacobian,
      70             :     const Scalar<DataVector>& radial_derivative_correction_factor,
      71             :     size_t l_max);
      72             : 
      73             : /*!
      74             :  * \brief Compute \f$\alpha\f$, \f$\partial_i \alpha\f$, and
      75             :  * \f$\partial_t \beta^i\f$ from input libsharp-compatible modal spatial
      76             :  * metric quantities.
      77             :  *
      78             :  * \details This function will apply a correction factor associated with a SpEC
      79             :  * bug.
      80             :  */
      81           1 : void cartesian_lapse_and_derivatives_from_unnormalized_spec_modes(
      82             :     gsl::not_null<Scalar<DataVector>*> cartesian_lapse,
      83             :     gsl::not_null<tnsr::i<DataVector, 3>*> d_cartesian_lapse,
      84             :     gsl::not_null<Scalar<DataVector>*> dt_cartesian_lapse,
      85             :     gsl::not_null<Scalar<SpinWeighted<ComplexModalVector, 0>>*>
      86             :         interpolation_modal_buffer,
      87             :     gsl::not_null<Scalar<SpinWeighted<ComplexDataVector, 0>>*>
      88             :         interpolation_buffer,
      89             :     gsl::not_null<Scalar<SpinWeighted<ComplexDataVector, 1>>*> eth_buffer,
      90             :     const Scalar<ComplexModalVector>& lapse_coefficients,
      91             :     const Scalar<ComplexModalVector>& dr_lapse_coefficients,
      92             :     const Scalar<ComplexModalVector>& dt_lapse_coefficients,
      93             :     const CartesianiSphericalJ& inverse_cartesian_to_spherical_jacobian,
      94             :     const Scalar<DataVector>& radial_derivative_correction_factor,
      95             :     size_t l_max);
      96             : }  // namespace Cce

Generated by: LCOV version 1.14