[Dune] Fwd: Re: Navier-Stokes parallel with UG and YaspGrid in 2D

manuel.hofmann at iwr.uni-heidelberg.de manuel.hofmann at iwr.uni-heidelberg.de
Tue Mar 20 14:25:39 CET 2012


Hi Martin,

yes thats right I use Taylor-Hood Elements Q2/Q2 or P2/P1. As far as i
know ALUGrid does not support parallel mode in 2D. Is it hard to
program edge communication? How do I do that? Im not familiar with
parallel computing.

Regards,

Manuel


Zitat von Martin Nolte <nolte at mathematik.uni-freiburg.de>:

> Hi Manuel,
>
> I guess you're using a Taylor-Hood element with 2nd order Lagrange
> polynomials for the velocity and first order ones for the pressure. The
> 2nd order polynomials have a degree of freedom on each edge of the
> grid. To use such a code in parallel, you need to communicate data on
> the edges residing on the process borders.
>
> Unfortunately, as far as I know neither UG nor YaspGrid support
> communication of edge data. Have you tried ALUGrid?
>
> Best,
>
> Martin
>
> On 03/20/2012 10:10 AM, manuel.hofmann at iwr.uni-heidelberg.de wrote:
>> Hi,
>>
>> i tried to run the navier-stokes (cgstokes_instat) example in    
>> pdelab-howto in
>> parallel mode. However i get with YaspGrid and UGGrid some interface
>> communication errors. I used UG-3.9.1-patch7.
>>
>> [findDDDInterfaces_:/home/mhofmann/diplomarbeit/dev/dune/dune-grid/dune/grid/uggrid.hh:968]:
>> Edge communication not supported for interfaces of type all / all interface
>>
>> [comm:/home/mhofmann/diplomarbeit/dev/dune/dune-grid/dune/grid/yaspgrid.hh:2439]:
>> interface communication not implemented
>>
>> I tried ISTLBackend_OVLP_BCGS_ILU0 and ISTLBackend_NOVLP_CG_NOPREC as linear
>> solver and newton solver of pdelab as nonlinear sovler. Both with the same
>> error message. I am using the latest dune-grid module
>>
>> This is how i load the grid with UG8(if thats important?):
>> Dune::MPIHelper& helper = Dune::MPIHelper::instance(argc, argv);
>> [...]
>> typedef Dune::UGGrid<2> GridType;
>> GridType grid;
>> std::string grid_file = "grids/cylinder.msh";
>> Dune::GridFactory<GridType> factory(&grid);
>> if(helper.rank()==0) {
>> Dune::GmshReader<GridType>::read(factory,grid_file,true,false);
>> }
>> factory.createGrid();
>> [...]
>> grid.globalRefine(parameters.domain_level);
>> if(!Dune::MPIHelper::isFake) grid.loadBalance();
>>
>> ---
>>
>> Dune::FieldVector<double,2> L(1.0);
>> Dune::FieldVector<int,2> N(1);
>> Dune::FieldVector<bool,2> B(false);
>> int overlap=1;
>> Dune::YaspGrid<2> grid(helper.getCommunicator(),L,N,B,overlap);
>> typedef Dune::YaspGrid<2>::LeafGridView GV;
>>
>>
>> Am i doing something wrong or is this still not implemented?
>>
>> Regards
>> Manuel
>>
>>
>> _______________________________________________
>> Dune mailing list
>> Dune at dune-project.org
>> http://lists.dune-project.org/mailman/listinfo/dune
>
> -- 
> Dr. Martin Nolte <nolte at mathematik.uni-freiburg.de>
>
> Universität Freiburg                                   phone:   
> +49-761-203-5630
> Abteilung für angewandte Mathematik                    fax:     
> +49-761-203-5632
> Hermann-Herder-Straße 10
> 79104 Freiburg, Germany




----- Ende der weitergeleiteten Nachricht -----






More information about the Dune mailing list