Dear all,

I am trying to have the "solution transfer" class working on the parallel:distributed mesh. Here is the "pseudo" code leading to a dead lock where VECTOR=PETScWrappers::MPI::Vector


*******
VECTOR solution(mpi_comm,locally_owned,locally_relevant);
parallel::distributed::triangulation tria(mpi_comm);

...

parallel::distributed::SolutionTransfer<dim,VECTOR> sol_trans;
tria.set_all_refine_flags();
tria.prepare_for_coarsening_and_refinement();
sol_trans.prepare_for_coarsening_and_refinement(solution);
tria.execute_coarsening_and_refinement();

dh.distribute_dofs(fe)
VECTOR interpolated(mpi_comm,dh.n_dofs(),dh.n_locally_owned_dofs());
sol_trans(interpolated)
locally_owned = dh.locally_owned_dofs()
DoFTools::extract_locally_relevant_dofs(dh,locally_relevant)
solution.reinit(mpi_comm,locally_owned,locally_relevant)
solution = interpolated
solution.update_ghost_values()
*******

when I run the above code using two procs, only one gets out the call
sol_trans(interpolated)


Does anyone has an idea?
Thanks,
Andrea

P.S: it works with one proc...




--
Andrea Bonito
Texas A&M University
Department of Mathematics
3368 TAMU
College Station, TX 77843-3368
Office: Blocker 641F
Phone:  +1 979 862 4873
Fax:    +1 979 862 4190
Website: www.math.tamu.edu/~bonito

_______________________________________________
dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii

Reply via email to