Saddle-Point
Loading...
Searching...
No Matches
step-6.cc File Reference

Implementation of the templated SaddlePointProblem class declared in step-6.h. More...

#include "../include/rhs_function.h"
#include "../include/step-6.h"
#include "solution.cc"
#include "exact-solution.cc"
#include <deal.II/base/convergence_table.h>
#include <deal.II/base/function_parser.h>
#include <deal.II/base/parameter_handler.h>
#include <deal.II/base/patterns.h>
#include <deal.II/fe/fe_system.h>
#include <deal.II/base/quadrature_lib.h>
#include <deal.II/dofs/dof_handler.h>
#include <deal.II/dofs/dof_tools.h>
#include <deal.II/fe/fe_update_flags.h>
#include <deal.II/fe/fe_values.h>
#include <deal.II/fe/mapping.h>
#include <deal.II/grid/tria.h>
#include <deal.II/grid/grid_generator.h>
#include <deal.II/lac/dynamic_sparsity_pattern.h>
#include <deal.II/lac/full_matrix.h>
#include <deal.II/lac/precondition.h>
#include <deal.II/lac/solver_cg.h>
#include <deal.II/lac/sparse_matrix.h>
#include <deal.II/lac/vector.h>
#include <deal.II/lac/solver_gmres.h>
#include <deal.II/numerics/data_out.h>
#include <deal.II/numerics/vector_tools.h>
#include <deal.II/numerics/vector_tools_common.h>
#include <deal.II/numerics/vector_tools_interpolate.h>
#include <fstream>
#include <deal.II/fe/fe_q.h>
#include <deal.II/grid/grid_out.h>
#include <deal.II/lac/affine_constraints.h>
#include <deal.II/grid/grid_refinement.h>
#include <deal.II/numerics/error_estimator.h>
#include <iostream>
Include dependency graph for step-6.cc:

Functions

template<int dim>
double right_hand_side (const std::vector< Point< dim > > &, const Point< dim > &, std::vector< Tensor< 1, dim > > &)
 Unused legacy right-hand-side function kept for reference.
 

Detailed Description

Implementation of the templated SaddlePointProblem class declared in step-6.h.

The implementation follows the standard deal.II workflow:

  • SaddlePointProblem::Parameters reads run-time configuration from a param.prm file,
  • SaddlePointProblem::SaddlePointProblem constructs the FESystem and binds the DoFHandler to the triangulation,
  • SaddlePointProblem::setup_system distributes DoFs and builds constraints plus the sparsity pattern,
  • SaddlePointProblem::assemble_system performs the cell and face integrals that yield the global linear system,
  • SaddlePointProblem::solve runs a preconditioned Conjugate-Gradient (CG) iteration,
  • SaddlePointProblem::output_results writes the computed solution to a .vtk file in each cycle, while
  • SaddlePointProblem::compute_error and SaddlePointProblem::write_convergence_table compare the result against the manufactured Solution and produce a convergence table.

The mathematical background is described on the Introduction and Results pages.

Function Documentation

◆ right_hand_side()

template<int dim>
double right_hand_side ( const std::vector< Point< dim > > &  ,
const Point< dim > &  ,
std::vector< Tensor< 1, dim > > &   
)

Unused legacy right-hand-side function kept for reference.

Returns zero unconditionally; superseded by the templated RHSFunction class and the FunctionParser-based runtime RHS.