Collects necessary output values and pass them to Damaris server processes. More...

#include <DamarisWriter.hpp>

Inheritance diagram for Opm::DamarisWriter< TypeTag >:
Inheritance graph

Public Member Functions

 DamarisWriter (Simulator &simulator)
 
void writeOutput (data::Solution &localCellData, bool isSubStep)
 Writes localCellData through to Damaris servers. Sets up the unstructured mesh which is passed to Damaris. More...
 
const EclipseIO & eclIO () const
 
void writeInit ()
 
void setTransmissibilities (const TransmissibilityType *globalTrans)
 
void setSubStepReport (const SimulatorReportSingle &report)
 
void setSimulationReport (const SimulatorReport &report)
 
const std::vector< NNCdata > & getOutputNnc () const
 
const CollectDataOnIORankTypecollectOnIORank () const
 
void extractOutputTransAndNNC (const std::function< unsigned int(unsigned int)> &map)
 

Static Public Member Functions

static void registerParameters ()
 

Protected Member Functions

const TransmissibilityTypeglobalTrans () const
 
unsigned int gridEquilIdxToGridIdx (unsigned int elemIndex) const
 
void doWriteOutput (const int reportStepNum, const std::optional< int > timeStepNum, const bool isSubStep, data::Solution &&localCellData, data::Wells &&localWellData, data::GroupAndNetworkValues &&localGroupAndNetworkData, data::Aquifers &&localAquiferData, WellTestState &&localWTestState, const Action::State &actionState, const UDQState &udqState, const SummaryState &summaryState, const std::vector< GetPropType< TypeTag, Properties::Scalar > > &thresholdPressure, GetPropType< TypeTag, Properties::Scalar > curTime, GetPropType< TypeTag, Properties::Scalar > nextStepSize, bool doublePrecision, bool isFlowsn, std::array< FlowsData< double >, 3 > &&flowsn, bool isFloresn, std::array< FlowsData< double >, 3 > &&floresn)
 
void evalSummary (int reportStepNum, GetPropType< TypeTag, Properties::Scalar > curTime, const data::Wells &localWellData, const data::WellBlockAveragePressures &localWBPData, const data::GroupAndNetworkValues &localGroupAndNetworkData, const std::map< int, data::AquiferData > &localAquiferData, const std::map< std::pair< std::string, int >, double > &blockData, const std::map< std::string, double > &miscSummaryData, const std::map< std::string, std::vector< double > > &regionData, const Inplace &inplace, const Inplace &initialInPlace, const InterRegFlowMap &interRegFlows, SummaryState &summaryState, UDQState &udqState)
 

Protected Attributes

CollectDataOnIORankType collectOnIORank_
 
const GetPropType< TypeTag, Properties::Grid > & grid_
 
const GetPropType< TypeTag, Properties::GridView > & gridView_
 
const Schedule & schedule_
 
const EclipseState & eclState_
 
std::unique_ptr< EclipseIO > eclIO_
 
std::unique_ptr< TaskletRunnertaskletRunner_
 
GetPropType< TypeTag, Properties::ScalarrestartTimeStepSize_
 
const TransmissibilityTypeglobalTrans_
 
const Dune::CartesianIndexMapper< GetPropType< TypeTag, Properties::Grid > > & cartMapper_
 
const Dune::CartesianIndexMapper< GetPropType< TypeTag, Properties::EquilGrid > > * equilCartMapper_
 
const GetPropType< TypeTag, Properties::EquilGrid > * equilGrid_
 
SimulatorReportSingle sub_step_report_
 
SimulatorReport simulation_report_
 
std::vector< NNCdata > outputNnc_
 
std::unique_ptr< data::Solution > outputTrans_
 

Detailed Description

template<class TypeTag>
class Opm::DamarisWriter< TypeTag >

Collects necessary output values and pass them to Damaris server processes.

Currently only passing through PRESSURE, GLOBAL_CELL_INDEX and MPI_RANK information. This class now passes through the 3D mesh information to Damaris to enable in situ visualization via Paraview or Ascent. And developed so that variables specified through the Eclipse input deck will be available to Damaris.

Constructor & Destructor Documentation

◆ DamarisWriter()

Member Function Documentation

◆ collectOnIORank()

const CollectDataOnIORankType & Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::collectOnIORank ( ) const
inlineinherited

◆ doWriteOutput()

void Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::doWriteOutput ( const int  reportStepNum,
const std::optional< int >  timeStepNum,
const bool  isSubStep,
data::Solution &&  localCellData,
data::Wells &&  localWellData,
data::GroupAndNetworkValues &&  localGroupAndNetworkData,
data::Aquifers &&  localAquiferData,
WellTestState &&  localWTestState,
const Action::State &  actionState,
const UDQState &  udqState,
const SummaryState &  summaryState,
const std::vector< GetPropType< TypeTag, Properties::Scalar > > &  thresholdPressure,
GetPropType< TypeTag, Properties::Scalar curTime,
GetPropType< TypeTag, Properties::Scalar nextStepSize,
bool  doublePrecision,
bool  isFlowsn,
std::array< FlowsData< double >, 3 > &&  flowsn,
bool  isFloresn,
std::array< FlowsData< double >, 3 > &&  floresn 
)
protectedinherited

◆ eclIO()

const EclipseIO & Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::eclIO
inherited

◆ evalSummary()

void Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::evalSummary ( int  reportStepNum,
GetPropType< TypeTag, Properties::Scalar curTime,
const data::Wells &  localWellData,
const data::WellBlockAveragePressures &  localWBPData,
const data::GroupAndNetworkValues &  localGroupAndNetworkData,
const std::map< int, data::AquiferData > &  localAquiferData,
const std::map< std::pair< std::string, int >, double > &  blockData,
const std::map< std::string, double > &  miscSummaryData,
const std::map< std::string, std::vector< double > > &  regionData,
const Inplace &  inplace,
const Inplace &  initialInPlace,
const InterRegFlowMap interRegFlows,
SummaryState &  summaryState,
UDQState &  udqState 
)
protectedinherited

◆ extractOutputTransAndNNC()

void Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::extractOutputTransAndNNC ( const std::function< unsigned int(unsigned int)> &  map)
inherited

◆ getOutputNnc()

const std::vector< NNCdata > & Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::getOutputNnc ( ) const
inlineinherited

◆ globalTrans()

◆ gridEquilIdxToGridIdx()

unsigned int Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::gridEquilIdxToGridIdx ( unsigned int  elemIndex) const
protectedinherited

◆ registerParameters()

template<class TypeTag >
static void Opm::DamarisWriter< TypeTag >::registerParameters ( )
inlinestatic

◆ setSimulationReport()

void Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::setSimulationReport ( const SimulatorReport report)
inlineinherited

◆ setSubStepReport()

void Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::setSubStepReport ( const SimulatorReportSingle report)
inlineinherited

◆ setTransmissibilities()

void Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::setTransmissibilities ( const TransmissibilityType globalTrans)
inlineinherited

◆ writeInit()

◆ writeOutput()

template<class TypeTag >
void Opm::DamarisWriter< TypeTag >::writeOutput ( data::Solution &  localCellData,
bool  isSubStep 
)
inline

Member Data Documentation

◆ cartMapper_

◆ collectOnIORank_

◆ eclIO_

std::unique_ptr<EclipseIO> Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::eclIO_
protectedinherited

◆ eclState_

const EclipseState& Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::eclState_
protectedinherited

◆ equilCartMapper_

◆ equilGrid_

◆ globalTrans_

◆ grid_

◆ gridView_

◆ outputNnc_

std::vector<NNCdata> Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::outputNnc_
mutableprotectedinherited

◆ outputTrans_

std::unique_ptr<data::Solution> Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::outputTrans_
mutableprotectedinherited

◆ restartTimeStepSize_

GetPropType< TypeTag, Properties::Scalar > Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::restartTimeStepSize_
protectedinherited

◆ schedule_

const Schedule& Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::schedule_
protectedinherited

◆ simulation_report_

◆ sub_step_report_

◆ taskletRunner_

std::unique_ptr<TaskletRunner> Opm::EclGenericWriter< GetPropType< TypeTag, Properties::Grid > , GetPropType< TypeTag, Properties::EquilGrid > , GetPropType< TypeTag, Properties::GridView > , GetPropType< TypeTag, Properties::ElementMapper > , GetPropType< TypeTag, Properties::Scalar > >::taskletRunner_
protectedinherited

The documentation for this class was generated from the following file: