/home/runner/work/DiFfRG_current/DiFfRG_current/DiFfRG/include/DiFfRG/discretization/common/la_policy.hh File Reference#
|
DiFfRG
Discretization Framework for functional Renormalization Group flows
|
la_policy.hh File Reference
#include <deal.II/base/index_set.h>#include <deal.II/lac/dynamic_sparsity_pattern.h>#include <deal.II/lac/full_matrix.h>#include <deal.II/lac/sparsity_tools.h>#include <DiFfRG/common/linear_algebra.hh>#include <DiFfRG/common/mpi.hh>#include <DiFfRG/discretization/common/solution_view.hh>#include <vector>Go to the source code of this file.
Namespaces | |
| namespace | DiFfRG |
Functions | |
| template<typename VectorType > | |
| void | DiFfRG::reinit_la_vector (VectorType &vec, const dealii::IndexSet &locally_owned, MPI_Comm comm) |
| Size a vector to the rank's share of the rows. | |
| template<typename SparseMatrixType > | |
| void | DiFfRG::finalize_la_sparsity (dealii::DynamicSparsityPattern &dsp, get_type::SparsityPattern< SparseMatrixType > &pattern, const dealii::IndexSet &locally_owned, const dealii::IndexSet &locally_relevant, MPI_Comm comm) |
| Turn a freshly built DynamicSparsityPattern into the pattern type the matrix wants. | |
| template<typename SparseMatrixType > | |
| void | DiFfRG::reinit_la_matrix (SparseMatrixType &matrix, const get_type::SparsityPattern< SparseMatrixType > &pattern, const dealii::IndexSet &locally_owned, MPI_Comm comm) |
| Size a matrix from a finalized sparsity pattern. | |
| template<typename VectorType > | |
| dealii::IndexSet | DiFfRG::restrict_to_owned (const dealii::IndexSet &global_set, const dealii::IndexSet &locally_owned) |
| Restrict a global index set to what this rank may write. | |
| dealii::IndexSet | DiFfRG::variables_owner_set (const dealii::types::global_dof_index n_vars, MPI_Comm comm) |
| The ownership set for the extra-variables block: everything on rank 0, nothing elsewhere. | |
| template<typename VectorType > | |
| void | DiFfRG::reinit_variables_view (SolutionView< VectorType > &view, const dealii::types::global_dof_index n_vars, MPI_Comm comm) |
| Establish the layout of a fully-replicated view of the extra-variables block. | |
| template<typename VectorType > | |
| void | DiFfRG::reinit_la_variables_vector (VectorType &vec, const dealii::types::global_dof_index n_vars, MPI_Comm comm) |
| Size a standalone vector holding only the extra variables. | |
| template<typename BlockVectorType > | |
| void | DiFfRG::reinit_la_block_vector (BlockVectorType &vec, const std::vector< uint > &block_structure, const dealii::IndexSet &locally_owned, MPI_Comm comm) |
| Size a block vector: block 0 is the FE dofs, block 1 (if present) the extra variables. | |
| template<typename VectorType , typename Fn > | |
| void | DiFfRG::compute_variables_into (VectorType &dst, VectorType &scratch, Fn &&compute) |
| Run a model's variables computation and land the result in the distributed block. | |
| template<typename VectorType > | |
| void | DiFfRG::reinit_local_variables_vector (VectorType &vec, const dealii::types::global_dof_index n_vars) |
| Size a process-local vector holding every extra variable on every rank. | |
| template<typename VectorType , typename NumberType > | |
| void | DiFfRG::dense_vmult_variables (const dealii::FullMatrix< NumberType > &matrix, VectorType &dst, const VectorType &src, MPI_Comm comm) |
| Apply a dense matrix to the extra-variables block. | |
Generated by