Class LBSGroupset

Nested Relationships

Nested Types

Class Documentation

class LBSGroupset

Configuration and runtime state for one contiguous energy-group range.

LBSProblem owns the ordered groupsets. Together they cover every problem group exactly once, from zero through num_groups - 1. Each groupset holds iteration settings and transport data.

Public Functions

explicit LBSGroupset(const InputParameters &params, int id, const LBSProblem &lbs_problem)
explicit LBSGroupset(int id)
LBSGroupset()
void PrintSweepInfoFile(size_t ev_tag, const std::string &file_name)
void InitializeQuadratureCarrier()

Initialize carrier for copying quadrature data to GPU.

void ResetQuadratureCarrier()

Delete carrier and deallocate memory on GPU.

~LBSGroupset()
unsigned int GetNumGroups() const

Return number of energy groups in the groupset.

Public Members

int id
unsigned int first_group

First energy-group index in this inclusive range.

unsigned int last_group

Last energy-group index in this inclusive range.

unsigned int size

Number of groups in the groupset.

std::shared_ptr<AngularQuadrature> quadrature
std::shared_ptr<AngleAggregation> angle_agg
UniqueSOGroupings unique_so_groupings
DirIDToSOMap dir_id_to_so_map
LinearSystemSolver::IterativeMethod iterative_method
AngleAggregationType angleagg_method
double residual_tolerance
unsigned int max_iterations
unsigned int gmres_restart_intvl
bool allow_cycles
bool apply_wgdsa
bool apply_tgdsa
unsigned int wgdsa_max_iters
unsigned int tgdsa_max_iters
double wgdsa_tol
double tgdsa_tol
std::string wgdsa_solver_policy
std::string tgdsa_solver_policy
unsigned int wgdsa_direct_solve_threshold
unsigned int tgdsa_direct_solve_threshold
std::string wgdsa_boundary_closure

Boundary closure of the DSA correction on vacuum, isotropic and arbitrary boundaries: “marshak” (default), “closure_r” or “dirichlet” (OpenSn’s original).

std::string tgdsa_boundary_closure
std::string wgdsa_h_perp_convention

MIP penalty length convention: “face_side” (default) or “cell” (OpenSn’s original).

std::string tgdsa_h_perp_convention
bool wgdsa_verbose
bool tgdsa_verbose
std::string wgdsa_string
std::string tgdsa_string
std::shared_ptr<QuadratureCarrier> quad_carrier = nullptr
std::shared_ptr<DiffusionMIPSolver> wgdsa_solver = nullptr
std::shared_ptr<DiffusionMIPSolver> tgdsa_solver = nullptr
std::vector<std::shared_ptr<DiffusionMIPSolver>> wgdsa_csda_solvers

CSDA WGDSA: one single-group diffusion solver per groupset group, solved in energy order.

struct opensn::LBSGroupset::TwoGridAccelerationInfo tg_acceleration_info_
UnknownManager psi_uk_man_

Public Static Functions

static InputParameters GetInputParameters()
struct TwoGridAccelerationInfo

Public Members

std::map<unsigned int, TwoGridCollapsedInfo> map_mat_id_2_tginfo
EnergyCollapseScheme scheme = EnergyCollapseScheme::JFULL