Quick look is ok for me. Barry
On May 8, 2009, at 1:39 PM, Lisandro Dalcin wrote: > Well, it was not so easy to change the options name... > > We would need to update docs, tests, tutorial examples, and at this > point it is not clear if we could agree on better options names... > > I'm now following a different approach, hope the diff attached make it > clear enough... Just take a look to changes to SNESSetFromOptions() > > - > > > On Thu, May 7, 2009 at 10:26 PM, Barry Smith <bsmith at mcs.anl.gov> > wrote: >> >> How about? >> >> -snes_mf (means what it currently means) >> >> -snes_mf operator (means what -snes_mf_operator means) >> >> Barry >> >> On May 7, 2009, at 6:03 PM, Lisandro Dalcin wrote: >> >>> On Thu, May 7, 2009 at 6:14 PM, Jed Brown <jed at 59a2.org> wrote: >>>> >>>> Barry Smith wrote: >>>>> >>>>> I understand this. I just don't view this as a big deal worth >>>>> changing the code over. >>>> >>>> I agree. My comment was that *if* the options were to be >>>> changed, as >>>> Lisandro was suggesting, then it would be better to eliminate >>>> unnecessary options conflicts. >>>> >>> >>> Well, now that I'm actually writing the code, things are a bit more >>> clear... >>> >>> perhaps we should have just two options >>> >>> 1) -snes_mf, if passed, should be string "full" or "operator" (not >>> sure about these) >>> 2) -snes_mf_version, if passed, should be integer 1 or 2 >>> >>> In Python pseudocode (thinking options like a Python dict) >>> >>> >>> if "snes_mf" in options: >>> >>> version = options.get("snes_mf_version", 1) >>> if version == 1: >>> MatCreateSNESMF(...) >>> elif version == 2: >>> SNESDefaultMatrixFreeCreate2(...) >>> else: >>> raise PetscError >>> >>> value = options["snes_mf"] >>> if value == "operator": >>> SNESSetJacobian(J,0,0,...) >>> elif value == "full": >>> SNESSetJacobian(J,J,MatMFFDComputeJacobian) >>> else: >>> raise PetscError >>> >>> >>> Note that I expect snes_mf_version=2 (despite being MatShell >>> based) to >>> work with snes_mf="operator" >>> >>> What do you think? >>> >>> -- >>> Lisandro Dalc?n >>> --------------- >>> Centro Internacional de M?todos Computacionales en Ingenier?a >>> (CIMEC) >>> Instituto de Desarrollo Tecnol?gico para la Industria Qu?mica >>> (INTEC) >>> Consejo Nacional de Investigaciones Cient?ficas y T?cnicas (CONICET) >>> PTLC - G?emes 3450, (3000) Santa Fe, Argentina >>> Tel/Fax: +54-(0)342-451.1594 >> >> > > > > -- > Lisandro Dalc?n > --------------- > Centro Internacional de M?todos Computacionales en Ingenier?a (CIMEC) > Instituto de Desarrollo Tecnol?gico para la Industria Qu?mica (INTEC) > Consejo Nacional de Investigaciones Cient?ficas y T?cnicas (CONICET) > PTLC - G?emes 3450, (3000) Santa Fe, Argentina > Tel/Fax: +54-(0)342-451.1594 > <snes.diff>