This release is a pre-release and may not be stable for production use.
Dune-SPGrid
The DUNE module dune-spgrid provides a structured, parallel grid: SPGrid.
Features
The following table compares the features of SPGrid to those of SGrid and YaspGrid:
YaspGrid |
SPGrid |
|
|---|---|---|
| Can communicate on codimensions | all | all |
| Coordinate type is template parameter | yes | yes |
| Supports anisotropic refinement | no | yes |
| Supports periodic boundary conditions | no1 | yes |
| Supports non-blocking communication | no | yes |
| Supports tensor-product grids | yes | no |
SPGrid supports different (global) refinement techniques, selected by a
template parameter. Some refinement techniques allow an optional parameter,
the refinement policy, to be passed to globalRefine.
Currently, isotropic, anisotropic and bisection refinement are supported, but
this list can be extended by downstream modules.
By default, isotropic refinement is used.
If no policy is given, both, isotropic and anisotropic refinement, split each cube into $2^dim$ child cubes. For anisotropic refinement, a policy may be used to say which directions to split.
Bisection refinement always splits a cube into $2$ child cubes; the split direction can be given by the policy. If no policy is given, the split directions are cycled through.
Note: SPGrid does not support tensor-product grids, as YaspGrid does.
This feature can be added by a metagrid layer, if desired.
Preprocessor Magic
SPGrid can be used through the preprocessor magic. The following table shows how
to select different variants of SPGrid:
| GRIDTYPE | Refinement |
|---|---|
SPGRID |
Default (Isotropic) |
SPGRID_SERIAL |
Default (Isotropic, no MPI) |
SPGRID_ISOTROPIC |
Isotropic |
SPGRID_ISOTROPIC_SERIAL |
Isotropic (no MPI) |
SPGRID_ANISOTROPIC |
Anisotropic |
SPGRID_ANISOTROPIC_SERIAL |
Anisotropic (no MPI) |
SPGRID_BISECTION |
Bisection |
SPGRID_BISECTION_SERIAL |
Bisection (no MPI) |
SPGRID_COUNT_FLOPS |
use Dune::Fem::Double as ctype |
git-2647cc5b0eaf89d862b669ea9ab60381b71e87a2
-
YaspGridsupports a different concept of periodicity. ↩
Metadata
Release files for dune-spgrid 2.10.dev20221016
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| dune-spgrid-2.10.dev20221016.tar.gz | 77.7 kB | Details |
Release files / dune-spgrid-2.10.dev20221016.tar.gz
| Download URL | dune-spgrid-2.10.dev20221016.tar.gz |
|---|---|
| Size | 77.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
10a66ff70d42d18d18bd39c47917ce1606ee2b9f0115d0d03570a7af1442ee14
|
|
BLAKE2b-256 checksum How to use checksums |
d8a5cc96ce052c76322b25c884fdd5ab72b291b1dfa8bad026366d41a2d6cc06
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.9.15
|