Continuation and Bifurcation Methods Using LOCA. Eric Phipps Andy Salinger, Roger Pawlowski Sandia National Laboratories Trilinos Workshop at Copper Mountain March 30, 2004.
Andy Salinger, Roger Pawlowski
Sandia National Laboratories
Trilinos Workshop at Copper Mountain
March 30, 2004
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company,for the United States Department of Energy’s National Nuclear Security Administration under contract DE-AC04-94AL85000.
Nonlinear systems exhibit instabilities, e.g.:
LOCA: Library of Continuation Algorithms
We need algorithms, software, and experience to impact ASCI- and SciDAC-sized applications.
These phenomena must be understood in order to perform computational design and optimization.
Established stability/bifurcation analysis libraries exist:
Stability/bifurcation analysis provides qualitative information about time evolution of nonlinear systems by computing families of steady-state solutions.
Andy Salinger, John Shadid, Roger Pawlowski, Louis Romero, Rich Lehoucq, Ed Wilkes, Beth Burroughs, Nawaf Bou-Rabee
LOCA 1.0 released April 2002
Written in C with wrapper functions for linking to application code
Complete rewrite in C++ around NOX framework began September 2002, part of Trilinos release September 2003.History
Reaction Rate, r
Second parameter, hLOCA: Library or Continuation Algorithms
LOCA targets existing codes that are:
Algorithmic choices for LOCA:
Full Newton Algorithm
Turning Point Bifurcation
… but 4 solves of per Newton Iteration are used to drive singular!
Solve nonlinear equations to find 1st point on curve
Compute predicted point
Solve continuation equations for using as initial guess
Postprocess (e.g., compute eigenvalues, output data)
Increase step size
Decrease step size
Restore previous solution
If or or
stop = true
End whileAbstraction of Continuation Process
Step size modules
NOX implements various methods for solving
Code to evaluate is encapsulated in a Group.
NOX solver methods are generic, and implemented in terms of
group/vector abstract interfaces:
NOX solvers will work with any group/vector that implements these
Idea: Given a vector to store and a group representing the
equations , build an extended (“super”) group representing,
e.g., pseudo arc-length continuation equations:
and a super vector to store the solution component and parameter
Super groups/vectors are generic:
All abstract group/vector methods for super groups/vectors
implemented in terms of methods of the underlying groups/vectors.
Super groups are NOX groups:
Extended nonlinear equations solved by most NOX solvers
at very minimum must be able to additionally set/retrieve parameter
values, save complete state of system by copying group.
Example problem from Salinas test suite
Original continuation run with 50 load steps
NOX/LOCA interface written by Russell Hooper
Variable step size algorithm reduced to 37 load steps
MPSalsa (Shadid et al., SNL):