MpCCI CouplingEnvironment

The MpCCI CouplingEnvironment has been developed in order to provide an application independent interface for the direct coupling of different simulation codes. MpCCI CouplingEnvironment has been accepted as a ‘de facto’ neutral standard for simulation code coupling and provides a multi-physics framework. Within the MpCCI CouplingEnvironment the engineer can combine several ready-to-use models, define the application field and choose for the best-fit coupling method.

MpCCI CouplingEnvironment has already successfully been used in various application domains:

  • Fluid-structure-Interaction for aero-elasticity and flexible components in machinery design
  • Thermal stress and vibrations in turbomachinery applications
  • Combined system and 3D continuum models for vehicle and machine dynamics
  • Coupled fluid and radiation for automotive thermal management
  • Thermal and magneto-hydrodynamic effects in electrical components
  • Fluid-structure-interactions in bio-medical applications

Co-Simulation Strategy

MpCCI Coupling Environment employs a staggered approach for all co-simulation problems which can be defined as

  • A globally explicit coupling method: the coupled fields are exchanged only once per coupling step. This solution is applicable to problems with weak physics coupling.
  • An implicit iterative coupling method: the coupled fields are exchanged several times per coupling step until an overall stabilized solution is achieved and before advancing to the next coupling step. This approach is applicable to problems with strong physics coupling.

MpCCI Coupling Environment offers standard coupling algorithms to implement the above coupling approaches - e.g. Gauss-Seidel and Jacobi.

Gauss-Seidel coupling scheme is also known as serial or "Ping-Pong" algorithm where one code waits while the partner code proceeds.
© Fraunhofer SCAI
Gauss-Seidel coupling scheme is also known as serial or "Ping-Pong" algorithm where one code waits while the partner code proceeds.
Jacobi coupling scheme is also known as parallel algorithm where both analysis codes run concurrently.
© Fraunhofer SCAI
Jacobi coupling scheme is also known as parallel algorithm where both analysis codes run concurrently.

In addition to these coupling algorithms different transfer options are provided to control the data exchange of the quantities:

  • The data exchange can be defined as an optional or forced synchronization point. The optional synchronization point provides the alternative to activate the data exchange on request. This request can be triggered by the availability of the quantities or by a physical quantity criterion. This provides an adaptive coupling scheme where bi-directional and uni-directional data transfer can be mixed.
  • The synchronization point can be defined at different coupling iteration step for a steady state solution, or at different coupling time step sizes for a transient solution. The coupling iteration step, resp. coupling time step size may differ from the solver iteration step, resp. time step size. By this way a sub-cycling has been added to the coupling algorithm.

Co-Simulation Application Types

Coupling Analysis of Steady State Solutions

For stationary problems, it is assumed that there is exactly one solution of the coupled problem, which shall be found. The coupling algorithm does not have a big influence on the solution in this case.
 

Coupling Analysis of Transient Solutions

Typical applications focus on the transient effect of the coupled solution, e.g. pressure oscillation, heat dissipation, etc. The fully transient analysis provides an accurate solution. As the solution is dominated by the time component, several co-simulation approaches are supported by MpCCI CouplingEnvironment:

  • Fixed coupling time step size: In this configuration, both simulations are constrained to use the same coupling time step size during the complete co-simulation. The time step size is equally defined in each application in this case and there is no need to exchange this time information.
  • Exchange of time step size: Instead of using a fixed coupling time step size it is also possible to use adaptive time stepping. In this case the time step size is determined by one code and sent to the partner code, which changes its own time step to the received value.
  • Non-matching time step size: Codes may run at different local time stepping and also exchange data at non-matching points in time. MpCCI CouplingEnvironment takes care of a proper ‘interpolation in time’ for the coupled physical quantities. MpCCI CouplingEnvironment offers three different methods for the data time-interpolation: constant, linear, and cubic interpolation.
     

Coupling Analysis of Mixed Solutions (Steady State and Transient)

A fully transient coupling is challenging because of the great disparities of the physical models between the coupled domains (e.g. fluid-structure, fluid-electromagnetics, FEM structural analysis and discrete element models for particles) and the high computational time. The main difficulty is due to the significant discrepancy of characteristic times since the transient phenomena in the fluid usually take place at a much smaller time scale than those in the solid. The fully transient coupling method describing the transient effects in both coupled domains leads to a highly accurate solution but might be too expensive for some applications. As a computationally cheaper mode, you can couple transient models with a sequence of steady state models:

  • Full-vehicle thermal management of driving cycles: In this coupling procedure you should adopt a coupling interval which is at least equal to the solid time step. The flow solution is considered as a sequence of steady state solutions and in the solid the fields evolve in a fully transient manner. This co-simulation provides a flexible solution approach to consider driving cycles. A good compromise between a high computational time and modeling of transient physics is provided by a co-simulation of the transient thermal model with steady-state fluid models in a pseudo-transient approach.
  • Magnetohydrodynamic analysis for electric arcs: In this application you may assume a steady state computation of the electromagnetic phenomena because the electromagnetic phenomena are faster than the gas dynamic. The Maxwell equations will be solves as a sequence of steady state solutions whereas in the fluid the Navier-Stockes equations evolve in fully transient manner.
     

High Performant Coupling Server

The MpCCI CouplingEnvironment offers a high performant exchange of data between the coupled codes. In a very simple but FSI-like benchmark, two basic codes run on a standard workstation and exchange pseudo-physical data at high speed. For surface meshes of ~4K nodes on each side, the internal server engine of the MpCCI CouplingEnvironment can execute

  • up to ~400 exchanges per second if  the mesh definitions in the coupled codes are incompatible and fixed (identical) coupling time steps are used on both sides.
  • If conformal mesh definitions and non-matching-time steps with a ratio of 1/10 are used, the code with the coarser time step can send ~200 data sets per second while the ‘fine’ code can receive up to ~2,000 (interpolated-in-time) data sets per second.

Exchange of Physical Quantities

MpCCI CouplingEnvironment will automatically exchange the data between the meshes of two or more simulation codes by using the best-fit interpolation method and considering the nature of the quantities exchanged. The co-simulation application can exchange nearly any kind of data between the coupled codes; e.g. energy and momentum sources, material properties, boundary condition values, mesh definitions, or global quantities. To ensure best interoperability between different simulation codes the coupling procedures are independent from the utilized codes and coupling quantities definition: energy sources, e.g. joule heat; momentum sources, e.g. Lorentz forces; boundary conditions values, e.g. temperature, pressure.  All details of the data exchange are automatically handled by a coupling manager behind the concise interface of MpCCI CouplingEnvironment.

Standard Interfaces for Commercial Codes – MpCCI v4.8.0
(March 2025)

The MpCCI CouplingEnvironment supports most of the leading commercial codes for fluid-dynamics, structural analysis, electro-magnetic, and other disciplines:

Structural Analysis

  • Abaqus [2021, 2022, 2023, 2024, 2025]
  • ANSYS Mechanical [2021R1-R2, 2022R1-R2, 2023R1-R2, 2024R1]
  • Marc [2021.x, 2022.x, 2023.x, 2024.1]
  • MSC Nastran [2021.x, 2022.x, 2023.x, 2024.1]
  • LS-DYNA [R12.1, R12.dm, R13.1]

Fluid Dynamics

  • ANSYS ICEPAK [2021R1-R2, 2022R1-R2, 2023R1-R2, 2024R1]
  • ANSYS Fluent [2021R1-R2, 2022R1-R2, 2023R1-R2, 2024R1]
  • FINE/Open [10.1]
  • FINE/Turbo [11.1, 11.2, 12.1, 12.2, 13.1, 13.2, 14.2, 15.1]
  • OpenFOAM [v2106, v2112, v2206, v2212, v2306]
  • ProLB [2.6-3.2]
  • STAR-CCM+ [2021.2, 2022.1, 2206, 2210, 2302, 2306, 2310, 2402, 2406]
  • STAR-CD [on demand]
Radiation
  • TAITherm [2021.1.x, 2021.2.x, 2022.x, 2023.x, 2024.1]
System Modelling
  • Adams [2021.x, 2022.x, 2023.x, 2024.1, 2024.2]
  • FloMASTER [8.0, 8.1, 9.0, 9.2]
  • MATLAB [R2021a-b, R2022a-b, R2023a-b]
  • SIMPACK [9.7, 9.8.1]
  • FMI for co-simulation (under development)
Electromagnetics
  • ANSYS Emag [2021R1-R2, 2022R1-R2, 2023R1-R2, 2024R1]
  • JMAG [22.0, 22.1. 22.2, 23.0, 23.1]
  • FLUX [on demand]
Programming Interface
  • Fully documented programming interface (C/C++, F77) to adapt further inhouse or research codes to MpCCI CouplingEnvironment.

Programming Interfaces

Open CodeAPI

The MpCCI CouplingEnvironment has an open Programming Interface (API) which can be used to adapt inhouse or further commercial codes. This API is designed as a general and discipline independent toolkit and can be used for different levels of co-simulation:

  • Surface-2-Surface interface suitable for all simulation methods which provide a discretised surface definition, support for deformable walls, and physical quantities located on surface elements or nodes (e.g. for modelling methods like FEM/CSD, FEM/Radiation, FVM/CFD, DEM/Particles, SPH or FPM/fluid models, etc.)
  • Volume-2-Volume coupling suitable for all simulation methods which provide a discretised volume definition and physical quantities located per volume element or per node (e.g. modelling methods like FVM/CFD, FEM/EMAG, etc.)
  • Point-2-Surface coupling suitable for all system simulation tools using ‘control nodes’ and physical quantities related to these nodes (e.g. modelling methods MBS, 1D-CFD pipeline models, general control models, FMI-for-co-simulation, etc.)
© Fraunhofer SCAI

FMI for Co-Simulation

Functional Mock-up Interface (FMI) is a tool independent standard to support both model exchange and co-simulation of dynamic models using a combination of xml-files and compiled C-code. The first version, FMI 1.0, was published in 2010, followed by FMI 2.0 in July 2014. The FMI development was initiated by Daimler AG with the goal to improve the exchange of simulation models between suppliers and OEMs. As of today, development of the standard continues through the participation of 16 companies and research institutes.

FMI is currently supported by 87 tools and is used by automotive and non-automotive organizations throughout Europe, Asia and North America.

3D simulations – e.g. Finite Element Methods (FEM), Multibody Systems (MBS) and Computational Fluid Dynamics (CFD) – focus on the behavior of single components and are usually very specialized to depict a small selection of physical phenomena in a very detailed manner. Systems simulations, on the other hand, focus on the overall nonlinear dynamic behavior of complex systems consisting of many components. With today’s computational power it is not farfetched to depict the behavior of single components in a complex system via coupling to a full 3D simulation tool.

To bring the two worlds together, a MpCCI code adapter to the “Fraunhofer EAS Master” has been implemented. With this new feature it becomes easy to couple a system of FMUs, simulated with the EAS Master, to a full 3D simulation (or co-simulation) using any of the CAE tools supported by MpCCI.

The MpCCI-FMI link is currently under implementation …..

© Fraunhofer SCAI

Release Notes

Version 4.8.0 (March, 2025)

  • FlexLM version 11.19.6 will require an update of the license server installation
  • Support LS-DYNA structural solver for fluid-structure interaction problem
  • Support ProLB high-fidelity lattice Boltzmann CFD solver for thermal coupled application with the TAITherm solver
  • MpCCI GUI Guided setup supports Abaqus, FLUENT, ProLB and TAITherm solvers for pre-processing the models for the co-simulation setup. A new How-To to illustrate the usage of the guided setup is available
  • Automatic treatment for coupling region with shell parts if both shell sides are coupled together
  • Additional predefined units system support for mm-kg-ms
  • Enhancement for the edit components tab in region step which enables settings for shell parts, among other things
  • Correction for loading an external environment script when running the codes on distributed machine using the file “mpcci_<CODENAME>.env”

Code specific changes:

  • Abaqus
    • 2024, 2025
    • Discontinue support of releases older then Abaqus 2021
    • Support mm-kg-ms unit system
    • Fix handling of the quantity force for point coupling between Abaqus Standard and Explicit: guarantee same vector orientation as reaction force
  • Adams
    • 2023.3, 2023.4, 2024.1, 2024.2
    • Discontinue support of releases older than Adams 2021
    • Improved algorithm to calculate partial derivatives
    • Allow semi-implicit interpolation only in explicit coupling scheme
    • Fix patching of ".acf" file by ignoring commented out lines. The final computed DTOUT value is correctly based on the active simulate command
    • Adams product selection is based on the predefined list (solver, acar, achassis, adriveline) instead of auto-detecting the product list from the local license installation
    • Co-simulation with Adams requires the user to create a ".acf" command  file. This  file type is primary used to start the Adams model defined in the ".adm" file
  • ANSYS
    • 2023R2, 2024R1, 2024R2
    • Discontinue support of releases older than ANSYS 21.1
    • Improve auto-detection of ANSYS installation on Microsoft Windows. The environment variable ANSYS_SYSDIR is not anymore required
  • FLUENT
    • 2023R2, 2024R1, 2024R2
    • Discontinue support of releases older than FLUENT 21.1.0
    • Support of FLUENT "cas.h5" format
    • Fix for remeshing event for FLUENT on Microsoft Windows platform
    • Update MPI parallel communicator list
    • FLUENT case files for 3D-models are supported by the guided setup
    • MpCCI does not overwrite an existing dynamic mesh setting using the option Auto set MDM
    • Fix from FLUENT 2023R1 when receiving an adaptive time step size. The user hook function was not correctly activated in the model
  • JMAG
    • 22.2, 23.0, 23.1
    • Discontinue support of releases older than JMAG 22.0
  • LS-DYNA
    • R12.1, R12.dm, R13.1
    • Co-simulation is restricted to Linux platforms with LS-DYNA double precision and MPP solver type
    • Support quantities for fluid-structure interaction problem
    • The co-simulation supports the 3D surface mesh defined by shell elements. The solid mesh can be represented by solid or shell elements
    • Tutorials for LS-DYNA: Elastic Flap in a Duct, Elastic Flap Shell Model in a Duct
  • Marc
    • 2023.3, 2023.4, 2024.1
    • Discontinue support of releases older than Marc 2021.2
    • Improvement in the parallel use of different Marc versions: the Marc files compiled for the simulation and the MpCCI libraries used are given a release number. This prevents an incorrect Marc release from being used in the simulation
  • MATLAB
    • R2021b, R2022b, R2023a, R2023b
    • Discontinue support of releases older than MATLAB R2021a
  • MSC Nastran
    • 2023.3, 2023.4, 2024.1
    • Discontinue support of releases older than MSC Nastran 2021.0
  • OpenFOAM
    • Discontinue support of releases older than OpenFOAM 2106
    • Correction for implicit coupling
  • ProLB
    • 2.6 to 3.2.
      For using the latest version of ProLB please contact the ProLB solution provider CS Group
  • STAR-CCM+
    • 2310, 2402, 2406
    • Discontinue support of releases older than STAR-CCM+ 2021.2
    • Support coupling with overset mesh model. The overset mesh can be combined with the zero gap method to model opening and closing flow paths such as valves and seals
    • Fix "Scanner" module to read ".sim" saved from STAR-CCM+ 2306
    • Fix transient coupled simulation using a start time and subcycling steps with the default template macro java file
  • TAITherm
    • 2023.1, 2023.2, 2024.1
    • Discontinue support of releases older than TAITherm 2021.1.2

Version 4.7.1 (October, 2023)

  • Enhanced environment file functionality for running the simulation process, including the ability to source external scripts
  • Fix coupling lock with quasi-transient coupling approach
  • Fix usage of Maximum number of couplings steps. The number of coupling steps defined was not respected if subcycling step was adaptive
  • The transfer of convergence value to the relaxation operator in quantity sets has been corrected
  • Automatic re-execution of the MpCCI Configurator when the settings for the system of units for a code have been changed in the MpCCI GUI
  • Avoid program abort if an unsuitable configuration file is specified when calling the MpCCI GUI (mpcci gui project.csp -useConfiguration configurationFile). Instead, appropriate error messages are output

Code specific changes:

  • Abaqus 2023
  • Adams 2022.2, 2022.3, 2022.4, 2023.1, 2023.2
  • ANSYS Products (ANSYS Mechanical, FLUENT, IcePak) 2022 R2, 2023 R1
  • JMAG 22.0, 22.1
  • Marc 2022.2, 2022.3, 2022.4, 2023.1, 2023.2
  • MSC NASTRAN 2022.2, 2022.3, 2022.4, 2023.1, 2023.2
    • Fix co-simulation data when running steady state analysis
  • OpenFOAM v2112, v2206, v2212, v2306
  • STAR-CCM+ 2206, 2210, 2302, 2306
    • Discontinue support of STAR-CCM+ 11.02 to 13.06
    • MpCCI remeshing option for STAR-CCM+ 2302 and higher is deprecated. Recommend to use internal STAR-CCM+ remeshing model
    • Resolved problem on immediate abort after startup due to a temporary /tmp folder configuration without execute permissions
  • TAITherm 2022.2

Version 4.7.0 (October, 2022)

  • Predefined coupling specifications for solving specific coupling types are introduced, simplifying the settings of the required parameters
  • Smart configuration is introduced for FSI with Abaqus, FLUENT and OpenFOAM to obtain an optimal runtime compared to the default settings in MpCCI GUI
  • Only installed simulation codes with a valid adapter license are offered by default. The list of codes can also be configured individually using the Configure submenu of the Codes Menu
  • New tutorial for biomedical FSI application using the newly introduced smart configuration

Code specific changes:

  • Abaqus
    • Support for Abaqus 2022
  • ANSYS
    • Support for ANSYS 2021 R2, 2022 R1
  • FLUENT
    • Support for FLUENT 2021 R2, 2022 R1
    • Fix TUI command used to set the user defined adaptive time step method from FLUENT 2019 R3
    • Improved management of dynamic load balancing, remeshing handling when running FLUENT parallel solver. There were some negative cell volumes when running the tutorial⊲VII-2 Elastic Flap in a Duct⊳ on multiple cpus
    • Changed the default value set in MpCCI GUI for the Number of inner iterations from 1 to 30 for implicit coupling scheme
  • ANSYS Icepak
    • Support of ANSYS Icepak 2021 R2, 2022 R1
    • Fix TUI command used to set the user defined adaptive time step method from ANSYS Icepak 2019R3
  • JMAG
    • Support of JMAG 20.1, 21.0
  • MATLAB
    • Support of MATLAB R2021a
    • Fixing for the orientation of element vector normal calculation with respect to the right-hand rule in the MATLAB adapter. This function is used to convert automatically the pressure field to a force field along the normal vector orientation. Check your element node sequence definition if the normal vector orientation does not fit the load definition you would like to apply
  • MSC Adams
    • Support of MSC Adams 2021.1, 2021.2, 2021.3, 2022.1
  • MSC Marc
    • Support of MSC Marc 2021.2, 2021.4, 2022.1
  • MSC NASTRAN
    • Support of MSC NASTRAN 2021.1, 2021.2, 2021.3, 2021.4, 2022.1
  • OpenFOAM
    • Support of OpenFOAM v2106
  • STAR-CCM+
    • Support of STAR-CCM+ 2021.2, 2022.1
    • Fixed the boundary type recognition for sim file saved from STAR-CCM+ 2019.1. Some boundary parts were not listed in the list of available components to be coupled
    • Fixed the access to the configuration file "settings.props“ from STAR-CCM+ 2019.1 and newer releases
  • TAITherm
    • Support of TAITherm 2021.1.2, 2021.2.1, 2021.2.5, 2022.1
    • Fix issue when running TAITherm in distributed memory parallel. The temperature distribution was not correctly updated before the data transfer. The correction has affected the releases TAITherm 12.6 to the latest release
    • Speed up mesh data extraction performance for large coupled parts (up to 10,000 times faster)

Version 4.6.1-1 (March 15, 2021)

  • Solved synchronization issue with parallel codes
  • Fix management of convergence decision for implicit coupling
  • MpCCI GUI provides additional parameter checks for the project setting
  • MpCCI FSIMapper supports new FLUENT CFF file format from version 20.0
  • New OpenMP based MpCCI Visualizer improves the rendering performance for large model including polygons and polyhedra
  • New MSC.Marc thermal co-simulation tutorial

Code specific changes:

  • Thermal co-simulation fields changed from Abaqus 2018 with surface film properties: FilmTemp and WallHTCoeff. Latest patch/update release for Abaqus is required.
  • Fix adapter loading issue from MSC.Adams 2018 and newer releases.
  • Abaqus 2021
  • ANSYS products (Ansys Mechanical, FLUENT, Icepak) 2021 R1
  • FINE/Open 10.1
  • FINE/Turbo 15.1
  • JMAG 20.0
  • MSC.Nastran 2021.0
  • OpenFOAM 2012
  • STAR-CCM+ 2019.1 to 2020.3
  • TAITherm 2020.2