PCShell interface

Barry Smith bsmith at mcs.anl.gov
Wed Jun 10 15:28:14 CDT 2009


On Jun 10, 2009, at 3:00 PM, Jed Brown wrote:

> 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).

    Yes. When you rerun make allfortranstubs it will generate the stub  
for you.

    Barry

>
> 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
> stubs.
>
> Jed
>




More information about the petsc-dev mailing list