From 060dc7e49d9fae9f4cb021df8a98bc4382d24de5 Mon Sep 17 00:00:00 2001 From: Jan Breuer Date: Mon, 25 Nov 2024 13:40:24 +0100 Subject: [PATCH] Fix radial coordinate output to adhere to CADET file format --- src/casema-cli.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/casema-cli.cpp b/src/casema-cli.cpp index 6dc6905..43d1521 100644 --- a/src/casema-cli.cpp +++ b/src/casema-cli.cpp @@ -205,8 +205,9 @@ void writeMetaAndResultToH5(const ProgramOptions& opts, const casema::model::Mod for (int j = 0; j < numUnits; ++j) { oss << std::setw(3) << std::setfill('0') << j; - writer->pushGroup("unit_" + oss.str()); + std::string unitName = "unit_" + oss.str(); oss.str(""); + writer->pushGroup(unitName); const int nPorts = std::max(1, sys->unitOperation(j)->numOutletPorts()); @@ -231,12 +232,14 @@ void writeMetaAndResultToH5(const ProgramOptions& opts, const casema::model::Mod { writer->popGroup(); // pop solution writer->pushGroup("coordinates"); + writer->pushGroup(unitName); for (int i = 0; i < nPorts; i++) solutionBuffer[i] = static_cast(sys->unitOperation(j)->secondaryCoordinates()[i]); writer->writeVectorDouble("RADIAL_COORDINATES", nPorts, solutionBuffer.data(), 1, nPorts); + writer->popGroup(); // pop unit_xxx writer->popGroup(); // pop coordinates writer->pushGroup("solution");