Skip to content

Commit 9e3c541

Browse files
authored
Merge pull request #1860 from CEED/jeremy/readme
Update example folder Readmes
2 parents 07d8a9f + 45e62b5 commit 9e3c541

File tree

5 files changed

+66
-5
lines changed

5 files changed

+66
-5
lines changed

examples/README.md

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ For more details, please see the dedicated [documentation section](https://libce
1313

1414
The Center for Efficient Exascale Discretizations (CEED) uses Bakeoff Problems (BPs) to test and compare the performance of high-order finite element implementations.
1515
The definitions of the problems are given on the ceed [website](https://ceed.exascaleproject.org/bps/).
16-
Each of the following bakeoff problems that use external discretization libraries (such as MFEM, PETSc, and Nek5000) are located in the subdirectories `mfem/`, `petsc/`, and `nek5000/`, respectively.
16+
Each of the following bakeoff problems that use external discretization libraries (such as deal.II, MFEM, PETSc, and Nek5000) are located in the subdirectories `deal.II/`, `mfem/`, `petsc/`, and `nek5000/`, respectively.
1717

1818
Here we provide a short summary:
1919

@@ -22,6 +22,13 @@ Here we provide a short summary:
2222
:widths: auto
2323
* - User code
2424
- Supported BPs
25+
* - `deal.II`
26+
- * BP1 (scalar mass operator) with $Q=P+1$
27+
* BP2 (vector mass operator) with $Q=P+1$
28+
* BP3 (scalar Laplace operator) with $Q=P+1$
29+
* BP4 (vector Laplace operator) with $Q=P+1$
30+
* BP5 (collocated scalar Laplace operator) with $Q=P$
31+
* BP6 (collocated vector Laplace operator) with $Q=P$
2532
* - `mfem`
2633
- * BP1 (scalar mass operator) with $Q=P+1$
2734
* BP3 (scalar Laplace operator) with $Q=P+1$
@@ -50,12 +57,12 @@ This latter choice is popular in applications that use spectral element methods
5057

5158
For a more detailed description of the operators employed in the BPs, please see the dedicated [BPs documentation section](https://libceed.org/en/latest/examples/bps.html).
5259

53-
## PETSc+libCEED Navier-Stokes Solver
60+
## PETSc+libCEED Fluid Dynamics Navier-Stokes Mini-App
5461

5562
The Navier-Stokes problem solves the compressible Navier-Stokes equations using an explicit or implicit time integration.
5663
A more detailed description of the problem formulation can be found in the [fluids/](./fluids) folder and the corresponding [fluids documentation page](https://libceed.org/en/latest/examples/fluids/index.html).
5764

58-
## PETSc+libCEED Solid mechanics elasticity mini-app
65+
## PETSc+libCEED Solid Mechanics Elasticity Mini-App
5966

6067
This example solves the steady-state static momentum balance equations using unstructured high-order finite/spectral element spatial discretizations.
6168
A more detailed description of the problem formulation can be found in the [solids/](./solids) folder and the corresponding [solids documentation page](https://libceed.org/en/latest/examples/solids/index.html).
@@ -70,9 +77,18 @@ For a detailed description, please see the corresponding [area documentation pag
7077
These examples, located in the [petsc/](./petsc) folder, reproduce the Bakeoff Problems 1-6 on a discrete cubed-sphere, using PETSc.
7178
For a detailed description, please see the corresponding [problems on the cubed-sphere documentation page](https://libceed.org/en/latest/examples/petsc/index.html#bakeoff-problems-on-the-cubed-sphere).
7279

80+
## libCEED Python Examples
81+
82+
These Jupyter notebooks explore the concepts of the libCEED API, including how to install the Python interface and the usage of each API object, with interactive examples.
83+
The basic libCEED C examples in `/ceed` folder are also available as Python examples.
84+
85+
## libCEED Rust Examples
86+
87+
The basic libCEED C examples in `/ceed` folder are also available as Rust examples.
88+
7389
## Running Examples
7490

75-
To build the examples, set the `MFEM_DIR`, `PETSC_DIR`, and `NEK5K_DIR` variables and, from the `examples/` directory, run
91+
To build the examples, set the `DEAL_II_DIR`, `MFEM_DIR`, `PETSC_DIR`, and `NEK5K_DIR` variables and, from the `examples/` directory, run
7692

7793
```{include} ../README.md
7894
:start-after: <!-- running-examples-inclusion -->

examples/ceed/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
## libCEED: Basic Examples
1+
## libCEED Basic Examples
22

33
Two examples are provided that rely only upon libCEED without any external libraries.
44

examples/deal.II/README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
## libCEED deal.II Example
2+
13
An example how to write libCEED operators (BP1-BP6) within the open-source finite element library [deal.II](https://www.dealii.org/).
24
As reference, operators are presented that use the native matrix-free infrastructure.
35

examples/mfem/README.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
## libCEED MFEM Examples
2+
3+
These examples show to write libCEED operators (BP1 and BP3) within the open-source finite element library [MFEM](https://www.mfem.org/).
4+
5+
First compile MFEM and libCEED individually. After that, compile the MFEM example:
6+
7+
```bash
8+
export MFEM_DIR=/path/to/mfem
9+
make
10+
```
11+
12+
To run the executable, write:
13+
14+
```
15+
./bp[1, 3]
16+
```
17+
18+
Optional command-line arguments are shown by adding the command-line argument "--help".

examples/python/README.md

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
## libCEED Python Examples
2+
3+
These examples are written using libCEED's Python interface.
4+
5+
### Tutorials
6+
7+
These Jupyter notebooks explore the concepts of the libCEED API, including how to install the Python interface and the usage of each API object, with interactive examples.
8+
9+
### Basic Examples
10+
11+
The basic libCEED C examples in the folder `/examples/ceed` are also available as Python examples.
12+
13+
To build the QFunctions into a shared library that the Python examples use, run
14+
15+
```bash
16+
make setup
17+
```
18+
19+
To execute the examples, run:
20+
21+
```
22+
python ex1_volume.py
23+
```
24+
25+
A full list of command-line arguments are shown by adding the command-line argument "--help".

0 commit comments

Comments
 (0)