My Project
|
VTK output module for quantities which make sense for all models which deal with multiple fluid phases in porous media that don't use flashy concepts like interfacial area. More...
#include <vtkmultiphasemodule.hpp>
Public Member Functions | |
VtkMultiPhaseModule (const Simulator &simulator) | |
void | allocBuffers () override |
Allocate memory for the scalar fields we would like to write to the VTK file. | |
void | processElement (const ElementContext &elemCtx) override |
Modify the internal buffers according to the intensive quantities seen on an element. | |
void | commitBuffers (BaseOutputWriter &baseWriter) override |
Add all buffers to the VTK output writer. | |
bool | needExtensiveQuantities () const final |
Returns true iff the module needs to access the extensive quantities of a context to do its job. | |
![]() | |
BaseOutputModule (const Simulator &simulator) | |
Static Public Member Functions | |
static void | registerParameters () |
Register all run-time parameters for the multi-phase VTK output module. | |
Additional Inherited Members | |
![]() | |
using | ScalarBuffer = BaseOutputWriter::ScalarBuffer |
using | VectorBuffer = BaseOutputWriter::VectorBuffer |
using | TensorBuffer = BaseOutputWriter::TensorBuffer |
using | EqBuffer = std::array< ScalarBuffer, numEq > |
using | PhaseBuffer = std::array< ScalarBuffer, numPhases > |
using | ComponentBuffer = std::array< ScalarBuffer, numComponents > |
using | PhaseComponentBuffer = std::array< std::array< ScalarBuffer, numComponents >, numPhases > |
using | PhaseVectorBuffer = std::array< VectorBuffer, numPhases > |
![]() | |
enum | BufferType { DofBuffer , VertexBuffer , ElementBuffer } |
![]() | |
void | resizeScalarBuffer_ (ScalarBuffer &buffer, BufferType bufferType=DofBuffer) |
Allocate the space for a buffer storing a scalar quantity. | |
void | resizeTensorBuffer_ (TensorBuffer &buffer, BufferType bufferType=DofBuffer) |
Allocate the space for a buffer storing a tensorial quantity. | |
void | resizeVectorBuffer_ (VectorBuffer &buffer, BufferType bufferType=DofBuffer) |
void | resizeEqBuffer_ (EqBuffer &buffer, BufferType bufferType=DofBuffer) |
Allocate the space for a buffer storing a equation specific quantity. | |
void | resizePhaseBuffer_ (PhaseBuffer &buffer, BufferType bufferType=DofBuffer) |
Allocate the space for a buffer storing a phase-specific quantity. | |
void | resizeComponentBuffer_ (ComponentBuffer &buffer, BufferType bufferType=DofBuffer) |
Allocate the space for a buffer storing a component specific quantity. | |
void | resizePhaseComponentBuffer_ (PhaseComponentBuffer &buffer, BufferType bufferType=DofBuffer) |
Allocate the space for a buffer storing a phase and component specific buffer. | |
void | commitScalarBuffer_ (BaseOutputWriter &baseWriter, const char *name, ScalarBuffer &buffer, BufferType bufferType=DofBuffer) |
Add a buffer containing scalar quantities to the result file. | |
void | commitVectorBuffer_ (BaseOutputWriter &baseWriter, const char *name, VectorBuffer &buffer, BufferType bufferType=DofBuffer) |
Add a buffer containing vectorial quantities to the result file. | |
void | commitTensorBuffer_ (BaseOutputWriter &baseWriter, const char *name, TensorBuffer &buffer, BufferType bufferType=DofBuffer) |
Add a buffer containing tensorial quantities to the result file. | |
void | commitPriVarsBuffer_ (BaseOutputWriter &baseWriter, const char *pattern, EqBuffer &buffer, BufferType bufferType=DofBuffer) |
Add a buffer with as many variables as PDEs to the result file. | |
void | commitEqBuffer_ (BaseOutputWriter &baseWriter, const char *pattern, EqBuffer &buffer, BufferType bufferType=DofBuffer) |
Add a buffer with as many variables as PDEs to the result file. | |
void | commitPhaseBuffer_ (BaseOutputWriter &baseWriter, const char *pattern, PhaseBuffer &buffer, BufferType bufferType=DofBuffer) |
Add a phase-specific buffer to the result file. | |
void | commitComponentBuffer_ (BaseOutputWriter &baseWriter, const char *pattern, ComponentBuffer &buffer, BufferType bufferType=DofBuffer) |
Add a component-specific buffer to the result file. | |
void | commitPhaseComponentBuffer_ (BaseOutputWriter &baseWriter, const char *pattern, PhaseComponentBuffer &buffer, BufferType bufferType=DofBuffer) |
Add a phase and component specific quantities to the output. | |
void | attachScalarElementData_ (BaseOutputWriter &baseWriter, ScalarBuffer &buffer, const char *name) |
void | attachScalarVertexData_ (BaseOutputWriter &baseWriter, ScalarBuffer &buffer, const char *name) |
void | attachVectorElementData_ (BaseOutputWriter &baseWriter, VectorBuffer &buffer, const char *name) |
void | attachVectorVertexData_ (BaseOutputWriter &baseWriter, VectorBuffer &buffer, const char *name) |
void | attachTensorElementData_ (BaseOutputWriter &baseWriter, TensorBuffer &buffer, const char *name) |
void | attachTensorVertexData_ (BaseOutputWriter &baseWriter, TensorBuffer &buffer, const char *name) |
std::size_t | getBufferSize (BufferType bufferType) const |
![]() | |
const Simulator & | simulator_ |
VTK output module for quantities which make sense for all models which deal with multiple fluid phases in porous media that don't use flashy concepts like interfacial area.
This module deals with the following quantities:
|
inlineoverridevirtual |
Allocate memory for the scalar fields we would like to write to the VTK file.
Implements Opm::BaseOutputModule< TypeTag >.
|
inlineoverridevirtual |
Add all buffers to the VTK output writer.
Implements Opm::BaseOutputModule< TypeTag >.
|
inlinefinalvirtual |
Returns true iff the module needs to access the extensive quantities of a context to do its job.
For example, this happens if velocities or gradients should be written. Always returning true here does not do any harm from the correctness perspective, but it slows down writing the output fields.
Reimplemented from Opm::BaseOutputModule< TypeTag >.
|
inlineoverridevirtual |
Modify the internal buffers according to the intensive quantities seen on an element.
Implements Opm::BaseOutputModule< TypeTag >.