If I am correct, to do this, it will double the peak memory usage.

Is there any way no to double the peak memory usage?




Schlumberger-Private
From: Barry Smith <bsm...@petsc.dev>
Sent: Monday, August 31, 2020 1:56 PM
To: Kun Jiao <kj...@slb.com>
Cc: petsc-users <petsc-users@mcs.anl.gov>
Subject: [Ext] Re: [petsc-users] change matrix


  Kun,

   This is not possible, PETSc matrices have a static size (resizing in 
parallel is tricky so we don't support it).

   If it is more efficient to reuse the matrix entries than recompute them you 
can create a larger matrix and then loop over the old matrix calling 
MatGetRow() and then call MatSetValues() to copy that row into the new matrix.

  Barry


On Aug 31, 2020, at 1:51 PM, Kun Jiao via petsc-users 
<petsc-users@mcs.anl.gov<mailto:petsc-users@mcs.anl.gov>> wrote:

Hi Petsc Experts,

Trying to do something like appending some rows (~100 rows) to an already 
created matrix, but could not find any document about it.

Could anyone provide some information about it?

Regards,
Kun

Schlumberger-Private

Reply via email to