dune-fem 2.12-git
Loading...
Searching...
No Matches
Dune::Fem::DataOutput< GridImp, DataImp > Class Template Reference

Implementation of the Dune::Fem::IOInterface. This class manages data output. Available output formats are GRAPE, VTK and VTK Vertex projected using the VtxProjection operator. Details can be found in DiscFuncIO. More...

#include <dune/fem/io/file/dataoutput.hh>

Inheritance diagram for Dune::Fem::DataOutput< GridImp, DataImp >:
Inheritance graph

Public Types

enum  OutputFormat {
  vtk = 0 , vtkvtx = 1 , subvtk = 2 , binary = 3 ,
  gnuplot = 4 , none = 5
}
 
typedef GridImp GridType
 type of grid used
 
typedef DataImp OutPutDataType
 type of data tuple
 

Public Member Functions

 DataOutput (const GridType &grid, OutPutDataType &data, std::unique_ptr< const DataOutputParameters > parameters)
 Constructor creating data output class.
 
 DataOutput (const GridType &grid, OutPutDataType &data, const DataOutputParameters &parameter)
 Constructor creating data output class.
 
 DataOutput (const GridType &grid, OutPutDataType &data, const ParameterReader &parameter=Parameter::container())
 
 DataOutput (const GridType &grid, OutPutDataType &data, const TimeProviderBase &tp, std::unique_ptr< const DataOutputParameters > parameters)
 Constructor creating data writer.
 
 DataOutput (const GridType &grid, OutPutDataType &data, const TimeProviderBase &tp, const DataOutputParameters &parameter)
 Constructor creating data writer.
 
 DataOutput (const GridType &grid, OutPutDataType &data, const TimeProviderBase &tp, const ParameterReader &parameter=Parameter::container())
 
void consistentSaveStep (const TimeProviderBase &tp) const
 
virtual bool willWrite (const TimeProviderBase &tp) const
 returns true if data will be written on next write call
 
virtual bool willWrite () const
 returns true if data will be written on next write call
 
void write (const std::string &outstring) const
 write given data to disc, evaluates parameter savecount
 
void write () const
 write given data to disc, evaluates parameter savecount
 
void write (const TimeProviderBase &tp, const std::string &outstring) const
 write given data to disc, evaluates parameter savecount and savestep
 
void write (const TimeProviderBase &tp) const
 write given data to disc, evaluates parameter savecount and savestep
 
void writeData (double sequenceStamp, const std::string &outstring) const
 write data with a given sequence stamp and outstring
 
void writeData (double sequenceStamp) const
 write data with a given sequence stamp
 
virtual const char * myClassName () const
 print class name
 
const std::stringpath () const
 return output path name
 
int writeStep () const
 return write step
 
int writeCalls () const
 return write calls
 
double saveTime () const
 return save time
 

Static Public Member Functions

static std::string defaultGridKey (int dimension, bool check=true)
 return FEM key for macro grid reading
 
static std::string defaultGridKey (int dimension, const ParameterReader &parameter, bool check=true)
 
static std::string defaultGridKey (std::string base, int dimension, bool check=true)
 
static std::string defaultGridKey (std::string base, int dimension, const ParameterReader &parameter, bool check=true)
 return FEM key for macro grid reading
 
static void createPath (const std::string &path)
 create given path in combination with rank
 
template<class CommunicatorType >
static std::string createPath (const CommunicatorType &comm, const std::string &pathPrefix, const std::string &dataPrefix, const int step, const bool alsoCreateRankPath=true)
 
static std::string createPathName (const std::string &pathPref, int rank)
 create given path in combination with rank
 
static std::string readPath ()
 
template<class CommunicatorType >
static void createGlobalPath (const CommunicatorType &comm, const std::string &path)
 create global path for data output
 
static std::string copyPathToFilename (const std::string &path)
 
static std::string createRecoverPath (const std::string &pathPrefix, const int rank, const std::string &dataPrefix, const int step, const bool alsoUseRankPath=true)
 

Protected Member Functions

auto getGridPart () const
 
auto getGridPart (std::integral_constant< bool, false >) const
 
auto getGridPart (std::integral_constant< bool, true >) const
 
std::string writeGnuPlotOutput () const
 
virtual void writeBinaryData (const double) const
 write binary data
 
virtual void display () const
 display data with grape
 
template<class OutputTupleType >
void grapeDisplay (OutputTupleType &data) const
 display data with grape
 

Protected Attributes

const GridTypegrid_
 type of this class
 
OutPutDataType data_
 
std::string path_
 
std::string datapref_
 
bool grapeDisplay_
 
int writeStep_
 
int writeCalls_
 
double saveTime_
 
double saveStep_
 
int saveCount_
 
OutputFormat outputFormat_
 
bool conformingOutput_
 
std::unique_ptr< FileWriter > sequence_
 
std::unique_ptr< PVDWriter > pvd_
 
std::unique_ptr< const DataOutputParametersparam_
 

Detailed Description

template<class GridImp, class DataImp>
class Dune::Fem::DataOutput< GridImp, DataImp >

Implementation of the Dune::Fem::IOInterface. This class manages data output. Available output formats are GRAPE, VTK and VTK Vertex projected using the VtxProjection operator. Details can be found in DiscFuncIO.

Member Typedef Documentation

◆ GridType

template<class GridImp , class DataImp >
typedef GridImp Dune::Fem::DataOutput< GridImp, DataImp >::GridType

type of grid used

◆ OutPutDataType

template<class GridImp , class DataImp >
typedef DataImp Dune::Fem::DataOutput< GridImp, DataImp >::OutPutDataType

type of data tuple

Member Enumeration Documentation

◆ OutputFormat

template<class GridImp , class DataImp >
enum Dune::Fem::DataOutput::OutputFormat
Enumerator
vtk 
vtkvtx 
subvtk 
binary 
gnuplot 
none 

Constructor & Destructor Documentation

◆ DataOutput() [1/6]

template<class GridImp , class DataImp >
Dune::Fem::DataOutput< GridImp, DataImp >::DataOutput ( const GridType grid,
OutPutDataType data,
std::unique_ptr< const DataOutputParameters parameters 
)
inline

Constructor creating data output class.

Parameters
gridcorresponding grid
dataTuple containing discrete functions to write
parametersstructure for tuning the behavior of the Dune::DataOutput defaults to Dune::DataOutputParameters

◆ DataOutput() [2/6]

template<class GridImp , class DataImp >
Dune::Fem::DataOutput< GridImp, DataImp >::DataOutput ( const GridType grid,
OutPutDataType data,
const DataOutputParameters parameter 
)
inline

Constructor creating data output class.

Parameters
gridcorresponding grid
dataTuple containing discrete functions to write
parameterstructure for tuning the behavior of the Dune::DataOutput defaults to Dune::DataOutputParameters

◆ DataOutput() [3/6]

template<class GridImp , class DataImp >
Dune::Fem::DataOutput< GridImp, DataImp >::DataOutput ( const GridType grid,
OutPutDataType data,
const ParameterReader parameter = Parameter::container() 
)
inline

◆ DataOutput() [4/6]

template<class GridImp , class DataImp >
Dune::Fem::DataOutput< GridImp, DataImp >::DataOutput ( const GridType grid,
OutPutDataType data,
const TimeProviderBase tp,
std::unique_ptr< const DataOutputParameters parameters 
)
inline

Constructor creating data writer.

Parameters
gridcorresponding grid
dataTuple containing discrete functions to write
tpa time provider to set time (e.g. for restart)
parametersstructure for tuning the behavior of the Dune::DataOutput defaults to Dune::DataOutputParameters

◆ DataOutput() [5/6]

template<class GridImp , class DataImp >
Dune::Fem::DataOutput< GridImp, DataImp >::DataOutput ( const GridType grid,
OutPutDataType data,
const TimeProviderBase tp,
const DataOutputParameters parameter 
)
inline

Constructor creating data writer.

Parameters
gridcorresponding grid
dataTuple containing discrete functions to write
tpa time provider to set time (e.g. for restart)
parameterstructure for tuning the behavior of the Dune::DataOutput defaults to Dune::DataOutputParameters

◆ DataOutput() [6/6]

template<class GridImp , class DataImp >
Dune::Fem::DataOutput< GridImp, DataImp >::DataOutput ( const GridType grid,
OutPutDataType data,
const TimeProviderBase tp,
const ParameterReader parameter = Parameter::container() 
)
inline

Member Function Documentation

◆ consistentSaveStep()

template<class GridImp , class DataImp >
void Dune::Fem::DataOutput< GridImp, DataImp >::consistentSaveStep ( const TimeProviderBase tp) const
inline

◆ copyPathToFilename()

static std::string Dune::Fem::IOInterface::copyPathToFilename ( const std::string path)
inlinestaticinherited

◆ createGlobalPath()

template<class CommunicatorType >
static void Dune::Fem::IOInterface::createGlobalPath ( const CommunicatorType &  comm,
const std::string path 
)
inlinestaticinherited

create global path for data output

◆ createPath() [1/2]

template<class CommunicatorType >
static std::string Dune::Fem::IOInterface::createPath ( const CommunicatorType &  comm,
const std::string pathPrefix,
const std::string dataPrefix,
const int  step,
const bool  alsoCreateRankPath = true 
)
inlinestaticinherited

◆ createPath() [2/2]

static void Dune::Fem::IOInterface::createPath ( const std::string path)
inlinestaticinherited

create given path in combination with rank

◆ createPathName()

static std::string Dune::Fem::IOInterface::createPathName ( const std::string pathPref,
int  rank 
)
inlinestaticinherited

create given path in combination with rank

◆ createRecoverPath()

static std::string Dune::Fem::IOInterface::createRecoverPath ( const std::string pathPrefix,
const int  rank,
const std::string dataPrefix,
const int  step,
const bool  alsoUseRankPath = true 
)
inlinestaticinherited

◆ defaultGridKey() [1/4]

static std::string Dune::Fem::IOInterface::defaultGridKey ( int  dimension,
bool  check = true 
)
inlinestaticinherited

return FEM key for macro grid reading

◆ defaultGridKey() [2/4]

static std::string Dune::Fem::IOInterface::defaultGridKey ( int  dimension,
const ParameterReader parameter,
bool  check = true 
)
inlinestaticinherited

◆ defaultGridKey() [3/4]

static std::string Dune::Fem::IOInterface::defaultGridKey ( std::string  base,
int  dimension,
bool  check = true 
)
inlinestaticinherited

◆ defaultGridKey() [4/4]

static std::string Dune::Fem::IOInterface::defaultGridKey ( std::string  base,
int  dimension,
const ParameterReader parameter,
bool  check = true 
)
inlinestaticinherited

return FEM key for macro grid reading

◆ display()

template<class GridImp , class DataImp >
virtual void Dune::Fem::DataOutput< GridImp, DataImp >::display ( ) const
inlineprotectedvirtual

display data with grape

◆ getGridPart() [1/3]

template<class GridImp , class DataImp >
auto Dune::Fem::DataOutput< GridImp, DataImp >::getGridPart ( ) const
inlineprotected

◆ getGridPart() [2/3]

template<class GridImp , class DataImp >
auto Dune::Fem::DataOutput< GridImp, DataImp >::getGridPart ( std::integral_constant< bool, false >  ) const
inlineprotected

◆ getGridPart() [3/3]

template<class GridImp , class DataImp >
auto Dune::Fem::DataOutput< GridImp, DataImp >::getGridPart ( std::integral_constant< bool, true >  ) const
inlineprotected

◆ grapeDisplay()

template<class GridImp , class DataImp >
template<class OutputTupleType >
void Dune::Fem::DataOutput< GridImp, DataImp >::grapeDisplay ( OutputTupleType &  data) const
inlineprotected

display data with grape

◆ myClassName()

template<class GridImp , class DataImp >
virtual const char * Dune::Fem::DataOutput< GridImp, DataImp >::myClassName ( ) const
inlinevirtual

◆ path()

template<class GridImp , class DataImp >
const std::string & Dune::Fem::DataOutput< GridImp, DataImp >::path ( ) const
inline

return output path name

◆ readPath()

static std::string Dune::Fem::IOInterface::readPath ( )
inlinestaticinherited

standard path reading and creation method rank is added to output path

◆ saveTime()

template<class GridImp , class DataImp >
double Dune::Fem::DataOutput< GridImp, DataImp >::saveTime ( ) const
inline

return save time

◆ willWrite() [1/2]

template<class GridImp , class DataImp >
virtual bool Dune::Fem::DataOutput< GridImp, DataImp >::willWrite ( ) const
inlinevirtual

returns true if data will be written on next write call

◆ willWrite() [2/2]

template<class GridImp , class DataImp >
virtual bool Dune::Fem::DataOutput< GridImp, DataImp >::willWrite ( const TimeProviderBase tp) const
inlinevirtual

returns true if data will be written on next write call

Reimplemented in Dune::Fem::CheckPointer< GridImp >.

◆ write() [1/4]

template<class GridImp , class DataImp >
void Dune::Fem::DataOutput< GridImp, DataImp >::write ( ) const
inlinevirtual

write given data to disc, evaluates parameter savecount

Implements Dune::Fem::IOInterface.

◆ write() [2/4]

template<class GridImp , class DataImp >
void Dune::Fem::DataOutput< GridImp, DataImp >::write ( const std::string outstring) const
inline

write given data to disc, evaluates parameter savecount

Parameters
outstringpass additional string for naming

◆ write() [3/4]

template<class GridImp , class DataImp >
void Dune::Fem::DataOutput< GridImp, DataImp >::write ( const TimeProviderBase tp) const
inlinevirtual

write given data to disc, evaluates parameter savecount and savestep

Parameters
tptime provider for time and step

Implements Dune::Fem::IOInterface.

◆ write() [4/4]

template<class GridImp , class DataImp >
void Dune::Fem::DataOutput< GridImp, DataImp >::write ( const TimeProviderBase tp,
const std::string outstring 
) const
inline

write given data to disc, evaluates parameter savecount and savestep

Parameters
tptime provider for time and step
outstringpass additional string for naming

◆ writeBinaryData()

template<class GridImp , class DataImp >
virtual void Dune::Fem::DataOutput< GridImp, DataImp >::writeBinaryData ( const double  ) const
inlineprotectedvirtual

◆ writeCalls()

template<class GridImp , class DataImp >
int Dune::Fem::DataOutput< GridImp, DataImp >::writeCalls ( ) const
inline

return write calls

◆ writeData() [1/2]

template<class GridImp , class DataImp >
void Dune::Fem::DataOutput< GridImp, DataImp >::writeData ( double  sequenceStamp) const
inlinevirtual

write data with a given sequence stamp

Parameters
sequenceStampstamp for the data set

Implements Dune::Fem::IOInterface.

◆ writeData() [2/2]

template<class GridImp , class DataImp >
void Dune::Fem::DataOutput< GridImp, DataImp >::writeData ( double  sequenceStamp,
const std::string outstring 
) const
inline

write data with a given sequence stamp and outstring

Parameters
sequenceStampstamp for the data set
outstringpass additional string for naming

◆ writeGnuPlotOutput()

template<class GridImp , class DataImp >
std::string Dune::Fem::DataOutput< GridImp, DataImp >::writeGnuPlotOutput ( ) const
inlineprotected

◆ writeStep()

template<class GridImp , class DataImp >
int Dune::Fem::DataOutput< GridImp, DataImp >::writeStep ( ) const
inline

return write step

Member Data Documentation

◆ conformingOutput_

template<class GridImp , class DataImp >
bool Dune::Fem::DataOutput< GridImp, DataImp >::conformingOutput_
protected

◆ data_

template<class GridImp , class DataImp >
OutPutDataType Dune::Fem::DataOutput< GridImp, DataImp >::data_
protected

◆ datapref_

template<class GridImp , class DataImp >
std::string Dune::Fem::DataOutput< GridImp, DataImp >::datapref_
protected

◆ grapeDisplay_

template<class GridImp , class DataImp >
bool Dune::Fem::DataOutput< GridImp, DataImp >::grapeDisplay_
protected

◆ grid_

template<class GridImp , class DataImp >
const GridType& Dune::Fem::DataOutput< GridImp, DataImp >::grid_
protected

type of this class

◆ outputFormat_

template<class GridImp , class DataImp >
OutputFormat Dune::Fem::DataOutput< GridImp, DataImp >::outputFormat_
protected

◆ param_

template<class GridImp , class DataImp >
std::unique_ptr< const DataOutputParameters > Dune::Fem::DataOutput< GridImp, DataImp >::param_
protected

◆ path_

template<class GridImp , class DataImp >
std::string Dune::Fem::DataOutput< GridImp, DataImp >::path_
protected

◆ pvd_

template<class GridImp , class DataImp >
std::unique_ptr< PVDWriter > Dune::Fem::DataOutput< GridImp, DataImp >::pvd_
protected

◆ saveCount_

template<class GridImp , class DataImp >
int Dune::Fem::DataOutput< GridImp, DataImp >::saveCount_
protected

◆ saveStep_

template<class GridImp , class DataImp >
double Dune::Fem::DataOutput< GridImp, DataImp >::saveStep_
protected

◆ saveTime_

template<class GridImp , class DataImp >
double Dune::Fem::DataOutput< GridImp, DataImp >::saveTime_
mutableprotected

◆ sequence_

template<class GridImp , class DataImp >
std::unique_ptr< FileWriter > Dune::Fem::DataOutput< GridImp, DataImp >::sequence_
protected

◆ writeCalls_

template<class GridImp , class DataImp >
int Dune::Fem::DataOutput< GridImp, DataImp >::writeCalls_
mutableprotected

◆ writeStep_

template<class GridImp , class DataImp >
int Dune::Fem::DataOutput< GridImp, DataImp >::writeStep_
mutableprotected

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