13#ifndef dealii_petsc_precondition_h
14#define dealii_petsc_precondition_h
23#ifdef DEAL_II_WITH_PETSC
35#ifdef DEAL_II_WITH_PETSC
672 const double tol = 0.0,
837 const double filter = 0.05,
1154 const std::vector<std::vector<PetscInt>> &
local_indices = {})
1183 const unsigned int overlap = 1,
1300 static PetscErrorCode
1306 static PetscErrorCode
1312 static PetscErrorCode
void initialize(const MatrixBase &matrix, const AdditionalData &additional_data=AdditionalData())
AdditionalData additional_data
AdditionalData additional_data
void Tvmult(VectorBase &dst, const VectorBase &src) const
MPI_Comm get_mpi_communicator() const
const PC & get_pc() const
void create_pc_with_comm(const MPI_Comm)
virtual ~PreconditionBase()
void vmult(VectorBase &dst, const VectorBase &src) const
void create_pc_with_mat(const MatrixBase &)
PreconditionBlockJacobi()
AdditionalData additional_data
AdditionalData additional_data
AdditionalData additional_data
void initialize(const MatrixBase &matrix, const AdditionalData &additional_data=AdditionalData())
AdditionalData additional_data
void initialize(const MatrixBase &matrix, const AdditionalData &additional_data=AdditionalData())
AdditionalData additional_data
void initialize(const MatrixBase &matrix, const AdditionalData &additional_data=AdditionalData())
AdditionalData additional_data
void initialize(const MatrixBase &matrix, const AdditionalData &additional_data=AdditionalData())
AdditionalData additional_data
void initialize(const MatrixBase &matrix, const AdditionalData &additional_data=AdditionalData())
AdditionalData additional_data
AdditionalData additional_data
void initialize(const MatrixBase &matrix, const AdditionalData &additional_data=AdditionalData())
AdditionalData additional_data
void initialize(const MatrixBase &matrix, const AdditionalData &additional_data=AdditionalData())
std::function< void(VectorBase &dst, const VectorBase &src)> vmult
static PetscErrorCode pcapply_transpose(PC pc, Vec src, Vec dst)
static PetscErrorCode pcsetup(PC pc)
void initialize(const MPI_Comm comm)
PreconditionShell()=default
std::function< void(VectorBase &dst, const VectorBase &src)> vmultT
static PetscErrorCode pcapply(PC pc, Vec src, Vec dst)
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
std::vector< std::vector< PetscInt > > local_indices
std::vector< std::vector< PetscInt > > subdomain_indices
LocalSubdomains(const std::vector< std::vector< PetscInt > > &subdomain_indices={}, const std::vector< std::vector< PetscInt > > &local_indices={})
LocalSubdomains local_subdomains
std::vector< Point< dim > > coords
RelaxationType relaxation_type_up
unsigned int n_sweeps_coarse
unsigned int aggressive_coarsening_num_levels
RelaxationType relaxation_type_down
RelaxationType relaxation_type_coarse