Math, Modelling, Simulation, Plotting
This page provides a list to promissing extrnal resources that address various problems in math, modelling, simulation, and plotting.
Basic info
- ✨: Recommended by MA
- 🤔: Looks promising to MA
- Mathematical Software (Wikipedia) ↪: Explains different types.
Modelling languages
- Modelica (modelling language) ↪: 🤔 Has multiple implementations.
- Implementations (see below): OpenModelica, AMESim, CATIA Systems, Dymola, JModelica.org, MapleSim, Wolfram SystemModeler, Scicos, SimulationX, Vertex, Xcos.
- Verilog A/AMS (Implemented in circuit simulators)
Computer Algebra Systems (CAS)
- Computer algebra system (Wikipedia) ↪
- Scilab ↪: Similar to Matlab.
- SymPy (Python) ↪: Symbolic
- SymPy.jl (Julia) ↪: Symbolic. Wrapper for Python library.
- Maxima ↪: Symbolic.
- Maxima.jl (Julia) ↪: Symbolic. Wrapper using Maxima software.
- See also: wxMaxima, xmaxima
- Axiom ↪: Symbolic.
- See also: OpenAxiom, FriCAS
- Octave ↪: Similar to Matlab. MA: Not recommended; use Julia if possible.
- See also: xoctave, QtOctave
- GeoGebra (Web+app) ↪: Interactive geometry/algebra/statistics/calculus.
- Teach/learn math/science elementary ⇒ university.
Other math systems
- Enthought Tool Suite, ETS (Python) ↪: Components to construct scientific applications.
- Mayavi (3D viz), Chaco (Interactive 2D plots), SciMath (Scientific utilities including units), ...
- SageMath ↪: Builds on top of many existing open-source packages: NumPy, SciPy, matplotlib, Sympy, Maxima, GAP, FLINT, R and many more.
- SciPy (Python) ↪: Similar to Matlab.
- Add-on package listing: http://scikits.appspot.com/scikits
- Add-on examples: scikit-learn, scikit-rf, scikit-image.
- Qwt (C++/Qt) ↪: Qt Widgets for Technical Applications.
- ROOT (CERN) ↪: Data analysis framework
- Source: CERN (European Organization for Nuclear Research, orig: Conseil Européen pour la Recherche Nucléaire).
Numerical-analysis software
- List of numerical-analysis software (Wikipedia) ↪
- Comparison of numerical-analysis software (Wikipedia) ↪
- Julia (Programming Language) ↪: ✨✨ Designed with numerical-analysis in mind.
- Scilab ↪: Similar to Matlab.
Dynamic simulation systems (modelling/numerical solvers)
- Dynamic simulation (Wikipedia) ↪
- Modia (Julia) ↪: 🤔🤔 Implementation trying to improve/extend Modelica language.
- Open Modelica ↪: Open Source Modelica Consortium (OSMC).
- Xcos (Scilab) ↪: Based on Modelica language.
- Simulink (Mathworks) ↪
- MapleSim (Maplesoft) ↪: Based on Modelica language.
- SystemModeler (Wolfram) ↪: Based on Modelica language.
- DAETools ↪: Open source.
Calculators/plotting libraries
- matplotlib (Python) ↪
- Grace/xmgrace ↪: Outdated interface, but good .eps output.
- Desmos (web+app) ↪
- GeoGebra (web+app) ↪
- KmPlot (KDE) ↪: Mathematical function plotter.
- QtiPlot (Qt) ↪
- SciDAVis (Qt) ↪: Fork of QtiPlot.
- LabPlot (KDE) ↪
- MagicPlot ↪
IDEs/front ends
- Cantor (KDE) ↪: Matlab-like IDE.
- Supports: Julia, KAlgebra, Lua, Maxima, Octave, Python 2 and 3, Qalculate, R, Sage, and Scilab.
- Part of KDE Education Project ↪
Instrument control
- NIDAQ.jl (Julia) ↪: National Instruments Data Acquisition Interface
- Source: Howard Hughes Medical Institute
- Instruments.jl (Julia) ↪: (VISA) Instrument control in Julia
- Source: Raytheon BBN Technologies - Quantum Group
- PyVISA (Python) ↪: Control your instruments with Python
Numerical libraries
- List of numerical libraries (Wikipedia) ↪
- GNU Scientific Library (GSL) ↪: Numeric Library for C/C++.
- Boost, BLAS, LAPAK, Intel MKL, ...