ngsPETSc.utils.fenicsx
This module contains all the functions related to wrapping NGSolve meshes to FEniCSx We adopt the same docstring conventiona as the FEniCSx project, since this part of the package will only be used in combination with FEniCSx.
Attributes
Classes
This class is used to wrap a Netgen geometric model to a DOLFINx mesh. |
Module Contents
- ngsPETSc.utils.fenicsx._ngs_to_cells
- class ngsPETSc.utils.fenicsx.GeometricModel(geo, comm: mpi4py.MPI.Comm)
This class is used to wrap a Netgen geometric model to a DOLFINx mesh. Args:
geo: The Netgen model comm: The MPI communicator to use for mesh creation
- geo
- comm
- model_to_mesh(hmax: float, gdim: int = 2, partitioner: Callable[[mpi4py.MPI.Comm, int, int, dolfinx.cpp.graph.AdjacencyList_int32], dolfinx.cpp.graph.AdjacencyList_int32] = dolfinx.mesh.create_cell_partitioner(dolfinx.mesh.GhostMode.none), transform: Any = None, routine: Any = None) Tuple[dolfinx.mesh.Mesh, dolfinx.cpp.mesh.MeshTags_int32, dolfinx.cpp.mesh.MeshTags_int32]
Given a NetGen model, take all physical entities of the highest topological dimension and create the corresponding DOLFINx mesh.
This function only works in serial, at the moment.
- Args:
hmax: The maximum diameter of the elements in the triangulation model: The NetGen model gdim: Geometrical dimension of the mesh partitioner: Function that computes the parallel
distribution of cells across MPI ranks
transform: PETSc DMPLEX Transformation to be applied to the mesh routine: Function to be applied to the mesh after generation
takes as plan the mesh and the NetGen model and returns the same objects after the routine has been applied.
- Returns:
A DOLFINx mesh for the given NetGen model.