Skip to main content

Python wrapper around blockMeshDict creation

Project description

#+TITLE: pyblockmesh
#+AUTHOR: Vishakh Pradeep Kumar
#+EMAIL: grokkingStuff@gmail.com

Python Library

#+BEGIN_SRC sh :exports results
.
├── CHANGELOG.md
├── CONTRIBUTING.md
├── index.org
├── LICENSE
├── pyblockmesh
│   ├── edge.py
│   ├── face.py
│   ├── hexahedron.py
│   ├── __init__.py
│   └── vertex.py
├── pytest.ini
├── README.md
├── README.org
├── requirements.txt
├── script
│   └── test
├── setup.py
└── tests
├── helpers
│   ├── __init__.py
│   └── my_helper.py
├── __init__.py
├── tests_helper.py
└── unit
├── __init__.py
├── test_example.py
└── test_version.py

5 directories, 22 files
#+END_SRC

* Example


#+BEGIN_SRC python
import pyblockmesh as pbm


v0 = pbm.Vertex(-1,-1,-1)
v1 = pbm.Vertex( 1,-1,-1)
v2 = pbm.Vertex( 1, 1,-1)
v3 = pbm.Vertex(-1, 1,-1)
v4 = pbm.Vertex(-1,-1, 1)
v5 = pbm.Vertex( 1,-1, 1)
v6 = pbm.Vertex( 1, 1, 1)
v7 = pbm.Vertex(-1, 1, 1)

h1 = pbm.Hexahedron([v0,v1,v2,v3,v4,v5,v6,v7],numberOfCells=[3,3,3])
h1.add_edge(v0,v1,'line')
h1.add_face([v0,v1,v2,v3],name='inlet',patchType='wall')

string = pbm.buildBlockMesh()

print(string)
blockMeshDict = open("blockmeshdict.txt", "w")
blockMeshDict.write(string)
blockMeshDict.close()
#+END_SRC

#+RESULTS:
: None

#+BEGIN_EXAMPLE
vertices
(
(-1 -1 -1)
(1 -1 -1)
(1 1 -1)
(-1 1 -1)
(-1 -1 1)
(1 -1 1)
(1 1 1)
(-1 1 1)
)

blocks
(
hex 0 1 2 3 4 5 6 7 ( 3 3 3 )
)

edges
(
line 0 1
)

boundary
(
inlet
{
type wall;
faces
(
( 0 3 2 1 )
);
}
)
#+END_EXAMPLE



* Requirements

Package requirements are handled using pip. To install them do

#+BEGIN_SRC sh
pip install -r requirements.txt
#+END_SRC

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

pyblockMesh-0.0.3.tar.gz (5.4 kB view details)

Uploaded Source

File details

Details for the file pyblockMesh-0.0.3.tar.gz.

File metadata

  • Download URL: pyblockMesh-0.0.3.tar.gz
  • Upload date:
  • Size: 5.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/28.8.0 requests-toolbelt/0.8.0 tqdm/4.26.0 CPython/3.6.1

File hashes

Hashes for pyblockMesh-0.0.3.tar.gz
Algorithm Hash digest
SHA256 a1f03cf1b5c662e88c5c1cb9c5b61b030ca70018b8b3b6b9a6f0b26115e0f76c
MD5 e282f1f54d04d0be091668b3928e34f3
BLAKE2b-256 bc12affac98a41e4df4400932028ee50e7b522d9080e1040babc7d65a5d972f7

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page