# Multi-physics simulation

**URL:** <https://discourse.julialang.org/t/multi-physics-simulation/88651>\
**Category:** Modelling & Simulations\
**Tags:** question\
**Created:** [October 13, 2022, 9:36am UTC](https://discourse.julialang.org/t/multi-physics-simulation/88651 "2022-10-13T09:36:40Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![BLI](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/bli/32/37206_2.png) [@BLI](https://discourse.julialang.org/u/BLI)\
**Post date:** [October 13, 2022, 4:55pm UTC](https://discourse.julialang.org/t/multi-physics-simulation/88651/4 "2022-10-13T16:55:22Z")

</div>

> [@ufechner7](#):
>
> As far as I know, for multi-physics simulations often software packages like Ansys or COMSOL are used. Can Julia also be used for this kind of simulations?

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.

---

_[View the full topic](https://discourse.julialang.org/t/multi-physics-simulation/88651)._
