SpECTRE Documentation Coverage Report
Current view: top level - Evolution/Particles/MonteCarlo - EvolvePackets.hpp Hit Total Coverage
Commit: 965048f86d23c819715b3af1ca3f880c8145d4bb Lines: 0 2 0.0 %
Date: 2024-05-16 17:00:40
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 <vector>
       7             : 
       8             : #include "DataStructures/DataVector.hpp"
       9             : #include "DataStructures/Tensor/Tensor.hpp"
      10             : #include "NumericalAlgorithms/Spectral/Mesh.hpp"
      11             : #include "Utilities/Gsl.hpp"
      12             : 
      13             : namespace Frame {
      14             : struct Fluid;
      15             : }  // namespace Frame
      16             : 
      17             : /// Items related to the evolution of particles
      18             : /// Items related to Monte-Carlo radiation transport
      19             : namespace Particles::MonteCarlo {
      20             : 
      21             : struct Packet;
      22             : 
      23             : namespace detail {
      24             : 
      25             : // Time derivative of the spatial component of the momentum one-form on a null
      26             : // geodesic
      27             : void time_derivative_momentum_geodesic(
      28             :     gsl::not_null<std::array<double, 3>*> dt_momentum, const Packet& packet,
      29             :     const Scalar<DataVector>& lapse,
      30             :     const tnsr::i<DataVector, 3, Frame::Inertial>& d_lapse,
      31             :     const tnsr::iJ<DataVector, 3, Frame::Inertial>& d_shift,
      32             :     const tnsr::iJJ<DataVector, 3, Frame::Inertial>& d_inv_spatial_metric);
      33             : 
      34             : }  // namespace detail
      35             : 
      36             : // Advances a single packet by time time_step along a geodesic
      37           0 : void evolve_single_packet_on_geodesic(
      38             :     gsl::not_null<Packet*> packet, double time_step,
      39             :     const Scalar<DataVector>& lapse,
      40             :     const tnsr::I<DataVector, 3, Frame::Inertial>& shift,
      41             :     const tnsr::i<DataVector, 3, Frame::Inertial>& d_lapse,
      42             :     const tnsr::iJ<DataVector, 3, Frame::Inertial>& d_shift,
      43             :     const tnsr::iJJ<DataVector, 3, Frame::Inertial>& d_inv_spatial_metric,
      44             :     const tnsr::II<DataVector, 3, Frame::Inertial>& inv_spatial_metric,
      45             :     const std::optional<tnsr::I<DataVector, 3, Frame::Inertial>>& mesh_velocity,
      46             :     const InverseJacobian<DataVector, 3, Frame::ElementLogical,
      47             :                           Frame::Inertial>&
      48             :         inverse_jacobian_logical_to_inertial);
      49             : 
      50             : }  // namespace Particles::MonteCarlo

Generated by: LCOV version 1.14