[Trilinos-Users] [EXTERNAL] Parameter sensitivity framework

Dave Makhija makhijad at colorado.edu
Tue Oct 7 14:47:46 MDT 2014


Andy,

That information is very helpful, thank you.

Dave

On Fri, Oct 3, 2014 at 1:59 PM, Salinger, Andrew <agsalin at sandia.gov> wrote:

>
>  Dave,
>
>  Piro attempts to provide a uniform interface around several solvers:
> NOX nonlinear solves, LOCA continuation and bifurcation tracking,
> Rythmos time integration,  Stokhos stochastic-Galerkin, and soon
> the Rol PDE-constrained optimization code.
>
>  In all cases, Piro solvers require a ModelEvaluator interface to the
> application code, so the solvers can query the application for
> residual vector, jacobian matrix, responses (such as objective functions),
> response gradients, etc.
>
>  We have attempted to provide sensitivity analysis capabilities as we
> go, so that we not only get the solution, but its sensitivity w.r.t.
> parameters, and the responses, and their sensitivities. I think we have
> complete functionality for the steady-state capabilities (NOX and LOCA).
> My memory is that for transient problems (Rythmos), we can compute
> sensitivities
> of the solution w.r.t parameters, and sensitivities of a terminal response
> (one that is only a function of the final solution). But we can not
> currently
> calculate sensitivities of an integrated response that accumulates over
> the run. We would love to add this in. We have just started getting adjoint
> sensitivities for steady problems, so this code exists but has not been
> matured.
> Piro/Rythmos does not have any code for adjoint sensitivities of transient
> runs
> and there is no planned work to do this.
>
>  One part that works well is that all of these Piro solvers can be
> wrapped by the
> Piro Analysis method, and can be driven by the Dakota toolkit for
> Optimization and
> sampling UQ. The sensitivity analysis of responses are exactly the
> gradients of
> the objective function (same math, different vocabulary) for gradient-based
> optimization algorithms.
>
>  The examples in Piro are minimal, mostly for a handful of ODEs. We use
> Piro
> extensively in the Albany code (see gahansen/Albany on github). This might
> be a difficult implementation to learn from, but I don't know of any
> implementations
> of intermediate complexity between the simple piro/test problems and
> Albany.
>
>  Hope this is helpful.
> Andy Salinger
>
>   From: Dave Makhija <makhijad at colorado.edu>
> Date: Wednesday, October 1, 2014 11:42 PM
> To: "trilinos-users at software.sandia.gov" <
> trilinos-users at software.sandia.gov>
> Subject: [EXTERNAL] [Trilinos-Users] Parameter sensitivity framework
>
>   Trilinos mailing list,
>
>  I am about to start building a framework to compute transient parameter
> sensitivities for application to design optimization, UQ, etc. with
> emphasis on multi-physics problems. It seems similar to the "Piro" package.
> Is there a collection of compelling Piro examples?
>
>  My background is in topology optimization and I have been a satisfied
> Epetra/Amesos/Aztec user for the last few years, so I'm excited to see how
> well Piro simplifies the implementation of sensitivity analysis.
>
>  Cheers,
>
>  Dave
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://software.sandia.gov/pipermail/trilinos-users/attachments/20141007/3418bb96/attachment.html>


More information about the Trilinos-Users mailing list