Insert cohesive elements into any mesh
Project description
____ __ _
/ __ \ __ __ / /_ ___ _____ (_)_ __ ___
/ /_/ // / / // __ \ / _ \ / ___// /| | / // _ \
/ ____// /_/ // / / // __/(__ )/ / | |/ // __/
/_/ \__, //_/ /_/ \___//____//_/ |___/ \___/
/____/
A lightweight, flexible python package to insert cohesive elements
Table of Contents
About The Project
Simple, extensible python library to read a finite element mesh and insert cohesive elements. Meshes are partitioned into sectors using METIS mesh partitioner, and cohesive elements are inserted between partitions. This allows an arbitrary level of insertion (controlled primarily by the number of partitions) without the user needing to specify cumbersome face-sets along which to insert.
Supported Mesh Formats
Abaqus, ANSYS msh, AVS-UCD, CGNS, DOLFIN XML, Exodus, FLAC3D, H5M, Kratos/MDPA, Medit, MED/Salome, Nastran (bulk data), Neuroglancer precomputed format, Gmsh (format versions 2.2, 4.0, and 4.1), OBJ, OFF, PERMAS, PLY, STL, Tecplot .dat, TetGen .node/.ele, SVG (2D only, output only), SU2, UGRID, VTK, VTU, WKT (TIN), XDMF.
Mesh I/O is facilitated by meshio, see meshio documentation for up-to-date list of supported mesh formats.
Built With
Getting Started
To get a local copy up and running follow these simple steps.
Installation
-
Install via pip
pip install pyhesive
-
Clone the repo
git clone https://gitlab.com/Jfaibussowitsch/pyhesive.git
Example Usage
-
[RECOMMENDED] Command line script
pyhesive-insert -i /path/to/mesh/file
Additional commmand line arguments are listed via
pyhesive-insert --help
-
Python module import
import pyhesive # create the mesh from plain old data pyh = pyhesive.Mesh.fromPOD(points,cells) # create partitions pyh.partitionMesh(numberOfPartitions) # insert elements between partitions pyh.insertElements() # write to file, for example in abaqus .inp format pyh.writeMesh(outputFilename,meshFormatOut="abaqus")
Testing
To run the test suite, clone the repository and from the root folder either
-
pytest
or
-
make test
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.