diff --git a/amr-wind/utilities/sampling/DTUSpinnerSampler.cpp b/amr-wind/utilities/sampling/DTUSpinnerSampler.cpp index 52c3e4f58d..39e685a6ae 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..5f6b4368c9 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..2e803b5f28 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..b8aaa7a5ce 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 465fab07b3..7b2b23ed7e 100644 --- a/amr-wind/utilities/sampling/Sampling.cpp +++ b/amr-wind/utilities/sampling/Sampling.cpp @@ -470,14 +470,15 @@ void Sampling::prepare_netcdf_file() { const std::vector start{0, 0}; std::vector count{0, AMREX_SPACEDIM}; - SampleLocType sample_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(); - xyz.put(locs[0].data(), start, count); + const auto & locs = sample_locs.locations(); + xyz.put(locs[0].data(), start, count); } }