G+Smo
24.08.0
Geometry + Simulation Modules
|
This class is used to create a Paraview .pvd (collection) file.
A collection is an XML file that contains a list of other files to be opened in Paraview.
Typical usage is
gsParaviewCollection pc(fn); // Initialize collection // add files ("parts"), make sure that these files exist pc.addPart(filename1); pc.addPart(filename2); pc.save() // finalize and close the file
Or when working with gsExpressions:
gsParaviewCollection pc(fn, &evaluator ); // Initialize collection // Specify plotting options pc.options().setInt("numPoints", 100); pc.options().setInt("precision",5); pc.options().setSwitch("plotElements",true); pc.options().setSwitch("plotControlNet",true); // In your solution loop: while ( ... ) { // Create new file(s) for this timestep pc.newTimestep(&multiPatch) // Solve here // Write solution fields ( e.g Pressure, Temperature, Stress ) pc.addField( gsExpression_1, "label_1" ); pc.addField( gsExpression_2, "label_2" ); pc.saveTimeStep(); // Save file(s) for this timestep } // end solution loop pc.save() // finalize and close the .pvd file
The above creates a file with extension pvd. When opening this file with Paraview, the contents of all parts in the list are loaded.
Public Member Functions | |
void | addDataSet (gsParaviewDataSet &dataSet, real_t time=-1) |
Adds all the files relevant to a gsParaviewDataSet, to the collection. More... | |
template<typename... Rest> | |
void | addField (Rest...rest) |
All arguments are forwarded to gsParaviewDataSet::addField(). | |
template<typename... Rest> | |
void | addFields (Rest...rest) |
All arguments are forwarded to gsParaviewDataSet::addFields(). | |
void | addPart (String const &fn, real_t tStep=-1, std::string name="", index_t part=-1) |
Appends a file to the Paraview collection (.pvd file). More... | |
gsParaviewCollection (String const &fn, gsExprEvaluator<> *evaluator=nullptr) | |
Constructor using a filename and an (optional) evaluator. | |
void | newTimeStep (gsMultiPatch< real_t > *geometry, real_t time=-1) |
Creates a new time step where all information will be added to. More... | |
gsOptionList & | options () |
Accessor to the current options. | |
void | save () |
void | saveTimeStep () |
The current timestep is saved and files written to disk. | |
Private Attributes | |
std::string | m_filename |
File name. | |
bool | m_isSaved |
Flag for checking if collection is already saved. | |
std::stringstream | mfile |
Pointer to char stream. | |
void addDataSet | ( | gsParaviewDataSet & | dataSet, |
real_t | time = -1 |
||
) |
Adds all the files relevant to a gsParaviewDataSet, to the collection.
dataSet | The gsParaviewDataSet to be added. |
time | Time step (optional, else an internal integer counter is used) |
|
inline |
Appends a file to the Paraview collection (.pvd file).
fn | Filename to be added. Can also be a path relative to the where the collection file is. |
tStep | Time step ( optional ) |
name | An optional name for this part. This is the name that will show up in Paraview's MultiBlock inspector for this Part. It is not the filename. |
part | Part ID ( optional ) |
void newTimeStep | ( | gsMultiPatch< real_t > * | geometry, |
real_t | time = -1 |
||
) |
Creates a new time step where all information will be added to.
geometry | A gsMultiPatch of the geometry where the solution fields are defined. |
time | Value of time for this timestep (optional, else an internal integer counter is used) |
|
inline |
Finalizes the collection by closing the XML tags, always call this function (once) when you finish adding files