diff --git a/CHANGELOG.md b/CHANGELOG.md index bd02d0c5ff27..a8adea6e1986 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -32,6 +32,7 @@ - [[PR 1172]](https://github.com/parthenon-hpc-lab/parthenon/pull/1172) Make parthenon manager robust against external MPI init and finalize calls ### Fixed (not changing behavior/API/variables/...) +- [[PR 1249]](https://github.com/parthenon-hpc-lab/parthenon/pull/1249) Fix flux metadata propagation in sparse pools - [[PR 1241]](https://github.com/parthenon-hpc-lab/parthenon/pull/1241) Emit an error message when using uninitialized multigrid blocks - [[PR 1248]](https://github.com/parthenon-hpc-lab/parthenon/pull/1248) Fix edge case regarding AMR de-refinement logic - [[PR 1240]](https://github.com/parthenon-hpc-lab/parthenon/pull/1240) Fix I/O for CellMemAligned variables diff --git a/src/interface/sparse_pool.cpp b/src/interface/sparse_pool.cpp index 12897c5659fe..7391b3634149 100644 --- a/src/interface/sparse_pool.cpp +++ b/src/interface/sparse_pool.cpp @@ -57,10 +57,13 @@ MakeSparseVarMetadataImpl(Metadata *in, const std::vector &shape, const MetadataFlag *vector_tensor, const std::vector &component_labels) { // copy shared metadata + auto flx_metadata = in->IsSet(Metadata::WithFluxes) ? in->GetSPtrFluxMetadata() + : std::make_shared(); auto this_metadata = std::make_shared( - in->Flags(), shape.size() > 0 ? shape : in->Shape(), + in->Flags(), flx_metadata->Flags(), shape.size() > 0 ? shape : in->Shape(), component_labels.size() > 0 ? component_labels : in->getComponentLabels(), - in->getAssociated(), in->GetRefinementFunctions()); + in->getAssociated(), in->GetRefinementFunctions(), + flx_metadata->GetRefinementFunctions()); this_metadata->SetSparseThresholds(in->GetAllocationThreshold(), in->GetDeallocationThreshold(),