|
1 | 1 | Coral |
2 | 2 | ===== |
| 3 | +Coral is **free and open-source co-simulation software** built from the ground up with support for [FMI](https://fmi-standard.org) and distributed simulations in mind. It is primarily a **C++ library** that can be embedded into any application that needs to perform co-simulations. However, we've also made some simple **command-line applications** for testing, demonstration and research purposes. |
3 | 4 |
|
4 | | -Introduction |
5 | | ------------- |
6 | | -The Virtual Prototyping Framework (VPF) is an open framework for connecting |
7 | | -mathematical models and simulations, from a variety of physics/engineering |
8 | | -domains and modelling tools, to simulate complex marine systems and operations. |
9 | | -The VPF is currently under development as part of the KMB ViProMa project. |
10 | | - |
11 | | -Coral is a C++ library and a set of applications for performing distributed |
12 | | -co-simulations, and it is a fundamental software component of the VPF. |
13 | | -Its job is to connect the various subsystems involved in a simulation. |
14 | | -More precisely, it takes care of: |
15 | | - |
16 | | - - *Abstraction*, in that it hides the implementation details of each subsystem |
17 | | - behind a common communication interface. |
18 | | - - *Initialisation*, by detecting which subsystems are available, starting the |
19 | | - ones that are needed in the current simulation, connecting them with each |
20 | | - other, and initialising each one. |
21 | | - - *Communication*, enabling distributed simulations, where different |
22 | | - subsystems may run in different processes on one computer, or on different |
23 | | - computers in a network. |
24 | | - - *Time synchronisation*, to ensure that all parts of a simulation follow the |
25 | | - same clock. |
26 | | - |
27 | | -The subsystems can be simulation tools (such as Simulink, Modelica |
28 | | -implementations, etc.), hardware interfaces, control systems, visualisation |
29 | | -tools, data loggers, and so on. |
| 5 | +Coral was developed as part of the R&D project [Virtual Prototyping of Maritime Systems and Operations](http://viproma.no) (ViProMa), and is currently maintained by [SINTEF Ocean](http://www.sintef.no/en/ocean/). |
30 | 6 |
|
31 | 7 | Terms of use |
32 | 8 | ------------ |
|
0 commit comments