hummingbird
Solving the self-adjoint angular flux transport equation using spectral elements on Cartesian geometry
Loading...
Searching...
No Matches
sem_problem.cc
Go to the documentation of this file.
2
3#include <stdexcept>
4
5namespace hummingbird {
6SEMProblem::SEMProblem(const FEFormulation fe_formulation, const Mesh& mesh,
7 const size_t n_ordinates) {
8 switch (fe_formulation) {
10 sem_problem_ = std::make_unique<CGProblem>(mesh.n_nodes(), n_ordinates);
11 break;
12
13 default:
14 throw std::runtime_error("FEFormulation not supported.");
15 break;
16 }
17}
18} // namespace hummingbird
Class defing a mesh.
Definition mesh.h:27
size_t n_nodes() const
Get the number of nodes in the mesh.
Definition mesh.h:107
SEMProblem(const FEFormulation fe_formulation, const Mesh &mesh, const size_t n_ordinates)
Construct a new SEMProblem object, creating the concrete ProblemBase implementation matching fe_formu...
Definition sem_problem.cc:6
std::unique_ptr< ProblemBase > sem_problem_
Concrete ProblemBase implementation for the chosen formulation.
Definition sem_problem.h:41
FEFormulation
Available finite element formulations.
Definition enums.h:63