Chi-Tech
lbs::AdjointSourceFunction Class Reference

#include <adjoint_src_function.h>

Inheritance diagram for lbs::AdjointSourceFunction:
lbs::SourceFunction

Public Member Functions

 AdjointSourceFunction (const LBSSolver &lbs_solver)
 
double AddSourceMoments () const override
 
void AddAdditionalSources (LBSGroupset &groupset, std::vector< double > &destination_q, const std::vector< double > &phi, SourceFlags source_flags) override
 
void AddVolumetricQOISources (LBSGroupset &groupset, std::vector< double > &destination_q, const std::vector< double > &phi, SourceFlags source_flags)
 
- Public Member Functions inherited from lbs::SourceFunction
 SourceFunction (const LBSSolver &lbs_solver)
 
virtual ~SourceFunction ()=default
 
virtual void operator() (LBSGroupset &groupset, std::vector< double > &destination_q, const std::vector< double > &phi, SourceFlags source_flags)
 
virtual double AddSourceMoments () const
 
virtual double AddDelayedFission (const PrecursorList &precursors, const std::vector< double > &nu_delayed_sigma_f, const double *phi) const
 
virtual void AddAdditionalSources (LBSGroupset &groupset, std::vector< double > &destination_q, const std::vector< double > &phi, SourceFlags source_flags)
 
void AddPointSources (LBSGroupset &groupset, std::vector< double > &destination_q, const std::vector< double > &phi, SourceFlags source_flags)
 

Additional Inherited Members

- Public Types inherited from lbs::SourceFunction
typedef std::vector< chi_physics::MultiGroupXS::PrecursorPrecursorList
 
- Protected Attributes inherited from lbs::SourceFunction
const LBSSolverlbs_solver_
 
bool apply_fixed_src_ = false
 
bool apply_wgs_scatter_src_ = false
 
bool apply_ags_scatter_src_ = false
 
bool apply_wgs_fission_src_ = false
 
bool apply_ags_fission_src_ = false
 
bool suppress_wg_scatter_src_ = false
 
size_t gs_i_ = 0
 
size_t gs_f_ = 0
 
size_t first_grp_ = 0
 
size_t last_grp_ = 0
 
double cell_volume_ = 0.0
 
size_t g_ = 0
 
const double * fixed_src_moments_ = nullptr
 
std::vector< double > default_zero_src_
 

Detailed Description

The adjoint source function removes volumetric fixed source moments as well as point sources, whilst adding volumetric QOI sources.

Definition at line 11 of file adjoint_src_function.h.

Constructor & Destructor Documentation

◆ AdjointSourceFunction()

lbs::AdjointSourceFunction::AdjointSourceFunction ( const LBSSolver lbs_solver)
explicit

Constructor for an adjoint source function.

Definition at line 11 of file adjoint_src_function.cc.

Member Function Documentation

◆ AddAdditionalSources()

void lbs::AdjointSourceFunction::AddAdditionalSources ( LBSGroupset groupset,
std::vector< double > &  destination_q,
const std::vector< double > &  phi,
SourceFlags  source_flags 
)
inlineoverridevirtual

Reimplemented from lbs::SourceFunction.

Definition at line 19 of file adjoint_src_function.h.

◆ AddSourceMoments()

double lbs::AdjointSourceFunction::AddSourceMoments ( ) const
inlineoverridevirtual

Reimplemented from lbs::SourceFunction.

Definition at line 17 of file adjoint_src_function.h.

◆ AddVolumetricQOISources()

void lbs::AdjointSourceFunction::AddVolumetricQOISources ( LBSGroupset groupset,
std::vector< double > &  destination_q,
const std::vector< double > &  phi,
SourceFlags  source_flags 
)

Adds Quantities of Interest to the nodal sources.

Definition at line 18 of file adjoint_src_function.cc.


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