From fc4378080f1d9720822cbfe7365f2e9c3618a206 Mon Sep 17 00:00:00 2001 From: Marc Henry de Frahan Date: Wed, 11 Sep 2024 14:14:11 -0600 Subject: [PATCH] fix netcdf build --- amr-wind/utilities/sampling/DTUSpinnerSampler.cpp | 3 ++- amr-wind/utilities/sampling/FreeSurfaceSampler.cpp | 3 ++- amr-wind/utilities/sampling/LidarSampler.cpp | 3 ++- amr-wind/utilities/sampling/RadarSampler.cpp | 6 ++++-- amr-wind/utilities/sampling/Sampling.cpp | 3 ++- 5 files changed, 12 insertions(+), 6 deletions(-) diff --git a/amr-wind/utilities/sampling/DTUSpinnerSampler.cpp b/amr-wind/utilities/sampling/DTUSpinnerSampler.cpp index 52c3e4f58d..2d1d66a2e6 100644 --- a/amr-wind/utilities/sampling/DTUSpinnerSampler.cpp +++ b/amr-wind/utilities/sampling/DTUSpinnerSampler.cpp @@ -506,7 +506,7 @@ void DTUSpinnerSampler::output_netcdf_data( std::vector count{1, 0, AMREX_SPACEDIM}; std::vector starti{nt, 0}; std::vector counti{1, 0}; - SampleLocType locs; + SampleLocType sample_locs; sampling_locations(sample_locs); auto xyz = grp.var("points"); @@ -516,6 +516,7 @@ void DTUSpinnerSampler::output_netcdf_data( count[1] = num_points(); counti[1] = num_points(); + const auto& locs = sample_locs.locations(); xyz.put(locs[0].data(), start, count); auto n_samples = m_beam_points * m_ntotal; diff --git a/amr-wind/utilities/sampling/FreeSurfaceSampler.cpp b/amr-wind/utilities/sampling/FreeSurfaceSampler.cpp index aa0fcdf224..09e1b19418 100644 --- a/amr-wind/utilities/sampling/FreeSurfaceSampler.cpp +++ b/amr-wind/utilities/sampling/FreeSurfaceSampler.cpp @@ -692,10 +692,11 @@ void FreeSurfaceSampler::output_netcdf_data( // Write the coordinates every time std::vector start{nt, 0, 0}; std::vector count{1, 0, AMREX_SPACEDIM}; - SampleLocType locs; + SampleLocType sample_locs; sampling_locations(sample_locs); auto xyz = grp.var("points"); count[1] = num_output_points(); + const auto& locs = sample_locs.locations(); xyz.put(locs[0].data(), start, count); } #else diff --git a/amr-wind/utilities/sampling/LidarSampler.cpp b/amr-wind/utilities/sampling/LidarSampler.cpp index 8af942c100..7e65807a3e 100644 --- a/amr-wind/utilities/sampling/LidarSampler.cpp +++ b/amr-wind/utilities/sampling/LidarSampler.cpp @@ -109,10 +109,11 @@ void LidarSampler::output_netcdf_data( // Write the coordinates every time std::vector start{nt, 0, 0}; std::vector count{1, 0, AMREX_SPACEDIM}; - SampleLocType locs; + SampleLocType sample_locs; sampling_locations(sample_locs); auto xyz = grp.var("points"); count[1] = num_points(); + const auto& locs = sample_locs.locations(); xyz.put(locs[0].data(), start, count); } #else diff --git a/amr-wind/utilities/sampling/RadarSampler.cpp b/amr-wind/utilities/sampling/RadarSampler.cpp index 95c5d24af6..2334d28de9 100644 --- a/amr-wind/utilities/sampling/RadarSampler.cpp +++ b/amr-wind/utilities/sampling/RadarSampler.cpp @@ -542,10 +542,11 @@ void RadarSampler::output_netcdf_data( std::vector start{nt, 0, 0}; std::vector count{1, 0, AMREX_SPACEDIM}; - SampleLocType locs; + SampleLocType sample_locs; cone_axis_locations(sample_locs); count[1] = num_output_points(); auto xyz = grp.var("points"); + const auto& locs = sample_locs.locations(); xyz.put(locs[0].data(), start, count); if (m_output_cone_points) { @@ -556,7 +557,8 @@ void RadarSampler::output_netcdf_data( sampling_locations(conelocs); cone_count[1] = num_points(); auto cone_xyz = grp.var("conepoints"); - cone_xyz.put(conelocs[0].data(), cone_start, cone_count); + const auto& clocs = sample_locs.locations(); + cone_xyz.put(clocs[0].data(), cone_start, cone_count); } } diff --git a/amr-wind/utilities/sampling/Sampling.cpp b/amr-wind/utilities/sampling/Sampling.cpp index 6ce9d3c9f1..7e7b928f48 100644 --- a/amr-wind/utilities/sampling/Sampling.cpp +++ b/amr-wind/utilities/sampling/Sampling.cpp @@ -470,13 +470,14 @@ void Sampling::prepare_netcdf_file() { const std::vector start{0, 0}; std::vector count{0, AMREX_SPACEDIM}; - SampleLocType locs; for (const auto& obj : m_samplers) { auto grp = ncf.group(obj->label()); obj->populate_netcdf_metadata(grp); + SampleLocType sample_locs; obj->output_locations(sample_locs); auto xyz = grp.var("coordinates"); count[0] = obj->num_output_points(); + const auto& locs = sample_locs.locations(); xyz.put(locs[0].data(), start, count); } }