General architecture of the platform
- Lower layer: embeds core functionalities of the kernel (communication between distributed modules), graphical user interface and management of the studies. These services are handled by the following components:
- Modules layer: higher level components built on the services provided by the lower layer. Modules perform dedicated services that are needed to reach the general objective of SALOME. The main modules involved in this layer are:
- SUPERV (is not supported since SALOME version 5.0)
- YACS (new alternative SUPERV version)
Furthermore, this layer can be enhanced by a number of dedicated end-user modules that can, for example, encapsulate a numerical solver behavior, simplify input of initial condition for a computation, etc. Any additional and specific module will be automatically:
- Able to share its data with other modules through the study
- Usable in the python console (all available services are bounded as python functions)
- Supported and managed by the supervisor
In addition, the SALOME platform is based on two notions which are linked together: the module and the SALOME component.
The module should be understood as a kind of development space attached to a defined domain (for example, the GEOM module gathers the components of SALOME which are relative to the geometrical domain). A module can be made of several components that perform various levels of services.
Besides, a SALOME component is a software entity which is integrated in the SALOME platform. Hence, it has to conform to the defined rules, in particular to be able to use the services of the KERNEL and be itself 'usable' by the KERNEL as well as by other components.
SALOME platform base
The SALOME base platform is composed of the following standard modules:
Kernel: Distributed components management, graphical user interface, multi-study architecture and general services
- Geometry: basic functionalities to create, import and correct any CAD models (IGES, STEP, BRep)
- Mesh: provides capabilities to mesh a CAD model using a standard meshing algorithm or any external mesher (as a plugin)
- Data: description and management of physical properties and boundary conditions
- Post-processor: dedicated viewer to analyse the results of solver computations (scalar, vectorial)
- Supervisor: an easy way to describe a computational schema involving multi-solver coupling
This base platform can be extended by creating an unlimited number of additional modules, implementing such features as: meshing algorithms, standard or specific solvers, pre-processing module, etc.
Typical structure of a SALOME component
A component is organized in three main sub-items: