Open Source Alternatives to Simulink: Difference between revisions

From Open Source Ecology
Jump to navigation Jump to search
(Created page with "<html><div style="color: rgb(255, 255, 255);background-color: rgb(255, 255, 255);"> <div> <div> <div> <div> <div st...")
 
No edit summary
Line 1: Line 1:
From [https://www.quora.com/What-are-some-good-alternatives-to-Simulink/answer/Foad-S-Farimani?ch=10&oid=63690116&share=dd3d5f58&srid=iETG&target_type=answer] - archiving here.
<html><p class="q-text qu-display--block qu-wordBreak--break-word qu-textAlign--start">Simulink is a visual programming environment, especially for time transient simulations and ordinary differential equations. Depending on what you need there are plenty of Free, Libre and Open Source Software (FLOSS) available:</p>
<ul class="q-box">
<li class="q-relative">Modelica language is the most viable alternative and in my opinion, it is also a superior option to MathWorks Simulink. There are open-source implementations&nbsp;<a class="q-box qu-cursor--pointer qu-hover--textDecoration--underline b2c1r2a puppeteer_test_link" title="www.openmodelica.org" href="https://www.openmodelica.org/" target="_blank" rel="noopener nofollow">OpenModelica</a>&nbsp;and&nbsp;<a class="q-box qu-cursor--pointer qu-hover--textDecoration--underline b2c1r2a puppeteer_test_link" title="www.jmodelica.org" href="http://www.jmodelica.org/" target="_blank" rel="noopener nofollow">JModelica</a>. One of the main advantages of Modelica is that you can code a multidimensional ordinary differential equation with algebraic discrete non-causal equations. With OpenModelica you may create a non-causal model right in the GUI and with JModelica you can use Python to model everything. For more information about JModelica see&nbsp;<a class="q-box qu-cursor--pointer qu-hover--textDecoration--underline b2c1r2a puppeteer_test_link" title="www.reddit.com" href="https://www.reddit.com/r/Python/comments/dcj6fy/jmodelica_combining_the_power_of_python_and/?utm_source=share&amp;utm_medium=web2x" target="_blank" rel="noopener nofollow">this Reddit post</a>. There is a&nbsp;<a class="q-box qu-cursor--pointer qu-hover--textDecoration--underline b2c1r2a puppeteer_test_link" title="discordapp.com" href="https://discordapp.com/invite/bp2yeYU" target="_blank" rel="noopener nofollow">Discord server for Modelica Language</a>&nbsp;and its many implementations, where you can ask questions and discuss Modelica-related issues.</li>
</ul></html>
=Images=
<html><div style="color: rgb(255, 255, 255);background-color: rgb(255, 255, 255);">
<html><div style="color: rgb(255, 255, 255);background-color: rgb(255, 255, 255);">
     <div>
     <div>

Revision as of 03:58, 6 June 2025

From [1] - archiving here.

Simulink is a visual programming environment, especially for time transient simulations and ordinary differential equations. Depending on what you need there are plenty of Free, Libre and Open Source Software (FLOSS) available:

  • Modelica language is the most viable alternative and in my opinion, it is also a superior option to MathWorks Simulink. There are open-source implementations OpenModelica and JModelica. One of the main advantages of Modelica is that you can code a multidimensional ordinary differential equation with algebraic discrete non-causal equations. With OpenModelica you may create a non-causal model right in the GUI and with JModelica you can use Python to model everything. For more information about JModelica see this Reddit post. There is a Discord server for Modelica Language and its many implementations, where you can ask questions and discuss Modelica-related issues.


Images

Former PhD Candidate at University of Twente (2016–2020)Updated 3y

Simulink is a visual programming environment, especially for time transient simulations and ordinary differential equations. Depending on what you need there are plenty of Free, Libre and Open Source Software (FLOSS) available:

  • Modelica language is the most viable alternative and in my opinion, it is also a superior option to MathWorks Simulink. There are open-source implementations OpenModelica and JModelica. One of the main advantages of Modelica is that you can code a multidimensional ordinary differential equation with algebraic discrete non-causal equations. With OpenModelica you may create a non-causal model right in the GUI and with JModelica you can use Python to model everything. For more information about JModelica see this Reddit post. There is a Discord server for Modelica Language and its many implementations, where you can ask questions and discuss Modelica-related issues.
  • If you prefer a similar environment as SIMULINK, xcos which comes with Scilab, or its older sister scicos which comes packed with Scicoslab might be very helpful. There are also the simport, Simelica-AdvancedBlocks, and Coselica tools which can translate SIMULINK into scicos / Modelica models. Nelson is also a fork of Scilab which is working on a block-diagram environment (here). More info about Scilab history and its very forks here. There are Discord channels for #scilab and #xcodHere is a nice introduction video by scicos creator Ramine Nikoukhah.
  • There is also the Kepler project which is a less known but very interesting alternative.
  • If you want to simulate electrical systems then I would suggest taking a look at SimulIDE, KTechLab, QUCS/QUCS-S… More I have listed here. Check the SimulIDE Discord channel here.
  • For fluidic and mechatronic simulations also take a look at Hopsan and its Discord channel here.
  • I see some people have suggested LabVIEW as an alternative to SIMULINK, which IMHO is comparing apples and oranges. LabVIEW is a completely different beast and a great FLOSS alternative to it is MyOpenLab. You may use MyOpenLab for creating GUIs to communicate with Raspberry Pi and Arduino. I have explained more here. There is also a Discord server for MyOpenLab where you can ask questions or discuss different topics.
16.2K views
View 21 upvotes
View 1 share
1 of 4 answers



Profile photo for Marcin Jakubowski




Comments

Wow. Thanks alot for your complete explanation


20-sim is a great alternative package with a complete toolset for multi-domain dynamic systems.


Sorry but I think 20-sim is a failed project. As far as I know they started along with Modelica team but then sided to make their product closed source. Their total user community is their own employees and a couple of poor master students who are forced to use it. They could change this by changing…
(more)

View 4 other answers to this question
About the Author
Lead Mechanical Engineer2020–present
M.Sc. from Amirkabir University of Technology
143.9K content views697 this month
Active in 1 Space
Knows Persian
Joined November 2013