![]() |
Chi-Tech
|
#include <mg_diffusion_solver.h>
Public Types | |
| typedef std::pair< BoundaryType, std::array< std::vector< double >, 3 > > | BoundaryInfo |
| typedef std::map< uint, BoundaryInfo > | BoundaryPreferences |
Public Member Functions | |
| Solver (const std::string &in_solver_name) | |
| ~Solver () override | |
| void | Initialize () override |
| void | Initialize_Materials (std::set< int > &material_ids) |
| void | Set_BCs (const std::vector< uint64_t > &globl_unique_bndry_ids) |
| void | Assemble_A_bext () |
| void | Compute_TwoGrid_Params () |
| void | Compute_TwoGrid_VolumeFractions () |
| void | Execute () override |
| void | Assemble_RHS (unsigned int g, int64_t iverbose) |
| void | Assemble_RHS_TwoGrid (int64_t iverbose) |
| void | SolveOneGroupProblem (unsigned int g, int64_t iverbose) |
| void | Update_Flux_With_TwoGrid (int64_t iverbose) |
| void | UpdateFieldFunctions () |
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 |
Data Fields | |
| chi_mesh::MeshContinuumPtr | grid_ptr_ = nullptr |
| chi_math::SDMPtr | sdm_ptr_ = nullptr |
| uint | num_groups_ = 0 |
| uint | last_fast_group_ = 0 |
| bool | do_two_grid_ = false |
| size_t | num_local_dofs_ = 0 |
| size_t | num_globl_dofs_ = 0 |
| std::vector< Mat > | A_ |
| std::vector< Vec > | bext_ |
| std::vector< Vec > | x_ |
| std::vector< Vec > | x_old_ |
| Vec | thermal_dphi_ = nullptr |
| Vec | b_ = nullptr |
| chi_math::PETScUtils::PETScSolverSetup | petsc_solver_ |
| KSPAppContext | my_app_context_ |
| std::vector< std::vector< double > > | VF_ |
| BoundaryPreferences | boundary_preferences_ |
| std::vector< Boundary > | boundaries_ |
Protected Attributes | |
| std::map< int, std::shared_ptr< chi_physics::MultiGroupXS > > | matid_to_xs_map |
| std::map< int, std::shared_ptr< chi_physics::IsotropicMultiGrpSource > > | matid_to_src_map |
| std::map< int, TwoGridCollapsedInfo > | map_mat_id_2_tginfo |
Protected Attributes inherited from chi_physics::Solver | |
| BasicOptions | basic_options_ |
| std::vector< std::shared_ptr< FieldFunctionGridBased > > | field_functions_ |
| std::shared_ptr< TimeStepper > | timestepper_ = nullptr |
Additional Inherited Members | |
Static Public Member Functions inherited from chi_physics::Solver | |
| static chi::InputParameters | GetInputParameters () |
Static Public Member Functions inherited from ChiObject | |
| static chi::InputParameters | GetInputParameters () |
Multi-group diffusion solver
Definition at line 52 of file mg_diffusion_solver.h.
| typedef std::pair<BoundaryType,std::array<std::vector<double>, 3> > mg_diffusion::Solver::BoundaryInfo |
Definition at line 81 of file mg_diffusion_solver.h.
| typedef std::map<uint, BoundaryInfo> mg_diffusion::Solver::BoundaryPreferences |
Definition at line 83 of file mg_diffusion_solver.h.
|
explicit |
Definition at line 15 of file mgd_01_main_init.cc.
|
overridevirtual |
Reimplemented from chi_physics::Solver.
Definition at line 26 of file mgd_01_main_init.cc.
| void mg_diffusion::Solver::Assemble_A_bext | ( | ) |
Definition at line 12 of file mgd_01c_assemble_A_bext.cc.
| void mg_diffusion::Solver::Assemble_RHS | ( | unsigned int | g, |
| int64_t | iverbose | ||
| ) |
Definition at line 8 of file mgd_02a_asemble_rhs_g.cc.
| void mg_diffusion::Solver::Assemble_RHS_TwoGrid | ( | int64_t | iverbose | ) |
Definition at line 11 of file mgd_02c_asemble_rhs_tg.cc.
| void mg_diffusion::Solver::Compute_TwoGrid_Params | ( | ) |
Definition at line 6 of file mgd_01aa_init_two_grid_params.cc.
| void mg_diffusion::Solver::Compute_TwoGrid_VolumeFractions | ( | ) |
Definition at line 8 of file mgd_01ab_init_two_grid_volume_frac.cc.
|
overridevirtual |
Reimplemented from chi_physics::Solver.
Definition at line 13 of file mgd_02_main_exec.cc.
|
overridevirtual |
Reimplemented from chi_physics::Solver.
Definition at line 51 of file mgd_01_main_init.cc.
| void mg_diffusion::Solver::Initialize_Materials | ( | std::set< int > & | material_ids | ) |
Definition at line 15 of file mgd_01a_init_materials.cc.
| void mg_diffusion::Solver::Set_BCs | ( | const std::vector< uint64_t > & | globl_unique_bndry_ids | ) |
Definition at line 16 of file mgd_01b_set_bc.cc.
| void mg_diffusion::Solver::SolveOneGroupProblem | ( | unsigned int | g, |
| int64_t | iverbose | ||
| ) |
Definition at line 6 of file mgd_02b_solve1g.cc.
| void mg_diffusion::Solver::Update_Flux_With_TwoGrid | ( | int64_t | iverbose | ) |
Definition at line 12 of file mgd_02d_update_flux_with_two_grid_flux.cc.
| void mg_diffusion::Solver::UpdateFieldFunctions | ( | ) |
Updates the field functions with the lates data.
Definition at line 8 of file mgd_04_update_fieldfuncs.cc.
| std::vector<Mat> mg_diffusion::Solver::A_ |
Definition at line 66 of file mg_diffusion_solver.h.
| Vec mg_diffusion::Solver::b_ = nullptr |
Definition at line 72 of file mg_diffusion_solver.h.
| std::vector<Vec> mg_diffusion::Solver::bext_ |
Definition at line 67 of file mg_diffusion_solver.h.
| std::vector<Boundary> mg_diffusion::Solver::boundaries_ |
Definition at line 85 of file mg_diffusion_solver.h.
| BoundaryPreferences mg_diffusion::Solver::boundary_preferences_ |
Definition at line 84 of file mg_diffusion_solver.h.
| bool mg_diffusion::Solver::do_two_grid_ = false |
Definition at line 61 of file mg_diffusion_solver.h.
| chi_mesh::MeshContinuumPtr mg_diffusion::Solver::grid_ptr_ = nullptr |
Definition at line 55 of file mg_diffusion_solver.h.
| uint mg_diffusion::Solver::last_fast_group_ = 0 |
Definition at line 60 of file mg_diffusion_solver.h.
|
protected |
Definition at line 115 of file mg_diffusion_solver.h.
|
protected |
Definition at line 113 of file mg_diffusion_solver.h.
|
protected |
Definition at line 110 of file mg_diffusion_solver.h.
| KSPAppContext mg_diffusion::Solver::my_app_context_ |
Definition at line 75 of file mg_diffusion_solver.h.
| size_t mg_diffusion::Solver::num_globl_dofs_ = 0 |
Definition at line 64 of file mg_diffusion_solver.h.
| uint mg_diffusion::Solver::num_groups_ = 0 |
Definition at line 59 of file mg_diffusion_solver.h.
| size_t mg_diffusion::Solver::num_local_dofs_ = 0 |
Definition at line 63 of file mg_diffusion_solver.h.
| chi_math::PETScUtils::PETScSolverSetup mg_diffusion::Solver::petsc_solver_ |
Definition at line 74 of file mg_diffusion_solver.h.
| chi_math::SDMPtr mg_diffusion::Solver::sdm_ptr_ = nullptr |
Definition at line 57 of file mg_diffusion_solver.h.
| Vec mg_diffusion::Solver::thermal_dphi_ = nullptr |
Definition at line 71 of file mg_diffusion_solver.h.
| std::vector< std::vector<double> > mg_diffusion::Solver::VF_ |
Definition at line 77 of file mg_diffusion_solver.h.
| std::vector<Vec> mg_diffusion::Solver::x_ |
Definition at line 68 of file mg_diffusion_solver.h.
| std::vector<Vec> mg_diffusion::Solver::x_old_ |
Definition at line 69 of file mg_diffusion_solver.h.