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
#+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
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
pyblockMesh-0.0.3.tar.gz
(5.4 kB
view details)
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | a1f03cf1b5c662e88c5c1cb9c5b61b030ca70018b8b3b6b9a6f0b26115e0f76c |
|
MD5 | e282f1f54d04d0be091668b3928e34f3 |
|
BLAKE2b-256 | bc12affac98a41e4df4400932028ee50e7b522d9080e1040babc7d65a5d972f7 |