pyopensn.solver.PowerIterationKEigenSMMSolver
- class pyopensn.solver.PowerIterationKEigenSMMSolver
Power iteration k-eigenvalue solver with SMM acceleration.
Wrapper of
opensn::PowerIterationKEigenSMMSolver
.- Advance(self: pyopensn.solver.Solver) None
Advance time values function.
- Execute(self: pyopensn.solver.Solver) None
Execute the solver.
- GetEigenvalue(self: pyopensn.solver.PowerIterationKEigenSolver) float
Return the current k‑eigenvalue.
- Initialize(self: pyopensn.solver.Solver) None
Initialize the solver.
- Step(self: pyopensn.solver.Solver) None
Step the solver.
- __init__(self: pyopensn.solver.PowerIterationKEigenSMMSolver, **kwargs) None
Construct a power iteration k-eigen SMM solver.
- Parameters:
lbs_problem (pyopensn.solver.LBSProblem) – Existing LBSProblem instance.
max_iters (int, defauilt=1000) – Maximum power iterations allowed.
k_tol (float, default=1.0e-10) – Tolerance on the k-eigenvalue.
reset_solution (bool, default=True) – If true, initialize flux moments to 1.0.
reset_phi0 (bool, default=True) – If true, reinitializes scalar fluxes to 1.0.
accel_pi_max_its (int, default=50) – Maximum number of power iterations allowed for the second-moment method’s diffusion solver.
accel_pi_k_tol (float, default=1.0e-10) – Convergence tolerance for the k-eigenvalue in the second-moment method diffusion solver.
accel_pi_verbose (bool, default=False) – If True, enables verbose output from the second-moment method diffusion solver.
diff_sdm ({'pwlc', 'pwld'}, default='pwlc') –
- Spatial discretization method for the second-moment method diffusion system.
’pwlc’: Piecewise Linear Continuous
’pwld’: Piecewise Linear Discontinuous
diff_l_abs_tol (float, default=1.0e-10) – Absolute residual tolerance for convergence of the diffusion accelerator linear solver.
diff_l_max_its (int, default=100) – Maximum number of iterations allowed for the diffusion accelerator linear solver.
diff_petsc_options (str, default="") – Additional PETSc options to pass to the diffusion accelerator solver.
diff_verbose (bool, default=False) – If True, enables verbose output from the diffusion accelerator.