ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
Abstract representation of a lattice-based model. More...
#include <LatticeModel.hpp>
Public Types | |
using | units_map = std::unordered_map< std::string, double > |
Public Member Functions | |
virtual | ~LatticeModel ()=default |
virtual LatticeWalberla const & | get_lattice () const noexcept=0 |
Get the underlying lattice. | |
std::shared_ptr< VTKHandle > | create_vtk (int delta_N, int initial_count, int flag_observables, units_map const &units_conversion, std::string const &identifier, std::string const &base_folder, std::string const &prefix) |
Create a VTK observable. | |
void | write_vtk (std::string const &vtk_uid) |
Write a VTK observable to disk. | |
void | switch_vtk (std::string const &vtk_uid, bool status) |
Toggle a VTK observable on/off. | |
Protected Member Functions | |
virtual void | register_vtk_field_writers (walberla::vtk::VTKOutput &vtk_obj, units_map const &units_conversion, int flag_observables)=0 |
Register VTK writers. | |
virtual void | register_vtk_field_filters (walberla::vtk::VTKOutput &vtk_obj)=0 |
virtual void | integrate_vtk_writers ()=0 |
Protected Attributes | |
std::map< std::string, std::shared_ptr< VTKHandle > > | m_vtk_auto |
VTK writers that are executed automatically. | |
std::map< std::string, std::shared_ptr< VTKHandle > > | m_vtk_manual |
VTK writers that are executed manually. | |
Abstract representation of a lattice-based model.
Definition at line 31 of file walberla_bridge/include/walberla_bridge/LatticeModel.hpp.
using LatticeModel::units_map = std::unordered_map<std::string, double> |
Definition at line 33 of file walberla_bridge/include/walberla_bridge/LatticeModel.hpp.
|
virtualdefault |
std::shared_ptr< VTKHandle > LatticeModel::create_vtk | ( | int | delta_N, |
int | initial_count, | ||
int | flag_observables, | ||
units_map const & | units_conversion, | ||
std::string const & | identifier, | ||
std::string const & | base_folder, | ||
std::string const & | prefix | ||
) |
Create a VTK observable.
delta_N | Write frequency, if 0 write a single frame, otherwise add a callback to write every delta_N EK steps to a new file |
initial_count | Initial execution count |
flag_observables | Which observables to measure (OR'ing of OutputVTK or EKOutputVTK values) |
units_conversion | Lattice-to-MD units conversion |
identifier | Name of the VTK dataset |
base_folder | Path to the VTK folder |
prefix | Prefix of the VTK files |
Definition at line 31 of file LatticeModel.cpp.
References LatticeWalberla::get_blocks(), get_lattice(), m_vtk_auto, m_vtk_manual, register_vtk_field_filters(), and register_vtk_field_writers().
|
pure virtualnoexcept |
Get the underlying lattice.
Implemented in walberla::EKinWalberlaImpl< FluxCount, FloatType >, and walberla::LBWalberlaImpl< FloatType, Architecture >.
Referenced by create_vtk().
|
protectedpure virtual |
|
protectedpure virtual |
Implemented in walberla::EKinWalberlaImpl< FluxCount, FloatType >, and walberla::LBWalberlaImpl< FloatType, Architecture >.
Referenced by create_vtk().
|
protectedpure virtual |
Register VTK writers.
Use the multi-piece uniform grid format.
Implemented in walberla::EKinWalberlaImpl< FluxCount, FloatType >, and walberla::LBWalberlaImpl< FloatType, Architecture >.
Referenced by create_vtk().
void LatticeModel::switch_vtk | ( | std::string const & | vtk_uid, |
bool | status | ||
) |
Toggle a VTK observable on/off.
vtk_uid | Name of the VTK object |
status | true to switch on, false to switch off |
Definition at line 81 of file LatticeModel.cpp.
References m_vtk_auto, and m_vtk_manual.
void LatticeModel::write_vtk | ( | std::string const & | vtk_uid | ) |
Write a VTK observable to disk.
vtk_uid | Name of the VTK object |
Definition at line 69 of file LatticeModel.cpp.
References m_vtk_auto, and m_vtk_manual.
|
protected |
VTK writers that are executed automatically.
Definition at line 37 of file walberla_bridge/include/walberla_bridge/LatticeModel.hpp.
Referenced by create_vtk(), walberla::EKinWalberlaImpl< FluxCount, FloatType >::integrate_vtk_writers(), walberla::LBWalberlaImpl< FloatType, Architecture >::integrate_vtk_writers(), switch_vtk(), and write_vtk().
|
protected |
VTK writers that are executed manually.
Definition at line 39 of file walberla_bridge/include/walberla_bridge/LatticeModel.hpp.
Referenced by create_vtk(), switch_vtk(), and write_vtk().