MPC tools is written in GNU Octave, which is an interpretted language. Computational overhead is required to process commands written in Octave (the files ending in .m), which is slower than the compiled functions (ending in .oct). For this reason, many of the functions that are called frequently have been compiled. However, we feel that Octave's native language is easily read and understood, making it ideal for developing new algorithms and models.
Another factor that determines the speed of MPC tools is whether the user has supplied an analytical Jacobian for the nonlinear model and output functions. Supplying Jacobians prevents the derivatives from being estimated by finite differences, which is computationally costly. Also, if the model and Jacobian functions are compiled as .oct files, the speed of the algorithm can improve, often to over twenty times the speed of interpretted models.
A final factor that determines the speed of MPC tools is the type of machine on which the user is running Octave. Obviously, faster processors mean faster execution.
You can send me your model, and I will add it to the archive. All model submissions should include a brief description of the model, the author, and if published, the source. All necessary functions and parameters files must be included as well. Please do not send compiled binaries.
| [ Home | Methodology | Download | License | FAQ | Help Wanted ] |
Copyright (C) 2008 Rishi Amrit. Verbatim copying and distribution is permitted in any medium, provided this notice is preserved.
University of Wisconsin
Department of Chemical Engineering
Madison WI 53719