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.7.1
(October 2023)

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

Structural Analysis

  • Abaqus [2016, 2017, 2018, 2020, 2021, 2022, 2023]
  • ANSYS Mechanical [16.x, 17.x, 18.x, 19.x, 2019R1-R3, 2020R1-R2, 2021R1-R2, 2022R1-R2, 2023R1]
  • Marc [2016, 2017.x, 2018.x, 2020, 2021.x, 2022.1, 2022.2, 2022.3, 2022.4, 2023.1, 2023.2]
  • MSC Nastran [2017.x, 2018.x, 2019.0, 2020.0, 2021.x, 2022.1, 2022.2, 2022.3, 2022.4, 2023.1, 2023.2]

Fluid Dynamics

  • ANSYS ICEPAK [16.x, 17.x, 18.x, 19.x, 2019R1-R3, 2020R1-R2, 2021R1-R2, 2022R1-R2, 2023R1]
  • ANSYS Fluent [16.x, 17.x, 18.x, 19.x, 2019R1-R3, 2020R1-R2, 2021R1-R2, 2022R1-R2, 2023R1]
  • FINE/Open [10.1]
  • FINE/Turbo [11.1, 11.2, 12.1, 12.2, 13.1, 13.2, 14.2, 15.1]
  • OpenFOAM [1606+, 1612+, 1706, 1712, 1806, 1812, 1906, 1912, 2006, 2012, 2106, v2112, v2206, v2212, v2306]
  • STAR-CCM+ [2019.x 2020.x, 2021.2, 2022.1, 2206, 2210, 2302, 2306]
  • STAR-CD [on demand]
  • TAITherm [12.x, 13.x,2020.1, 2020.2, 2021.1.x, 2021.2.x, 2022.1, 2022.2]
System Modelling
  • Adams [2016, 2017.x, 2018.x, 2019.x, 2020, 2021.x, 2022.1, 2022.2, 2022.3, 2022.4, 2023.1, 2023.2]
  • FloMASTER [8.0, 8.1, 9.0, 9.2]
  • MATLAB [R2018a, R2019a-b, R2021a]
  • SIMPACK [9.7, 9.8.1]
  • FMI for co-simulation (under development)
  • ANSYS Emag [16.x, 17.x, 18.x, 19.x, 2019R1-R3, 2020R1-R2, 2021R1-R2, 2022R1-R2, 2023R1]
  • JMAG [15.x, 16.x, 17.x, 18.x, 19.0, 20.0, 20.1, 21.0, 22.0, 22.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.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
    • Support for ANSYS 2021 R2, 2022 R1
    • 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
    • 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
    • Support of MSC NASTRAN 2021.1, 2021.2, 2021.3, 2021.4, 2022.1
  • OpenFOAM
    • Support of OpenFOAM v2106
    • 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

Version 4.5.0 (March 30, 2017)

  • New Quasi-Newton Relaxation Method: MpCCI 4.5 offers a new relaxation method which is recommended for Fluid-Structure Interactions with incompressible fluids, moving walls and light solids. The relaxation factor is calculated using a Quasi-Newton method, thereby improving the stability of iteratively coupled transient simulations and steady-state simulations. Different Quasi-Newton methods are available - some of them reuse information from previous time steps to reach the solution as fast as possible. MpCCI 4.5 includes a new tutorial "Driven Cavity" to show the differences in stability between constant or Aitken relaxation and Quasi-Newton relaxation: the new method produces stable results for smaller density ratios of the fluid and the solid than the other relaxation methods.
  • Improvement for FSI coupling with rotating parts modelled in different reference frames:  The usual approach to perform an FSI simulation with rotating parts is to model both part, i.e. the solid and fluid, in the same reference frame (also known as lab frame). But when the application takes in account the deformation due to the rotation, this may lead to significant convergence and stability problems. Because of the large rotation and pressure deformation, the solid part introduces nonlinear geometric effects into the structural stiffness matrix. In order to overcome such stability problems, different reference frame models can be coupled without affecting the physics of the problem: with MpCCI 4.5, the fluid can be modelled in the lab frame while the solid part can be computed in a local rotating frame of reference. Using this approach for the solid problem removes the nonlinear, large displacement effects in the stiffness matrix leading to a stable and faster computation.
  • Improvements in the MpCCI GUI: The MpCCI GUI now supports automatic region building. Further, the coupling step has been re-designed enabling easy assignment and modification of quantity sets. Several new operators for exchanged quantities (e.g. scaling or limiting of values) are available.
  • Improvements in the handling of the MpCCI Visualizer: better adaptation of range settings and zooming into plots.
  • A new option to define different initialization methods and dynamic sub-cycling for RadTherm/TAITherm.

Version 4.4.2 (October 16, 2015)

  • Fixed issue for a co-simulation between a transient and steady state simulation where both codes are doing a remeshing. Data and simulation code are properly synchronized.
  • MpCCI Visualizer provides a new option to open a ccvx file. You can activate the automatic loading of files series having the same stem or the opening of a single file which is the default now.
  • Fixed issue with cut plane definition with MpCCI Visualizer. The cut plane edit line supports the two type of decimal mark dot and comma.
  • Abaqus
  • Support pre-release of V2016.
  • MSC Adams
  • Support co-simulation extension for additional product template like MSC.Adams/Car, MSC.Adams/Chassis.
  • Enhancement for a co-simulation with MSC.Adams/Car with multiple statements definitions.
  • Additional support of user external subroutines for user element within the co-simulation.
  • Ansys FEA
  • Support Distributed Domain Solver feature of ANSYS for the co-simulation.
  • For the most supported codes you can find the latest code adapter releases (ANSYS Fluent 16.2, JMAG 14.1, OpenFOAM 2.4, RadTherm 12, etc.)

Version 4.4.1 (April 2, 2015)

  • Server
  • Fixed bug in mapping error correction procedure for nodal based  flux density / integral quantities, e.g. forces. Update is recommended.
  • Batch system management
  • Fix number of cores allocation by MpCCI batch system when submitting a job with a deactivated MpCCI Grid Morpher. This issue concerns the simulations codes OpenFOAM and STAR-CD.
  • Optional user defined timeout value can be set for any client code trying to connect a server code. This allows to keep the client alive until the server process is ready.
  • Monitoring
  • Global variable defined as monitor is properly supported by the MpCCI server and defined as X-Y plot.
  • Abaqus
  • Several improvements for the co-simulation with Abaqus CSE platform.
  • Coupling with pressure quantities is available.
  • Update is recommended for Abaqus users.
  • MSC Adams
  • Fix update of the partial derivatives module for large Adams model.
  • Update is recommended for user having model with several coupling points.
  • OpenFOAM
  • Additional support of Intel MPI vendor.
  • Improved co-simulation performance when doing some subcycling with MpCCI Grid Morpher.
  • Support for coupling a decomposed OpenFOAM case project.
  • RadTherm
  • During the co-simulation subcycling the RadTherm convergence check is ignored. RadTherm is restricted to perform the total number of defined sub-iterations. The RadTherm convergence is enabled after the coupled job converged.
  • Fix handling of force element when duplicated force element has been created.
  • Connection issue with recent SIMPACK release > 9.6 has been resolved. This issue concerns users on Windows platform.

Version 4.4.0 (January 19, 2015)

  • Periodic models
  • enhanced support for cyclic symmetric periodic models
  • full and periodic
  • periodic with different sections
  • Iterative transient coupling
  • Abaqus 6.14 - iterative FSI with OpenFOAM and Fluent supported
  • Fluent - new menu and scheme command to steer the iterative simulation
  • adaptive under-relaxation based on Aitken's method
  • User Interface
  • GUI - preselection of coupling scheme based on the model solution type
  • Monitor - orphaned information is displayed on the MpCCI Monitor immediately after the neighbourhood calculation
  • new tracefile directory for each job
  • Abaqus
  • Adapter for Abaqus 6.14 now based on SIMULIA's Co-Simulation Services CSE
  • Abaqus 6.12-6.13 still supported using the embedded coupling interface; during a transition phase the 'co-simulation' license token is available on request
  • Point coupling (e.g. with MBS models) with Abaqus/Explicit 6.12 and 6.13 can be realized with Abaqus user subroutines VUAMP combined with de finition of sensors in the input deck. Contact the MpCCI support for detailed information about the procedure
  • ANSYS/Fluent
  • Coupling a rigid body model with 1D codes is supported
  • OpenFOAM
  • Additional support of third party MPI versions
  • Platforms
  • Windows 8 - Installer for the installation on Microsoft Windows 8
  • Linux 32bit - this is the last release with Linux 32bit support
  • Windows 32bit - this platform is no longer supported
  • Tutorials
  • Elastic Flap in Water' model files are now available.
  • New electrothermal case 'Three Phase Transformer' using FLUENT and JMAG

Version 4.3.1 (April 28, 2014)

  • Cosimulation Interface Updates
  • Abaqus 6.13-2
  • ANSYS/FEA, Fluent, ICEPAK 15.0
  • FINE/Turbo 9.0-3
  • JMAG 13.0
  • MSC.Adams 2013.1
  • RadTherm 11.1
  • SIMPACK 9.1.1 - 9.5 (NEW!)
  • STAR-CCM+ 9.02
  • Extended Co-Simulation Features
  • Windows 32bit - this is the last release with Microsoft Windows 32 bit support
  • Windows 8 - Installer for  the installation on Microsoft Windows 8
  • Implicit Coupling (Fluent) - new menu and scheme command is provided to steer the iterative simulation
  • GUI - now preselects the coupling scheme based on the model solution type
  • Monitor - orphaned information is now displayed on the MpCCI Monitor immediately after the neighbourhood calculation is done
  • Tutorial -  'Elastic Flap in Water' model files are now available.
  • Tutorial - New electrothermal case 'Three Phase Transformer' using FLUENT and JMAG