Struct BoundaryDefinition
Defined in File boundary_definition.h
Struct Documentation
-
struct BoundaryDefinition
Parsed boundary-condition specification for sweep boundary construction.
This structure stores the user-supplied boundary type and any type-specific data needed later by the sweep boundary factory. It intentionally describes the boundary condition without owning a concrete SweepBoundary object.
Public Functions
-
BoundaryDefinition() = default
Construct a vacuum boundary definition.
-
BoundaryDefinition(const InputParameters ¶ms, unsigned int num_groups)
Construct a boundary definition from input parameters.
The constructor validates the requested boundary type and required/forbidden type-specific parameters. Isotropic boundaries store group strengths, arbitrary boundaries store an AngularFluxFunction, and vacuum/reflecting boundaries do not store additional payload.
- Parameters:
params – Boundary option parameters containing at least
nameandtype.num_groups – Number of solver groups used to validate isotropic strengths.
Public Members
-
LBSBoundaryType type = LBSBoundaryType::VACUUM
Boundary condition type.
-
std::vector<double> group_strength
Group-wise incoming angular flux for isotropic boundaries.
-
double start_time = -std::numeric_limits<double>::infinity()
-
double end_time = std::numeric_limits<double>::infinity()
-
std::shared_ptr<AngularFluxTimeFunction> time_angular_flux_function
User-supplied angular flux callback for time-dependent arbitrary boundaries.
-
BoundaryDefinition() = default