diff --git a/src/one-body-sample.cc b/src/one-body-sample.cc index 7e494304d856e2e78076a676fd6af13db955e186..3dd8bf6ac0aea2efc53a129e331a86dde113de1b 100644 --- a/src/one-body-sample.cc +++ b/src/one-body-sample.cc @@ -287,7 +287,7 @@ int main(int argc, char *argv[]) { writer.writeInfo(alpha_initial, u_initial, v_initial); MyVTKWriter<typename MyAssembler::VertexBasis, - typename MyAssembler::CellBasis> + typename MyAssembler::CellBasis> const vtkWriter(myAssembler.cellBasis, myAssembler.vertexBasis, "obs"); // Set up TNNMG solver @@ -442,7 +442,7 @@ int main(int argc, char *argv[]) { ScalarVector stress; myAssembler.assembleVonMisesStress(body.getYoungModulus(), body.getPoissonRatio(), u, stress); - vtkWriter.write(u, v, alpha, stress); + vtkWriter.write(timeStep - 1, u, v, alpha, stress); } } iterationWriter.close(); diff --git a/src/vtk.cc b/src/vtk.cc index f1a1e6dfaf227ca55d614c6238a4e86e576d52ee..0155384e070b215d12aa28de23e842c2715cf53c 100644 --- a/src/vtk.cc +++ b/src/vtk.cc @@ -12,17 +12,13 @@ template <class VertexBasis, class CellBasis> MyVTKWriter<VertexBasis, CellBasis>::MyVTKWriter( CellBasis const &_cellBasis, VertexBasis const &_vertexBasis, std::string _prefix) - : cellBasis(_cellBasis), - vertexBasis(_vertexBasis), - prefix(_prefix), - counter(0) {} + : cellBasis(_cellBasis), vertexBasis(_vertexBasis), prefix(_prefix) {} template <class VertexBasis, class CellBasis> template <class Vector, class ScalarVector> -void MyVTKWriter<VertexBasis, CellBasis>::write(Vector const &u, - Vector const &v, - ScalarVector const &alpha, - ScalarVector const &stress) { +void MyVTKWriter<VertexBasis, CellBasis>::write( + size_t record, Vector const &u, Vector const &v, ScalarVector const &alpha, + ScalarVector const &stress) const { Dune::VTKWriter<typename VertexBasis::GridView> writer( vertexBasis.getGridView()); @@ -46,7 +42,7 @@ void MyVTKWriter<VertexBasis, CellBasis>::write(Vector const &u, cellBasis, stress, "stress"); writer.addCellData(stressPointer); - std::string const filename = prefix + std::to_string(counter++); + std::string const filename = prefix + std::to_string(record); writer.write(filename.c_str()); } diff --git a/src/vtk.hh b/src/vtk.hh index a5b62db35604bfc91db7b9e0ba333a3ed2430bb0..ffa89983fed1916c9aaba6cd6a823541801683af 100644 --- a/src/vtk.hh +++ b/src/vtk.hh @@ -8,15 +8,13 @@ template <class VertexBasis, class CellBasis> class MyVTKWriter { VertexBasis const &vertexBasis; std::string const prefix; - size_t counter; - public: MyVTKWriter(CellBasis const &cellBasis, VertexBasis const &vertexBasis, std::string prefix); template <class Vector, class ScalarVector> - void write(Vector const &u, Vector const &v, ScalarVector const &alpha, - ScalarVector const &stress); + void write(size_t record, Vector const &u, Vector const &v, + ScalarVector const &alpha, ScalarVector const &stress) const; }; #endif diff --git a/src/vtk_tmpl.cc b/src/vtk_tmpl.cc index 027d42f977807e2259f689f9164814802bceed6a..2b1930040ce0ea55c49d31e3e85ac3f76a86ff74 100644 --- a/src/vtk_tmpl.cc +++ b/src/vtk_tmpl.cc @@ -14,5 +14,5 @@ using P1Basis = P1NodalBasis<GridView, double>; template class MyVTKWriter<P1Basis, MyP0Basis>; template void MyVTKWriter<P1Basis, MyP0Basis>::write<Vector, ScalarVector>( - Vector const &u, Vector const &v, ScalarVector const &alpha, - ScalarVector const &stress); + size_t record, Vector const &u, Vector const &v, ScalarVector const &alpha, + ScalarVector const &stress) const;