Creates structured hexahedral meshes for OpenFOAM
Project description
HexMeshCylinders generates hexagonal meshes for OpenFOAM. It is restricted to volumes with radial-rotational symmetry, i.e. solids that can be described as a "stack" of cylinders.
I've created this simple tool after having problems with spurious currents (a.k.a. parasitic currents) in interFoam. I was working on microfluidics cases, but the results were not good because spurious currents were deforming the droplets. It is known that regular meshes can attenuate the problems with spurious currents, therefore I wanted to try that. I tried to create these meshes using blockMesh and gmsh, however, because my volumes were cylindrical (nozzles, reservoirs, etc.), I didn't manage to get what I wanted. So I decided to write this tool.
The problem I was working on was the formation of droplets out of nozzles measuring 50 micrometers in diameter. The regular mesh solved my problems with spurious currents. (I hope to upload a video of it soon).
Installation
pip install hexmeshcylinders
Usage example
The following example generates the mesh shown in the image bellow. For more demos, please
refer to the examples
folder.
from HexMeshCylinders import Stack
from HexMeshCylinders.Shapes import Rectangle, Circle
stack = Stack(cell_edge=.015, verbose=True)
stack.add_solid(
shape2d=Rectangle(len_x=.8, len_y=1.2),
height=1.,
n_layers=20,
)
stack.add_solid(
shape2d=Circle(diameter=.6),
height=.8,
)
stack.build_mesh()
stack.export('/tmp/HexMeshCylinders/basic')
Requirements
Requires numpy. If you want to run the tests, you will also need to have OpenFOAM installed.
Meta
Gui Miotto – @gmiotto
Distributed under the MIT license. See LICENSE
for more information.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for HexMeshCylinders-0.0.3-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a4104c72d64771951a52269bf6d4f872791f04822574c3144da30f5f1ce299a4 |
|
MD5 | ad0b6c2bc19c3c421a8a57f974482d0d |
|
BLAKE2b-256 | c8dfeda8ba32879bfcf577d0edb3356f9b0082b7fac596bff34eb98d6a3009f4 |