xref: /libCEED/examples/petsc/README.md (revision 0219ea01e2c00bd70a330a05b50ef0218d6ddcb0)
1## libCEED + PETSc Examples
2
3### CEED bakeoff problems - bps
4
5This code solves the CEED bakeoff problems on a structured grid generated and
6referenced using only low-level communication primitives.
7
8To build, run `make bps`.
9
10To run, `./bps -ceed [ceed-resource] -problem bp[1-6] -degree [degree]`.
11
12In addition to the common arguments, the following arguments may be set:
13
14- `-local`             - Target number of locally owned DoFs per process
15- `-degree`            - Polynomial degree of tensor product basis
16
17### CEED bakeoff problems with DMPlex - bpsdmplex
18
19This code solves the CEED bakeoff problems on a unstructured grid using DMPlex.
20This example requires a PETSc version later than 3.11.3.
21
22To build, run `make bpsdmplex`.
23
24To run, `./bpsdmplex -ceed [ceed-resource] -problem bp[1-6] -petscspace_degree [degree]`.
25
26In addition to the common arguments, the following arguments may be set:
27
28- `-mesh`              - Read mesh from file
29- `-cells`             - Number of cells per dimension
30- `-petscspace_degree` - Polynomial degree of tensor product basis (Mandatory)
31- `-enforce_bc`        - Enforce essential BCs
32
33### Command line arguments
34
35The following arguments can be specified for both examples:
36
37- `-ceed`              - CEED resource specifier
38- `-problem`           - CEED benchmark problem to solve
39- `-qextra`            - Number of extra quadrature points
40- `-test`              - Testing mode (do not print unless error is large)
41- `-benchmark`         - Benchmarking mode (prints benchmark statistics)
42