IBAMR  IBAMR version 0.19.
List of all members
IBAMR::StaggeredStokesPETScMatUtilities Class Reference

Class StaggeredStokesPETScMatUtilities provides utility functions for PETSc Mat objects.

#include <ibamr/StaggeredStokesPETScMatUtilities.h>

Methods acting on SAMRAI::hier::PatchLevel and

SAMRAI::hier::Variable objects.

static void constructPatchLevelMACStokesOp (Mat &mat, const SAMRAI::solv::PoissonSpecifications &u_problem_coefs, const std::vector< SAMRAI::solv::RobinBcCoefStrategy< NDIM > * > &u_bc_coefs, double data_time, const std::vector< int > &num_dofs_per_proc, int u_dof_index_idx, int p_dof_index_idx, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchLevel< NDIM > > patch_level)
 Construct a parallel PETSc Mat object corresponding to a MAC discretization of the time-dependent incompressible Stokes equations on a single SAMRAI::hier::PatchLevel. More...
 
static void constructPatchLevelASMSubdomains (std::vector< std::set< int > > &is_overlap, std::vector< std::set< int > > &is_nonoverlap, const SAMRAI::hier::IntVector< NDIM > &box_size, const SAMRAI::hier::IntVector< NDIM > &overlap_size, const std::vector< int > &num_dofs_per_proc, int u_dof_index_idx, int p_dof_index_idx, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchLevel< NDIM > > patch_level, SAMRAI::tbox::Pointer< SAMRAI::hier::CoarseFineBoundary< NDIM > > cf_boundary)
 Partition the patch level into subdomains suitable to be used for additive Schwarz method. More...
 
static void constructPatchLevelFields (std::vector< std::set< int > > &is_field, std::vector< std::string > &is_field_name, const std::vector< int > &num_dofs_per_proc, int u_dof_index_idx, int p_dof_index_idx, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchLevel< NDIM > > patch_level)
 Partition the patch level into subdomains suitable to be used for PCFieldSplit preconditioner. More...
 
static void constructProlongationOp (Mat &mat, const std::string &u_op_type, const std::string &p_op_type, int u_dof_index_idx, int p_dof_index_idx, const std::vector< int > &num_fine_dofs_per_proc, const std::vector< int > &num_coarse_dofs_per_proc, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchLevel< NDIM > > fine_patch_level, SAMRAI::tbox::Pointer< SAMRAI::hier::PatchLevel< NDIM > > coarse_patch_level, const AO &coarse_level_ao, const int u_coarse_ao_offset, const int p_coarse_ao_offset)
 Construct a parallel PETSc Mat object corresponding to data prolongation from a coarser level to a finer level. More...
 
 StaggeredStokesPETScMatUtilities ()=delete
 Default constructor. More...
 
 StaggeredStokesPETScMatUtilities (const StaggeredStokesPETScMatUtilities &from)=delete
 Copy constructor. More...
 
StaggeredStokesPETScMatUtilitiesoperator= (const StaggeredStokesPETScMatUtilities &that)=delete
 Assignment operator. More...
 

Constructor & Destructor Documentation

◆ StaggeredStokesPETScMatUtilities() [1/2]

IBAMR::StaggeredStokesPETScMatUtilities::StaggeredStokesPETScMatUtilities ( )
privatedelete
Note
This constructor is not implemented and should not be used.

◆ StaggeredStokesPETScMatUtilities() [2/2]

IBAMR::StaggeredStokesPETScMatUtilities::StaggeredStokesPETScMatUtilities ( const StaggeredStokesPETScMatUtilities from)
privatedelete
Note
This constructor is not implemented and should not be used.
Parameters
fromThe value to copy to this object.

Member Function Documentation

◆ constructPatchLevelMACStokesOp()

static void IBAMR::StaggeredStokesPETScMatUtilities::constructPatchLevelMACStokesOp ( Mat &  mat,
const SAMRAI::solv::PoissonSpecifications u_problem_coefs,
const std::vector< SAMRAI::solv::RobinBcCoefStrategy< NDIM > * > &  u_bc_coefs,
double  data_time,
const std::vector< int > &  num_dofs_per_proc,
int  u_dof_index_idx,
int  p_dof_index_idx,
SAMRAI::tbox::Pointer< SAMRAI::hier::PatchLevel< NDIM > >  patch_level 
)
static

◆ constructPatchLevelASMSubdomains()

static void IBAMR::StaggeredStokesPETScMatUtilities::constructPatchLevelASMSubdomains ( std::vector< std::set< int > > &  is_overlap,
std::vector< std::set< int > > &  is_nonoverlap,
const SAMRAI::hier::IntVector< NDIM > &  box_size,
const SAMRAI::hier::IntVector< NDIM > &  overlap_size,
const std::vector< int > &  num_dofs_per_proc,
int  u_dof_index_idx,
int  p_dof_index_idx,
SAMRAI::tbox::Pointer< SAMRAI::hier::PatchLevel< NDIM > >  patch_level,
SAMRAI::tbox::Pointer< SAMRAI::hier::CoarseFineBoundary< NDIM > >  cf_boundary 
)
static

◆ constructPatchLevelFields()

static void IBAMR::StaggeredStokesPETScMatUtilities::constructPatchLevelFields ( std::vector< std::set< int > > &  is_field,
std::vector< std::string > &  is_field_name,
const std::vector< int > &  num_dofs_per_proc,
int  u_dof_index_idx,
int  p_dof_index_idx,
SAMRAI::tbox::Pointer< SAMRAI::hier::PatchLevel< NDIM > >  patch_level 
)
static

◆ constructProlongationOp()

static void IBAMR::StaggeredStokesPETScMatUtilities::constructProlongationOp ( Mat &  mat,
const std::string &  u_op_type,
const std::string &  p_op_type,
int  u_dof_index_idx,
int  p_dof_index_idx,
const std::vector< int > &  num_fine_dofs_per_proc,
const std::vector< int > &  num_coarse_dofs_per_proc,
SAMRAI::tbox::Pointer< SAMRAI::hier::PatchLevel< NDIM > >  fine_patch_level,
SAMRAI::tbox::Pointer< SAMRAI::hier::PatchLevel< NDIM > >  coarse_patch_level,
const AO &  coarse_level_ao,
const int  u_coarse_ao_offset,
const int  p_coarse_ao_offset 
)
static

◆ operator=()

StaggeredStokesPETScMatUtilities& IBAMR::StaggeredStokesPETScMatUtilities::operator= ( const StaggeredStokesPETScMatUtilities that)
privatedelete
Note
This operator is not implemented and should not be used.
Parameters
thatThe value to assign to this object.
Returns
A reference to this object.

The documentation for this class was generated from the following file: