Dear Torquil

Regarding your first question you can also check the implementation of the
method get_averaged_sigmas in getfem_plasticity.cc.

Best regards
Kostas

On Thu, Nov 19, 2015 at 9:00 PM, Yves Renard <[email protected]>
wrote:

>
> Dear Torquil,
>
> Concerning Q1, its depend on which interpolation you use. The
> interpolation of the high generic assembly language perform a
> MPI_SUM_VECTOR(result)
> and divide the components for dof which are on multiple mpi regions so
> that the result is the same on each rank. It is recommended to use
> this interpolation instead of the old one for which the result remains
> distributed, yes. There is no specific function. You can use
> MPI_SUM_VECTOR(result) but you have to also sum a integer vector denoting
> the nonzero components on each rank in order to divide the multiple
> computed dofs if you want to use the same strategy than the one used in
> the interpolation of the high generic assembly language.
>
> Q2 : No this is no supported by Getfem. Moreover, I do  not see how it is
> possible in 2D and 3D for the dof that are shared with several regions ...
>
> Best regards,
>
> Yves.
>
>
> ----- Mail original -----
> De: "Torquil Macdonald Sørensen" <[email protected]>
> À: "getfem-users" <[email protected]>
> Envoyé: Jeudi 19 Novembre 2015 15:45:12
> Objet: [Getfem-users] GetFEM and MPI
>
> 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
>
> _______________________________________________
> Getfem-users mailing list
> [email protected]
> https://mail.gna.org/listinfo/getfem-users
>
_______________________________________________
Getfem-users mailing list
[email protected]
https://mail.gna.org/listinfo/getfem-users

Reply via email to