This example demonstrates the numerical integration of simple Differtial Algebraic Equations (DAEs). Similar to ODE integrators in MATLAB, it can handle ODE stiff systems as well as high index (Index 2+) DAE systems. See the following YouTube video for a step-by-step tutorial.
The function 'apm_solve' receives an input of the application name (in this case 'demo') and returns a structure with the results of the simulation. In this case, the solution is returned into a structure named 'z'.
z = apm_solve('demo');
The structure contains all of the parameters and variables defined in the model file as well as the time points. A plot of 'time' and 'x' is provided with the demo and these are referenced as 'z.time' and 'z.x'.
The APMonitor Modeling Language (http://apmonitor.com) is optimization software for ODEs and DAEs. It is a full-featured modeling language with interfaces to MATLAB and Python. It is coupled with large-scale nonlinear programming solvers (including APOPT and IPOPT) for parameter estimation, nonlinear optimization, simulation, and model predictive control. There is a discussion group as well as regular webinars for those interested in dynamic modeling and simulation.