[petsc-users] questions about snes ex3.c

Barry Smith bsmith at mcs.anl.gov
Wed Apr 2 14:26:39 CDT 2014


On Apr 2, 2014, at 1:48 PM, Xiangdong <epscodes at gmail.com> wrote:

> 
> 
> 
> On Wed, Apr 2, 2014 at 9:50 AM, Matthew Knepley <knepley at gmail.com> wrote:
> On Wed, Apr 2, 2014 at 8:23 AM, Xiangdong <epscodes at gmail.com> wrote:
> Hello everyone,
> 
> I have two quick questions about src/snes/examples/tutorials/ex3.c.
> 
> 1) In line 150-151, why do we need to call MatSeqAIJSetPreallocation before MatMPIAIJSetPreallocation? I found that without the seqaij call, the program crashed. However, the mat J we want to create is the mpiaij.
> 
> 2) In line 390-397, it sets the values of the residue function at the boundary. Where do these values come from? In other words, I am not clear about ff[0]=xx[0] and ff[xs+xm-1] = xx[xs+xm-1] - 1.0;

   At  0 we want to force the solution to be 0. and at 1 we want to force the solution to be 1. So this is just a way to apply Dirichlet boundary conditions.

   Barry

> 
> These are just the BC we choose.
> 
> The exact solution used in the code is u=x^3. The thing not clear to me is how this is  translated to the boundary conditions I mentioned above. More like a formulation question, in fact.
> 
> Thank you.
> 
> Xiangdong  
>  
> 
>   Matt
>  
> Thank you.
> 
> Xiangdong
> 
> 
> 
> -- 
> What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.
> -- Norbert Wiener
> 



More information about the petsc-users mailing list