Science Score: 67.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 8 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (15.0%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: GenDiL
- License: bsd-3-clause
- Language: C++
- Default Branch: main
- Size: 391 KB
Statistics
- Stars: 6
- Watchers: 1
- Forks: 0
- Open Issues: 5
- Releases: 0
Metadata Files
README.md
GenDiL
- Overview
- Features
- Installation
- Usage
- Citing GenDiL
- Contributing
- License <!-- tocstop -->
GenDiL stands for Generic Discretization Library.
Overview
GenDiL is a header-only C++ library providing flexible and efficient discretization tools for partial differential equations (PDEs) through a generic programming approach. The library aims to bring advanced mathematical concepts into practical use, leveraging modern C++ for high-performance scientific computing.
Features
Meshing
- Support for structured and unstructured mesh representations
- High-dimension mesh construction through Cartesian product
Finite Element Method
- Continuous and Discontinuous Galerkin methods
- Arbitrary dimension hypercube finite elements
- Anisotropic polynomial orders and quadrature rules
- Matrix-free operator evaluation
Third-Party Integrations & Parallelization Support
- Interfaces with the MFEM, RAJA, and Caliper libraries.
- Support for OpenMP, CUDA, HIP parallelization models
Getting Started
Requirements
- C++17 or higher
Installation
Simply add the include folder to your project's include path. The GenDiL project also ships with CMakeLists.txt files for building with CMake. The scripts directory contains examples scripts for building and using GenDiL.
The following script will use CMake to configure, build, run the tests, and install the library: ```sh mkdir -p build cd build
cmake -D CMAKEBUILDTYPE=Release \ -D CMAKEINSTALLPREFIX=../install \ -D USEMFEM=ON \ -D MFEMDIR=../mfem/build \ ..
make -j 8 && make test && make install
cd .. ```
Usage
Include the main header file in your project: ```cpp
include
```
When using CMake for your project, use find_package to import GenDiL:
find_package(GENDIL REQUIRED HINTS "${GENDIL_DIR}" "${GENDIL_DIR}/share/gendil/cmake" NO_DEFAULT_PATH)
Benchmarks, tests, and examples
Executables are organized in three categories: benchmarks, tests, and examples. - Examples show standard use cases of the library. - Tests verify the correctness of the library. - Benchmarks measure the performance of the library.
Citing GenDiL
If you use GenDiL in your publications or presentations, please cite it as follows:
bibtex
@misc{doecode_154944,
title = {GenDiL},
author = {Dudouit, Yohann and Holec, Milan and Rotem, Amit Y.},
abstractNote = {The GenDiL library is a collection of C++ software abstractions designed to discretize and solve partial differential equations (PDEs) for high‐performance computing (HPC) applications. Its primary focus is on modern C++ generic programming, which helps ensure portability across various hardware architectures.},
doi = {10.11578/dc.20250507.2},
url = {https://doi.org/10.11578/dc.20250507.2},
howpublished = {[Computer Software] \url{https://doi.org/10.11578/dc.20250507.2}},
year = {2025},
month = {march}
}
Contributing
All new contributions must be made under the BSD-3-Clause license.
License
GenDiL is distributed under the terms of the BSD-3-Clause license.
See LICENSE, COPYRIGHT, and NOTICE for details.
SPDX-License-Identifier: BSD-3-Clause
LLNL-CODE-2003681
Owner
- Name: GenDiL
- Login: GenDiL
- Kind: organization
- Repositories: 1
- Profile: https://github.com/GenDiL
Citation (CITATION.cff)
cff-version: 1.2.0
message: "If you use GenDiL in your research, please cite it as below."
title: "Generic Discretization Library"
version: "0.0.2"
doi: "10.11578/dc.20250507.2"
authors:
- family-names: "Dudouit"
given-names: "Yohann"
orcid: 0000-0001-5831-561X
- family-names: "Holec"
given-names: "Milan"
- family-names: "Rotem"
given-names: "Amit Y."
repository-code: "https://github.com/GenDiL/GenDiL"
repository-artifact: "https://doi.org/10.11578/dc.20250507.2"
date-released: "2025-03-18"
GitHub Events
Total
- Watch event: 7
- Push event: 49
- Pull request review event: 11
- Pull request review comment event: 17
- Pull request event: 19
- Create event: 12
Last Year
- Watch event: 7
- Push event: 49
- Pull request review event: 11
- Pull request review comment event: 17
- Pull request event: 19
- Create event: 12