All Projects → exadg → exadg

exadg / exadg

Licence: GPL-3.0 license
ExaDG - High-Order Discontinuous Galerkin for the Exa-Scale

Programming Languages

C++
36643 projects - #6 most used programming language
CMake
9771 projects
shell
77523 projects

Projects that are alternatives of or similar to exadg

SNaC
A multi-block solver for massively parallel direct numerical simulations (DNS) of fluid flows
Stars: ✭ 26 (-58.06%)
Mutual labels:  cfd, turbulence, fluid-dynamics, computational-fluid-dynamics
CaNS
A code for fast, massively-parallel direct numerical simulations (DNS) of canonical flows
Stars: ✭ 144 (+132.26%)
Mutual labels:  cfd, turbulence, fluid-dynamics, computational-fluid-dynamics
Cfdpython
A sequence of Jupyter notebooks featuring the "12 Steps to Navier-Stokes" http://lorenabarba.com/
Stars: ✭ 2,180 (+3416.13%)
Mutual labels:  cfd, fluid-dynamics, navier-stokes-equations
hybridCentralSolvers
United collection of hybrid Central solvers - one-phase, two-phase and multicomponent versions
Stars: ✭ 42 (-32.26%)
Mutual labels:  cfd, fluid-dynamics, computational-fluid-dynamics
WABBIT
Wavelet Adaptive Block-Based solver for Interactions with Turbulence
Stars: ✭ 25 (-59.68%)
Mutual labels:  cfd, turbulence, fluid-dynamics
CFD
Basic Computational Fluid Dynamics (CFD) schemes implemented in FORTRAN using Finite-Volume and Finite-Difference Methods. Sample simulations and figures are provided.
Stars: ✭ 89 (+43.55%)
Mutual labels:  cfd, fluid-dynamics, computational-fluid-dynamics
Kinetic.jl
Universal modeling and simulation of fluid dynamics upon machine learning
Stars: ✭ 82 (+32.26%)
Mutual labels:  cfd, fluid-dynamics, finite-element-methods
TrainingTracks
Materials for training tracks for continua media - OpenFOAM, vortex method, and other
Stars: ✭ 59 (-4.84%)
Mutual labels:  cfd, computational-fluid-dynamics
NGA2
Object-oriented multi-mesh version of the classic reacting turbulent multiphase flow solver
Stars: ✭ 25 (-59.68%)
Mutual labels:  cfd, turbulence
lethe
Repository for the open-source lethe CFD/DEM/CFD-DEM project
Stars: ✭ 120 (+93.55%)
Mutual labels:  cfd, computational-fluid-dynamics
HAMeRS
Hydrodynamics Adaptive Mesh Refinement Simulator (HAMeRS) for compressible multi-species/multi-phase simulations
Stars: ✭ 43 (-30.65%)
Mutual labels:  turbulence, computational-fluid-dynamics
CubbyFlow
Voxel-based fluid simulation engine for computer games
Stars: ✭ 215 (+246.77%)
Mutual labels:  computational-physics, computational-fluid-dynamics
Fluid2d
A versatile Python-Fortran CFD code that solves a large class of 2D flows
Stars: ✭ 49 (-20.97%)
Mutual labels:  cfd, fluid-dynamics
range3
Range Software - Finite Element Analysis
Stars: ✭ 31 (-50%)
Mutual labels:  cfd, computational-fluid-dynamics
UCNS3D
Unstructured Compressible Navier Stokes 3D code (UCNS3D)
Stars: ✭ 141 (+127.42%)
Mutual labels:  cfd, computational-fluid-dynamics
magic
MagIC is a high-performance code that solves the magneto-hydrodynamics equations in rotating spherical shells
Stars: ✭ 67 (+8.06%)
Mutual labels:  cfd, computational-fluid-dynamics
SCEMa
HMM implementation featuring Deal.II (FE) and LAMMPS (MD)
Stars: ✭ 14 (-77.42%)
Mutual labels:  dealii, finite-element-methods
shallow-water
Python model solving the shallow water equations (linear momentum, nonlinear continuity)
Stars: ✭ 78 (+25.81%)
Mutual labels:  fluid-dynamics, computational-fluid-dynamics
TEGAN
Generative Adversarial Network (GAN) for physically realistic enrichment of turbulent flow fields
Stars: ✭ 60 (-3.23%)
Mutual labels:  turbulence, fluid-dynamics
tlab
No description or website provided.
Stars: ✭ 19 (-69.35%)
Mutual labels:  cfd, turbulence

ExaDG - High-Order Discontinuous Galerkin for the Exa-Scale

ExaDG is a software project written in C++ using state-of-the-art programming techniques. The software targets the numerical solution of partial differential equations (PDE) in the field of computational fluid dynamics (CFD).

Mission

ExaDG aims to provide next generation's fluid dynamics solvers by the use of novel discretization techniques (discontinuous Galerkin methods) and efficient matrix-free algorithms leading to fast PDE solvers. ExaDG's core module is a high-performance incompressible Navier-Stokes solver. The project targets scale-resolving simulations of turbulent flows (LES and DNS) with unprecendented accuracy and computational efficiency. LES solvers have fallen behind the expectations in providing efficient solvers applicable to industrial problems, and still require a huge amount of computational resources and simulation time. At the same time, computer hardware has undergone a significant evolution over the last decades towards multicore chips with increasing SIMD parallelism and increasing Flop-to-Byte ratio. ExaDG wants to relax the limitations of state-of-the-art CFD software by innovative concepts from computer science, mathematics, and numerical discretization methods.

ExaDG's range of applicability currently also covers coupled flow-transport problems, moving domains and meshes, fluid-structure interaction, and compressible flows. There will be a continued effort in broadening ExaDG's range of applicability towards a general-purpose CFD software. ExaDG is highly-efficient on structured and unstructured meshes for high-order approximation spaces through the use of on-the-fly matrix-free evaluation of discretized operators. ExaDG is currently limited to conforming meshes composed of quadrilateral/hexahedral elements, and there are efforts to support adaptive mesh refinement and simplicial meshes in the future.

Philosophy

ExaDG does not intend to reinvent the wheel. This project therefore relies on well-established third party libraries where possible. ExaDG mainly builds upon deal.II, a generic finite element library written in C++. The deal.II library provides sophisticated interfaces and data structures, and highly-efficient matrix-free algorithms. Aspects of parallelization are almost completely hidden by deal.II. While deal.II has a strong focus on aspects of computer science and software development, ExaDG bridges the gap to the application world in the field of computational fluid dynamics and offers efficient solver, e.g., for fluid dynamics and turbulence researchers whose primary interest might not be software development.

Our motto is to provide a software that is intuitive to use and where changes and new features can be realized easily. We want to develop computationally efficient solvers at the frontiers of research. This requires agility in software development, and a lightweight code base. In this early stage of ExaDG, we want to enable changes to the software design whenever we realize that parts of the code are too rigid and hinder our daily work, of course, with the goal to maintain compatibility as much as possible. New modules that have proven both robust and computationally efficient, and that can be realized generically, are migrated to third party libraries such as deal.II, in order to let a broader community benefit from the developments, and in order to keep the present software project lean. ExaDG is an interdisciplinary effort and a community project where all contributions are highly welcome!

Getting started

The wiki page Installation contains a detailed description of the installation steps of ExaDG and the required third-party libraries. To get familar with the code, see also the doxygen documentation.

For the impatient ...

For those already working with deal.II, only a few steps are required to get ExaDG running:

git clone [email protected]:exadg/exadg.git
cd exadg/
mkdir build
cd build/
cp ../scripts/config_exadg.sh .
bash ./config_exadg.sh
make release
make -j<N>

Discussions

Please feel free to start a discussion to ask questions, share ideas, or get advice. In case you plan major contributions to the project, we suggest to start a discussion in an early stage of your work to make sure that your efforts are well-directed.

Publications

Please consider citing the following paper for acknowledging this software contribution:

@InProceedings{ExaDG2020,
title     = {{ExaDG}: High-Order Discontinuous {G}alerkin for the Exa-Scale},
author    = {Arndt, Daniel and Fehn, Niklas and Kanschat, Guido and Kormann, Katharina 
             and Kronbichler, Martin and Munch, Peter and Wall, Wolfgang A. and Witte, Julius},
editor    = {Bungartz, Hans-Joachim and Reiz, Severin and Uekermann, Benjamin 
             and Neumann, Philipp and Nagel, Wolfgang E.},
booktitle = {Software for Exascale Computing - SPPEXA 2016-2019},
year      = {2020},
publisher = {Springer International Publishing},
address   = {Cham},
pages     = {189--224}
}

A detailed list of publications can be found on the wiki page Publications.

Authors

ExaDG's principal developers are:

List of contributors

The following developers contributed to ExaDG:

Maximilian Bergbauer, Tim Dockhorn, Elias Dejene, Daniel Dengler, Niklas Fehn, Anian Fuchs, Shahbaz Haider, Christoph Haslinger, Johannes Heinz, Pei-Hsuan Huang, Benjamin Krank, Martin Kronbichler, Stefan Legat, Peter Munch, Oliver Neumann, Leon Riccius, David Schneider, Yingxian Wang, Karl Robert Wichmann, Niklas Wik, Xuhui Zhang

Their contributions are highly appreciated!

License

ExaDG is published under the GPL-3.0 License. This project is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

Releases

This project is currently in a pre-release status.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].