Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
AMReX_PETSc.cpp File Reference
#include <AMReX_MultiCutFab.H>
#include <AMReX_EBFabFactory.H>
#include <AMReX_Habec_K.H>
#include <petscksp.h>
#include <AMReX_PETSc.H>
#include <cfenv>
#include <cmath>
#include <string>
#include <numeric>
#include <limits>
#include <algorithm>
#include <type_traits>

Namespaces

namespace  amrex
 

Macros

#define AMREX_PETSC_SAFE_CALL(call)
 

Functions

std::unique_ptr< PETScABecLap > amrex::makePetsc (const BoxArray &grids, const DistributionMapping &dmap, const Geometry &geom, MPI_Comm comm_)
 Factory helper that instantiates a PETSc ABec Laplacian on one level.
 

Macro Definition Documentation

◆ AMREX_PETSC_SAFE_CALL

#define AMREX_PETSC_SAFE_CALL (   call)
Value:
{ \
PetscErrorCode amrex_i_ierr = (call); \
if (amrex_i_ierr != 0) { \
amrex::Abort(std::string("PETSc error ") + std::to_string(int(amrex_i_ierr)) \
+ " in " #call " at " __FILE__ " line " + std::to_string(__LINE__)); \
}}