https://github.com/precice/comsol-adapter
preCICE-adapter for the FEM code COMSOL Multi-Physics (currently unmaintained)
https://github.com/precice/comsol-adapter
co-simulation fem fluid-structure-interaction fsi multi-physics precice precice-adapter
Last synced: 3 months ago
JSON representation
preCICE-adapter for the FEM code COMSOL Multi-Physics (currently unmaintained)
- Host: GitHub
- URL: https://github.com/precice/comsol-adapter
- Owner: precice
- Created: 2017-05-11T10:36:01.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2020-02-15T12:06:52.000Z (over 5 years ago)
- Last Synced: 2024-03-26T07:17:09.932Z (about 1 year ago)
- Topics: co-simulation, fem, fluid-structure-interaction, fsi, multi-physics, precice, precice-adapter
- Language: C
- Homepage:
- Size: 27.3 KB
- Stars: 3
- Watchers: 4
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# preCICE-adapter for the FEM code COMSOL Multi-Physics
This folder contains files to use COMSOL as the structural solver in an FSI simulation.
Since it was not possible to directly couple the C++ coded preCICE to the COMSOL
API, we used FSI\*ce as intermediate communication/data library. There are, hence,
two important files: `comsol_simulation.c`, the interface with the COMSOL API, which uses
FSI\*ce to communicate the data to the intermediate (executable) component
`ComsolPrecice.c`. `ComsolPrecice` uses FSI\*ce to exchange data with
`comsol_simulation`, and preCICE for the actual coupling.Only 2D simulations have been done so far. For 3D, several changes to
`comsol_simulation.c` and some to `ComsolPrecice.c` have to be done.## How to compile the files?
The compilation is done by SCons, check the SConstruct script for detailed
information on the build variables. There is a debug and a release mode.`comsol_simulation.c` is compiled and linked into a shared object (.so). For that,
it needs (among others) the pathes to the COMSOL installation, and the FSI\*ce
libraries. These paths are hardcoded in the SConstruct file.`ComsolPrecice.c` is compiled into an executable. For that, it needs (among others)
the pathes to the FSI\*ce libraries and the preCICE library.## How to run COMSOL for FSI simulations?
There are two executables to be run (in any order). The Comsol script needs to be
run as follows$ comsol script simulation
The keyword "simulation" tells the COMSOL script to run the simulation.m file in the
current directory. It can also be omitted and given in the scripting GUI. To run
COMSOL script without GUI, type$ comsol script -term
Wait until comsol started, then type
$> flreport('off')
$> simulationTo run `ComsolPrecice`, type
> ./ComsolPrecice Comsol precice_config.xml
Where COMSOL gives the name of the participant to preCICE, and precice_config.xml
tells preCICE where to find the coupling configuration.HINT: Sometimes, after killing the COMSOL script, it happens that COMSOL starts, but
doesn't load the simulation.m file. It suffices to close and restart it.