diff --git a/components/eamxx/src/share/field/field_impl.hpp b/components/eamxx/src/share/field/field_impl.hpp index adbe36538c8..87c4afcf711 100644 --- a/components/eamxx/src/share/field/field_impl.hpp +++ b/components/eamxx/src/share/field/field_impl.hpp @@ -398,7 +398,7 @@ deep_copy_impl (const Field& src) const { if (rank == 0) { auto v = get_view< ST,HD>(); auto v_src = src.get_view(); - v() = v_src(); + Kokkos::deep_copy(v,v_src); return; } diff --git a/components/eamxx/src/share/grid/remap/coarsening_remapper.cpp b/components/eamxx/src/share/grid/remap/coarsening_remapper.cpp index 7d6590c327a..bd775f68e07 100644 --- a/components/eamxx/src/share/grid/remap/coarsening_remapper.cpp +++ b/components/eamxx/src/share/grid/remap/coarsening_remapper.cpp @@ -37,7 +37,13 @@ CoarseningRemapper (const grid_ptr_type& src_grid, const auto& src_data = src_grid->get_geometry_data(name); const auto& src_data_fid = src_data.get_header().get_identifier(); const auto& layout = src_data_fid.get_layout(); - if (layout.tags()[0]!=COL) { + if (layout.tags().empty()) { + // This is a scalar field, so won't be coarsened. + // Simply copy it in the tgt grid, but we still need to assign the new grid name. + FieldIdentifier tgt_data_fid(src_data_fid.name(),src_data_fid.get_layout(),src_data_fid.get_units(),m_tgt_grid->name()); + auto tgt_data = m_coarse_grid->create_geometry_data(tgt_data_fid); + tgt_data.deep_copy(src_data); + } else if (layout.tags()[0]!=COL) { // Not a field to be coarsened (perhaps a vertical coordinate field). // Simply copy it in the tgt grid, but we still need to assign the new grid name. FieldIdentifier tgt_data_fid(src_data_fid.name(),src_data_fid.get_layout(),src_data_fid.get_units(),m_tgt_grid->name());