dune-fem
2.4.1-rc
|
Implementation of the IOInterface. This class manages checkpointing. More...
#include </local/tomalk/somewhere/tmp/dune-fem/dune/fem/io/file/datawriter.hh>
Classes | |
struct | GridPersistentObject |
call appropriate backup and restore methods on the grid class More... | |
Public Member Functions | |
CheckPointer (const GridType &grid, OutPutDataType &data, const TimeProviderBase &tp, const CheckPointerParameters ¶meter=CheckPointerParameters()) | |
Constructor generating a checkpointer. More... | |
CheckPointer (const GridType &grid, const TimeProviderBase &tp, const CheckPointerParameters ¶meter=CheckPointerParameters()) | |
Constructor generating a checkpointer. More... | |
~CheckPointer () | |
virtual const char * | myClassName () const |
print class name More... | |
bool | willWrite (const TimeProviderBase &tp) const |
returns true if data will be written on next write call More... | |
virtual void | writeBinaryData (const double time) const |
write binary data More... | |
void | consistentSaveStep (const TimeProviderBase &tp) const |
virtual bool | willWrite () const |
returns true if data will be written on next write call More... | |
void | write (const std::string &outstring) const |
write given data to disc, evaluates parameter savecount More... | |
void | write () const |
write given data to disc, evaluates parameter savecount More... | |
void | write (const TimeProviderBase &tp, const std::string &outstring) const |
write given data to disc, evaluates parameter savecount and savestep More... | |
void | write (const TimeProviderBase &tp) const |
write given data to disc, evaluates parameter savecount and savestep More... | |
void | writeData (double sequenceStamp, const std::string &outstring) const |
write data with a given sequence stamp and outstring More... | |
void | writeData (double sequenceStamp) const |
write data with a given sequence stamp More... | |
const std::string & | path () const |
return output path name More... | |
int | writeStep () const |
return write step More... | |
int | writeCalls () const |
return write calls More... | |
double | saveTime () const |
return save time More... | |
Static Public Member Functions | |
static GridType * | restoreGrid (const std::string checkFile, const int givenRank=-1, const CheckPointerParameters ¶meter=CheckPointerParameters()) |
restore grid from previous runs More... | |
static void | restoreData (const GridType &grid, const std::string checkFile) |
restores data, assumes that all objects have been created and inserted to PersistenceManager before this method is called More... | |
template<class InputTupleType > | |
static void | restoreData (const GridType &grid, InputTupleType &data, const std::string checkFile, const int rank=-1) |
restores data, assumes that all objects have been created and inserted to PersistenceManager before this method is called More... | |
template<class OutputTuple > | |
static void | writeSingleCheckPoint (const GridType &grid, OutputTuple &data, const double time, const bool storePersistenceManager, const int writeStep=0) |
static std::string | defaultGridKey (int dimension, bool check=true) |
return FEM key for macro grid reading More... | |
static std::string | defaultGridKey (int dimension, const ParameterReader ¶meter, 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 ¶meter, bool check=true) |
return FEM key for macro grid reading More... | |
static void | createPath (const std::string &path) |
create given path in combination with rank More... | |
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 More... | |
static std::string | readPath () |
template<class CommunicatorType > | |
static void | createGlobalPath (const CommunicatorType &comm, const std::string &path) |
create global path for data output More... | |
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) |
template<class GridImp > | |
static void | writeMacroGrid (const GridImp &grid, std::ostream &out, const std::string ¯oname, const std::string &path, const std::string &prefix, const bool writeSubFiles=false) |
if grid is structured grid, write macro file More... | |
template<class GridImp > | |
static void | copyMacroGrid (const GridImp &g, const std::string ¯oGrid, const std::string &orgPath, const std::string &destPath, const std::string &prefix) |
if grid is structured grid, write macro file More... | |
Protected Types | |
typedef GridImp | GridType |
used grid type More... | |
typedef DofManager< GridType > | DofManagerType |
typedef DataWriter< GridImp, DataImp > | BaseType |
type of base class More... | |
typedef CheckPointer< GridImp, DataImp > | ThisType |
type of this class More... | |
typedef DataImp | OutPutDataType |
used data tuple More... | |
typedef GridPersistentObject | PersistentGridObjectType |
enum | OutputFormat { vtk = 0, vtkvtx = 1, subvtk = 2, binary = 3, gnuplot = 4, none = 5 } |
Protected Member Functions | |
void | initialize (const CheckPointerParameters ¶meter) |
CheckPointer (const GridType &grid, const int myRank, OutPutDataType &data, const char *checkFile, const bool takeCareOfPersistenceManager=true, const int writeStep=0) | |
Constructor generating a checkpointer to restore data. More... | |
std::string | restorePersistentData () |
restores data, assumes that all objects have been created before this method is called More... | |
template<class InputTuple > | |
void | restoreUserData (InputTuple &data) |
void | restoreData () |
bool | readCheckPoint (const bool warn=true) |
read checkpoint file More... | |
void | writeCheckPoint (const std::string &path, const double time, const int savestep) const |
template<class OutputTuple > | |
std::string | writeMyBinaryData (const double sequenceStamp, const int step, OutputTuple &data) const |
void | init (const DataOutputParameters ¶meter) |
initialize data writer More... | |
std::string | writeVTKOutput () const |
std::string | writeGnuPlotOutput () const |
virtual void | display () const |
display data with grape More... | |
template<class OutputTupleType > | |
void | grapeDisplay (OutputTupleType &data) const |
display data with grape More... | |
Static Protected Member Functions | |
static std::string | strRank (const int rank) |
create string containing rank More... | |
template<class GridImp > | |
static void | saveCartesianGrid (const GridImp &grid, std::ostream &out, dgf::IntervalBlock &intervalBlock, std::string filename, const bool writeSubFiles) |
write my partition as macro grid More... | |
template<int dimension> | |
static void | writeToStream (std::ostream &file, const FieldVector< double, dimension > &origin, const FieldVector< double, dimension > &lang, const FieldVector< int, dimension > &anz) |
template<int dimension> | |
static void | writeStructuredGrid (const std::string &filename, std::ostream &out, const FieldVector< double, dimension > &origin, const FieldVector< double, dimension > &lang, const FieldVector< int, dimension > &anz) |
write structured grid as DGF file More... | |
Protected Attributes | |
PersistentGridObjectType * | persistentGridObject_ |
OutPutDataType * | dataPtr_ |
const int | checkPointStep_ |
const int | maxCheckPointNumber_ |
int | myRank_ |
std::string | checkPointFile_ |
bool | takeCareOfPersistenceManager_ |
std::stringstream | macroGrid_ |
const bool | separateRankPath_ |
const GridType & | grid_ |
type of this class More... | |
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::ofstream | sequence_ |
std::ofstream | pvd_ |
const DataOutputParameters * | param_ |
Implementation of the IOInterface. This class manages checkpointing.
The data will be stored in GRAPE output format, meaning that every checkpoint is also a visualizable data set. Constructor and write are simular to the Dune::DataWriter, but in addition a static method Dune::CheckPointer::restoreGrid and a method Dune::CheckPointer::restoreData is provided. The template arguments are the type of the grid and a tuple type of pointers to the discrete functions types to be stored.
|
protected |
type of base class
|
protected |
|
protected |
used grid type
|
protected |
used data tuple
|
protected |
|
protected |
type of this class
|
protectedinherited |
|
inline |
Constructor generating a checkpointer.
grid | corresponding grid |
data | Tuple containing discrete functions to write |
tp | a time provider to set time (e.g. for restart) |
parameter | structure for tuning the behavior of the Dune::CheckPointer defaults to Dune::CheckPointerParameters |
References Dune::Fem::DataOutputParameters::parameter().
|
inline |
Constructor generating a checkpointer.
grid | corresponding grid |
tp | a time provider to set time (e.g. for restart) |
parameter | structure for tuning the behavior of the Dune::CheckPointer defaults to Dune::CheckPointerParameters |
References Dune::Fem::DataOutputParameters::parameter().
|
inline |
|
inlineprotected |
Constructor generating a checkpointer to restore data.
grid | corresponding grid |
myRank | rank of process |
data | Tuple containing discrete functions to write |
checkFile | filename for restoring state of program from previous runs |
takeCareOfPersistenceManager | flag whether to keep persistent values by PersistenceManager (default true) |
writeStep | initial counter value, default 0 |
fem.io.checkpointstep: 500
fem.io.checkpointfile: checkpoint
References Dune::Fem::CheckPointerParameters::checkPointPrefix(), and Dune::Fem::DataOutputParameters::parameter().
|
inlineinherited |
|
inlinestaticinherited |
if grid is structured grid, write macro file
References Dune::Fem::Parameter::verbose().
|
inlinestaticinherited |
Referenced by Dune::Fem::IOInterface::createPath(), and Dune::Fem::IOInterface::createRecoverPath().
|
inlinestaticinherited |
create global path for data output
References Dune::Fem::createDirectory().
Referenced by Dune::Fem::IOInterface::createPath(), and Dune::Fem::DataOutput< GridImp, DataImp >::init().
|
inlinestaticinherited |
create given path in combination with rank
References Dune::Fem::createDirectory().
Referenced by Dune::Fem::DataWriter< GridImp, DataImp >::writeMyBinaryData().
|
inlinestaticinherited |
|
inlinestaticinherited |
create given path in combination with rank
References path.
Referenced by Dune::Fem::IOInterface::createPath(), and Dune::Fem::IOInterface::createRecoverPath().
|
inlinestaticinherited |
|
inlinestaticinherited |
return FEM key for macro grid reading
References Dune::Fem::Parameter::container().
Referenced by Dune::Fem::IOInterface::defaultGridKey(), and Dune::Fem::DataWriterParameters::macroGridName().
|
inlinestaticinherited |
References Dune::Fem::IOInterface::defaultGridKey().
|
inlinestaticinherited |
|
inlinestaticinherited |
return FEM key for macro grid reading
References Dune::Fem::BasicParameterReader< Parameter >::exists().
|
inlineprotectedvirtualinherited |
display data with grape
|
inlineprotectedinherited |
display data with grape
Referenced by Dune::Fem::DataOutput< GridImp, DataImp >::writeGnuPlotOutput().
|
inlineprotectedinherited |
initialize data writer
References Dune::Fem::DataOutputParameters::absolutePath(), Dune::Fem::DataOutputParameters::conformingoutput(), Dune::Fem::IOInterface::createGlobalPath(), Dune::Fem::DataOutputParameters::grapedisplay(), Dune::Fem::DataOutputParameters::outputformat(), Dune::Fem::DataOutputParameters::prefix(), Dune::Fem::DataOutputParameters::savecount(), Dune::Fem::DataOutputParameters::savestep(), Dune::Fem::DataOutputParameters::startcall(), Dune::Fem::DataOutputParameters::startcounter(), Dune::Fem::DataOutputParameters::startsavetime(), Dune::Fem::Parameter::verbose(), Dune::Fem::Parameter::write(), Dune::Fem::DataOutput< GridImp, DataImp >::writeData(), and Dune::Fem::DataOutputParameters::writeMode().
Referenced by Dune::Fem::DataOutput< GridImp, DataImp >::consistentSaveStep().
|
inlineprotected |
References Dune::Fem::CheckPointerParameters::prefix(), and Dune::Fem::Parameter::write().
|
inlinevirtual |
print class name
Reimplemented from Dune::Fem::DataWriter< GridImp, DataImp >.
|
inlineinherited |
return output path name
|
inlineprotected |
read checkpoint file
References Dune::Fem::readParameter(), and Dune::Fem::Parameter::verbose().
|
inlinestaticinherited |
standard path reading and creation method rank is added to output path
References Dune::Fem::Parameter::commonOutputPath().
Referenced by Dune::Fem::CheckPointer< GridImp, DataImp >::restoreGrid().
|
inlinestatic |
restores data, assumes that all objects have been created and inserted to PersistenceManager before this method is called
grid | Grid the data belong to |
checkFile | check point file |
Referenced by Dune::Fem::CheckPointer< GridImp, DataImp >::restoreData().
|
inlinestatic |
restores data, assumes that all objects have been created and inserted to PersistenceManager before this method is called
grid | Grid the data belong to |
data | tuple of discrete functions to be additionally read during restore |
checkFile | check point file |
rank | rank of process (defaults to grid.comm().rank()) |
References Dune::Fem::CheckPointer< GridImp, DataImp >::restoreData().
|
inlineprotected |
|
inlinestatic |
restore grid from previous runs
[in] | checkFile | checkPoint filename |
[in] | givenRank | number of my process (defaults to MPIManager :: rank() ) |
[in] | parameter | Parameterclass which provides informations about the checkpoint |
References Dune::Fem::IOInterface::createRecoverPath(), Dune::Fem::gridName(), Dune::Fem::DataOutputParameters::parameter(), Dune::Fem::DataOutputParameters::path(), Dune::Fem::MPIManager::rank(), Dune::Fem::readParameter(), Dune::Fem::IOInterface::readPath(), Dune::Fem::PersistenceManager::restoreStream(), Dune::Fem::PersistenceManager::startRestore(), Dune::Fem::StandardInStream::stream(), Dune::Fem::PersistenceManager::uniqueFileName(), and Dune::Fem::Parameter::verbose().
|
inlineprotected |
restores data, assumes that all objects have been created before this method is called
References Dune::Fem::IOInterface::createRecoverPath(), Dune::Fem::DataOutputParameters::path(), and Dune::Fem::PersistenceManager::restore().
|
inlineprotected |
References Dune::Fem::DataOutputParameters::path().
|
inlinestaticprotectedinherited |
write my partition as macro grid
References Dune::Fem::IOInterface::SaveParallelCartesianGrid< Grid >::getCoordinates(), Dune::Fem::IOInterface::strRank(), and Dune::Fem::IOInterface::writeStructuredGrid().
Referenced by Dune::Fem::IOInterface::writeMacroGrid().
|
inlineinherited |
return save time
|
inlinestaticprotectedinherited |
create string containing rank
Referenced by Dune::Fem::IOInterface::saveCartesianGrid().
|
inlinevirtualinherited |
returns true if data will be written on next write call
|
inlinevirtual |
returns true if data will be written on next write call
Reimplemented from Dune::Fem::DataOutput< GridImp, DataImp >.
References Dune::Fem::TimeProviderBase::timeStep().
|
inlineinherited |
write given data to disc, evaluates parameter savecount
outstring | pass additional string for naming |
References Dune::Fem::DataOutputParameters::willWrite().
|
inlinevirtualinherited |
write given data to disc, evaluates parameter savecount
Implements Dune::Fem::IOInterface.
References Dune::Fem::DataOutputParameters::willWrite().
|
inlineinherited |
write given data to disc, evaluates parameter savecount and savestep
tp | time provider for time and step |
outstring | pass additional string for naming |
References Dune::Fem::TimeProviderBase::time(), and Dune::Fem::DataOutputParameters::willWrite().
|
inlinevirtualinherited |
write given data to disc, evaluates parameter savecount and savestep
tp | time provider for time and step |
Implements Dune::Fem::IOInterface.
|
inlinevirtual |
write binary data
Reimplemented from Dune::Fem::DataWriter< GridImp, DataImp >.
References Dune::Fem::PersistenceManager::backup(), and Dune::Fem::DataOutputParameters::path().
Referenced by Dune::Fem::CheckPointer< GridImp, DataImp >::writeSingleCheckPoint().
|
inlineinherited |
return write calls
|
inlineprotected |
|
inlineinherited |
write data with a given sequence stamp and outstring
sequenceStamp | stamp for the data set |
outstring | pass additional string for naming |
References Dune::Fem::Parameter::verbose().
Referenced by Dune::Fem::DataOutput< GridImp, DataImp >::init().
|
inlinevirtualinherited |
write data with a given sequence stamp
sequenceStamp | stamp for the data set |
Implements Dune::Fem::IOInterface.
|
inlineprotectedinherited |
|
inlinestaticinherited |
if grid is structured grid, write macro file
References Dune::Fem::IOInterface::saveCartesianGrid().
|
inlineprotectedinherited |
References Dune::Fem::IOInterface::createPath().
|
inlinestatic |
|
inlineinherited |
return write step
|
inlinestaticprotectedinherited |
write structured grid as DGF file
References Dune::Fem::IOInterface::writeToStream().
Referenced by Dune::Fem::IOInterface::saveCartesianGrid().
|
inlinestaticprotectedinherited |
Referenced by Dune::Fem::IOInterface::writeStructuredGrid().
|
inlineprotectedinherited |
References Dune::Fem::generateFilename().
|
protected |
|
protected |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protected |
|
protectedinherited |
|
protectedinherited |
type of this class
|
mutableprotectedinherited |
|
protected |
|
protected |
|
protectedinherited |
|
protectedinherited |
|
protectedinherited |
|
protected |
|
mutableprotectedinherited |
|
protectedinherited |
|
protectedinherited |
|
mutableprotectedinherited |
|
protectedinherited |
|
mutableprotectedinherited |
|
protected |
|
mutableprotectedinherited |
|
mutableprotectedinherited |