Python module for generating dual meshes
Project description
DualMesh
Python module for generating dual meshes.
Requirements
- meshio >= 4.0
- numpy >= 1.16.3
Installation
Either install using pip
pip install dualmesh
or copy the file dualmesh.py from the dualmesh directory in this repository.
Example
We can go through the example of using dual_mesh.py module.
First, we import all the needed modules
# For opening a mesh file
import meshio
# For generating a dual mesh
import dualmesh as dm
# For plotting both the mesh and dual mesh
import matplotlib.pyplot as plt
We load the mesh for which we want a dual mesh
msh = meshio.read("example.msh")
We get the dual mesh object using dual_mesh.py
dual_msh = dm.get_dual(msh, order=True)
We use matplotlib to plot the original mesh
fig, ax = plt.subplots()
ax.triplot(msh.points[:, 0], msh.points[:, 1], msh.cells["triangle"])
We loop over the polygons (cells) in the dual mesh and we plot them
for cell in dual_msh.cells["polygon"]:
# We get the coordinates of the current polygon.
# We repeat one of the points, so that when plotted, we get a complete polygon
cell_points = dual_msh.points[cell + [cell[0]]]
# We plot the points of the current polygon
ax.plot(cell_points[:, 0], cell_points[:, 1], ":", color="black")
And finally we add the legend and save the resulting figure
# We add a legend to the figure
fig.legend([ax.lines[0], ax.lines[-1]], ["Mesh", "Dual mesh"])
# We save the resulting figure
fig.savefig("example.png")
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
dualmesh-0.14.0.tar.gz
(3.3 kB
view details)
File details
Details for the file dualmesh-0.14.0.tar.gz
.
File metadata
- Download URL: dualmesh-0.14.0.tar.gz
- Upload date:
- Size: 3.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0.post20200210 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4b69fe02d54d31e56e7bcec04bf65ca5a388a0454cbeb3494e57a5a37942459d |
|
MD5 | 6cdaf6da42014b8901ebf30d29896779 |
|
BLAKE2b-256 | 794bbce306fec23a8ecbb1c110b8d2027a5c91e3d36756b46076b7935b2638df |