Thanks Jed. Being able to apply other pointwise constraints will be really 
helpful, even through implementation of a custom project function .Augmented 
lagrangian for the one extra constraint really ruins my convergence. Subramanya 
> From: [email protected]
> To: [email protected]; [email protected]
> CC: [email protected]
> Subject: RE: [petsc-users] Extending PETSC-SNES-VI to linear inequality 
> constraints,
> Date: Mon, 23 Dec 2013 21:54:42 -0700
> 
> subramanya sadasiva <[email protected]> writes:
> 
> > Hi Jed, I was just looking through the SNES documentation, I came
> > across SNESLineSearchSetVIFunctions. Is there an example of the use of
> > this function to implement and arbitrary projection?  Can I use this
> > to implement a function that projects the solution back into the
> > feasible region? I am assuming this should be able to handle simple
> > linear inequality constraints of the type that I have, which can be
> > applied pointwise.
> 
> Hmm, that interface is currently used by SNESVI *implementations* to
> communicate information to the SNESLineSearch object.  So while it may
> work to provide a custom projection, the current code will overwrite it,
> e.g., SNESSolve_VINEWTONRSLS in virs.c:
> 
>   ierr = SNESLineSearchSetVIFunctions(snes->linesearch, 
> SNESVIProjectOntoBounds, SNESVIComputeInactiveSetFnorm);CHKERRQ(ierr);
> 
> Maybe Peter has further thoughts about adding other constraints to the
> SNESVI interface.  The restriction to simple bound constraints is a
> significant impediment, preventing its use for elastic contact and other
> applications.
                                          

Reply via email to