Skip to main content

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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pymechlab-0.1.0.tar.gz (17.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pymechlab-0.1.0-py3-none-any.whl (16.9 kB view details)

Uploaded Python 3

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

Hashes for pymechlab-0.1.0.tar.gz
Algorithm Hash digest
SHA256 2ebdf0e0c1f05b7c8bcde149ae15e414d44fedab26d1727b3fa4caadf453784e
MD5 4b7b77393dea1ac6d4acfc26b6e96967
BLAKE2b-256 f55eb71907daa90a45f772b58e1a456d648719fbd01bba3f7d41078444c9e19d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymechlab-0.1.0.tar.gz:

Publisher: publish-to-pypi.yml on Xero64/pymechlab

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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

Hashes for pymechlab-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 aa556a12bce7c478dcdb249cbf79ceb55045c8f7db77152f9a828322033ef135
MD5 80e8a5fd876866c3063e76188b4bf16b
BLAKE2b-256 c8aec0c008c5a07a9deac258d170785828e2b9f5c8b8f0d7d9c5f4b8903969c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for pymechlab-0.1.0-py3-none-any.whl:

Publisher: publish-to-pypi.yml on Xero64/pymechlab

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page