Python Package for Mechanical Laboratory Testing
Project description
pymechlab
Python Package for Mechanical Laboratory Testing
This package is used for calculating the A-basis and B-Basis mechanical properties from mechanical laboratory test results and data.
An example from CMH-17 is shown below.
Input file 'cmh17_pg_8-87.json':
{
"Material": "Graphite/Epoxy",
"Property": "Compression Strength",
"Test Environment": "ETW",
"Program": "Qualification Data",
"batches": {
"1": {
"datasets": {
"1": {
"coupons": {
"1": 106.358,
"2": 105.899,
"3": 88.464,
"4": 103.902,
"5": 80.206,
"6": 109.2,
"7": 61.014
}
}
}
},
"2": {
"datasets": {
"2": {
"coupons": {
"1": 99.321,
"2": 115.862,
"3": 82.613,
"4": 85.369,
"5": 115.802,
"6": 44.322,
"7": 117.328,
"8": 88.678
}
}
}
},
"3": {
"datasets": {
"3": {
"coupons": {
"1": 107.677,
"2": 108.960,
"3": 116.123,
"4": 80.233,
"5": 106.146,
"6": 104.668,
"7": 104.235
}
}
}
}
}
}
Python script 'cmh17_script.py':
#%%
# Import Dependencies
from IPython.display import display_markdown
from pymechlab.classes.cmh17statistics import pool_from_json
#%%
# Import JSON File
jsonfilepath = '../files/cmh17_pg_8-87.json'
pool = pool_from_json(jsonfilepath)
display_markdown(pool)
#%%
# Import JSON File
jsonfilepath = '../files/cmh17_pg_8-92.json'
pool = pool_from_json(jsonfilepath)
display_markdown(pool)
The output results in markdown are as follows:
| Pool Information | Value |
|---|---|
| Material | Graphite/Epoxy |
| Property | Compression Strength |
| Test Environment | ETW |
| Program | Qualification Data |
| Number of Specimens | 22 |
| Number of Batches | 3 |
| Number of Data Sets | 3 |
| Minimum Value | 44.322 |
| Maximum Value | 117.328 |
| Batch ID | Data Set ID | Coupon ID | Data Values | Before Pooling | After Pooling |
|---|---|---|---|---|---|
| 1 | 1 | 1 | 106.358 | ||
| 1 | 1 | 2 | 105.899 | ||
| 1 | 1 | 3 | 88.464 | ||
| 1 | 1 | 4 | 103.902 | ||
| 1 | 1 | 5 | 80.206 | ||
| 1 | 1 | 6 | 109.2 | ||
| 1 | 1 | 7 | 61.014 | ||
| 2 | 2 | 1 | 99.321 | ||
| 2 | 2 | 2 | 115.862 | ||
| 2 | 2 | 3 | 82.613 | ||
| 2 | 2 | 4 | 85.369 | ||
| 2 | 2 | 5 | 115.802 | ||
| 2 | 2 | 6 | 44.322 | X | |
| 2 | 2 | 7 | 117.328 | ||
| 2 | 2 | 8 | 88.678 | ||
| 3 | 3 | 1 | 107.677 | ||
| 3 | 3 | 2 | 108.96 | ||
| 3 | 3 | 3 | 116.123 | ||
| 3 | 3 | 4 | 80.233 | X | |
| 3 | 3 | 5 | 106.146 | ||
| 3 | 3 | 6 | 104.668 | ||
| 3 | 3 | 7 | 104.235 |
| Anderson k-Sample Test | Value |
|---|---|
| ADK Statistic | 0.328731 |
| AD Critical (α = 0.250) | 0.449259 |
| AD Critical (α = 0.100) | 1.30528 |
| AD Critical (α = 0.050) | 1.94342 |
| AD Critical (α = 0.025) | 2.57697 |
| AD Critical (α = 0.010) | 3.41635 |
| AD Critical (α = 0.005) | 4.0721 |
| AD Critical (α = 0.001) | 5.56419 |
| ADK p-value | 0.2888 |
| Normal Distribution Statistics | Value |
|---|---|
| Observed Significance Level (OSL) | 0.00605107 |
| Mean | 96.9264 |
| Standard Deviation | 18.8048 |
| Coefficient of Variation (%) | 19.4012% |
| B-Basis Value | 61.4527 |
| A-Basis Value | 36.1265 |
| Log Normal Distribution Statistics | Value |
|---|---|
| Observed Significance Level (OSL) | 0.000307372 |
| Log Mean | 4.55097 |
| Log Standard Deviation | 0.234756 |
| B-Basis Value | 60.8328 |
| A-Basis Value | 44.3433 |
| Two Param Weibull Distribution Statistics | Value |
|---|---|
| Observed Significance Level (OSL) | 0.0218837 |
| Scale Parameter | 103.847 |
| Shape Parameter | 7.28576 |
| B-Basis Value | 66.864 |
| A-Basis Value | 43.1806 |
| Non-Parametric Statistics | Value |
|---|---|
| B-Basis Method | Hans-Koop |
| A-Basis Method | Hans-Koop |
| B-Basis Rank | 10 |
| A-Basis Rank | N/A |
| B-Basis Hans-Koop k Factor | 1.18418 |
| A-Basis Hans-Koop k Factor | 2.2602 |
| B-Basis Value | 37.8853 |
| A-Basis Value | 12.9966 |
| Parameter | Value |
|---|---|
| Fcalc | 1.50529 |
| pcalc | 0.247263 |
| Fcrit | 4.67443 |
| ANOVA Statistics | Value |
|---|---|
| Sample Between-batch Mean Sq. (MSB) | 257.302 |
| Error Mean Square (MSE) | 363.761 |
| Estimate of Pop. Std. Deviation(s) | 18.6873 |
| B-Basis Tolerance Limit Factor (TB) | 1.88641 |
| A-Basis Tolerance Limit Factor (TA) | 3.2332 |
| B-Basis Value | 61.6745 |
| A-Basis Value | 36.5067 |
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 pymechlab-0.1.0.tar.gz.
File metadata
- Download URL: pymechlab-0.1.0.tar.gz
- Upload date:
- Size: 17.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2ebdf0e0c1f05b7c8bcde149ae15e414d44fedab26d1727b3fa4caadf453784e
|
|
| MD5 |
4b7b77393dea1ac6d4acfc26b6e96967
|
|
| BLAKE2b-256 |
f55eb71907daa90a45f772b58e1a456d648719fbd01bba3f7d41078444c9e19d
|
Provenance
The following attestation bundles were made for pymechlab-0.1.0.tar.gz:
Publisher:
publish-to-pypi.yml on Xero64/pymechlab
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pymechlab-0.1.0.tar.gz -
Subject digest:
2ebdf0e0c1f05b7c8bcde149ae15e414d44fedab26d1727b3fa4caadf453784e - Sigstore transparency entry: 452217359
- Sigstore integration time:
-
Permalink:
Xero64/pymechlab@13ba7c56b00f5c398ac034fb403a20a9905fc7c7 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Xero64
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-to-pypi.yml@13ba7c56b00f5c398ac034fb403a20a9905fc7c7 -
Trigger Event:
push
-
Statement type:
File details
Details for the file pymechlab-0.1.0-py3-none-any.whl.
File metadata
- Download URL: pymechlab-0.1.0-py3-none-any.whl
- Upload date:
- Size: 16.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aa556a12bce7c478dcdb249cbf79ceb55045c8f7db77152f9a828322033ef135
|
|
| MD5 |
80e8a5fd876866c3063e76188b4bf16b
|
|
| BLAKE2b-256 |
c8aec0c008c5a07a9deac258d170785828e2b9f5c8b8f0d7d9c5f4b8903969c3
|
Provenance
The following attestation bundles were made for pymechlab-0.1.0-py3-none-any.whl:
Publisher:
publish-to-pypi.yml on Xero64/pymechlab
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
pymechlab-0.1.0-py3-none-any.whl -
Subject digest:
aa556a12bce7c478dcdb249cbf79ceb55045c8f7db77152f9a828322033ef135 - Sigstore transparency entry: 452217369
- Sigstore integration time:
-
Permalink:
Xero64/pymechlab@13ba7c56b00f5c398ac034fb403a20a9905fc7c7 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/Xero64
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish-to-pypi.yml@13ba7c56b00f5c398ac034fb403a20a9905fc7c7 -
Trigger Event:
push
-
Statement type: