[petsc-users] Moving data between two Vecs managed using different DMDAs

Constantine Khrulev ckhroulev at alaska.edu
Tue Jul 21 14:37:45 CDT 2026


Hello,

I would like to move data between two Vecs managed by DMDAs. The DMDAs 
involved may use the same MPI Communicator or possibly different 
(possibly disjoint) MPI communicators. Crucially, Vecs may have 
different parallel decompositions but the same global size, so 
interpolation is not needed.

In other words, I would like to set up data exchange to couple 
components of our model (PISM). All components use DMDA but may use 
different communicators, domain decomposition, etc, but the same global 
grid dimensions.

Would it be reasonable to use PETSc's tools for this? And if it is, do 
you have any advice for me? I think I can accomplish this using 
DMDACreatePatchIS and VecScatter, or maybe using PetscSF.

Thank you!

-- 
Constantine



More information about the petsc-users mailing list