Advanced Multi-Physics (AMP)
On-Line Documentation
Public Member Functions | Public Attributes | List of all members
AMP::Operator::BDFRadDifOpPJacData Struct Reference

#include <RadiationDiffusionFDBDFWrappers.h>

Public Member Functions

 BDFRadDifOpPJacData ()
 
 BDFRadDifOpPJacData (std::shared_ptr< RadDifOpPJacData > data, double gamma)
 

Public Attributes

std::shared_ptr< AMP::LinearAlgebra::Matrixd_E_BDF = nullptr
 
std::shared_ptr< AMP::LinearAlgebra::Matrixd_T_BDF = nullptr
 
std::shared_ptr< AMP::LinearAlgebra::Vectorr_EE_BDF = nullptr
 
std::shared_ptr< AMP::LinearAlgebra::Vectorr_ET_BDF = nullptr
 
std::shared_ptr< AMP::LinearAlgebra::Vectorr_TE_BDF = nullptr
 
std::shared_ptr< AMP::LinearAlgebra::Vectorr_TT_BDF = nullptr
 

Detailed Description

Data structure for storing the 2x2 block matrix associated with the BDFRadDifOpPJac, I + gamma*hat{L}, where hat{L} is a RadDifOpPJac.

Specifically, the constructor here takes in the data structure used to store the 2x2 block matrix associated with hat{L}, i.e., [ d_E 0 ] + [ diag(r_EE) diag(r_ET) ] [ 0 d_T ] + [ diag(r_TE) diag(r_TT) ] and overwrites it to create ([I 0] [ d_E 0 ]) [ diag(r_EE) diag(r_ET) ]

([0 I] + gamma*[ 0 d_T ]) + gamma*[ diag(r_TE) diag(r_TT) ]

[ d_E_BDF 0 ] [ diag(r_EE_BDF) diag(r_ET_BDF) ] [ 0 d_T_BDF] + [ diag(r_TE_BDF) diag(r_TT_BDF) ]

Note: We store the data in the above format for two reasons:

  1. It allows an operator-split preconditioner to be built, wherein the diffusion blocks must contain the identity perturbation since AMG is applied to them, and it's easy enough to add an identity perturbation on the fly to the reaction blocks when decoupled 2x2 solves are done on them
  2. The modification that we make to the data means that our underlying RadDifOpPJac's apply will actually be an apply of a BDFRadDifOpPJac (we would have to write another apply routine if we also added an identity perturbation into the reaction block).

Definition at line 167 of file RadiationDiffusionFDBDFWrappers.h.

Constructor & Destructor Documentation

◆ BDFRadDifOpPJacData() [1/2]

AMP::Operator::BDFRadDifOpPJacData::BDFRadDifOpPJacData ( )
inline

Definition at line 175 of file RadiationDiffusionFDBDFWrappers.h.

◆ BDFRadDifOpPJacData() [2/2]

AMP::Operator::BDFRadDifOpPJacData::BDFRadDifOpPJacData ( std::shared_ptr< RadDifOpPJacData data,
double  gamma 
)

Member Data Documentation

◆ d_E_BDF

std::shared_ptr<AMP::LinearAlgebra::Matrix> AMP::Operator::BDFRadDifOpPJacData::d_E_BDF = nullptr

Definition at line 168 of file RadiationDiffusionFDBDFWrappers.h.

◆ d_T_BDF

std::shared_ptr<AMP::LinearAlgebra::Matrix> AMP::Operator::BDFRadDifOpPJacData::d_T_BDF = nullptr

Definition at line 169 of file RadiationDiffusionFDBDFWrappers.h.

◆ r_EE_BDF

std::shared_ptr<AMP::LinearAlgebra::Vector> AMP::Operator::BDFRadDifOpPJacData::r_EE_BDF = nullptr

Definition at line 170 of file RadiationDiffusionFDBDFWrappers.h.

◆ r_ET_BDF

std::shared_ptr<AMP::LinearAlgebra::Vector> AMP::Operator::BDFRadDifOpPJacData::r_ET_BDF = nullptr

Definition at line 171 of file RadiationDiffusionFDBDFWrappers.h.

◆ r_TE_BDF

std::shared_ptr<AMP::LinearAlgebra::Vector> AMP::Operator::BDFRadDifOpPJacData::r_TE_BDF = nullptr

Definition at line 172 of file RadiationDiffusionFDBDFWrappers.h.

◆ r_TT_BDF

std::shared_ptr<AMP::LinearAlgebra::Vector> AMP::Operator::BDFRadDifOpPJacData::r_TT_BDF = nullptr

Definition at line 173 of file RadiationDiffusionFDBDFWrappers.h.


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



Advanced Multi-Physics (AMP)
Oak Ridge National Laboratory
Idaho National Laboratory
Los Alamos National Laboratory
This page automatically produced from the
source code by doxygen
Last updated: Tue Mar 10 2026 13:06:44.
Comments on this page