Chi-Tech
|
#include <lbs_solver.h>
Public Types | |
typedef std::shared_ptr< AGSLinearSolver< Mat, Vec, KSP > > | AGSLinSolverPtr |
typedef std::shared_ptr< chi_math::LinearSolver< Mat, Vec, KSP > > | LinSolvePtr |
Public Member Functions | |
LBSSolver (const std::string &text_name) | |
LBSSolver (const chi::InputParameters ¶ms) | |
LBSSolver (const LBSSolver &)=delete | |
LBSSolver & | operator= (const LBSSolver &)=delete |
virtual | ~LBSSolver ()=default |
size_t | GetSourceEventTag () const |
double | LastRestartWrite () const |
double & | LastRestartWrite () |
lbs::Options & | Options () |
const lbs::Options & | Options () const |
void | SetOptions (const chi::InputParameters ¶ms) |
void | SetBoundaryOptions (const chi::InputParameters ¶ms) |
size_t | NumMoments () const |
size_t | NumGroups () const |
size_t | NumPrecursors () const |
size_t | GetMaxPrecursorsPerMaterial () const |
void | AddGroup (int id) |
const std::vector< LBSGroup > & | Groups () const |
void | AddGroupset () |
std::vector< LBSGroupset > & | Groupsets () |
const std::vector< LBSGroupset > & | Groupsets () const |
void | AddPointSource (PointSource psrc) |
void | ClearPointSources () |
const std::vector< PointSource > & | PointSources () const |
const std::map< int, XSPtr > & | GetMatID2XSMap () const |
const std::map< int, IsotropicSrcPtr > & | GetMatID2IsoSrcMap () const |
const chi_math::SpatialDiscretization & | SpatialDiscretization () const |
const std::vector< UnitCellMatrices > & | GetUnitCellMatrices () const |
const chi_mesh::MeshContinuum & | Grid () const |
const std::vector< lbs::CellLBSView > & | GetCellTransportViews () const |
std::map< uint64_t, BoundaryPreference > & | BoundaryPreferences () |
const chi_math::UnknownManager & | UnknownManager () const |
size_t | LocalNodeCount () const |
size_t | GlobalNodeCount () const |
std::vector< double > & | QMomentsLocal () |
const std::vector< double > & | QMomentsLocal () const |
std::vector< double > & | ExtSrcMomentsLocal () |
const std::vector< double > & | ExtSrcMomentsLocal () const |
std::vector< double > & | PhiOldLocal () |
const std::vector< double > & | PhiOldLocal () const |
std::vector< double > & | PhiNewLocal () |
const std::vector< double > & | PhiNewLocal () const |
std::vector< double > & | PrecursorsNewLocal () |
const std::vector< double > & | PrecursorsNewLocal () const |
std::vector< VecDbl > & | PsiNewLocal () |
const std::vector< VecDbl > & | PsiNewLocal () const |
const std::map< uint64_t, std::shared_ptr< SweepBndry > > & | SweepBoundaries () const |
SetSourceFunction | GetActiveSetSourceFunction () const |
AGSLinSolverPtr | GetPrimaryAGSSolver () |
std::vector< LinSolvePtr > & | GetWGSSolvers () |
WGSContext< Mat, Vec, KSP > & | GetWGSContext (int groupset_id) |
virtual std::pair< size_t, size_t > | GetNumPhiIterativeUnknowns () |
size_t | MapPhiFieldFunction (size_t g, size_t m) const |
size_t | GetHandleToPowerGenFieldFunc () const |
void | Initialize () override |
void | InitMaterials () |
void | InitializePointSources () |
void | InitWGDSA (LBSGroupset &groupset, bool vaccum_bcs_are_dirichlet=true) |
std::vector< double > | WGSCopyOnlyPhi0 (const LBSGroupset &groupset, const std::vector< double > &phi_in) |
void | GSProjectBackPhi0 (const LBSGroupset &groupset, const std::vector< double > &input, std::vector< double > &output) |
void | AssembleWGDSADeltaPhiVector (const LBSGroupset &groupset, const std::vector< double > &phi_in, std::vector< double > &delta_phi_local) |
void | DisAssembleWGDSADeltaPhiVector (const LBSGroupset &groupset, const std::vector< double > &delta_phi_local, std::vector< double > &ref_phi_new) |
void | AssembleTGDSADeltaPhiVector (const LBSGroupset &groupset, const std::vector< double > &phi_in, std::vector< double > &delta_phi_local) |
void | DisAssembleTGDSADeltaPhiVector (const LBSGroupset &groupset, const std::vector< double > &delta_phi_local, std::vector< double > &ref_phi_new) |
void | WriteRestartData (const std::string &folder_name, const std::string &file_base) |
void | ReadRestartData (const std::string &folder_name, const std::string &file_base) |
void | WriteGroupsetAngularFluxes (const LBSGroupset &groupset, const std::string &file_base) |
void | ReadGroupsetAngularFluxes (LBSGroupset &groupset, const std::string &file_base) |
std::vector< double > | MakeSourceMomentsFromPhi () |
void | WriteFluxMoments (const std::string &file_base, const std::vector< double > &flux_moments) |
void | ReadFluxMoments (const std::string &file_base, std::vector< double > &flux_moments, bool single_file=false) |
void | UpdateFieldFunctions () |
void | SetPhiFromFieldFunctions (PhiSTLOption which_phi, const std::vector< size_t > &m_indices, const std::vector< size_t > &g_indices) |
double | ComputeFissionProduction (const std::vector< double > &phi) |
double | ComputeFissionRate (const std::vector< double > &phi) |
void | ComputePrecursors () |
virtual void | SetPhiVectorScalarValues (std::vector< double > &phi_vector, double value) |
virtual void | ScalePhiVector (PhiSTLOption which_phi, double value) |
virtual void | SetGSPETScVecFromPrimarySTLvector (LBSGroupset &groupset, Vec x, PhiSTLOption which_phi) |
virtual void | SetPrimarySTLvectorFromGSPETScVec (LBSGroupset &groupset, Vec x_src, PhiSTLOption which_phi) |
virtual void | GSScopedCopyPrimarySTLvectors (LBSGroupset &groupset, const std::vector< double > &x_src, std::vector< double > &y) |
virtual void | GSScopedCopyPrimarySTLvectors (LBSGroupset &groupset, PhiSTLOption from_which_phi, PhiSTLOption to_which_phi) |
virtual void | SetGroupScopedPETScVecFromPrimarySTLvector (int first_group_id, int last_group_id, Vec x, const std::vector< double > &y) |
virtual void | SetPrimarySTLvectorFromGroupScopedPETScVec (int first_group_id, int last_group_id, Vec x_src, std::vector< double > &y) |
virtual void | SetMultiGSPETScVecFromPrimarySTLvector (const std::vector< int > &gs_ids, Vec x, PhiSTLOption which_phi) |
virtual void | SetPrimarySTLvectorFromMultiGSPETScVecFrom (const std::vector< int > &gs_ids, Vec x_src, PhiSTLOption which_phi) |
Public Member Functions inherited from chi_physics::Solver | |
Solver (std::string in_text_name) | |
Solver (std::string in_text_name, std::initializer_list< BasicOption > in_options) | |
Solver (const chi::InputParameters ¶ms) | |
virtual | ~Solver ()=default |
std::string | TextName () const |
BasicOptions & | GetBasicOptions () |
const BasicOptions & | GetBasicOptions () const |
std::vector< std::shared_ptr< FieldFunctionGridBased > > & | GetFieldFunctions () |
const std::vector< std::shared_ptr< FieldFunctionGridBased > > & | GetFieldFunctions () const |
TimeStepper & | GetTimeStepper () |
const TimeStepper & | GetTimeStepper () const |
virtual void | Initialize () |
virtual void | Execute () |
virtual void | Step () |
virtual void | Advance () |
virtual chi::ParameterBlock | GetInfo (const chi::ParameterBlock ¶ms) const |
virtual void | SetProperties (const chi::ParameterBlock ¶ms) |
chi::ParameterBlock | GetInfoWithPreCheck (const chi::ParameterBlock ¶ms) const |
Public Member Functions inherited from ChiObject | |
ChiObject () | |
ChiObject (const chi::InputParameters ¶ms) | |
void | SetStackID (size_t stack_id) |
size_t | StackID () const |
virtual void | PushOntoStack (std::shared_ptr< ChiObject > &new_object) |
virtual | ~ChiObject ()=default |
Static Public Member Functions | |
static chi::InputParameters | GetInputParameters () |
static chi::InputParameters | OptionsBlock () |
static chi::InputParameters | BoundaryOptionsBlock () |
Static Public Member Functions inherited from chi_physics::Solver | |
static chi::InputParameters | GetInputParameters () |
Static Public Member Functions inherited from ChiObject | |
static chi::InputParameters | GetInputParameters () |
Protected Types | |
typedef chi_mesh::sweep_management::CellFaceNodalMapping | CellFaceNodalMapping |
Protected Member Functions | |
virtual void | PerformInputChecks () |
void | PrintSimHeader () |
virtual void | InitializeSpatialDiscretization () |
void | ComputeUnitIntegrals () |
void | InitializeGroupsets () |
void | ComputeNumberOfMoments () |
virtual void | InitializeParrays () |
void | InitializeFieldFunctions () |
void | InitializeBoundaries () |
virtual void | InitializeSolverSchemes () |
virtual void | InitializeWGSSolvers () |
void | InitTGDSA (LBSGroupset &groupset) |
Static Protected Member Functions | |
static void | CleanUpWGDSA (LBSGroupset &groupset) |
static void | CleanUpTGDSA (LBSGroupset &groupset) |
Base class for all Linear Boltzmann Solvers.
Definition at line 49 of file lbs_solver.h.
typedef std::shared_ptr<AGSLinearSolver<Mat, Vec, KSP> > lbs::LBSSolver::AGSLinSolverPtr |
Definition at line 52 of file lbs_solver.h.
|
protected |
Definition at line 56 of file lbs_solver.h.
typedef std::shared_ptr<chi_math::LinearSolver<Mat, Vec, KSP> > lbs::LBSSolver::LinSolvePtr |
Definition at line 53 of file lbs_solver.h.
|
explicit |
Base class constructor.
Definition at line 13 of file lbs_00_constrdestr.cc.
|
explicit |
Input parameters based construction.
Definition at line 45 of file lbs_00_constrdestr.cc.
|
delete |
|
virtualdefault |
void lbs::LBSSolver::AddGroup | ( | int | id | ) |
Adds a group to the list of groups. If group id < 0, the id will be logically derived from the list size. If >= 0 the id will be set to the id specified.
Definition at line 117 of file lbs_00_constrdestr.cc.
void lbs::LBSSolver::AddGroupset | ( | ) |
Adds a groupset to the list of groupsets. The groupset id will be logically derived from the list size.
Definition at line 129 of file lbs_00_constrdestr.cc.
void lbs::LBSSolver::AddPointSource | ( | PointSource | psrc | ) |
Adds a point source to the solver's point source list.
Definition at line 144 of file lbs_00_constrdestr.cc.
void lbs::LBSSolver::AssembleTGDSADeltaPhiVector | ( | const LBSGroupset & | groupset, |
const std::vector< double > & | phi_in, | ||
std::vector< double > & | delta_phi_local | ||
) |
Assembles a delta-phi vector on the first moment.
Definition at line 87 of file lbs_03e_tgdsa.cc.
void lbs::LBSSolver::AssembleWGDSADeltaPhiVector | ( | const LBSGroupset & | groupset, |
const std::vector< double > & | phi_in, | ||
std::vector< double > & | delta_phi_local | ||
) |
Assembles a delta-phi vector on the first moment.
Definition at line 139 of file lbs_03d_wgdsa.cc.
|
static |
Definition at line 116 of file lbs_00a_setoptions.cc.
std::map< uint64_t, BoundaryPreference > & lbs::LBSSolver::BoundaryPreferences | ( | ) |
Read/Write access to the boundary preferences.
Definition at line 291 of file lbs_00_constrdestr.cc.
|
staticprotected |
Cleans up memory consuming items.
Definition at line 80 of file lbs_03e_tgdsa.cc.
|
staticprotected |
Cleans up memory consuming items.
Definition at line 60 of file lbs_03d_wgdsa.cc.
void lbs::LBSSolver::ClearPointSources | ( | ) |
Clears all the point sources from the solver's point source list.
Definition at line 150 of file lbs_00_constrdestr.cc.
double LBSSolver::ComputeFissionProduction | ( | const std::vector< double > & | phi | ) |
Compute the total fission production in the problem.
Definition at line 11 of file lbs_06b_compute_fission_rates.cc.
double LBSSolver::ComputeFissionRate | ( | const std::vector< double > & | phi | ) |
Computes the total fission rate in the problem.
Definition at line 69 of file lbs_06b_compute_fission_rates.cc.
|
protected |
Computes the number of moments for the given mesher types
Definition at line 5 of file lbs_01f_compute_nummoments.cc.
void lbs::LBSSolver::ComputePrecursors | ( | ) |
Compute the steady state delayed neutron precursor concentrations.
Definition at line 10 of file lbs_06c_compute_precursors.cc.
|
protected |
Definition at line 22 of file lbs_01d_init_spat_discr.cc.
void lbs::LBSSolver::DisAssembleTGDSADeltaPhiVector | ( | const LBSGroupset & | groupset, |
const std::vector< double > & | delta_phi_local, | ||
std::vector< double > & | ref_phi_new | ||
) |
DAssembles a delta-phi vector on the first moment.
Definition at line 130 of file lbs_03e_tgdsa.cc.
void lbs::LBSSolver::DisAssembleWGDSADeltaPhiVector | ( | const LBSGroupset & | groupset, |
const std::vector< double > & | delta_phi_local, | ||
std::vector< double > & | ref_phi_new | ||
) |
DAssembles a delta-phi vector on the first moment.
Definition at line 178 of file lbs_03d_wgdsa.cc.
std::vector< double > & lbs::LBSSolver::ExtSrcMomentsLocal | ( | ) |
Read/write access to exterior src moments vector.
Definition at line 212 of file lbs_00_constrdestr.cc.
const std::vector< double > & lbs::LBSSolver::ExtSrcMomentsLocal | ( | ) | const |
Read access to exterior src moments vector.
Definition at line 218 of file lbs_00_constrdestr.cc.
SetSourceFunction lbs::LBSSolver::GetActiveSetSourceFunction | ( | ) | const |
Definition at line 263 of file lbs_00_constrdestr.cc.
const std::vector< CellLBSView > & lbs::LBSSolver::GetCellTransportViews | ( | ) | const |
Returns a reference to the list of local cell transport views.
Definition at line 186 of file lbs_00_constrdestr.cc.
size_t lbs::LBSSolver::GetHandleToPowerGenFieldFunc | ( | ) | const |
Returns the local handle to the power generation field function, if enabled.
Definition at line 320 of file lbs_00_constrdestr.cc.
|
static |
Returns the input parameters for this object.
Definition at line 19 of file lbs_00_constrdestr.cc.
const std::map< int, IsotropicSrcPtr > & lbs::LBSSolver::GetMatID2IsoSrcMap | ( | ) | const |
Returns a reference to the map of material ids to Isotropic Srcs.
Definition at line 165 of file lbs_00_constrdestr.cc.
const std::map< int, XSPtr > & lbs::LBSSolver::GetMatID2XSMap | ( | ) | const |
Returns a reference to the map of material ids to XSs.
Definition at line 159 of file lbs_00_constrdestr.cc.
size_t lbs::LBSSolver::GetMaxPrecursorsPerMaterial | ( | ) | const |
Returns the maximum number of precursors, for a material, as encountered accross all the materials. This will only be non-zero after initialization.
Definition at line 110 of file lbs_00_constrdestr.cc.
|
virtual |
Gets the local and global number of iterative unknowns. This normally is only the flux moments, however, the sweep based solvers might include delayed angular fluxes in this number.
Reimplemented in lbs::DiscreteOrdinatesSolver.
Definition at line 299 of file lbs_00_constrdestr.cc.
LBSSolver::AGSLinSolverPtr lbs::LBSSolver::GetPrimaryAGSSolver | ( | ) |
Definition at line 268 of file lbs_00_constrdestr.cc.
size_t lbs::LBSSolver::GetSourceEventTag | ( | ) | const |
Returns the source event tag used for logging the time it takes to set source moments.
Definition at line 81 of file lbs_00_constrdestr.cc.
const std::vector< UnitCellMatrices > & lbs::LBSSolver::GetUnitCellMatrices | ( | ) | const |
Returns read-only access to the unit cell matrices.
Definition at line 177 of file lbs_00_constrdestr.cc.
WGSContext< Mat, Vec, KSP > & lbs::LBSSolver::GetWGSContext | ( | int | groupset_id | ) |
Definition at line 278 of file lbs_00_constrdestr.cc.
std::vector< LBSSolver::LinSolvePtr > & lbs::LBSSolver::GetWGSSolvers | ( | ) |
Definition at line 273 of file lbs_00_constrdestr.cc.
size_t lbs::LBSSolver::GlobalNodeCount | ( | ) | const |
Returns the global node count for the flux-moments data structures.
Definition at line 201 of file lbs_00_constrdestr.cc.
const chi_mesh::MeshContinuum & lbs::LBSSolver::Grid | ( | ) | const |
Obtains a reference to the grid.
Definition at line 183 of file lbs_00_constrdestr.cc.
const std::vector< LBSGroup > & lbs::LBSSolver::Groups | ( | ) | const |
Const accessor.
Definition at line 125 of file lbs_00_constrdestr.cc.
std::vector< LBSGroupset > & lbs::LBSSolver::Groupsets | ( | ) |
Non-Const accessor.
Definition at line 135 of file lbs_00_constrdestr.cc.
const std::vector< LBSGroupset > & lbs::LBSSolver::Groupsets | ( | ) | const |
Const accessor.
Definition at line 138 of file lbs_00_constrdestr.cc.
void lbs::LBSSolver::GSProjectBackPhi0 | ( | const LBSGroupset & | groupset, |
const std::vector< double > & | input, | ||
std::vector< double > & | output | ||
) |
From the WGDSA DOFs, projects the scalar moments back into a primary STL vector.
Definition at line 107 of file lbs_03d_wgdsa.cc.
|
virtual |
Assembles a vector for a given groupset from a source vector.
Definition at line 143 of file lbs_07_vectorassembly.cc.
|
virtual |
Assembles a vector for a given groupset from a source vector.
Reimplemented in lbs::DiscreteOrdinatesSolver.
Definition at line 171 of file lbs_07_vectorassembly.cc.
|
overridevirtual |
Initialize the solver.
Reimplemented from chi_physics::Solver.
Reimplemented in lbs::DiffusionDFEMSolver, lbs::DiscreteOrdinatesSolver, and lbs::DiscreteOrdinatesAdjointSolver.
Definition at line 8 of file lbs_01_main_initialize.cc.
|
protected |
Initializes transport related boundaries.
Definition at line 31 of file lbs_01h_init_boundaries.cc.
|
protected |
Definition at line 10 of file lbs_01ga_init_fieldfuncs.cc.
|
protected |
Initializes common groupset items.
Definition at line 5 of file lbs_01e_initgroupsets.cc.
|
protectedvirtual |
Initializes parallel arrays.
Definition at line 14 of file lbs_01g_initparrays.cc.
void lbs::LBSSolver::InitializePointSources | ( | ) |
|
protectedvirtual |
Definition at line 9 of file lbs_01j_init_solver_schemes.cc.
|
protectedvirtual |
Reimplemented in lbs::DiscreteOrdinatesCurvilinearSolver.
Definition at line 13 of file lbs_01d_init_spat_discr.cc.
|
inlineprotectedvirtual |
Reimplemented in lbs::DiffusionDFEMSolver, and lbs::DiscreteOrdinatesSolver.
Definition at line 236 of file lbs_solver.h.
void lbs::LBSSolver::InitMaterials | ( | ) |
Initializes default materials and physics materials.
Definition at line 16 of file lbs_01c_initmaterials.cc.
|
protected |
Initializes the Within-Group DSA solver.
Definition at line 11 of file lbs_03e_tgdsa.cc.
void lbs::LBSSolver::InitWGDSA | ( | LBSGroupset & | groupset, |
bool | vaccum_bcs_are_dirichlet = true |
||
) |
Initializes the Within-Group DSA solver.
Definition at line 10 of file lbs_03d_wgdsa.cc.
double & lbs::LBSSolver::LastRestartWrite | ( | ) |
Returns a reference to the time at which the last restart was written.
Definition at line 87 of file lbs_00_constrdestr.cc.
double lbs::LBSSolver::LastRestartWrite | ( | ) | const |
Returns the time at which the last restart was written.
Definition at line 84 of file lbs_00_constrdestr.cc.
size_t lbs::LBSSolver::LocalNodeCount | ( | ) | const |
Returns the local node count for the flux-moments data structures.
Definition at line 198 of file lbs_00_constrdestr.cc.
std::vector< double > lbs::LBSSolver::MakeSourceMomentsFromPhi | ( | ) |
Makes a source-moments vector from scattering and fission based on the latest phi-solution.
Definition at line 15 of file lbs_04c_io_flux_moments.cc.
size_t lbs::LBSSolver::MapPhiFieldFunction | ( | size_t | g, |
size_t | m | ||
) | const |
Gets the local handle of a flux-moment based field function.
Definition at line 309 of file lbs_00_constrdestr.cc.
size_t lbs::LBSSolver::NumGroups | ( | ) | const |
Returns the number of groups for the solver. This will only be non-zero after initialization.
Definition at line 101 of file lbs_00_constrdestr.cc.
size_t lbs::LBSSolver::NumMoments | ( | ) | const |
Returns the number of moments for the solver. This will only be non-zero after initialization.
Definition at line 97 of file lbs_00_constrdestr.cc.
size_t lbs::LBSSolver::NumPrecursors | ( | ) | const |
Returns the number of precursors for the solver. This will only be non-zero after initialization.
Definition at line 105 of file lbs_00_constrdestr.cc.
Options & lbs::LBSSolver::Options | ( | ) |
Returns a reference to the solver options.
Definition at line 90 of file lbs_00_constrdestr.cc.
const Options & lbs::LBSSolver::Options | ( | ) | const |
Returns a constant reference to the solver options.
Definition at line 93 of file lbs_00_constrdestr.cc.
|
static |
Definition at line 13 of file lbs_00a_setoptions.cc.
|
protectedvirtual |
Performs general input checks before initialization continues.
Reimplemented in lbs::DiscreteOrdinatesCurvilinearSolver.
Definition at line 11 of file lbs_01a_inputchecks.cc.
std::vector< double > & lbs::LBSSolver::PhiNewLocal | ( | ) |
Read/write access to newest updated flux vector.
Definition at line 233 of file lbs_00_constrdestr.cc.
const std::vector< double > & lbs::LBSSolver::PhiNewLocal | ( | ) | const |
Read access to newest updated flux vector.
Definition at line 235 of file lbs_00_constrdestr.cc.
std::vector< double > & lbs::LBSSolver::PhiOldLocal | ( | ) |
Read/write access to last updated flux vector.
Definition at line 224 of file lbs_00_constrdestr.cc.
const std::vector< double > & lbs::LBSSolver::PhiOldLocal | ( | ) | const |
Read access to last updated flux vector.
Definition at line 227 of file lbs_00_constrdestr.cc.
const std::vector< PointSource > & lbs::LBSSolver::PointSources | ( | ) | const |
Const accessor to the list of point sources.
Definition at line 153 of file lbs_00_constrdestr.cc.
std::vector< double > & lbs::LBSSolver::PrecursorsNewLocal | ( | ) |
Read/write access to newest updated precursors vector.
Definition at line 241 of file lbs_00_constrdestr.cc.
const std::vector< double > & lbs::LBSSolver::PrecursorsNewLocal | ( | ) | const |
Read access to newest updated precursors vector.
Definition at line 243 of file lbs_00_constrdestr.cc.
|
protected |
Prints header information of simulation.
Definition at line 9 of file lbs_01b_print_simheader.cc.
std::vector< VecDbl > & lbs::LBSSolver::PsiNewLocal | ( | ) |
Read/write access to newest updated angular flux vector.
Definition at line 249 of file lbs_00_constrdestr.cc.
const std::vector< VecDbl > & lbs::LBSSolver::PsiNewLocal | ( | ) | const |
Read access to newest updated angular flux vector.
Definition at line 251 of file lbs_00_constrdestr.cc.
std::vector< double > & lbs::LBSSolver::QMomentsLocal | ( | ) |
Read/write access to source moments vector.
Definition at line 204 of file lbs_00_constrdestr.cc.
const std::vector< double > & lbs::LBSSolver::QMomentsLocal | ( | ) | const |
Read access to source moments vector.
Definition at line 206 of file lbs_00_constrdestr.cc.
void lbs::LBSSolver::ReadFluxMoments | ( | const std::string & | file_base, |
std::vector< double > & | flux_moments, | ||
bool | single_file = false |
||
) |
Reads a flux-moments vector from a file in the specified vector.
Definition at line 154 of file lbs_04c_io_flux_moments.cc.
void lbs::LBSSolver::ReadGroupsetAngularFluxes | ( | LBSGroupset & | groupset, |
const std::string & | file_base | ||
) |
Prints the groupset's angular fluxes to file.
Definition at line 107 of file lbs_04b_angular_fluxes.cc.
void lbs::LBSSolver::ReadRestartData | ( | const std::string & | folder_name, |
const std::string & | file_base | ||
) |
Read phi_old from restart file.
Definition at line 92 of file lbs_04a_restartdata.cc.
|
virtual |
Scales a flux moment vector. For sweep methods the delayed angular fluxes will also be scaled.
Reimplemented in lbs::DiscreteOrdinatesSolver.
Definition at line 38 of file lbs_07_vectorassembly.cc.
void lbs::LBSSolver::SetBoundaryOptions | ( | const chi::InputParameters & | params | ) |
Definition at line 250 of file lbs_00a_setoptions.cc.
|
virtual |
Assembles a vector for a given group span from a source vector.
Definition at line 217 of file lbs_07_vectorassembly.cc.
|
virtual |
Assembles a vector for a given groupset from a source vector.
Reimplemented in lbs::DiscreteOrdinatesSolver.
Definition at line 55 of file lbs_07_vectorassembly.cc.
|
virtual |
Assembles a PETSc vector from multiple groupsets.
Reimplemented in lbs::DiscreteOrdinatesSolver.
Definition at line 290 of file lbs_07_vectorassembly.cc.
void lbs::LBSSolver::SetOptions | ( | const chi::InputParameters & | params | ) |
Definition at line 151 of file lbs_00a_setoptions.cc.
void lbs::LBSSolver::SetPhiFromFieldFunctions | ( | PhiSTLOption | which_phi, |
const std::vector< size_t > & | m_indices, | ||
const std::vector< size_t > & | g_indices | ||
) |
Sets the internal phi vector to the value in the associated field function.
Definition at line 136 of file lbs_05a_update_fieldfuncs.cc.
|
virtual |
Sets a value to the zeroth (scalar) moment of the vector.
Definition at line 8 of file lbs_07_vectorassembly.cc.
|
virtual |
Assembles a vector for a given groupset from a source vector.
Definition at line 253 of file lbs_07_vectorassembly.cc.
|
virtual |
Assembles a vector for a given groupset from a source vector.
Reimplemented in lbs::DiscreteOrdinatesSolver.
Definition at line 99 of file lbs_07_vectorassembly.cc.
|
virtual |
Disassembles a multiple Groupset PETSc vector STL vectors.
Reimplemented in lbs::DiscreteOrdinatesSolver.
Definition at line 339 of file lbs_07_vectorassembly.cc.
const chi_math::SpatialDiscretization & lbs::LBSSolver::SpatialDiscretization | ( | ) | const |
Obtains a reference to the spatial discretization.
Definition at line 171 of file lbs_00_constrdestr.cc.
const std::map< uint64_t, std::shared_ptr< SweepBndry > > & lbs::LBSSolver::SweepBoundaries | ( | ) | const |
Returns the sweep boundaries as a read only reference
Definition at line 258 of file lbs_00_constrdestr.cc.
const chi_math::UnknownManager & lbs::LBSSolver::UnknownManager | ( | ) | const |
Obtains a reference to the unknown manager for flux-moments.
Definition at line 192 of file lbs_00_constrdestr.cc.
void lbs::LBSSolver::UpdateFieldFunctions | ( | ) |
Copy relevant section of phi_old to the field functions.
Definition at line 13 of file lbs_05a_update_fieldfuncs.cc.
std::vector< double > lbs::LBSSolver::WGSCopyOnlyPhi0 | ( | const LBSGroupset & | groupset, |
const std::vector< double > & | phi_in | ||
) |
Creates a vector from a lbs primary stl vector where only the scalar moments are mapped to the DOFs needed by WGDSA.
Definition at line 69 of file lbs_03d_wgdsa.cc.
void lbs::LBSSolver::WriteFluxMoments | ( | const std::string & | file_base, |
const std::vector< double > & | flux_moments | ||
) |
Writes a given flux-moments vector to file.
Definition at line 37 of file lbs_04c_io_flux_moments.cc.
void lbs::LBSSolver::WriteGroupsetAngularFluxes | ( | const LBSGroupset & | groupset, |
const std::string & | file_base | ||
) |
Writes the groupset's angular fluxes to file.
Definition at line 15 of file lbs_04b_angular_fluxes.cc.
void lbs::LBSSolver::WriteRestartData | ( | const std::string & | folder_name, |
const std::string & | file_base | ||
) |
Writes phi_old to restart file.
Definition at line 13 of file lbs_04a_restartdata.cc.
|
protected |
Definition at line 99 of file lbs_solver.h.
|
protected |
Definition at line 101 of file lbs_solver.h.
|
protected |
Definition at line 85 of file lbs_solver.h.
|
protected |
Definition at line 83 of file lbs_solver.h.
|
protected |
Definition at line 74 of file lbs_solver.h.
|
protected |
Definition at line 94 of file lbs_solver.h.
|
protected |
Definition at line 88 of file lbs_solver.h.
|
protected |
Definition at line 92 of file lbs_solver.h.
|
protected |
Definition at line 79 of file lbs_solver.h.
|
protected |
Definition at line 78 of file lbs_solver.h.
|
protected |
Definition at line 77 of file lbs_solver.h.
|
protected |
Definition at line 75 of file lbs_solver.h.
|
protected |
Definition at line 67 of file lbs_solver.h.
|
protected |
Definition at line 68 of file lbs_solver.h.
|
protected |
Definition at line 59 of file lbs_solver.h.
|
protected |
Definition at line 91 of file lbs_solver.h.
|
protected |
Definition at line 72 of file lbs_solver.h.
|
protected |
Definition at line 71 of file lbs_solver.h.
|
protected |
Definition at line 90 of file lbs_solver.h.
|
protected |
Definition at line 65 of file lbs_solver.h.
|
protected |
Definition at line 63 of file lbs_solver.h.
|
protected |
Definition at line 62 of file lbs_solver.h.
|
protected |
Definition at line 64 of file lbs_solver.h.
|
protected |
Definition at line 61 of file lbs_solver.h.
|
protected |
Definition at line 105 of file lbs_solver.h.
|
protected |
Definition at line 95 of file lbs_solver.h.
|
protected |
Definition at line 95 of file lbs_solver.h.
|
protected |
Definition at line 69 of file lbs_solver.h.
|
protected |
Definition at line 106 of file lbs_solver.h.
|
protected |
Definition at line 97 of file lbs_solver.h.
|
protected |
Definition at line 103 of file lbs_solver.h.
|
protected |
Definition at line 96 of file lbs_solver.h.
|
protected |
Definition at line 94 of file lbs_solver.h.
|
protected |
Definition at line 58 of file lbs_solver.h.
|
protected |
Definition at line 86 of file lbs_solver.h.
|
protected |
Time integration parameter meant to be set by an executor
Definition at line 109 of file lbs_solver.h.
|
protected |
Definition at line 81 of file lbs_solver.h.
|
protected |
Definition at line 82 of file lbs_solver.h.
|
protected |
Definition at line 102 of file lbs_solver.h.