Kratos Multiphysics (A.K.A Kratos) is a framework for building parallel multi-disciplinary simulation software. Modularity, extensibility and HPC are the main objectives. Kratos has BSD license and is written in C++ with extensive Python interface.
Kratos Multiphysics alternatives and similar libraries
Based on the "Scientific Computing" category.
Alternatively, view Kratos alternatives based on common mentions on social networks and blogs.
7.4 3.2 L4 Kratos Multiphysics VS FFTWDO NOT CHECK OUT THESE FILES FROM GITHUB UNLESS YOU KNOW WHAT YOU ARE DOING. (See below.)
4.0 9.5 Kratos Multiphysics VS preCICEA coupling library for partitioned multi-physics simulations, including, but not restricted to fluid-structure interaction and conjugate heat transfer simulations.
2.4 9.0 Kratos Multiphysics VS HELICSHierarchical Engine for Large-scale Infrastructure Co-Simulation (HELICS)
2.2 6.4 Kratos Multiphysics VS UnitsA run-time C++ library for working with units of measurement and conversions between them and with string representations of units and measurements
1.4 0.3 Kratos Multiphysics VS DimwitsA compact C++ header-only library providing compile-time dimensional analysis and unit awareness
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Kratos Multiphysics or a related project?
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.
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](applications/DEMApplication) for cohesive and non cohesive spheric and non spheric particles simultion
- [Fluid Dynamics](applications/FluidDynamicsApplication/README.md) Provides 2D and 3D incompressible fluids formulation
- [Fluid Structure Interaction](applications/FSIApplication/README.md) for solution of different FSI problems
- [Structural Mechanics](applications/StructuralMechanicsApplication/README.md) Providing solution for solid, shell and beam structures with linear and nonlinear, static and dynamic behavior
- [Contact Structural Mechanics](applications/ContactStructuralMechanicsApplication/README.md) For contact problems used along the [Structural Mechanics application](applications/StructuralMechanicsApplication/README.md)
Some main modules are:
- [Linear Solvers](applications/LinearSolversApplication/README.md)
Here you can find the basic documentation of the project:
- Getting Kratos (Last compiled Release)
- Compiling Kratos
- Running an example from GiD
- Kratos input files and I/O
- Data management
- Solving strategies
- Manipulating solution values
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
Barcelona Wind Simulation
Organizations contributing to Kratos:
International Center for Numerical Methods in Engineering
Chair of Structural AnalysisTechnical University of Munich
Some users of the technologies developed in Kratos are:
Airbus Defence and SpaceStress Methods & Optimisation Department Siemens AGCorporate Technology ONERA, The French Aerospace LabApplied Aerodynamics Department
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++
- filesystem Header-only single-file std::filesystem compatible helper library, based on the C++17 specs
- ZLib The compression library
- Eigen For linear solvers used in the [LinearSolversApplication](applications/LinearSolversApplication)
- Trilinos for MPI linear algebra and solvers used in [TrilinosApplication](applications/TrilinosApplication)
- METIS for partitioning in [MetisApplication](applications/MetisApplication/README.md)
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.
- Mataix Ferrándiz, V., Bucher, P., Rossi, R., Cotela, J., Carbonell, J. M., Zorrilla, R., … Tosi, R. (2020, November 27). KratosMultiphysics (Version 8.1). Zenodo. https://doi.org/10.5281/zenodo.3234644
*Note that all licence references and agreements mentioned in the Kratos Multiphysics README section above are relevant to that project's source code only.