From d182f5f1da02a7cde4cface810abeb7163cebbd1 Mon Sep 17 00:00:00 2001 From: Elias Pipping <elias.pipping@fu-berlin.de> Date: Tue, 11 Feb 2014 12:53:39 +0100 Subject: [PATCH] [Cleanup] Allow vtk writer to be const --- src/one-body-sample.cc | 4 ++-- src/vtk.cc | 14 +++++--------- src/vtk.hh | 6 ++---- src/vtk_tmpl.cc | 4 ++-- 4 files changed, 11 insertions(+), 17 deletions(-) diff --git a/src/one-body-sample.cc b/src/one-body-sample.cc index 7e494304..3dd8bf6a 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 f1a1e6df..0155384e 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 a5b62db3..ffa89983 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 027d42f9..2b193004 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; -- GitLab