All Editions
- New Runs Compare tool.
- Enhanced XMILE import/export (fully functional for most models, including diagrams).
- Harmonized IEEE754 floating point error behavior across all platforms.
- New Synthesim override modes (FREEZE, LIMIT, PERTURB).
- All versions of Vensim now include an AI companion. This will help you fix errors (such as simultaneous equations, unit problems and floating point errors). To launch the AI assistant, click the AI button on the top toolbar.
- The equation editor can check the spelling of comments, and the comment box has its own font. Spell checking is an option in the Vensim settings.
- The pre-6.3 sensitivity sampling methods, selected by giving the sensitivity random seed a negative value, have been removed. A negative seed is now read as its absolute value. The pre-6.3 random number generator that a negative seed was documented to select had already become unreachable, so those runs were not reproducing pre-6.3 results in recent versions either.
- Capitalize by type is now saved with each model.
- When another program changes the open model file, Vensim offers to reload it, and can be set to reload automatically.
- Sketches draw faster on Windows. When the window is too narrow for the bottom sketch toolbar, the tools that don't fit move to an overflow button.
- The Bar Graph and Stats tools snap to a time that exists in the dataset, and base time axes and histogram bins on all loaded runs instead of only the first.
- Vensim offers at startup to install optional add-on software. The Windows installer now includes WebView2 and the Visual C++ runtime.
- On the Mac, tool windows can stay visible when the main window loses focus, dark mode displays correctly, and Cmd-W closes only the active tool window.
Bug fixes
- Names that differ only in the case of an accented character, such as año and AÑO, compared inconsistently. This could create a duplicate symbol, or treat two different names as one.
- Exporting a sketch to SVG, WMF or bitmap failed.
- Reference modes, SyntheSim mini graphs, and double-clicking a subscript in a graph legend didn't work.
- Wrapping a long line when saving a model could split a multibyte character, producing a file that wasn't valid UTF-8.
PLE+/PRO/DSS
- Structural dominance (loop analysis using loop impact).
- New simulation replay tool.
- Resume works from the end of a run in models with DELAY functions, and the Simulation Control dialog handles Based On and Resume together correctly. Sensitivity runs can resume with parallel simulation.
- New models read constants from .cin and .out files at double precision by default. Existing models keep their setting.
DSS
- Heart of the system, which shows how each rate responds as a stock moves across a wide range of values.
- More extensive VenAgent AI support (email tom@vensim.com to join the beta test). The AI menu launches Claude and shows the agent's log and notebook.
- Improved parallel optimization with explorer threads and BOBYQA.
- Greatly enhanced Kalman filtering. Version 2 of the Kalman.prm format (:KFVERSION=2) can give the noise on flows between stocks, and can express a standard deviation or variance as a fraction of a stock. :TEMPLATE writes a complete starting file for the model. New options include :HUBER for robustness to wild observations, :JOSEPH (the default from version 2) and :START for a filter start time. Keywords are no longer case sensitive.
- The Kalman filter propagates covariance correctly when TIME STEP is smaller than the data interval.
- Optimization .out and .cin files are written at full precision (17 significant digits), so a recorded optimum can be reproduced from its file. The trailing digits will differ from files written by earlier releases.
- The optimizer warns when a control file line replaces a parameter's model value, and when a starting value outside its bounds is clamped.
- New PERT3 and PERT4 priors, which take the mode as an argument instead of reading it from the parameter's Start value, and in the case of PERT4 the shape parameter lambda as well.
- Corrected the LOGNORMAL prior density, which was missing the change-of-variables term and so applied a prior whose median was larger than the one written, by a factor of EXP(sd^2) - about 4% at sd = 0.2 and a factor of e at sd = 1. Estimates for parameters carrying a wide LOGNORMAL prior will move. The PERT prior is now also normalized the same way as BETA, which shifts the reported prior payoff by a constant.
- A prior taking no arguments may now be written with or without parentheses, so UNIFORM and UNIFORM() are both recognized. Previously the bare form was discarded without a message, so a control file using it was running without the prior it names.
- Prior bounds given in reverse order are swapped.
- The Simulation Control dialog has checkboxes for Heart of the system, eigenvalue analysis and loop impact, and warns when a model is too large for eigenvalue analysis.
- Compiled simulations write the model as several C files instead of one. A large model could generate more C than the compiler would accept in a single file, and the compile gave up partway through with no useful message; that limit is gone. On Windows the files also compile in parallel, so a large model builds much faster on a machine with several cores.
- Because of that, the files in your compiled simulation path (the COMP folder) have to come from this release: simext.c, vensim.h and the build script all changed together. An older build script compiles mdl.c, which Vensim no longer writes, and an older simext.c or vensim.h gives duplicate and static definition errors when the model links. If you have edited your own copy of the build script, to reach a compiler it does not find on its own for instance, make the same edits to the new one — MDLDP64.BAT on Windows, mdldp.macx on the Mac. The compiled DLL itself is unchanged, so no model needs recompiling for this reason alone.
- External functions with VECTOR_ARG arguments work in compiled simulations.
- Models with string variables no longer crash parallel simulations, and optimizing a small model no longer hangs on the Mac.
Command Scripts
- Scriptable Synthesim overrides
- Improved error/warning behavior and documentation
- Starting Vensim with -headless runs a command script with no windows shown. It implies -log, and any prompt that would wait for a user takes its cancel answer instead. -venagent is a synonym for -log.
- SPECIAL>CONTINUEONERROR|2 stops the script and exits Vensim with a nonzero exit code when a command fails. It is the default for a script named on the command line.
- A script waits for SPECIAL>LOADMODEL and other long commands to finish before running the next command.