Skip to content
Snippets Groups Projects
boundary_writer.hh 725 B
Newer Older
#ifndef SRC_BOUNDARY_WRITER_HH
#define SRC_BOUNDARY_WRITER_HH

#include <fstream>
#include <string>

#include <dune/common/bitsetvector.hh>

template <class ScalarVector, class Vector> class BoundaryWriter {
protected:
  using Projector = std::function<double(typename Vector::block_type const &)>;

public:
  BoundaryWriter(Vector const &vertexCoordinates,
                 Dune::BitSetVector<1> const &_boundaryNodes,
                 std::string prefix, Projector projector);

  virtual ~BoundaryWriter();

  void writeKinetics(Vector const &u, Vector const &v);

protected:
  std::fstream displacementWriter;
  std::fstream velocityWriter;
  Dune::BitSetVector<1> const &boundaryNodes;