11 const std::string& text_name)
26 "directions_sweep_order_to_print",
27 std::vector<size_t>(),
28 "List of direction id's for which sweep ordering info is to be printed.");
31 "sweep_type",
"AAH",
"The sweep type to use for sweep operatorations.");
35 AllowableRangeList::New({
"AAH",
"CBC"}));
44 verbose_sweep_angles_(
45 params.GetParamVectorValue<size_t>(
"directions_sweep_order_to_print")),
46 sweep_type_(params.GetParamValue<std::string>(
"sweep_type"))
53 for (
auto& groupset : groupsets_)
55 CleanUpWGDSA(groupset);
56 CleanUpTGDSA(groupset);
58 ResetSweepOrderings(groupset);
65std::pair<size_t, size_t>
68 const auto& sdm = *discretization_;
69 const size_t num_local_phi_dofs = sdm.GetNumLocalDOFs(flux_moments_uk_man_);
70 const size_t num_globl_phi_dofs = sdm.GetNumGlobalDOFs(flux_moments_uk_man_);
72 size_t num_local_psi_dofs = 0;
73 size_t num_globl_psi_dofs = 0;
74 for (
auto& groupset : groupsets_)
76 const auto num_delayed_psi_info =
77 groupset.angle_agg_->GetNumDelayedAngularDOFs();
78 num_local_psi_dofs += num_delayed_psi_info.first;
79 num_globl_psi_dofs += num_delayed_psi_info.second;
82 const size_t num_local_dofs = num_local_phi_dofs + num_local_psi_dofs;
83 const size_t num_globl_dofs = num_globl_phi_dofs + num_globl_psi_dofs;
85 return {num_local_dofs, num_globl_dofs};
virtual ~DiscreteOrdinatesSolver() override
std::pair< size_t, size_t > GetNumPhiIterativeUnknowns() override
DiscreteOrdinatesSolver(const chi::InputParameters ¶ms)
static chi::InputParameters GetInputParameters()
static chi::InputParameters GetInputParameters()
RegisterChiObject(lbs, DiffusionDFEMSolver)