This would make it easier to solve 2D problems with a 3D code. It currently crashes or produces NaN because the scatter is set up incorrectly:<div><br></div><div><div>==10402== Invalid read of size 2</div><div>==10402==    at 0x4C26C2C: memcpy (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)</div>
<div>==10402==    by 0x6D87D01: opal_convertor_pack (in /usr/lib/openmpi/libmpi.so.1.0.1)</div><div>==10402==    by 0xF33D0C8: ??? (in /usr/lib/openmpi/openmpi/mca_btl_sm.so)</div><div>==10402==    by 0xEB1F1B7: ??? (in /usr/lib/openmpi/openmpi/mca_pml_ob1.so)</div>
<div>==10402==    by 0xEB0DC0C: ??? (in /usr/lib/openmpi/openmpi/mca_pml_ob1.so)</div><div>==10402==    by 0x6CD6650: PMPI_Isend (in /usr/lib/openmpi/libmpi.so.1.0.1)</div><div>==10402==    by 0x551F85A: PetscGatherMessageLengths (mpimesg.c:128)</div>
<div>==10402==    by 0x580D5AC: VecScatterCreate_PtoS (vpscat.c:1621)</div><div>==10402==    by 0x5823C9F: VecScatterCreate (vscat.c:1316)</div><div>==10402==    by 0x518A547: DACreate_3D (da3.c:957)</div><div>==10402==    by 0x51D1ACA: DASetType (dareg.c:48)</div>
<div>==10402==    by 0x5194FA7: DASetTypeFromOptions_Private (dacreate.c:65)</div><div>==10402==  Address 0xbc33562 is 498 bytes inside a block of size 516 alloc'd</div><div>==10402==    at 0x4C23918: memalign (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)</div>
<div>==10402==    by 0x53E3D3B: PetscMallocAlign (mal.c:30)</div><div>==10402==    by 0x5566432: PetscTrMallocDefault (mtr.c:192)</div><div>==10402==    by 0x580D2B4: VecScatterCreate_PtoS (vpscat.c:1601)</div><div>==10402==    by 0x5823C9F: VecScatterCreate (vscat.c:1316)</div>
<div>==10402==    by 0x518A547: DACreate_3D (da3.c:957)</div><div>==10402==    by 0x51D1ACA: DASetType (dareg.c:48)</div><div>==10402==    by 0x5194FA7: DASetTypeFromOptions_Private (dacreate.c:65)</div><div>==10402==    by 0x5195A81: DASetFromOptions (dacreate.c:131)</div>
<div>==10402==    by 0x518FFF5: DACreate3d (da3.c:1742)</div><div>==10402==    by 0x40669A: multi_init(int, char**) (multi_petsc.cpp:115)</div><div>==10402==    by 0x403AF5: main (mhd_main.cpp:351)</div></div><div><br></div>