#include <reduced_poisson.h>
Public Member Functions | |
ReducedPoisson (const ReducedPoissonParameters< spacedim > &par) | |
void | make_grid () |
void | setup_fe () |
void | setup_dofs () |
void | assemble_poisson_system () |
void | run () |
void | solve () |
void | refine_and_transfer () |
std::string | output_solution () const |
void | output_results () const |
void | print_parameters () const |
![]() | |
EnableObserverPointer () | |
EnableObserverPointer (const EnableObserverPointer &) | |
EnableObserverPointer (EnableObserverPointer &&) noexcept | |
virtual | ~EnableObserverPointer () |
EnableObserverPointer & | operator= (const EnableObserverPointer &) |
EnableObserverPointer & | operator= (EnableObserverPointer &&) noexcept |
void | serialize (Archive &ar, const unsigned int version) |
unsigned int | n_subscriptions () const |
void | list_subscribers (StreamType &stream) const |
void | list_subscribers () const |
unsigned int | n_subscriptions () const |
void | list_subscribers (StreamType &stream) const |
void | list_subscribers () const |
Private Types | |
using | VectorType = LA::MPI::Vector |
using | BlockVectorType = LA::MPI::BlockVector |
Private Attributes | |
const ReducedPoissonParameters< spacedim > & | par |
MPI_Comm | mpi_communicator |
ConditionalOStream | pcout |
TimerOutput | computing_timer |
parallel::distributed::Triangulation< spacedim > | tria |
std::unique_ptr< FiniteElement< spacedim > > | fe |
std::unique_ptr< Quadrature< spacedim > > | quadrature |
DoFHandler< spacedim > | dh |
ReducedCoupling< 1, 2, spacedim, 1 > | reduced_coupling |
std::vector< IndexSet > | owned_dofs |
std::vector< IndexSet > | relevant_dofs |
AffineConstraints< double > | constraints |
LA::MPI::SparseMatrix | coupling_matrix |
LA::MPI::SparseMatrix | coupling_matrix_transpose |
LA::MPI::SparseMatrix | inclusion_matrix |
MappingQ< spacedim > | mapping |
LA::MPI::SparseMatrix | stiffness_matrix |
BlockVectorType | solution |
BlockVectorType | locally_relevant_solution |
BlockVectorType | system_rhs |
std::vector< std::vector< BoundingBox< spacedim > > > | global_bounding_boxes |
unsigned int | cycle = 0 |
Additional Inherited Members | |
![]() | |
static ::ExceptionBase & | ExcInUse (int arg1, std::string arg2, std::string arg3) |
static ::ExceptionBase & | ExcNoSubscriber (std::string arg1, std::string arg2) |
Definition at line 154 of file reduced_poisson.h.
|
private |
Definition at line 228 of file reduced_poisson.h.
|
private |
Definition at line 227 of file reduced_poisson.h.
ReducedPoisson< dim, spacedim >::ReducedPoisson | ( | const ReducedPoissonParameters< spacedim > & | par | ) |
Definition at line 87 of file reduced_poisson.cc.
References computing_timer, dh, mapping, mpi_communicator, par, pcout, reduced_coupling, and tria.
void ReducedPoisson< dim, spacedim >::assemble_poisson_system | ( | ) |
Definition at line 336 of file reduced_poisson.cc.
References VectorOperation::add, constraints, coupling_matrix, dh, fe, FEValues< int dim, int spacedim >::get_quadrature_points(), FEValues< int dim, int spacedim >::JxW(), par, quadrature, FEValues< int dim, int spacedim >::reinit(), FEValues< int dim, int spacedim >::shape_value(), stiffness_matrix, and system_rhs.
Referenced by run().
void ReducedPoisson< dim, spacedim >::make_grid | ( | ) |
Definition at line 163 of file reduced_poisson.cc.
References GridGenerator::generate_from_name_and_arguments(), par, pcout, read_grid_and_cad_files(), and tria.
Referenced by run().
void ReducedPoisson< dim, spacedim >::output_results | ( | ) | const |
Definition at line 935 of file reduced_poisson.cc.
References cycle, output_solution(), par, reduced_coupling, and DataOutBase::write_pvd_record().
Referenced by run().
std::string ReducedPoisson< dim, spacedim >::output_solution | ( | ) | const |
Definition at line 913 of file reduced_poisson.cc.
References DataOut< int dim, int spacedim >::add_data_vector(), DataOut< int dim, int spacedim >::attach_dof_handler(), DataOut< int dim, int spacedim >::build_patches(), computing_timer, cycle, dh, locally_relevant_solution, mpi_communicator, par, Vector< typename Number >::size(), tria, and DataOut< int dim, int spacedim >::write_vtu_in_parallel().
Referenced by output_results().
void ReducedPoisson< dim, spacedim >::print_parameters | ( | ) | const |
Definition at line 962 of file reduced_poisson.cc.
References Utilities::dim_string(), mpi_communicator, Utilities::MPI::n_mpi_processes(), par, pcout, ParameterHandler::Short, and Utilities::MPI::this_mpi_process().
Referenced by run().
void ReducedPoisson< dim, spacedim >::refine_and_transfer | ( | ) |
Definition at line 868 of file reduced_poisson.cc.
References computing_timer, constraints, dh, KellyErrorEstimator< int dim, int spacedim >::estimate(), SolutionTransfer< int dim, typename VectorType, int spacedim >::interpolate(), locally_relevant_solution, par, SolutionTransfer< int dim, typename VectorType, int spacedim >::prepare_for_coarsening_and_refinement(), parallel::distributed::GridRefinement::refine_and_coarsen_fixed_fraction(), parallel::distributed::GridRefinement::refine_and_coarsen_fixed_number(), setup_dofs(), solution, and tria.
Referenced by run().
void ReducedPoisson< dim, spacedim >::run | ( | ) |
Definition at line 984 of file reduced_poisson.cc.
References assemble_poisson_system(), constraints, coupling_matrix, cycle, dh, locally_relevant_solution, make_grid(), output_results(), par, pcout, print_parameters(), reduced_coupling, refine_and_transfer(), setup_dofs(), setup_fe(), solve(), and system_rhs.
void ReducedPoisson< dim, spacedim >::setup_dofs | ( | ) |
Definition at line 194 of file reduced_poisson.cc.
References AffineConstraints< typename number >::close(), computing_timer, AffineConstraints< typename number >::constrain_dof_to_zero(), constraints, coupling_matrix, dh, SparsityTools::distribute_sparsity_pattern(), DoFTools::extract_locally_relevant_dofs(), DoFTools::extract_locally_relevant_level_dofs(), fe, VectorTools::interpolate_boundary_values(), locally_relevant_solution, DoFTools::make_hanging_node_constraints(), DoFTools::make_sparsity_pattern(), mapping, MatrixFree::AdditionalData::mapping_update_flags, MatrixFree::AdditionalData::mg_level, mpi_communicator, MatrixFree::AdditionalData::none, owned_dofs, par, pcout, reduced_coupling, relevant_dofs, solution, stiffness_matrix, system_rhs, MatrixFree::AdditionalData::tasks_parallel_scheme, and tria.
Referenced by refine_and_transfer(), and run().
void ReducedPoisson< dim, spacedim >::setup_fe | ( | ) |
Definition at line 184 of file reduced_poisson.cc.
References computing_timer, fe, par, and quadrature.
Referenced by run().
void ReducedPoisson< dim, spacedim >::solve | ( | ) |
Augmented the (1,1) block
Definition at line 543 of file reduced_poisson.cc.
References std::abs(), MGTransferMatrixFree< int dim, typename Number >::build(), TrilinosWrappers::MPI::Vector::compress(), computing_timer, SolverCG< typename VectorType >::connect_condition_number_slot(), constraints, coupling_matrix, UtilitiesAL::create_augmented_block(), dh, SparsityTools::distribute_sparsity_pattern(), MGCoarseGridApplySmoother< typename VectorType >::initialize(), TrilinosWrappers::PreconditionAMG::initialize(), TrilinosWrappers::PreconditionILU::initialize(), VectorOperation::insert, numbers::invalid_unsigned_int, locally_relevant_solution, DoFTools::make_sparsity_pattern(), mpi_communicator, owned_dofs, par, pcout, reduced_coupling, TrilinosWrappers::MPI::Vector::reinit(), relevant_dofs, MGLevelObject< class Object >::resize(), solution, SolverCG< typename VectorType >::solve(), SolverFGMRES< typename VectorType >::solve(), stiffness_matrix, system_rhs, Utilities::MPI::this_mpi_process(), and tria.
Referenced by run().
|
mutableprivate |
Definition at line 193 of file reduced_poisson.h.
Referenced by output_solution(), ReducedPoisson(), refine_and_transfer(), setup_dofs(), setup_fe(), and solve().
|
private |
Definition at line 206 of file reduced_poisson.h.
Referenced by assemble_poisson_system(), refine_and_transfer(), run(), setup_dofs(), and solve().
|
private |
Definition at line 208 of file reduced_poisson.h.
Referenced by assemble_poisson_system(), run(), setup_dofs(), and solve().
|
private |
Definition at line 209 of file reduced_poisson.h.
|
private |
Definition at line 235 of file reduced_poisson.h.
Referenced by output_results(), output_solution(), and run().
|
private |
Definition at line 199 of file reduced_poisson.h.
Referenced by assemble_poisson_system(), output_solution(), ReducedPoisson(), refine_and_transfer(), run(), setup_dofs(), and solve().
|
private |
Definition at line 195 of file reduced_poisson.h.
Referenced by assemble_poisson_system(), setup_dofs(), and setup_fe().
|
private |
Definition at line 234 of file reduced_poisson.h.
|
private |
Definition at line 210 of file reduced_poisson.h.
|
private |
Definition at line 232 of file reduced_poisson.h.
Referenced by output_solution(), refine_and_transfer(), run(), setup_dofs(), and solve().
|
private |
Definition at line 211 of file reduced_poisson.h.
Referenced by ReducedPoisson(), and setup_dofs().
|
private |
Definition at line 191 of file reduced_poisson.h.
Referenced by output_solution(), print_parameters(), ReducedPoisson(), setup_dofs(), and solve().
|
private |
Definition at line 203 of file reduced_poisson.h.
Referenced by setup_dofs(), and solve().
|
private |
Definition at line 190 of file reduced_poisson.h.
Referenced by assemble_poisson_system(), make_grid(), output_results(), output_solution(), print_parameters(), ReducedPoisson(), refine_and_transfer(), run(), setup_dofs(), setup_fe(), and solve().
|
private |
Definition at line 192 of file reduced_poisson.h.
Referenced by make_grid(), print_parameters(), ReducedPoisson(), run(), setup_dofs(), and solve().
|
private |
Definition at line 197 of file reduced_poisson.h.
Referenced by assemble_poisson_system(), and setup_fe().
|
private |
Definition at line 201 of file reduced_poisson.h.
Referenced by output_results(), ReducedPoisson(), run(), setup_dofs(), and solve().
|
private |
Definition at line 204 of file reduced_poisson.h.
Referenced by setup_dofs(), and solve().
|
private |
Definition at line 231 of file reduced_poisson.h.
Referenced by refine_and_transfer(), setup_dofs(), and solve().
|
private |
Definition at line 226 of file reduced_poisson.h.
Referenced by assemble_poisson_system(), setup_dofs(), and solve().
|
private |
Definition at line 233 of file reduced_poisson.h.
Referenced by assemble_poisson_system(), run(), setup_dofs(), and solve().
|
private |
Definition at line 194 of file reduced_poisson.h.
Referenced by make_grid(), output_solution(), ReducedPoisson(), refine_and_transfer(), setup_dofs(), and solve().