PCShell interface

Jed Brown jed at 59A2.org
Wed Jun 10 15:00:57 CDT 2009

Matthew Knepley wrote:
> On Wed, Jun 10, 2009 at 11:33 AM, Jed Brown <jed at 59a2.org> wrote:
>> Barry Smith wrote:
>>>    Go ahead. This has been on the todo list for a decade.
>> I see two ways to do it.  One is to define a PCOperation enum and have
>> PCShellSetOperation (analogous to MatShell), the other is to just update
>> the current interface for void* -> PC.  The former results in less code
>> (though more changes today), but the latter offers stronger type
>> checking and is not outrageously bloated because the PC interface is
>> pretty small.  What is your preference?
> I like the latter.  I never liked the enums, but Mat has so many operations.

Good, I definitely like the type safety.

I pushed this change.  I think the fortran stub for PCShellSetContext
can now be auto-generated, but I didn't do that (is it just removing the
C from /*@C or is there another step, I hadn't looked at how Fortran
stubs are done until now).

snes/examples/tutorials/ex33f.F needs some extra files to build and I
haven't written another example to confirm that PCShellGetContext
actually works so it would be great if someone could check the Fortran


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 260 bytes
Desc: OpenPGP digital signature
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20090610/88667aa7/attachment.sig>

More information about the petsc-dev mailing list