VFGEN

From Scholarpedia

This article has not been peer-reviewed or accepted for publication yet; It may be unfinished, contain inaccuracies, or unapproved changes.

Author: Dr. Warren Weckesser,

Dr. Warren Weckesser accepted the invitation on 11 August 2008 (self-imposed deadline: 11 October 2008).

Under construction...

VFGEN is a computer program for generating system definition files for a wide range of computational program and libraries, based on an XML specification of a differential or delay-differential equation. VFGEN generates code for ordinary differential equations and for delay-differential equations. Symbolic differentiation is used to generate Jacobians and higher derivatives. From a single definition of the user's equations, VFGEN can generate code for initial value problem solver libraries, numerical continuation and bifurcation analysis programs, and general purpose computing environments.

VFGEN also provides specialized commands for extending a vector field with its variational equation, converting delay equations to finite dimensional approximations, and for generating C code to compute Taylor polynomial approximations (of any given order) to the solution to a differential equation. It also has a command to generate a complete Taylor method solver written in Javascript along with an HTML interface. With this feature, a complete solver with a GUI interface is created that runs in any web browser that supports Javascript.

A system definition file is a file used by the program or library to define the equations. A system definition file is generally a function written in the same programming language as the library. A researcher interested in using several different tools to study a set of equations must implement a system definition file for each tool. This can be a tedious and error-prone process. A goal of VFGEN is to alleviate this by allowing for the creation of a universal system definition file, and automatically generating system defintion files for a wide variety of tools. VFGEN uses an XML specification for its system definition file. A description of all the XML elements that can be used to define a system is given on the VFGEN web page. Here, we give some illustrative examples.




Program/Library Description VFGEN Command
ADOL-C Automatic differentiation library adolc
AUTO Continuation program auto
CVODE ODE solver library (part of the SUNDIALS suite) cvode
DDE23 MATLAB delay equation solver dde23
DDE-BIFTOOL MATLAB program for the bifurcation analysis of DDEs ddebiftool
DDE_SOLVER FORTRAN library for solving DDEs dde_solver
DSTool Application for dynamical systems analysis dstool
GNU Scientific Library: ODE solvers C library for solving ODEs gsl
LaTeX Text processer latex
LSODA (and other ODEPACK functions) ODEPACK contains a suite of FORTRAN ODE solvers, including LSODE, LSODA, and LSODAR. lsoda
MatCont MATLAB application for continuation matcont
MATLAB MATLAB ODE solver functions matlab
Octave Octave ODE solver functions octave
PDDE-CONT Continuation of periodic solutions to DDEs pddecont
PyDSTool Python framework for the analysis of dynamical systems pydstool
PyGSL Python binding of the GNU Scientific Library pygsl
RADAU5 FORTRAN ODE solver radau5
Scilab Scilab ODE solver functions scilab
SciPy Scipy ODE solvers scipy
XPPAUT Application for the analysis of dynamical systems xpp


VFGEN Command Description
evf Extend a vector field with its variational equations. This creates a new vector field with twice as many equations as the original.
taylor Generates code for computing derivatives of the solution and the Taylor polynomial at a point.
javascript Generates javascript code that implements a Taylor method solver for the vector field, and generates an HTML page with a GUI for setting parameters and initial conditions, and for animating the solution to the equations.
delay2ode Converts a delay equation into a system of ordinary differential equations, the solutions of which are approximate solutions to the delay equation.



References

  • Weckesser W. (2008) VFGEN: A Code Generation Tool. Journal of Numerical Analysis, Industrial and Applied Mathematics, 3(1-2):151-165


External links


VFGEN website

See also

AUTO, Delay-differential equations, Initial value problems, LaTeX, MATCONT, MATLAB, Sundials equation solvers, XPPAUT

Suggested by: Dr. Skip Thompson, Radford University, Radford, Virginia
Invited by: Dr. Eugene M. Izhikevich, Editor-in-Chief of Scholarpedia, the peer-reviewed open-access encyclopedia
For authors