Tensorium
Loading...
Searching...
No Matches
tensorium_RG::RicciConformalTensor< T > Class Template Reference

Provides methods to compute the \( \chi \)-dependent part of the Ricci tensor in the BSSN formalism. More...

#include <BSSNRicciConformalTensor.hpp>

Collaboration diagram for tensorium_RG::RicciConformalTensor< T >:

Static Public Member Functions

static tensorium::Tensor< T, 2 > compute_Ricci_chi_Hessian (const ChiContext< T > &chi_context, const tensorium::Tensor< T, 2 > &gamma_tilde, const tensorium::Tensor< T, 2 > &gamma_tilde_inv, const tensorium::Tensor< T, 3 > &christoffel_tilde)
 Computes the Hessian contribution:
 
static tensorium::Tensor< T, 2 > compute_Ricci_chi_Laplacian (const ChiContext< T > &chi_context, const tensorium::Tensor< T, 2 > &gamma_tilde, const tensorium::Tensor< T, 2 > &gamma_tilde_inv, const tensorium::Tensor< T, 3 > &christoffel_tilde)
 Computes the Laplacian contribution:
 
static tensorium::Tensor< T, 2 > compute_Ricci_chi_GradGrad (const ChiContext< T > &chi_context)
 Computes the squared gradient term:
 
static tensorium::Tensor< T, 2 > compute_Ricci_chi_GradNorm (const ChiContext< T > &chi_context, const tensorium::Tensor< T, 2 > &gamma_tilde, const tensorium::Tensor< T, 2 > &gamma_tilde_inv)
 Computes the gradient norm term:
 
static tensorium::Tensor< T, 2 > compute_Ricci_chi_total (const ChiContext< T > &chi_context, const tensorium::Tensor< T, 2 > &gamma_tilde, const tensorium::Tensor< T, 2 > &gamma_tilde_inv, const tensorium::Tensor< T, 3 > &christoffel_tilde)
 Computes the total \( R^\chi_{ij} \) contribution as:
 

Detailed Description

template<typename T>
class tensorium_RG::RicciConformalTensor< T >

Provides methods to compute the \( \chi \)-dependent part of the Ricci tensor in the BSSN formalism.

In the BSSN decomposition, the Ricci tensor \( R_{ij} \) is split into two parts:

\[ R_{ij} = \tilde{R}_{ij} + R_{ij}^\chi \]

where \( \tilde{R}_{ij} \) is the Ricci tensor associated with the conformal metric \( \tilde{\gamma}_{ij} \), and \( R_{ij}^\chi \) contains all contributions from the conformal factor \( \chi \):

\[ R_{ij}^\chi = \frac{1}{\chi} \left( \nabla_i \nabla_j \chi - \Gamma^k_{ij} \partial_k \chi \right) + \frac{1}{2 \chi} \tilde{\gamma}_{ij} \tilde{\nabla}^k \partial_k \chi - \frac{3}{2 \chi^2} \partial_i \chi \partial_j \chi + \frac{1}{2 \chi^2} \tilde{\gamma}_{ij} \tilde{\gamma}^{kl} \partial_k \chi \partial_l \chi \]

This class evaluates each term independently and combines them.

Template Parameters
TScalar type (typically float or double)

Member Function Documentation

◆ compute_Ricci_chi_GradGrad()

template<typename T >
static tensorium::Tensor< T, 2 > tensorium_RG::RicciConformalTensor< T >::compute_Ricci_chi_GradGrad ( const ChiContext< T > & chi_context)
inlinestatic

Computes the squared gradient term:

\[ -\frac{3}{2 \chi^2} \partial_i \chi \partial_j \chi \]

References chi.

Referenced by tensorium_RG::RicciConformalTensor< T >::compute_Ricci_chi_total().

Here is the caller graph for this function:

◆ compute_Ricci_chi_GradNorm()

template<typename T >
static tensorium::Tensor< T, 2 > tensorium_RG::RicciConformalTensor< T >::compute_Ricci_chi_GradNorm ( const ChiContext< T > & chi_context,
const tensorium::Tensor< T, 2 > & gamma_tilde,
const tensorium::Tensor< T, 2 > & gamma_tilde_inv )
inlinestatic

Computes the gradient norm term:

\[ \frac{1}{2 \chi^2} \tilde{\gamma}_{ij} \tilde{\gamma}^{kl} \partial_k \chi \partial_l \chi \]

References chi.

Referenced by tensorium_RG::RicciConformalTensor< T >::compute_Ricci_chi_total().

Here is the caller graph for this function:

◆ compute_Ricci_chi_Hessian()

template<typename T >
static tensorium::Tensor< T, 2 > tensorium_RG::RicciConformalTensor< T >::compute_Ricci_chi_Hessian ( const ChiContext< T > & chi_context,
const tensorium::Tensor< T, 2 > & gamma_tilde,
const tensorium::Tensor< T, 2 > & gamma_tilde_inv,
const tensorium::Tensor< T, 3 > & christoffel_tilde )
inlinestatic

Computes the Hessian contribution:

\[ \frac{1}{\chi} \left( \nabla_i \nabla_j \chi - \Gamma^k_{ij} \partial_k \chi \right) \]

Referenced by tensorium_RG::RicciConformalTensor< T >::compute_Ricci_chi_total().

Here is the caller graph for this function:

◆ compute_Ricci_chi_Laplacian()

template<typename T >
static tensorium::Tensor< T, 2 > tensorium_RG::RicciConformalTensor< T >::compute_Ricci_chi_Laplacian ( const ChiContext< T > & chi_context,
const tensorium::Tensor< T, 2 > & gamma_tilde,
const tensorium::Tensor< T, 2 > & gamma_tilde_inv,
const tensorium::Tensor< T, 3 > & christoffel_tilde )
inlinestatic

Computes the Laplacian contribution:

\[ \frac{1}{2 \chi} \tilde{\gamma}_{ij} \tilde{\nabla}^k \partial_k \chi \]

References chi.

Referenced by tensorium_RG::RicciConformalTensor< T >::compute_Ricci_chi_total().

Here is the caller graph for this function:

◆ compute_Ricci_chi_total()

template<typename T >
static tensorium::Tensor< T, 2 > tensorium_RG::RicciConformalTensor< T >::compute_Ricci_chi_total ( const ChiContext< T > & chi_context,
const tensorium::Tensor< T, 2 > & gamma_tilde,
const tensorium::Tensor< T, 2 > & gamma_tilde_inv,
const tensorium::Tensor< T, 3 > & christoffel_tilde )
inlinestatic

Computes the total \( R^\chi_{ij} \) contribution as:

\[ R_{ij}^\chi = \text{Hessian} + \text{Laplacian term} + \text{Gradient term} + \text{Gradient norm term} \]

References tensorium_RG::RicciConformalTensor< T >::compute_Ricci_chi_GradGrad(), tensorium_RG::RicciConformalTensor< T >::compute_Ricci_chi_GradNorm(), tensorium_RG::RicciConformalTensor< T >::compute_Ricci_chi_Hessian(), and tensorium_RG::RicciConformalTensor< T >::compute_Ricci_chi_Laplacian().

Referenced by tensorium_RG::RicciPhysicalTensor< T >::compute_Ricci_total(), and tensorium_RG::BSSN< T >::init_BSSN().

Here is the call graph for this function:
Here is the caller graph for this function:

The documentation for this class was generated from the following file: