diff --git a/apps/benchmarks/CNT/VBondModel.cpp b/apps/benchmarks/CNT/VBondModel.cpp index 091327c2f0290032abc36b85e3fe3d32b7022311..048ba24efb1e1692d5e731f8f80e9ac6f53797f3 100644 --- a/apps/benchmarks/CNT/VBondModel.cpp +++ b/apps/benchmarks/CNT/VBondModel.cpp @@ -27,9 +27,11 @@ #include "mesa_pd/kernel/cnt/Parameters.h" #include "mesa_pd/kernel/cnt/VBondContact.h" #include "mesa_pd/kernel/VelocityVerlet.h" +#include "mesa_pd/vtk/ParticleVtkOutput.h" #include "core/Environment.h" #include "core/math/Constants.h" +#include "vtk/VTKOutput.h" namespace walberla { using namespace walberla::mesa_pd; @@ -62,6 +64,17 @@ int main(int argc, char **argv) } data::Particle &&last_segment = *(ps->end() - 1); + WALBERLA_LOG_INFO_ON_ROOT("setting up VTK output"); + auto vtkOutput = make_shared<mesa_pd::vtk::ParticleVtkOutput>(ps); + vtkOutput->addOutput<data::SelectParticlePosition>("position"); + auto vtkWriter = walberla::vtk::createVTKOutput_PointData(vtkOutput, + "cnt", + 1, + "vtk", + "particles", + false, + false); + WALBERLA_LOG_INFO_ON_ROOT("setting up interaction models"); kernel::cnt::VBondContact vbond; kernel::VelocityVerletPreForceUpdate vv_pre(kernel::cnt::dT); @@ -73,6 +86,8 @@ int main(int argc, char **argv) std::ofstream fout("output.txt"); for (auto i = 0; i < numSimulationSteps; ++i) { + vtkWriter->write(); + ps->forEachParticle(false, kernel::SelectAll(), ac,