12 #ifndef SolverSSOLII_H__
13 #define SolverSSOLII_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>
30 #include "exact_solution.hpp"
31 #include "settings.hpp"
32 #include "static_vector_solver_i.hpp"
33 #include "static_vector_solver_ii.hpp"
35 using namespace StaticVectorSolver;
62 unsigned int mapping_degree,
84 const std::string fname;
86 virtual void make_mesh() override final;
87 virtual
void fill_dirichlet_stack() override final;
88 virtual
void solve() override final;
90 const SphericalManifold<3> sphere;
91 const Functions::ZeroFunction<3> dirichlet_bc{ 3 };
125 unsigned int mapping_degree,
127 const Triangulation<3>& triangulation_T,
128 const DoFHandler<3>& dof_handler_T,
129 const Vector<double>& solution_T,
147 for (
unsigned int f = 0; f < GeometryInfo<3>::faces_per_cell; f++) {
148 if (cell->face(f)->at_boundary() && (cell->face(f)->boundary_id() == 1))
149 cell->face(f)->set_boundary_id(2);
159 const unsigned int r;
160 const std::string fname;
164 virtual void fill_dirichlet_stack() override final;
165 virtual
void solve() override final;
Global settings for the Thick spherical coil (ssol-ii/) numerical experiment.
Solves for the magnetic vector potential, , in the Thick spherical coil (ssol-ii/) numerical experime...
SolverSSOLII_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 Thick spherical coil (ssol-ii/) numerical experimen...
SolverSSOLII_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.