Opm::Helper Namespace Reference

Namespaces

namespace  detail
 

Functions

template<class SimulatorType , class VectorType , class Communicator >
void writeVector (const SimulatorType &simulator, const VectorType &rhs, const std::string &sysName, const Communicator *comm)
 
template<class SimulatorType , class MatrixType , class Communicator >
void writeMatrix (const SimulatorType &simulator, const MatrixType &matrix, const std::string &sysName, const Communicator *comm)
 
template<class SimulatorType , class MatrixType , class VectorType , class Communicator >
void writeSystem (const SimulatorType &simulator, const MatrixType &matrix, const VectorType &rhs, const std::string &sysName, const Communicator *comm)
 
template<class SimulatorType , class MatrixType , class VectorType , class Communicator >
void writeSystem (const SimulatorType &simulator, const MatrixType &matrix, const VectorType &rhs, const Communicator *comm)
 
template<class SimulatorType , class MatrixType , class VectorType , class Communicator >
void writeMechSystem (const SimulatorType &simulator, const MatrixType &matrix, const VectorType &rhs, const Communicator *comm)
 

Function Documentation

◆ writeMatrix()

template<class SimulatorType , class MatrixType , class Communicator >
void Opm::Helper::writeMatrix ( const SimulatorType &  simulator,
const MatrixType &  matrix,
const std::string &  sysName,
const Communicator *  comm 
)

Output a Dune ISTL matrix to file in MatrixMarket format.

Template Parameters
SimulatorTypePackaged simulator type. Expected to provide, among other services, an episode index, a simulation time, and a physical model.
MatrixTypeObject type for a linear system matrix object. Typically a linear system matrix type from the Dune ISTL.
CommunicatorISTL communication type. Typically
Dune::OwnerOverlapCopyCommunication<>
or similar.
Parameters
[in]simulatorSimulator object.
[in]matrixLinear system coefficient matrix. Expected to be a Dune ISTL (sparse) matrix.
[in]sysNameName of linear system/physical model. Incorporated into the name of the MatrixMarket output file.
[in]commDune ISTL communication object. Unused in builds without MPI support. You may use a nullptr value in a sequential run of an MPI-enabled build to signify that parallel output is unneeded.

References Opm::Helper::detail::writeMatrixMarketObject().

Referenced by writeSystem().

◆ writeMechSystem()

template<class SimulatorType , class MatrixType , class VectorType , class Communicator >
void Opm::Helper::writeMechSystem ( const SimulatorType &  simulator,
const MatrixType &  matrix,
const VectorType &  rhs,
const Communicator *  comm 
)

Output a Dune ISTL linear system from linearising a set of geo-mechanical equations to files in MatrixMarket format.

This function will create one output file for the coefficient matrix and another output file for the system right-hand side vector.

Template Parameters
SimulatorTypePackaged simulator type. Expected to provide, among other services, an episode index, a simulation time, and a physical model.
MatrixTypeObject type for a linear system matrix object. Typically a linear system matrix type from the Dune ISTL.
VectorTypeObject type for a linear system vector object. Typically a linear system vector type from the Dune ISTL.
CommunicatorISTL communication type. Typically
Dune::OwnerOverlapCopyCommunication<>
or similar.
Parameters
[in]simulatorSimulator object.
[in]matrixLinear system coefficient matrix. Expected to be a Dune ISTL (sparse) matrix.
[in]rhsLinear system right-hand side vector. Expected to be a Dune ISTL vector.
[in]commDune ISTL communication object. Unused in builds without MPI support. You may use a nullptr value in a sequential run of an MPI-enabled build to signify that parallel output is unneeded.

References writeSystem().

◆ writeSystem() [1/2]

template<class SimulatorType , class MatrixType , class VectorType , class Communicator >
void Opm::Helper::writeSystem ( const SimulatorType &  simulator,
const MatrixType &  matrix,
const VectorType &  rhs,
const Communicator *  comm 
)

Output a Dune ISTL linear system from linearising a set of flow equations to files in MatrixMarket format.

This function will create one output file for the coefficient matrix and another output file for the system right-hand side vector.

Template Parameters
SimulatorTypePackaged simulator type. Expected to provide, among other services, an episode index, a simulation time, and a physical model.
MatrixTypeObject type for a linear system matrix object. Typically a linear system matrix type from the Dune ISTL.
VectorTypeObject type for a linear system vector object. Typically a linear system vector type from the Dune ISTL.
CommunicatorISTL communication type. Typically
Dune::OwnerOverlapCopyCommunication<>
or similar.
Parameters
[in]simulatorSimulator object.
[in]matrixLinear system coefficient matrix. Expected to be a Dune ISTL (sparse) matrix.
[in]rhsLinear system right-hand side vector. Expected to be a Dune ISTL vector.
[in]commDune ISTL communication object. Unused in builds without MPI support. You may use a nullptr value in a sequential run of an MPI-enabled build to signify that parallel output is unneeded.

References writeSystem().

◆ writeSystem() [2/2]

template<class SimulatorType , class MatrixType , class VectorType , class Communicator >
void Opm::Helper::writeSystem ( const SimulatorType &  simulator,
const MatrixType &  matrix,
const VectorType &  rhs,
const std::string &  sysName,
const Communicator *  comm 
)

Output a Dune ISTL linear system to files in MatrixMarket format.

This function will create one output file for the coefficient matrix and another output file for the system right-hand side vector.

Template Parameters
SimulatorTypePackaged simulator type. Expected to provide, among other services, an episode index, a simulation time, and a physical model.
MatrixTypeObject type for a linear system matrix object. Typically a linear system matrix type from the Dune ISTL.
VectorTypeObject type for a linear system vector object. Typically a linear system vector type from the Dune ISTL.
CommunicatorISTL communication type. Typically
Dune::OwnerOverlapCopyCommunication<>
or similar.
Parameters
[in]simulatorSimulator object.
[in]matrixLinear system coefficient matrix. Expected to be a Dune ISTL (sparse) matrix.
[in]rhsLinear system right-hand side vector. Expected to be a Dune ISTL vector.
[in]sysNameName of linear system/physical model. Incorporated into the name of the MatrixMarket output file.
[in]commDune ISTL communication object. Unused in builds without MPI support. You may use a nullptr value in a sequential run of an MPI-enabled build to signify that parallel output is unneeded.

References writeMatrix(), and writeVector().

Referenced by Opm::ISTLSolverGpuBridge< TypeTag >::solve(), Opm::ISTLSolver< TypeTag >::solve(), writeMechSystem(), and writeSystem().

◆ writeVector()

template<class SimulatorType , class VectorType , class Communicator >
void Opm::Helper::writeVector ( const SimulatorType &  simulator,
const VectorType &  rhs,
const std::string &  sysName,
const Communicator *  comm 
)

Output a Dune ISTL vector to file in MatrixMarket format.

Template Parameters
SimulatorTypePackaged simulator type. Expected to provide, among other services, an episode index, a simulation time, and a physical model.
VectorTypeObject type for a linear system vector object. Typically a linear system vector type from the Dune ISTL.
CommunicatorISTL communication type. Typically
Dune::OwnerOverlapCopyCommunication<>
or similar.
Parameters
[in]simulatorSimulator object.
[in]rhsLinear system right-hand side vector. Expected to be a Dune ISTL vector.
[in]sysNameName of linear system/physical model. Incorporated into the name of the MatrixMarket output file.
[in]commDune ISTL communication object. Unused in builds without MPI support. You may use a nullptr value in a sequential run of an MPI-enabled build to signify that parallel output is unneeded.

References Opm::Helper::detail::writeMatrixMarketObject().

Referenced by writeSystem().