[petsc-users] Matrix assembly in SNES problem
Adolfo Rodriguez
adantra at gmail.com
Wed Jul 22 07:03:44 CDT 2020
I am trying to replace the non-linear solver in a flow simulation problem
where the matrix sparsity can change during the iterations. I tried
successfully to create the matrix within the FormJacobian function but I
have a memory leak which I don't know how to fix.
My FormJacobian function is something like this:
.. FormJacobian( ..){
matrixconstruction(); // returns csr matrix in c++ regular vectors
MatSeqAIJSetPreallocationCSR ...;
//loop over the entries and
MatSetValues;
MatAssemblyBegin();
MatAssemblyEnd();
return 0;
}
This approach works for small problems but, when dealing with large ones I
observe a memory leak. I am pretty sure that It is related to the fact that
I am creating new matrices every time FormJacobian is called but I don't
know how to destroy it between iterations.
Any suggestions?
Regards,
Adolfo
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20200722/40a3fc0f/attachment.html>
More information about the petsc-users
mailing list