diff --git a/src/amdis/FileWriter.hpp b/src/amdis/FileWriter.hpp index d45a086e64dcd7c8ca619adc9649c578327c55f3..f2d345a285031dc96f0f897e859a92287f8ebdc2 100644 --- a/src/amdis/FileWriter.hpp +++ b/src/amdis/FileWriter.hpp @@ -86,9 +86,12 @@ namespace AMDiS vtkWriter_ = std::make_shared<Dune::VTKWriter<GridView>>(gridView()); if (animation_) - vtkSeqWriter_ = std::make_shared<Dune::VTKSequenceWriter<GridView>>(vtkWriter_, filename_, dir_, ""); + vtkSeqWriter_ = std::make_shared<Dune::VTKSequenceWriter<GridView>>(vtkWriter_, filename_, dir_, "data"); vtkWriter_->addVertexData(discreteFct_, Dune::VTK::FieldInfo(name_, VTKFieldType<Range>, VTKFieldSize<Range>)); + + test_exit(dir_ == "." || filesystem::exists(dir_), "Output directory '{}' does not exist!",dir_); + filesystem::create_directories(dir_ + "/data"); } void init(std::string const&, tag::unknown) {} @@ -96,12 +99,10 @@ namespace AMDiS /// Implements \ref FileWriterInterface::writeFiles void writeFiles(AdaptInfo& adaptInfo, bool force) override { - test_exit(dir_ == "." || filesystem::exists(dir_), "Output directory '{}' does not exist!",dir_); - if (vtkSeqWriter_) vtkSeqWriter_->write(adaptInfo.time(), mode_); else if (vtkWriter_) - vtkWriter_->write(filesystem::path({dir_, filename_}).string(), mode_); + vtkWriter_->pwrite(filename_, dir_, "data", mode_); } protected: