← Back to team overview

dolfin team mailing list archive

Re: [Bug 425282] [NEW] Handle PETSc command-line options in Python

 

On Sun, Sep 06, 2009 at 04:56:59PM -0000, Johan Hake wrote:
> On Sunday 06 September 2009 18:36:32 logg wrote:
> > Public bug reported:
> >
> > PETSc command-line options like --petsc.foo 3 are not handled in Python:
> >
> >   StandardError: unknown option petsc.info
> >
> > Don't know why this doesn't work in Python since the Python interface seems
> > to call the C++ implementation which handles PETSc command-line options.
> >
> > ** Affects: dolfin
> >      Importance: Medium
> >      Assignee: Johan Hake (johan-hake)
> >          Status: New
> >
>
> How should it look like when this works? Do we get any message from PETSc that
> it has got a parameter?

Yes, at least when PETSc runs in verbose mode. That can be done by
passing the -info command-line argument to PETSc. :-)

> Or is it the dolfin part of the parameter system that does not get to parse
> the parameter correctly?

My fault. This is not a bug. I got confused as to what the demo is
actually doing. I used another test program when I tested the
command-line parsing for PETSc in C++. The "problem" is that the command-line
is parsed by application_parameters, not by dolfin::parameters and
options are only filtered out for PETSc for the global parameter set,
not for other parameters like application_parameters.

The following works fine:

  python -c "from dolfin import *; parameters.parse()" --petsc.info

I'm closing the bug.

By the way, very nifty with

  parameters.foo = 1.0

etc instead of parameters["foo"] = 1.0. :-)

--
Anders

-- 
Handle PETSc command-line options in Python
https://bugs.launchpad.net/bugs/425282
You received this bug notification because you are subscribed to DOLFIN.

Status in DOLFIN: Invalid

Bug description:
PETSc command-line options like --petsc.foo 3 are not handled in Python:

  StandardError: unknown option petsc.info

Don't know why this doesn't work in Python since the Python interface seems
to call the C++ implementation which handles PETSc command-line options.


Follow ups

References