[petsc-dev] [petsc-maint #89809] 3D DMDAs in petsc-3.2

Richard Katz richard.katz at earth.ox.ac.uk
Mon Oct 10 12:42:10 CDT 2011


>     As a temporary fix edit da3.c and remove all the lines that have /* 2d case */ in them.

This seems to resolve the problem.

Thanks,
Rich




> 
>   Barry
> 
> On Oct 10, 2011, at 4:12 AM, Richard Katz wrote:
> 
>>> summary:     cruft to handle the special case of solving a 2D problem in a 3D algorithm with stencil size > 1.  This only works in the 3D case, z-dimension
>> 
>> This sounds rather suspicious to me.
>> 
>>> the second layer of ghost points uses the first layer instead of getting the second layer.
>> 
>> I think this may be what is causing a problem in my code:
>> 
>> (gdb) n
>> 28        ierr = DMDAGetGridInfo(user->dav,&is,&js,&ks,&ie,&je,&ke,0,0,0,0);CHKERRQ(ierr);
>> (gdb) print ks
>> $1 = 0
>> (gdb) print ke
>> $2 = 7
>> (gdb) print v[8][5][5].u
>> $5 = 0.071731334082415735
>> (gdb) print v[7][5][5].u
>> $6 = 0.071731334082415735
>> 
>> it seems to only occur on the k+ processor boundary (when the next processor is in the k+ direction)
>> 
>> Cheers
>> Rich
>> 
>> 
>> 
>> 
>> 
>>> 
>>> Since I don't understand your /* 2d case */ business I leave it to you to fix
>>> 
>>> I don't understand it either and haven't tried. Maybe Ethan can take a look.
>>> 
>> 
>> ________________________________
>> Richard Foa Katz
>> Dept Earth Sciences, Univ Oxford
>> http://foalab.earth.ox.ac.uk
>> 
> 

________________________________
Richard Foa Katz
Dept Earth Sciences, Univ Oxford
http://foalab.earth.ox.ac.uk




More information about the petsc-dev mailing list