PetIBM 0.5.4
Toolbox and applications of the immersed-boundary method for distributed-memory architectures
operators.h File Reference

Prototypes of factory functions for operators. More...

#include <petscmat.h>
#include <petibm/bodypack.h>
#include <petibm/boundary.h>
#include <petibm/delta.h>
#include <petibm/mesh.h>
#include <petibm/type.h>

Go to the source code of this file.

Namespaces

namespace  petibm
 A toolbox for building flow solvers.
 
namespace  petibm::operators
 Collections of factory functions of operators.
 

Functions

PetscErrorCode petibm::operators::createR (const type::Mesh &mesh, Mat &R)
 Create a matrix of flux areas, $R$. More...
 
PetscErrorCode petibm::operators::createRInv (const type::Mesh &mesh, Mat &RInv)
 Create a matrix of inversed flux areas, $R^{-1}$. More...
 
PetscErrorCode petibm::operators::createMHead (const type::Mesh &mesh, Mat &MHead)
 Create a matrix of cell widths of velocity points, $\hat{M}$. More...
 
PetscErrorCode petibm::operators::createM (const type::Mesh &mesh, Mat &M)
 Create a matrix $M=\hat{M}R^{-1}$. More...
 
PetscErrorCode petibm::operators::createIdentity (const type::Mesh &mesh, Mat &I)
 Create an identity matrix $I$ for velocity fields. More...
 
PetscErrorCode petibm::operators::createGradient (const type::Mesh &mesh, Mat &G, const PetscBool &normalize=PETSC_TRUE)
 Create a gradient operator, $G$, for pressure field. More...
 
PetscErrorCode petibm::operators::createDivergence (const type::Mesh &mesh, const type::Boundary &bc, Mat &D, Mat &DCorrection, const PetscBool &normalize=PETSC_TRUE)
 Create a divergence operator, $D$, and corresponding boundary correction, $D_{bc}$, for velocity fields. More...
 
PetscErrorCode petibm::operators::createLaplacian (const type::Mesh &mesh, const type::Boundary &bc, Mat &L, Mat &LCorrection)
 Create a Laplacian operator, $L$, and boundary correction, $L_{bc}$ for velocity fields. More...
 
PetscErrorCode petibm::operators::createConvection (const type::Mesh &mesh, const type::Boundary &bc, Mat &H)
 Create a matrix-free Mat for convection operator, $H$. More...
 
PetscErrorCode petibm::operators::createBnHead (const Mat &Op, const PetscReal &dt, const PetscReal &coeff, const PetscInt &n, Mat &BnHead)
 Create non-normalized matrix of approximated $A^{-1}$, $B_n$. More...
 
PetscErrorCode petibm::operators::createBn (const Mat &Op, const Mat &R, const Mat &MHead, const PetscReal &dt, const PetscReal &coeff, const PetscInt &n, Mat &Bn)
 Create normalized matrix of approximated $A^{-1}$, $B_n$. More...
 
PetscErrorCode petibm::operators::createBn (const Mat &Op, const Mat &M, const PetscReal &dt, const PetscReal &coeff, const PetscInt &n, Mat &Bn)
 Create normalized matrix of approximated $A^{-1}$, $B_n$. More...
 
PetscErrorCode petibm::operators::createDelta (const type::Mesh &mesh, const type::Boundary &bc, const type::BodyPack &bodies, const delta::DeltaKernel &kernel, const PetscInt &kernelSize, Mat &Op)
 Create a Delta operator, $Delta$. More...
 

Detailed Description

Prototypes of factory functions for operators.

License
BSD 3-Clause License.

Definition in file operators.h.