Hi!

I'm using an MPI-enabled GetFEM, and I have two questions. I have read

http://download.gna.org/getfem/html/homepage/userdoc/parallel.html

Partitioning of the mesh seems to work fine on my system.

Q1: I've been trying to use getfem::interpolation_function. In the
reference documentation it says: "with the parallized version
(GETFEM_PARA_LEVEL >= 2) the resulting vector V is distributed". So
after running getfem::interpolation_function, my vector v is different
on each mpi_rank, as expected. Each rank has zeroes in V for DOFs that
are not in the corresponding MPI mesh region. How do I then collect the
vector components into a vector that is common for all MPI ranks, or at
least gather them to rank 0? Is there a functon for this in GetFEM, or
must I manually loop through the MPI region and MPI_Send the vector
components to rank 0 and/or the other MPI ranks? This is OK, but I'm
just wondering if there is a built-in function in GetFEM already which I
haven't noticed.

Q2: GetFEM doesn't seem to choose a DOF ordering so that a given MPI
rank will have a continuous range of DOF indices associated to it. I
would like to pass assembled matrices to PETSc, but PETSc relies on each
MPI rank being associated with a continuous range of row numbers. Is
there a simple way to achieve this automatically in GetFEM?

Best regards and thanks,
Torquil Sørensen


_______________________________________________
Getfem-users mailing list
[email protected]
https://mail.gna.org/listinfo/getfem-users

Reply via email to