Multi-physics simulation

To me, “multi-physics simulation software” means that the software can simulate models from different physical domains, and typically also can combine models from different domains. This possibility typically exists for equation-based simulation tools. Prime examples of equation-based languages/tools are Modelica, ModelingToolkit, gPROMS, COMSOL Multiphysics, ANSYS Fluent, etc. Other tools normally have specialized libraries focused on limited domains, such as AspenTech process simulators, Spice, etc. (although these may also have some level of possibility to add models).

The two tools you mention typically target the solution of PDEs. Fluent is often used to solve Computational Fluid Dynamics problems (moving fluids) typically based on Fininite Volume Methods, while COMSOL Multiphysics is a rather general PDE solver using Finite Element Methods (more suitable for electro-magnetic-mechanical systems?). COMSOL Multiphysics has nice support for “drawing” the system volume and specifying boundary conditions, generating grid, etc. Since I looked at them, they may have developed and have more possibilities. COMSOL Multiphysics was originally developed in Sweden by the Nordic MATLAB reseller (COMputer SOLutions) and was written in MATLAB. When MathWorks took over the Nordic MATLAB market themselves, COMSOL split out and became independent of MATLAB code.

There is a standard for connecting different types of simulation tools: FMI – Functional Mock-up Interface. If your ANSYS tool and COMSOL Multiphysics supports generating FMUs (Functional Mock-up Units), then it is possible to interface the generated simulation unit via FMI to other FMUs. Several Modelica tools support FMI. I seem to have seen that there is support for FMI in JuliaSim, but I may be wrong.

4 Likes