12 #ifndef SolverSSOLIII_H__
13 #define SolverSSOLIII_H__
15 #include <deal.II/base/function.h>
16 #include <deal.II/base/tensor_function.h>
17 #include <deal.II/base/vectorization.h>
19 #include <deal.II/lac/precondition.h>
20 #include <deal.II/lac/solver_cg.h>
21 #include <deal.II/lac/solver_control.h>
22 #include <deal.II/lac/sparse_direct.h>
24 #include <deal.II/grid/grid_in.h>
25 #include <deal.II/grid/grid_tools.h>
26 #include <deal.II/grid/manifold_lib.h>
31 #include "exact_solution.hpp"
32 #include "settings.hpp"
33 #include "static_vector_solver_i.hpp"
34 #include "static_vector_solver_ii.hpp"
36 using namespace StaticVectorSolver;
64 unsigned int mapping_degree,
86 const std::string fname;
88 virtual void make_mesh() override final;
89 virtual
void fill_dirichlet_stack() override final;
90 virtual
void solve() override final;
92 const SphericalManifold<3> sphere;
93 const Functions::ZeroFunction<3> dirichlet_bc{ 3 };
128 unsigned int mapping_degree,
130 const Triangulation<3>& triangulation_T,
131 const DoFHandler<3>& dof_handler_T,
132 const Vector<double>& solution_T,
150 for (
unsigned int f = 0; f < GeometryInfo<3>::faces_per_cell; f++) {
151 if (cell->face(f)->at_boundary() && (cell->face(f)->boundary_id() == 1))
152 cell->face(f)->set_boundary_id(2);
162 const unsigned int r;
163 const std::string fname;
167 virtual void fill_dirichlet_stack() override final;
168 virtual
void solve() override final;
Global settings for the Spherical coil with magnetic core (ssol-iii/) numerical experiment.
Solves for the magnetic vector potential, , in the Spherical coil with magnetic core (ssol-iii/) nume...
SolverSSOLIII_A(unsigned int p, unsigned int mapping_degree, unsigned int r, const Triangulation< 3 > &triangulation_T, const DoFHandler< 3 > &dof_handler_T, const Vector< double > &solution_T, std::string fname)
Solves for the current vector potential, , in the Spherical coil with magnetic core (ssol-iii/) numer...
SolverSSOLIII_T(unsigned int p, unsigned int mapping_degree, unsigned int r, std::string fname)
Solves static vector boundary value problem.
void run()
Runs the simulation.
Solves static vector boundary value problem.
void run()
Runs the simulation.