Lamipy
Composite laminates engineering simulations in Python.
Install / Use
/learn @joaopbernhardt/LamipyREADME
lamipy
Laminated composites engineering simulations in Python.
<img src="https://upload.wikimedia.org/wikipedia/commons/1/13/Composite_3d.png" data-canonical-src="https://upload.wikimedia.org/wikipedia/commons/1/13/Composite_3d.png" width="300" height="200" />Brief description:
This project's purpose is to provide simple & accurate computations for engineering simulations of fiber-reinforced composites. This kind of advanced material is used in many areas of engineering: spacecrafts, pressure vessels, risers etc. Basically, the idea behind composite laminates is to produce a component which has the required engineering properties (high elastic modulus, low self-weight and others) through stacking many layers of laminae, in such way that each one can be layed in different fiber angles and can consist of different materials.
Therefore, a composite laminate consists of a material resultant of layers (laminae) bonded together. In this program, the layers are considered continuous and orthotropic. It is possible to input different properties for each used material in the layers.
The implementation uses the Classical Laminate Theory (CLT) for computations. The summary of this theory can be found in: NASA's Basic Mechanics of Laminated Composite Plates, Prof. W. Stein's document and other sources.
Currently lamipy is not ready for use due to the lack of verification and validation tests, which will be produced soon.
Project goals:
- Provide a simple interface for laminate testing;
- Display accurate information of results, including graphical analysis;
Technical features:
- [x] Calculates CLT stresses & strains (lamina & laminate coord. systems);
- [x] Failure tests for individual laminas (Tsai-Wu, Max. Stress, Max Strain and Hashin criteria);
- [x] Progressive failure analysis using Ply Discount method;
- [x] Plotting of progressive failure analysis;
- [ ] Easy entry of laminate data;
- [ ] Puck failure criteria;
- [x] Thermal & moisture effects on CLT calculations;
- [ ] Laminate materials simple database
- [ ] ...
How to use:
Currently, lamipy is not ready for general usage. If you want to test the code, here are the steps:
Note: using lamipy requires a python3 environment for executing the runfailuretest.py file. It is also required numpy and matplotlib libraries (both of which are easily encountered in many python distributions).
- Clone this repository;
- Edit runfailuretest.py to input the laminate data;
- Execute.
Understanding lamipy:
As previously stated, lamipy works through the CLT computations. This way, the user input consists of the material properties, layup configurations, force vectors and other settings.
Below is a summary of the data flow inside lamipy for a simple analysis (i.e. not a progressive failure analysis). <img src="docs/dataflow.PNG" data-canonical-src="docs/dataflow.PNG" />
Example results:
Through the obtained results from an analysis, it is possible to plot charts for better visualisation: <img src="docs/example_plot1.png" data-canonical-src="docs/example_plot1.png" /> <img src="docs/example_plot2.png" data-canonical-src="docs/example_plot2.png" /> <img src="docs/example_plot3.png" data-canonical-src="docs/example_plot3.png" />
Also, since lamipy is capable of running a progressive failure analysis, it is possible to automatically plot the Load Factor vs. Average Strain of the laminate while directly pointing First Ply Failure and Last Ply Failure: <img src="docs/example_plot4.png" data-canonical-src="docs/example_plot4.png" />
Related Skills
node-connect
349.7kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
109.7kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
349.7kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
349.7kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
