LOCA: Library of Continuation Algorithms 

What is LOCA? 

LOCA is a new software library for performing bifurcation analysis of large-scale applications. The source code has been available for download since April 19, 2002.

LOCA 1.1 Now Available 10/29/2002

  • Multi-Parameter continuation capability via Henderson's MF library , which is now included with the download of LOCA 1.1.
  • Ability to restart turning point talgorithm with previous null vector.
  • LOCA Overview 

    The algorithms in LOCA are being designed as part of an ongoing research project at Sandia National Laboratories in Albuquerque into scalable stability analysis algorithms. When implemented with an application code, LOCA enables the tracking of solution branches as a function of system parameters and the direct tracking of bifurcation points. LOCA (which is written in "C") is designed to drive application codes that use Newton's method to locate steady-state solutions to nonlinear problems. The algorithms are chosen to work for large problems, such as those that arise from discretizations of partial differential equations, and to run on distributed memory parallel machines. 

    The approach in LOCA for locating and tracking bifurcations begins with augmenting the residual equations defining a steady state with additional equations that describe the bifurcation. A Newton method is then formulated for this augmented system; however, instead of loading up the Jacobian matrix for the entire augmented system (a task that involved second derivatives and dense matrix rows), bordering algorithms are used to decompose the linear solve into several solves with smaller matrices. Almost all of the algorithms just require multiple solves of the Jacobian matrix for the steady state problem to calculate the Newton updates for the augmented system. This greatly simplifies the implementation, since this is the same linear system that an application code using Newton's method will already have invested in. Only the Hopf tracking algorithm requires the solution of a larger matrix, which is the complex matrix involving the Jacobian matrix and an imaginary multiple of the mass matrix.

    The following algorithms are available in this version of LOCA:

    • Zero order continuation 
    • First order continuation 
    • Arc length continuation 
    • Multi-parameter continuation (via Henderson's MF Library)
    • Turning point continuation 
    • Pitchfork bifurcation continuation 
    • Hopf bifurcation continuation 
    • Phase transition continuation 
    • Eigenvalue approximation (via ARPACK)
    The current algorithms have been shown to scale to problem sizes of order 1 million unknowns on parallel fluid mechanics applications coming from the finite element code MPSalsa. LOCA has also been impelemented with a the Tramonto density functional theory code, the GOMA moving boundary finite element code, and a stand alone test code for solving 1D PDEs. For details on the results of using LOCA, please refer to the LOCA Publications and LOCA Presentations sections below.

    We are interested in cultivating new collaborations and a few friendly users to this new software. We are looking for feedback on the current algorithms applied to new applications, suggestions for new algorithms, improvements to the LOCA interface, improvements to the implementation manual. 

    LOCA version 1.1

    LOCA Publications 

    Publications focused on linear stability (PDF):  Publications focused on bifurcations (PDF): 

    Selected LOCA Presentations 

    Project Members 

    Related Projects 

    • MPSalsa, Sandia's MICS-supported research on advanced numerical methods for chemically reacting flow simulations.
    • Tramonto, Sandia's MICS-supported research on numerical methods for modeling inhomogeneous soft materials. 
    • GOMA, Sandia's code for transport modeling of manufacturing flows of systems with free and moving boundaries. 
    • Sandia's MICS-supported research in Linear and Eigensystems Algorithm Development 
    • Aztec, Sandia's massively parallel iterative solver library for solving sparse linear systems 
    • Trilinos, Sandia's object-oriented parallel solver libraries. 
    • Anasazi, Sandia's eigensolver capability within Trilinos. 
    • NOX, Sandia's nonlinear solver capability within Trilinos. 
    • ARPACK, Rice University's collection of routines designed to solve large scale eigenvalue problems. 
    • AUTO Software for Continuation and Bifurcation Problems in ODEs by Doedel et al.  
    • Web page with links to many Dynamical Systems software packages  

    What are the plans for LOCA? 

    • Interface LOCA with the NOX nonlinear solver as part of the Trilinos framework, making LOCA available to all Trilinos users.
    • Once LOCA is interfaced to the linear solvers available through Trilinos (e.g Aztec_OO, IFPACK, PETSc), we will research and implement better, nonsingular formulations for the bifurcation tracking algorithms.


    This project has been supported by DOE through the MICS, ASCI, and CSRF programs. 


    For more information, please contact Andy Salinger, agsalin@sandia.gov.

    LOCA 1.0, Copyright 2001 Sandia Corporation. Under the terms of ContractDE-AC-94AL85000, there is a non-exclusive license for use of this work by or on behalf of the U.S. government. Export of this program may require a license from the United States Government.

    Web page last modified 10/02.