A 3pc Python library used to define a composite panel.
Project description
3pc-panel
3pc-panel is a Python library used to define a composite panel. It provides a Panel class to define the panel's geometry, laminate properties, and boundary conditions, built upon the Laminate class (provided by the 3pc-laminate package).
Installation
Use the package manager pip to install 3pc-panel. Since 3pc-panel and its dependencies are publicly available on PyPI, you can install them directly:
pip install 3pc-panel 3pc-laminate 3pc-ply 3pc-material 3pc-utils
API Reference
Panel Class
The primary component of this package is the Panel class, which holds panel properties and its laminate configuration.
from panel.panel import Panel
Required Parameters
When initializing Panel directly, the following parameters are required:
panelID(str): Panel identifier.length(float): Panel length, along x direction.width(float): Panel width, along y direction.laminate(Laminate): Panel laminate object.boundary_condition(str): Panel boundary condition (e.g., "SSSS" for all sides simply supported).
Methods
Panel.fromDict(**kwargs)
Initializes a Panel instance using a dictionary of keyword arguments.
Usage Examples
Basic Initialization
Below is an example of defining a panel using a laminate.
from material.orthotropic import Orthotropic
from ply.ply import Ply
from laminate.laminate import Laminate
from panel.panel import Panel
# Define the material
zg_material = Orthotropic(
matID="zg",
E1=181.0,
E2=10.3,
G12=7.17,
G13=7.17,
G23=7.17,
v12=0.28,
rho=1.5
)
# Define plies
ply_0 = Ply(plyID="1", angle=0.0, material=zg_material, thickness=0.125)
ply_90 = Ply(plyID="2", angle=90.0, material=zg_material, thickness=0.125)
# Define laminate (0/90)s
lam = Laminate(
lamID="lam_01",
stacking_sequence=[ply_0, ply_90, ply_90, ply_0],
offset="mid"
)
# Define panel
pnl = Panel(
panelID="panel_01",
length=10.0,
width=5.0,
laminate=lam,
boundary_condition="SSSS"
)
pnl.number_of_terms = 8
Commands
The package provides a command-line interface entry point. After installing, you can run the main application using:
panel
(Currently, this serves as an entry point defined in panel.main:main)
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file 3pc_panel-1.0.0.tar.gz.
File metadata
- Download URL: 3pc_panel-1.0.0.tar.gz
- Upload date:
- Size: 12.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
78d38294101698905875791023f90292a556cdeb7029db0b35e8f1ae97fafefc
|
|
| MD5 |
8c6c9f59932c87db501e3e539c60ab55
|
|
| BLAKE2b-256 |
df82f68869a8ef20787c1cc6fb18bc6b51905488d7c75fd336f5226351666d02
|
File details
Details for the file 3pc_panel-1.0.0-py3-none-any.whl.
File metadata
- Download URL: 3pc_panel-1.0.0-py3-none-any.whl
- Upload date:
- Size: 12.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4f12cdfd9d2028ba24bb6a5a919cd7c78ef625a3e60812c3517e2df17e4f4506
|
|
| MD5 |
e282ea357a14c30c0dff3d470a9f7fd5
|
|
| BLAKE2b-256 |
de7d63040873810e3c27383fe0691f4d295406609136a34f3bf4d1eff96434c8
|