Awesome
<p align=center><img height="72.125%" width="72.125%" src="https://raw.githubusercontent.com/KratosMultiphysics/Documentation/master/Wiki_files/Home/kratos.png"></p>
<a href="https://github.com/KratosMultiphysics/Kratos/releases/latest"><img src="https://img.shields.io/github/release-date/KratosMultiphysics/Kratos?label="></a>
<a href="https://github.com/KratosMultiphysics/Kratos/compare/Release-9.5...master"><img src="https://img.shields.io/github/commits-since/KratosMultiphysics/Kratos/latest?label=commits%20since"></a>
<a href="https://github.com/KratosMultiphysics/Kratos/commit/master"><img src="https://img.shields.io/github/last-commit/KratosMultiphysics/Kratos?label=latest%20commit"></a>
KRATOS Multiphysics ("Kratos") is a framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. Kratos is written in C++, and counts with an extensive Python interface. More in Overview
Kratos is free under BSD-4 license and can be used even in comercial softwares as it is. Many of its main applications are also free and BSD-4 licensed but each derived application can have its own propietary license.
Main Features
Kratos is multiplatform and available for Windows, Linux (several distros) and macOS.
Kratos is OpenMP and MPI parallel and scalable up to thousands of cores.
Kratos provides a core which defines the common framework and several application which work like plug-ins that can be extended in diverse fields.
Its main applications are:
- DEM for cohesive and non cohesive spheric and non spheric particles simulation
- Fluid Dynamics Provides 2D and 3D incompressible fluids formulation
- Fluid Structure Interaction for solution of different FSI problems
- Structural Mechanics Providing solution for solid, shell and beam structures with linear and nonlinear, static and dynamic behavior
- Contact Structural Mechanics For contact problems used along the Structural Mechanics application
Some main modules are:
Documentation
Here you can find the basic documentation of the project:
Getting Started
- Getting Kratos (Last compiled Release)
- Kratos from
pip
: Just simply type on terminalpip install KratosMultiphysics-all
- Kratos for GiD
- Kratos from
- Compiling Kratos
Tutorials
- Running an example from GiD
- Kratos input files and I/O
- Data management
- Solving strategies
- Manipulating solution values
- Multiphysics
More documentation
Examples of use
Kratos has been used for simulation of many different problems in a wide variety of disciplines ranging from wind over singular building to granular domain dynamics. Some examples and validation benchmarks simulated by Kratos can be found here
<span> <img align="center" src="https://github.com/KratosMultiphysics/Examples/raw/master/fluid_dynamics/use_cases/barcelona_wind/resources/BarcelonaVelocityVector.png" width="288"> Barcelona Wind Simulation </span> <br>Contributors
Organizations contributing to Kratos:
<img align="left" src="https://github.com/KratosMultiphysics/Documentation/raw/master/Wiki_files/Logos/CIMNE_logo.png" width="128"> </br></br><p>International Center for Numerical Methods in Engineering</p></br></br>
<img align="left" src="https://github.com/KratosMultiphysics/Documentation/raw/master/Wiki_files/Logos/TUM_Logo.png" width="128"> </br><p>Chair of Structural Analysis</br>Technical University of Munich </p></br></br>
<img align="left" src="https://github.com/KratosMultiphysics/Documentation/raw/master/Wiki_files/Logos/altair-sponsor-logo.png" width="128"> </br><p>Altair Engineering</p> <img align="left" src="https://github.com/KratosMultiphysics/Documentation/raw/master/Wiki_files/Logos/Deltares_logo.png" width="128"> </br><p>Deltares</p></br></br>
<img align="left" src="https://github.com/KratosMultiphysics/Documentation/raw/master/Wiki_files/Logos/TUBraunschweig_logo.svg" width="128"> <p>Institute of Structural Analysis</br>Technische Universität Braunschweig</p></br></br>
<img align="left" src="https://github.com/KratosMultiphysics/Documentation/raw/master/Wiki_files/Logos/logo_UNIPD.svg" width="128"> <p> University of Padova, Italy </p></br></br>
Our Users
Some users of the technologies developed in Kratos are:
<span> <img align="left" src="https://github.com/KratosMultiphysics/Documentation/raw/master/Wiki_files/Logos/AIRBUS_logo.png" width="128"> <p>Airbus Defence and Space</br>Stress Methods & Optimisation Department</p> </span> <span> <img align="left" src="https://github.com/KratosMultiphysics/Documentation/raw/master/Wiki_files/Logos/siemens_logo.png" width="128"> <p>Siemens AG</br>Corporate Technology</p> </span> <span> <img align="left" src="https://github.com/KratosMultiphysics/Documentation/raw/master/Wiki_files/Logos/onera_logo.png" width="128"> <p>ONERA, The French Aerospace Lab<br>Applied Aerodynamics Department</p> </span>🤗 Looking forward to seeing your logo here!
Special Thanks To
In Kratos Core:
- Boost for ublas
- pybind11 for exposing C++ to python
- GidPost providing output to GiD
- AMGCL for its highly scalable multigrid solver
- JSON JSON for Modern C++
- ZLib The compression library
In applications:
- Eigen For linear solvers used in the LinearSolversApplication
- Trilinos for MPI linear algebra and solvers used in TrilinosApplication
- METIS for partitioning in MetisApplication
- CoSimIO for performing coupled simulations with external solvers within the CoSimulationApplication. The CoSimIO in Kratos uses the following libraries:
- Boost for the
intrusive_ptr
- filesystem Header-only single-file std::filesystem compatible helper library, based on the C++17 specs
- asio for socket based interprocess communication
- Boost for the
How to cite Kratos?
Please, use the following references when citing Kratos in your work.
- Dadvand, P., Rossi, R. & Oñate, E. An Object-oriented Environment for Developing Finite Element Codes for Multi-disciplinary Applications. Arch Computat Methods Eng 17, 253–297 (2010). https://doi.org/10.1007/s11831-010-9045-2
- Dadvand, P., Rossi, R., Gil, M., Martorell, X., Cotela, J., Juanpere, E., Idelsohn, S., Oñate, E. (2013). Migration of a generic multi-physics framework to HPC environments. Computers & Fluids. 80. 301–309. 10.1016/j.compfluid.2012.02.004.
- Vicente Mataix Ferrándiz, Philipp Bucher, RubĂ©n Zorrilla, Suneth Warnakulasuriya, Riccardo Rossi, Alejandro Cornejo, jcotela, Carlos Roig, Josep Maria, tteschemacher, Miguel MasĂł, Guillermo Casas, Marc Núñez, Pooyan Dadvand, Salva Latorre, Ignasi de Pouplana, JoaquĂn Irazábal González, AFranci, Ferran Arrufat, riccardotosi, Aditya Ghantasala, Klaus Bernd Sautter, Peter Wilson, dbaumgaertner, Bodhinanda Chandra, Armin Geiser, Inigo Lopez, lluĂs, jgonzalezusua, Javi Gárate. (2024). KratosMultiphysics/Kratos: Release 9.5 (v9.5). Zenodo. https://doi.org/10.5281/zenodo.3234644