A 3pc Python library used to define and manage load cases for structural analysis.
Project description
3pc-loads
3pc-loads is a Python library used to define and manage load cases for structural analysis, particularly for composite panels. It provides a Loads class to define in-plane loads (Nxx, Nyy, Nxy), bending moments (Mxx, Myy, Mxy), transverse pressures, point loads, and environmental differentials (temperature and moisture).
Installation
Use the package manager pip to install 3pc-loads. Since 3pc-loads is publicly available on PyPI, you can install it directly:
pip install 3pc-loads
API Reference
Loads Class
The primary component of this package is the Loads class, which holds load case definitions and environmental conditions.
from loads.loads import Loads
Parameters
When initializing Loads, the following parameters are available:
loadsID(str): Loadcase identifier (required).panelID(str): Panel identifier (required).Nxx,Nyy,Nxy(float): In-plane axial and shear loads (optional, default=0.0).Mxx,Myy,Mxy(float): Bending and twisting moments (optional, default=0.0).p0(float): Amplitude of pressure (optional, default=0.0).P(float): Amplitude of point load (optional, default=0.0).xCG,yCG(float): Center of gravity coordinates for distributed loads (optional, default=0.0).xLength,yLength(float): Lengths for distributed transverse loads (optional, default=0.0).loadsType(str): Type of load. Options include"inplane","sinusoidal pressure","uniform pressure","point load","partial pressure"(default="inplane").Qyz,Qxz(float): Out-of-plane shear loads (optional, default=0.0).deltaT(float): Temperature differential (optional, default=0.0).deltaC(float): Moisture differential (optional, default=0.0).Ntt,Ntx,Nxt,Mtt,Mxt,Mtx(float): Loads in cylindrical coordinates (optional, default=0.0).
Methods
Loads.fromDict(**kwargs)
Initializes a Loads instance using a dictionary of keyword arguments. This is ideal for loading configurations from JSON files or dictionaries.
Usage Examples
Basic Initialization
Below is an example of defining a basic in-plane load case.
from loads.loads import Loads
# Define an in-plane compression load
ld = Loads(
loadsID="LC1",
panelID="P123",
Nxx=-100.0,
Nyy=0.0,
Nxy=0.0
)
print(f"Load Case: {ld.loadsID} for Panel: {ld.panelID}")
print(f"Nxx: {ld.Nxx}")
Initializing from a Dictionary
You can load your loads directly from a dictionary.
load_dict = {
"loadsID": "LC2",
"panelID": "P456",
"p0": 0.5,
"loadsType": "uniform pressure"
}
ld_2 = Loads.fromDict(**load_dict)
print("Load Type:", ld_2.type)
Commands
The package provides a command-line interface entry point. After installing, you can run the main application using:
loads
(Currently, this serves as an entry point defined in loads.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_loads-1.0.0.tar.gz.
File metadata
- Download URL: 3pc_loads-1.0.0.tar.gz
- Upload date:
- Size: 4.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f0eee8ded2472f97d4d25e6bef52409a706bd73dea87f5e41709c75779864928
|
|
| MD5 |
7b3f56f829df96cb29341b4ae486b59c
|
|
| BLAKE2b-256 |
f693f22274c1d281c042188e0686fde9e6adc56f3debd12a6eeb30f0557f5fc8
|
File details
Details for the file 3pc_loads-1.0.0-py3-none-any.whl.
File metadata
- Download URL: 3pc_loads-1.0.0-py3-none-any.whl
- Upload date:
- Size: 5.1 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 |
47f68a9bb6e24d4cd8080081074c279f66b75ebfe04d1d2d3aab990dc2337ba9
|
|
| MD5 |
8d791baaf20da56e5ea1e8bc63768f3c
|
|
| BLAKE2b-256 |
c48ba0d43e214b99024f18ac4060fb76be535dcf07ed06e4e50205f5ce509949
|