Amandus: Simulations based on multilevel Schwarz methods
Functions

Global refinement linear loop shows convergence table on console. More...

#include <deal.II/algorithms/any_data.h>
#include <deal.II/base/convergence_table.h>
#include <deal.II/base/logstream.h>
#include <deal.II/base/quadrature_lib.h>
#include <deal.II/base/utilities.h>
#include <deal.II/lac/vector.h>
#include <algorithm>
#include <amandus/adaptivity.h>
#include <amandus/amandus.h>
#include <iomanip>
#include <sstream>

Go to the source code of this file.

Functions

template<int dim>
void global_refinement_linear_loop (unsigned int n_steps, AmandusApplicationSparse< dim > &app, dealii::Algorithms::OperatorBase &solver, dealii::Algorithms::OperatorBase &residual, const AmandusIntegrator< dim > *error=0, AmandusIntegrator< dim > *estimator=0, const dealii::Function< dim > *initial_vector=0, const bool boundary_projection=false)
 
template<int dim>
void global_refinement_nonlinear_loop (unsigned int n_steps, AmandusApplicationSparse< dim > &app, dealii::Algorithms::OperatorBase &solve, const AmandusIntegrator< dim > *error=0, AmandusIntegrator< dim > *estimator=0, const dealii::Function< dim > *initial_vector=0, const dealii::Function< dim > *inhom_boundary=0, const bool boundary_projection=false)
 
template<int dim>
void global_refinement_eigenvalue_loop (unsigned int n_steps, unsigned int n_values, AmandusApplicationSparse< dim > &app, dealii::Algorithms::OperatorBase &solve)
 
template<int dim>
void global_refinement_nested_linear_loop (unsigned int n_steps, AmandusApplicationSparse< dim > &app, dealii::Triangulation< dim > &tria, dealii::Algorithms::OperatorBase &solver, dealii::Algorithms::OperatorBase &residual, const AmandusIntegrator< dim > *error=0, AmandusIntegrator< dim > *estimator=0, const dealii::Function< dim > *initial_vector=0, const bool boundary_projection=false)
 
template<int dim>
void global_refinement_nested_nonlinear_loop (unsigned int n_steps, AmandusApplicationSparse< dim > &app, dealii::Triangulation< dim > &tria, dealii::Algorithms::OperatorBase &solve, const AmandusIntegrator< dim > *error=0, AmandusIntegrator< dim > *estimator=0, const dealii::Function< dim > *initial_vector=0, const dealii::Function< dim > *inhom_boundary=0, const bool boundary_projection=false)
 
template<int dim>
void adaptive_refinement_linear_loop (unsigned int max_dofs, AmandusApplicationSparse< dim > &app, dealii::Triangulation< dim > &tria, dealii::Algorithms::OperatorBase &solver, dealii::Algorithms::OperatorBase &right_hand_side, AmandusIntegrator< dim > &estimator, AmandusRefineStrategy< dim > &mark, const AmandusIntegrator< dim > *error=0)
 
template<int dim>
void adaptive_refinement_nonlinear_loop (unsigned int max_dofs, AmandusApplicationSparse< dim > &app, dealii::Triangulation< dim > &tria, dealii::Algorithms::OperatorBase &solver, AmandusIntegrator< dim > &estimator, AmandusRefineStrategy< dim > &mark, const AmandusIntegrator< dim > *error=0, const dealii::Function< dim > *inhom_boundary=0, const bool boundary_projection=false)
 
template<int dim>
void adaptive_refinement_eigenvalue_loop (unsigned int max_dofs, unsigned int n_eigenvalue, AmandusApplicationSparse< dim > &app, dealii::Algorithms::OperatorBase &solver, AmandusIntegrator< dim > &estimator, AmandusRefineStrategy< dim > &mark, const double exact_eigenvalue=std::nan(NULL), const unsigned int multiplicity=1, const unsigned int k=0)
 

Detailed Description

Global refinement linear loop shows convergence table on console.

Adaptive refinement eigenvalue loop for symmetric problems with real eigenvalues. Shows convergence table on console and refines for the n-th real eigenvalue with given multiplicity>=1.

Adaptive refinement non linear loop shows convergence table on console.

Adaptive refinement linear loop shows convergence table on console.

Nested global refinement linear loop.

Function Documentation

template<int dim>
void adaptive_refinement_eigenvalue_loop ( unsigned int  max_dofs,
unsigned int  n_eigenvalue,
AmandusApplicationSparse< dim > &  app,
dealii::Algorithms::OperatorBase &  solver,
AmandusIntegrator< dim > &  estimator,
AmandusRefineStrategy< dim > &  mark,
const double  exact_eigenvalue = std::nan(NULL),
const unsigned int  multiplicity = 1,
const unsigned int  k = 0 
)

Here is the call graph for this function:

template<int dim>
void adaptive_refinement_linear_loop ( unsigned int  max_dofs,
AmandusApplicationSparse< dim > &  app,
dealii::Triangulation< dim > &  tria,
dealii::Algorithms::OperatorBase &  solver,
dealii::Algorithms::OperatorBase &  right_hand_side,
AmandusIntegrator< dim > &  estimator,
AmandusRefineStrategy< dim > &  mark,
const AmandusIntegrator< dim > *  error = 0 
)

Here is the call graph for this function:

template<int dim>
void adaptive_refinement_nonlinear_loop ( unsigned int  max_dofs,
AmandusApplicationSparse< dim > &  app,
dealii::Triangulation< dim > &  tria,
dealii::Algorithms::OperatorBase &  solver,
AmandusIntegrator< dim > &  estimator,
AmandusRefineStrategy< dim > &  mark,
const AmandusIntegrator< dim > *  error = 0,
const dealii::Function< dim > *  inhom_boundary = 0,
const bool  boundary_projection = false 
)

Here is the call graph for this function:

template<int dim>
void global_refinement_linear_loop ( unsigned int  n_steps,
AmandusApplicationSparse< dim > &  app,
dealii::Algorithms::OperatorBase &  solver,
dealii::Algorithms::OperatorBase &  residual,
const AmandusIntegrator< dim > *  error = 0,
AmandusIntegrator< dim > *  estimator = 0,
const dealii::Function< dim > *  initial_vector = 0,
const bool  boundary_projection = false 
)

Here is the call graph for this function:

template<int dim>
void global_refinement_nested_linear_loop ( unsigned int  n_steps,
AmandusApplicationSparse< dim > &  app,
dealii::Triangulation< dim > &  tria,
dealii::Algorithms::OperatorBase &  solver,
dealii::Algorithms::OperatorBase &  residual,
const AmandusIntegrator< dim > *  error = 0,
AmandusIntegrator< dim > *  estimator = 0,
const dealii::Function< dim > *  initial_vector = 0,
const bool  boundary_projection = false 
)

Here is the call graph for this function: