Loading...
Searching...
No Matches
PETScObject.h
// Copyright (C) 2008 Garth N. Wells
//
// This file is part of DOLFIN.
//
// DOLFIN is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// DOLFIN is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU Lesser General Public License for more details.
//
// You should have received a copy of the GNU Lesser General Public License
// along with DOLFIN. If not, see <http://www.gnu.org/licenses/>.
#ifndef __PETSC_OBJECT_H
#define __PETSC_OBJECT_H
#ifdef HAS_PETSC
#include <string>
#include <dolfin/common/SubSystemsManager.h>
namespace dolfin
{
class PETScObject
{
public:
PETScObject() { SubSystemsManager::init_petsc(); }
virtual ~PETScObject() {}
static void petsc_error(int error_code,
std::string filename,
std::string petsc_function);
};
}
#endif
#endif
dolfin::PETScObject::~PETScObject
virtual ~PETScObject()
Destructor.
Definition PETScObject.h:41
dolfin::PETScObject::PETScObject
PETScObject()
Constructor. Ensures that PETSc has been initialised.
Definition PETScObject.h:38
dolfin::PETScObject::petsc_error
static void petsc_error(int error_code, std::string filename, std::string petsc_function)
Print error message for PETSc calls that return an error.
Definition PETScObject.cpp:29
dolfin::SubSystemsManager::init_petsc
static void init_petsc()
Initialize PETSc without command-line arguments.
Definition SubSystemsManager.cpp:125
dolfin
Definition adapt.h:30