High
I would like to use extended matrix algebra (inv, mult, tranp, trace, charac roots, kronec prod, part matrices...) in vensim.
The build in matrix funct. and tools in Vens are not sifficient for me. Il seems possible to load external function. But I'm not sufficiently skilled in DDL developing or handling. DO u have some extra documenation that topic or some examples (dll's + vensim models).
It should be Very Useful for me.
Other question : some years ago I did mention on that forum
a problem with the invertion of matrices with det(mat=0)
without warnings, leadind to obvious wrong resultats.
Is that problem fixed Now ?
Tank's Very Much and Best Regards
HOw tu load and use external functions
-
- Super Administrator
- Posts: 4841
- Joined: Wed Mar 05, 2003 3:10 am
If you look in the
C:\Program Files\Vensim\comp
directory, there is a Microsoft Visual Studio workspace (Venext6.dsw). This can be compiled into an external function DLL.
It is commented as well and should be fairly straightforward to understand. You will need to know C/C++ though.
Hope this helps.
Tony.
C:\Program Files\Vensim\comp
directory, there is a Microsoft Visual Studio workspace (Venext6.dsw). This can be compiled into an external function DLL.
It is commented as well and should be fairly straightforward to understand. You will need to know C/C++ though.
Hope this helps.
Tony.
-
- Senior Member
- Posts: 1107
- Joined: Wed Mar 12, 2003 2:46 pm
External functions are described in Chapter 8 of the Vensim DSS Reference supplement.
When the INVERT_MATRIX function receives a non invertable matrix it issues an error message and returns a 0 matrix. It does not stop simulation, though that might happen shortly thereafter because of the 0s returned.
When the INVERT_MATRIX function receives a non invertable matrix it issues an error message and returns a 0 matrix. It does not stop simulation, though that might happen shortly thereafter because of the 0s returned.