Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.

Slides:



Advertisements
Similar presentations
Machine Learning and Data Mining Linear regression
Advertisements

A Discrete Adjoint-Based Approach for Optimization Problems on 3D Unstructured Meshes Dimitri J. Mavriplis Department of Mechanical Engineering University.
CSCI 347 / CS 4206: Data Mining Module 07: Implementations Topic 03: Linear Models.
Use of Kalman filters in time and frequency analysis John Davis 1st May 2011.
Stability Analysis Algorithms for Large-Scale Applications Andy Salinger, Roger Pawlowski, Ed Wilkes Louis Romero, Rich Lehoucq, John Shadid Sandia National.
Engineering Optimization – Concepts and Applications Engineering Optimization Concepts and Applications Fred van Keulen Matthijs Langelaar CLA H21.1
Problem Uncertainty quantification (UQ) is an important scientific driver for pushing to the exascale, potentially enabling rigorous and accurate predictive.
ENGG 1801 Engineering Computing MATLAB Lecture 7: Tutorial Weeks Solution of nonlinear algebraic equations (II)
Newton's Method for Functions of Several Variables
Linear and generalised linear models
Study of Sparse Online Gaussian Process for Regression EE645 Final Project May 2005 Eric Saint Georges.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
MS17 A Case Study on the Vertical Integration of Trilinos Solver Algorithms with a Production Application Code Organizer: Roscoe A. Bartlett Sandia National.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
LTE Review (September 2005 – January 2006) January 17, 2006 Daniel M. Dunlavy John von Neumann Fellow Optimization and Uncertainty Estimation (1411) (8962.
Page 1 Trilinos Software Engineering Technologies and Integration Capability Area Overview Roscoe A. Bartlett Department.
Sandia National Laboratories is a multi-program laboratory managed and operated by Sandia Corporation, a wholly owned subsidiary of Lockheed Martin Corporation,
Pamgen A Parallel Finite-Element Mesh Generation Library TUG 2008 Monday, October 21, 2008 David Hensinger (SNL) Sandia is a multiprogram laboratory operated.
1 Hybrid methods for solving large-scale parameter estimation problems Carlos A. Quintero 1 Miguel Argáez 1 Hector Klie 2 Leticia Velázquez 1 Mary Wheeler.
Continuation Methods for Performing Stability Analysis of Large-Scale Applications LOCA: Library Of Continuation Algorithms Andy Salinger Roger Pawlowski,
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
Trilinos: From a User’s Perspective Russell Hooper Nov. 7, 2007 SAND P Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed.
S.S. Yang and J.K. Lee FEMLAB and its applications POSTEC H Plasma Application Modeling Lab. Oct. 25, 2005.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
Page 1 Trilinos Software Engineering Technologies and Integration Numerical Algorithm Interoperability and Vertical Integration –Abstract Numerical Algorithms.
Large-Scale Stability Analysis Algorithms Andy Salinger, Roger Pawlowski, Ed Wilkes Louis Romero, Rich Lehoucq, John Shadid Sandia National Labs Albuquerque,
Newton's Method for Functions of Several Variables Joe Castle & Megan Grywalski.
Page 1 Embedded Sensitivities and Optimization From Research to Applications Roscoe A. Bartlett Department of Optimization & Uncertainty Estimation Sandia.
Strategic Goals: To align the many efforts at Sandia involved in developing software for the modeling and simulation of physical systems (mostly PDEs):
The Red Storm High Performance Computer March 19, 2008 Sue Kelly Sandia National Laboratories Abstract: Sandia National.
1 ModelEvaluator Scalable, Extendable Interface Between Embedded Nonlinear Analysis Algorithms and Applications Roscoe A. Bartlett Department of Optimization.
Getting Started with MATLAB 1. Fundamentals of MATLAB 2. Different Windows of MATLAB 1.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
Strategies for Solving Large-Scale Optimization Problems Judith Hill Sandia National Laboratories October 23, 2007 Modeling and High-Performance Computing.
On the Use of Sparse Direct Solver in a Projection Method for Generalized Eigenvalue Problems Using Numerical Integration Takamitsu Watanabe and Yusaku.
Framework for MDO Studies Amitay Isaacs Center for Aerospace System Design and Engineering IIT Bombay.
© 2011 Autodesk Freely licensed for use by educational institutions. Reuse and changes require a note indicating that content has been modified from the.
Danny Dunlavy, Andy Salinger Sandia National Laboratories Albuquerque, New Mexico, USA SIAM Parallel Processing February 23, 2006 SAND C Sandia.
S ystems Analysis Laboratory Helsinki University of Technology Automated Solution of Realistic Near-Optimal Aircraft Trajectories Using Computational Optimal.
Scalable Linear Algebra Capability Area Michael A. Heroux Sandia National Laboratories Sandia is a multiprogram laboratory operated by Sandia Corporation,
New Features in ML 2004 Trilinos Users Group Meeting November 2-4, 2004 Jonathan Hu, Ray Tuminaro, Marzio Sala, Michael Gee, Haim Waisman Sandia is a multiprogram.
1 Stratimikos Unified Wrapper to Trilinos Linear Solvers and Preconditioners Roscoe A. Bartlett Department of Optimization & Uncertainty Estimation Sandia.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
Domain Decomposition in High-Level Parallelizaton of PDE codes Xing Cai University of Oslo.
Data Modeling Patrice Koehl Department of Biological Sciences National University of Singapore
Connections to Other Packages The Cactus Team Albert Einstein Institute
Linear Algebra Libraries: BLAS, LAPACK, ScaLAPACK, PLASMA, MAGMA
Trilinos Strategic (and Tactical) Planning Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United.
An Overview of Belos and Anasazi October 16 th, 11-12am Heidi Thornquist Teri Barth Rich Lehoucq Mike Heroux Computational Mathematics and Algorithms Sandia.
Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin Company, for the United States Department of Energy’s National Nuclear.
Chapter 2-OPTIMIZATION
Photos placed in horizontal position with even amount of white space between photos and header Sandia National Laboratories is a multi-program laboratory.
Chapter 2-OPTIMIZATION G.Anuradha. Contents Derivative-based Optimization –Descent Methods –The Method of Steepest Descent –Classical Newton’s Method.
Status of Reference Network Simulations John Dale ILC-CLIC LET Beam Dynamics Workshop 23 June 2009.
Multifidelity Optimization Using Asynchronous Parallel Pattern Search and Space Mapping Techniques Genetha Gray*, Joe Castro i, Patty Hough*, and Tony.
Algebraic Solvers in FASTMath Argonne Training Program on Extreme-Scale Computing August 2015.
What’s New for Epetra Michael A. Heroux Sandia National Laboratories Sandia is a multiprogram laboratory operated by Sandia Corporation, a Lockheed Martin.
Page 1 Open-Source Software for Interfacing and Support of Large-scale Embedded Nonlinear Optimization Roscoe A. Bartlett
On the Path to Trinity - Experiences Bringing Codes to the Next Generation ASC Platform Courtenay T. Vaughan and Simon D. Hammond Sandia National Laboratories.
A Kriging or Gaussian Process emulator has: an unadjusted mean (frequently a least squares fit: ), a correction / adjustment to the mean based on data,
Xing Cai University of Oslo
Many-core Software Development Platforms
Meros: Software for Block Preconditioning the Navier-Stokes Equations
ModelEvaluator Scalable, Extendable Interface Between Embedded Nonlinear Analysis Algorithms and Applications Roscoe A. Bartlett Department of Optimization.
Trilinos Software Engineering Technologies and Integration
ENGG 1801 Engineering Computing
Embedded Nonlinear Analysis Tools Capability Area
Multiple features Linear Regression with multiple variables
Multiple features Linear Regression with multiple variables
Presentation transcript:

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-94AL Eric Phipps Andy Salinger, Roger Pawlowski 9233 – Computational Sciences Trilinos User Group Meeting October 16, 2003 Continuation and Bifurcation Methods Using LOCA

Why Do We Need Stability Analysis Algorithms for Large-Scale Applications? Nonlinear systems exhibit instabilities, e.g.: Multiple steady states Ignition Symmetry Breaking Onset of Oscillations Phase Transitions These phenomena must be understood in order to perform computational design and optimization. Established stability/bifurcation analysis libraries exist: AUTO (Doedel) CONTENT (Kuznetsov) MATCONT (Govaerts) We need algorithms, software, and experience to impact ASCI- and SciDAC-sized applications. Stability/bifurcation analysis provides qualitative information about time evolution of nonlinear systems by computing families of steady-state solutions. LOCA: Library of Continuation Algorithms

History LOCA library grew out of continuation code in MPSalsa –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 –~200 downloads Complete rewrite in C++ around NOX framework began September 2002, part of Trilinos release September 2003.

LOCA: Library or Continuation Algorithms LOCA provides: Parameter Continuation: Tracks a family of steady state solutions with parameter Linear Stability Analysis: Calculates leading eigenvalues via Anasazi Bifurcation Tracking: Locates neutral stability point (x,p) and tracks as a function of a second parameter T max Reaction Rate, r r Second parameter, h 1 1 3

Pseudo Arc-length Continuation Solves for Solution and Parameter Simultaneously

Codimension 1 Bifurcations Turning Point Pitchfork Hopf Combustion Buckling of an Arch Buckling of a Beam Pattern formation Cell differentiation (morphogenesis) Vortex Shedding Predator-Prey models Puberty

LOCA Designed for Easy Linking to Existing Newton-based Applications Algorithmic choices for LOCA: Must work with iterative (approximate) linear solvers on distributed memory machines Non-Invasive Implementation (e.g. matrix blind) Should avoid or limit:  Requiring more derivatives  Changing sparsity pattern of matrix  Increasing memory requirements LOCA targets existing codes that are: Steady-State, Nonlinear Newton’s Method Large-Scale, Parallel

Bordering Algorithms Meet these Requirements Full Newton Algorithm Bordering Algorithm Pseudo Arc-length Continuation

Bordering Algorithms Meet these Requirements … but 4 solves of per Newton Iteration are used to drive singular! Turning Point Bifurcation Full Newton Algorithm Bordering Algorithm

Abstraction of Continuation Process Given initial guess, step size –Solve nonlinear equations to find 1 st point on curve –while !stop Compute predictor Compute predicted point Solve continuation equations for using as initial guess If successful –Postprocess (e.g., compute eigenvalues, output data) –Increase step size Else –Decrease step size –Restore previous solution End if If or or –stop = true –End while LOCA Stepper Predictor modules Step size modules NOX + continuation/ bifurcation groups

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 interfaces. NOX Nonlinear Solver (Kolda, Pawlowski, Hooper, Shadid) GroupVector computeF()dot() computeJacobian()scale() computeNewton()norm() applyJacobianInverse()update()

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 component. 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 Super Vectors and Super Groups

LOCA::Continuation::ArclengthGroup::applyJacobianInverse(const NOX::Abstract::Vector& input, NOX::Abstract::Vector& result) const { const LOCA::Continuation::ExtendedVector& con_input = dynamic_cast (input); LOCA::Continuation::ExtendedVector& con_result = dynamic_cast (result); const NOX::Abstract::Vector& input_x = con_input.getXVec(); double input_p = con_input.getParam(); NOX::Abstract::Vector& result_x = con_result.getXVec(); double& result_p = con_result.getParam(); NOX::Abstract::Vector* b = input_x.clone(NOX::ShapeCopy); underlyingGroupPtr->applyJacobianInverse(input_x, result_x); underlyingGroupPtr->applyJacobianInverse(*dfdpVecPtr, *b); result_p = (predictorVecPtr->getXVec().dot(result_x) – input_p) / (predictorVecPtr->getXVec().dot(*b) – predictorVecPtr->getParam()); result_x.update(-result_p, *b, 1.0); delete b; } Arc-length Group applyJacobianInverse()

Continuation Groups LOCA::Continuation::ExtendedGroup LOCA::Continuation::NaturalGroup LOCA::Continuation::ArclengthGroup LOCA::Continuation::AbstractGroup setParam() getParam() operator = () computeDfDp() computeEigenvalues() printSolution() Mandatory Default implementation available Optional NOX::Abstract::Group Concrete group

Turning Point, Pitchfork Groups LOCA::Continuation::AbstractGroup LOCA::Bifurcation::TPBord::ExtendedGroup LOCA::Bifurcation::TPBord::AbstractGroup computeDJnDp() computeDJnDxa() applySingularJacobianInverse() NOX::Abstract::Group Concrete group LOCA::Bifurcation::PitchforkBord::ExtendedGroup LOCA::Continuation::AbstractGroup

Hopf Groups LOCA::Continuation::AbstractGroup LOCA::Bifurcation::HopfBord::ExtendedGroup LOCA::Bifurcation::HopfBord::AbstractGroup applyComplex() applyComplexInverse() computeDCeDp() computeDCeDxa() NOX::Abstract::Group Concrete group LOCA::TimeDependent::AbstractGroup computeMassMatrix() applyMassMatrix() LOCA::Continuation::AbstractGroup LOCA::Bifurcation::TPBord::AbstractGroup

Interfacing NOX to the application code is 90% of the work! For continuation turning point tracking pitchfork tracking at very minimum must be able to additionally set/retrieve parameter values, save complete state of system by copying group. For Hopf tracking, must implement a complex solve: Can overload many additional methods if better techniques are available block solves singular matrix solves estimating derivatives: Interfacing Application Codes to LOCA v2.0

LOCA’s Current Capabilities Single parameter continuation –Natural –Pseudo Arc-length Bifurcations –Turning point –Pitchfork –Hopf Predictors –Constant –Tangent –Secant –Random Step size control –Constant –Adaptive Artificial Homotopy Generic interface to Anasazi Native support for –LAPACK(all intefaces) –Epetra (all except Hopf)

Salinas Example: Bending a 1D Beam 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

3D Rayleigh-Benard Problem in 5x5x1 box MPSalsa 208K unknowns 16 Processors

Where We’re Going From Here Improve robustness –Better step size control –Improved bifurcation tracking algorithms –Debugging Incorporate –Multi-vector support –Multi-parameter continuation (Henderson, IBM) –Constraint enforcement –Automatic differentiation Impact more ASCI codes –Structural mechanics