[petsc-dev] Jed!!!

Barry Smith bsmith at mcs.anl.gov
Sun Apr 27 10:18:33 CDT 2014


On Apr 26, 2014, at 11:54 PM, Jed Brown <jed at jedbrown.org> wrote:

> Barry Smith <bsmith at mcs.anl.gov> writes:
> 
>>   Mat nest is just an optimization. That, BTW makes it impossible to do the simplest tests of your code!!
> 
> It is intended to be used with MatGetLocalSubMatrix and
> MatSetValuesLocal.  It would be significant complexity (including memory
> scalability) to support MatSetValues, and supporting that mode would
> encourage people to write code that needs refactoring to perform.  At
> least that was my thinking.  If you are assembling with a global
> MatSetValues, MATNEST doesn't offer much so just don't use it.
> 
> How do you want to change this?

  Somehow have a way of testing the resulting Jacobian against a “known” accurate one. We all know how users fuck up Jacobians; given that this one is even more complicated to build we sure as hell should have a way of comparing it to a finite difference Jacobian. And for that scalability and efficiency don’t mater.


> 
>> [0]PETSC ERROR: --------------------- Error Message --------------------------------------------------------------
>> [0]PETSC ERROR: No support for this operation for this object type
>> [0]PETSC ERROR: Mat type nest
>> [0]PETSC ERROR: See http://www.mcs.anl.gov/petsc/documentation/faq.html for trouble shooting.
>> [0]PETSC ERROR: Petsc Development GIT revision: v3.4.4-4136-gd798c81  GIT Date: 2014-04-25 16:33:06 -0500
>> [0]PETSC ERROR: ./ogs on a arch-mpich named es by bsmith Sat Apr 26 18:11:09 2014
>> [0]PETSC ERROR: Configure options --download-metis --download-parmetis --download-superlu_dist LIBS=/usr/lib/libmpl.a PETSC_ARCH=arch-mpich --download-hypre
>> [0]PETSC ERROR: #1 MatSetValues() line 1117 in /sandbox/bsmith/petsc/src/mat/interface/matrix.c
>> [0]PETSC ERROR: #2 SNESComputeJacobianDefault() line 120 in /sandbox/bsmith/petsc/src/snes/interface/snesj.c
>> [0]PETSC ERROR: ------------------------------------------------
>> #3 SNESSolve_Test() line 64 in /sandbox/bsmith/petsc/src/snes/impls/test/snestest.c
>> [0]PETSC ERROR: #4 SNESSolve() line 3794 in /sandbox/bsmith/petsc/src/snes/interface/snes.c
>> CPU time elapsed in this process: 31.72s
>> 
>>  Very annoying. Makes me feel like I’m using trilinos




More information about the petsc-dev mailing list