MatGetArrayF90 returns 2d array

Barry Smith bsmith at mcs.anl.gov
Thu Jul 2 11:47:56 CDT 2009


  MatGetArray() returns access to the nonzero values of the matrix in  
a format that depends on the underlying class. It is a perfectly  
reasonable method and has been there for decades just fine.

   Barry

On Jul 1, 2009, at 5:54 PM, Matthew Knepley wrote:

> On Thu, Jul 2, 2009 at 2:36 AM, Barry Smith <bsmith at mcs.anl.gov>  
> wrote:
>
> Satish,
>
>   Could you please convert these (both the stub code and the F90  
> interface) to use a 1d array? In both 3.0.0 and petsc-dev.
>
> I am still against this, since it seems much nicer to get a 2D array
> for the dense matrix, which is the ONLY matrix for which GetArray()
> makes any sense I think.
>
>  Matt
>
>
>  Thanks
>
>  Barry
>
> On Jun 30, 2009, at 6:37 PM, Jed Brown wrote:
>
> Matthew Knepley wrote:
> I thought the idea was that MatGetArray() never applies to a sparse
> matrix.  No other sparse format supports this, does it?
>
> That's not true at all, but the result is implementation-dependent.   
> For
> example, the array for AIJ is different from the array for BAIJ.  For
> this reason, you shouldn't be calling MatGetArray unless you know the
> matrix type, but of course the F90 interface should agree with the C
> interface.
>
> Jed
>
>
>
>
>
> -- 
> 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