From 5784ea2b7f80c58c8bfad58233e53a00b99aeaff Mon Sep 17 00:00:00 2001 From: odlomax Date: Tue, 24 Sep 2024 21:14:09 +0100 Subject: [PATCH] Fixed ordering of fixup_halos and halo_exhange in StructuredColumns.cc --- src/atlas/functionspace/detail/StructuredColumns.cc | 8 ++++---- .../interpolation/test_interpolation_spherical_vector.cc | 1 - 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/atlas/functionspace/detail/StructuredColumns.cc b/src/atlas/functionspace/detail/StructuredColumns.cc index 54b215feb..6c309b032 100644 --- a/src/atlas/functionspace/detail/StructuredColumns.cc +++ b/src/atlas/functionspace/detail/StructuredColumns.cc @@ -830,20 +830,20 @@ void dispatch_adjointHaloExchange(Field& field, const parallel::HaloExchange& ha const StructuredColumns& fs) { FixupHaloForVectors fixup_halos(fs); if (field.datatype() == array::DataType::kind()) { - halo_exchange.template execute_adjoint(field.array(), false); fixup_halos.template apply(field); + halo_exchange.template execute_adjoint(field.array(), false); } else if (field.datatype() == array::DataType::kind()) { - halo_exchange.template execute_adjoint(field.array(), false); fixup_halos.template apply(field); + halo_exchange.template execute_adjoint(field.array(), false); } else if (field.datatype() == array::DataType::kind()) { - halo_exchange.template execute_adjoint(field.array(), false); fixup_halos.template apply(field); + halo_exchange.template execute_adjoint(field.array(), false); } else if (field.datatype() == array::DataType::kind()) { - halo_exchange.template execute_adjoint(field.array(), false); fixup_halos.template apply(field); + halo_exchange.template execute_adjoint(field.array(), false); } else { throw_Exception("datatype not supported", Here()); diff --git a/src/tests/interpolation/test_interpolation_spherical_vector.cc b/src/tests/interpolation/test_interpolation_spherical_vector.cc index 16dbdabf9..fe48b47dd 100644 --- a/src/tests/interpolation/test_interpolation_spherical_vector.cc +++ b/src/tests/interpolation/test_interpolation_spherical_vector.cc @@ -290,7 +290,6 @@ void testInterpolation(const Config& config) { auto sourceAdjointView = array::make_view(sourceAdjoint); sourceAdjointView.assign(0.); - sourceAdjoint.set_dirty(false); interp.execute_adjoint(sourceAdjoint, targetAdjoint); // Check fields for nans or +/-inf