Chaste
Release::2017.1
|
#include <string>
#include <vector>
#include <cstdlib>
#include <petsc.h>
#include <petscvec.h>
#include <petscmat.h>
#include <petscsys.h>
Go to the source code of this file.
Classes | |
class | PetscTools |
Macros | |
#define | EXIT_IF_PARALLEL if(PetscTools::IsParallel()){TS_TRACE("This test does not pass in parallel yet.");return;} |
#define | EXIT_IF_SEQUENTIAL if(PetscTools::IsSequential()){TS_TRACE("This test is not meant to be executed in sequential.");return;} |
#define | PETSC_DESTROY_PARAM(x) x |
#define | TRY_IF_MASTER(method) |
Typedefs | |
typedef PetscTruth | PetscBool |
Contains the PetscTools class.
Definition in file PetscTools.hpp.
#define EXIT_IF_PARALLEL if(PetscTools::IsParallel()){TS_TRACE("This test does not pass in parallel yet.");return;} |
For use in tests that do not work when run in parallel.
Definition at line 54 of file PetscTools.hpp.
#define EXIT_IF_SEQUENTIAL if(PetscTools::IsSequential()){TS_TRACE("This test is not meant to be executed in sequential.");return;} |
For use in tests that should ONLY be run in parallel.
Definition at line 56 of file PetscTools.hpp.
#define PETSC_DESTROY_PARAM | ( | x | ) | x |
This macro is for converting a pre-PETSc3.2 "Destroy" function call (which involves an object, such as PetscViewerDestroy(VecView view) ) to a PETSc3.2 destroy via pointer call. Note that we only use this macro for calls which appear rarely in the code. Please destroy Vec and Mat objects via the overloaded PetscTools::Destroy methods.
x | The object to destroy |
Definition at line 70 of file PetscTools.hpp.
Referenced by PetscTools::DumpPetscObject(), PetscTools::HasParMetis(), PCBlockDiagonal::PCBlockDiagonal(), PCBlockDiagonal::PCBlockDiagonalCreate(), PCLDUFactorisation::PCLDUFactorisation(), PCLDUFactorisation::PCLDUFactorisationCreate(), PCTwoLevelsBlockDiagonal::PCTwoLevelsBlockDiagonalCreate(), NodePartitioner< ELEMENT_DIM, SPACE_DIM >::PetscMatrixPartitioning(), PetscTools::ReadPetscObject(), LinearSystem::RemoveNullSpace(), ReplicatableVector::RemovePetscContext(), LinearSystem::ResetKspSolver(), PetscVecTools::SetupInterleavedVectorScatterGather(), SimplePetscNonlinearSolver::Solve(), StokesFlowSolver< DIM >::Solve(), AbstractNonlinearElasticitySolver< DIM >::SolveSnes(), AbstractNonlinearElasticitySolver< DIM >::TakeNewtonStep(), PetscMatTools::ZeroRowsWithValueOnDiagonal(), LinearSystem::~LinearSystem(), ParallelColumnDataWriter::~ParallelColumnDataWriter(), and PCTwoLevelsBlockDiagonal::~PCTwoLevelsBlockDiagonal().
#define TRY_IF_MASTER | ( | method | ) |
A macro to allow code to be attempted by just the master process, but to replicate any exceptions that occur to other processes. Useful for file access.
method | a command or block of code to run if master process |
Definition at line 91 of file PetscTools.hpp.
Referenced by CardiacSimulation::CreateAndRun(), CardiacSimulation::CreateResumeXmlFile(), and AbstractCardiacTissue< SPACE_DIM >::save().
typedef PetscTruth PetscBool |
Older versions of PETSc used PetscTruth in place of PetscBool, so we define an alias for those installations.
Definition at line 62 of file PetscTools.hpp.