Structural Connection Integrity · CONN-SAFETY-01 · Version 1.0.0 · May 2026

FRAME-LINK

Fatigue Reliability Assessment and Monitoring Extension for Structural Connection Integrity
under Cyclic and Dynamic Loading
Structural Connection Mechanics · Welded & Riveted Joint Fatigue · Crack Propagation Mechanics · AI-Assisted Reliability Support
"A structural connection is not merely a component of a larger structural system — it is frequently the governing link in the reliability chain,
the element whose failure most directly produces overall structural loss of function. FRAME-LINK treats each individual connection
as the subject of its own specific fatigue assessment, providing continuous, quantitative safety governance at the detail level."
↗ View on GitHub 📦 PyPI Package 🔬 Zenodo DOI 🦊 GitLab Mirror
PyPI Downloads Python DOI Series ORCID License Domain
±2.9%
Mean CSII Accuracy
4.1%
Crack Rate Prediction Error
3.3%
Mean Fatigue MAE
Modules: SCFMM · FDARM · CSDM
78
Python Files
24-48h
CSII Warning Lead Time
Real-Time Safety Governance
Four-Level CSII Signal Classification
Every structural connection evaluated by FRAME-LINK receives a continuous safety signal with full fracture mechanics, fatigue, and stiffness diagnostics.
CSII ≥ 0.90
🟢 STEADY ELASTIC STATE
Connection response within elastic design bounds. Normal operation — continuous monitoring, no intervention required.
0.75 ≤ CSII < 0.90
🟠 ANOMALY DETECTED L1
Onset of measurable stiffness change or fatigue growth. Enhanced monitoring frequency — targeted NDT inspection scheduled.
0.65 ≤ CSII < 0.75
🟠 DEGRADATION WARNING L2
Critical stiffness reduction or accelerating damage. Immediate temporary load restriction — structural review within 48 hours.
CSII < 0.65
🔴 CRITICAL FAILURE
Safety threshold breached. Immediate operational shutdown. Site evacuation. Emergency structural assessment — SCFMM crack map, FDARM damage, CSDM stiffness report.
Three Modules · One Connection State · Continuous Assessment
Fully coupled fracture mechanics and fatigue reliability assessment augmented by real-time sensor fusion and AI-assisted support.
MODULE 01
SCFMM — Stress Concentration & Fracture Mechanics Module
K_t · da/dN · ΔK
IIW sub-model FE at 0.4t and 1.0t. Paris–Erdogan crack propagation with Wheeler retardation. Automated mesh convergence to 2% tolerance.
da/dN = C·(ΔK)^m
ΔK = Y·Δσ·√(π·a)
MODULE 02
FDARM — Fatigue Damage Accumulation & Reliability Module
D_joint < 0.80 · β ≥ 3.80
ASTM E1049-85 rainflow cycle counting. Palmgren–Miner damage accumulation. Eurocode 3 FAT class S-N curves. Cornell reliability index.
D_joint(t) = Σ n_i/N_i(Δσ_i)
β = (μ_R - μ_S)/√(σ_R² + σ_S² + σ_AI²)
MODULE 03
CSDM — Connection Stiffness Degradation Module
S_deg < 0.10 · K_joint(t)
Direct joint stiffness measurement. AI-accelerated FE model updating. Global stiffness matrix K(t) update and force redistribution tracking.
S_deg = 1 − K_joint(t)/K_joint,0
R(t) = R₀·(1 − D_corr − D_fatigue)
AI SUPPORT
AISL — AI-Assisted Support Layer
A_score < 3σ · 48h Forecast
Strain field anomaly detection A_score. LSTM crack propagation pattern recognition. XGBoost 24-48h CSII forecast. GP probabilistic reliability. Physics-bounded outputs only.
A_score = |σ_meas - σ_FE|/σ_FE
ε_AI ≤ 5·(da/dN)_Paris bound
CSII
Connection Structural Integrity Index
CSII ≥ 0.90
Weighted composite of stiffness degradation, fatigue damage, and reliability index. Continuous real-time safety certification at connection level.
CSII = 0.40·(1-S_deg) + 0.35·(1-D/D_allow)
+ 0.25·(β_joint/β_target)
SENSOR ARRAY
Multi-Sensor Integration
200Hz · 6 sensors/detail
IIW rosette strain gauges at 0.4t/1.0t. Acoustic emission transducers. Bolt preload load cells. LVDT clip gauges. Biaxial MEMS accelerometer. Real-time data fusion and QC.
AE b-value: log(N) = a - b·M
K_F = P·Hᵀ·[H·P·Hᵀ + R]⁻¹
Three Canonical Benchmark Scenarios
Validated against controlled fatigue tests, railway bridge SHM campaign, and full-scale bolted splice with progressive preload loss.
CaseConnection / ScenarioCSII AccuracyCrack Rate ErrorFatigue MAEβ AccuracyStatus
V1Welded T-joint — variable amplitude traffic spectrum±2.9%4.1%3.3%±4.7%✅ PASS
V2Railway bridge SHM — crack initiation & propagation detected±3.1%3.8%2.9%±3.2%✅ PASS
V3Bolted splice — progressive bolt preload loss±2.8%4.4%3.7%±5.1%✅ PASS
MEAN±2.93%4.1%3.3%±4.3%🏆 CERTIFIED

CSII certification threshold = 0.90 · β target = 3.8 · Damage limit D_allowable = 0.80 · S_deg warning = 0.10

Mathematical Foundation
Governing Equations & Safety Bounds
da/dN = C · (ΔK)^m    where    ΔK = Y · Δσ · √(π · a)
D_joint(t) = Σ n_i/N_i(Δσ_i) ≤ D_allowable = 0.80
β = (μ_R − μ_S) / √(σ_R² + σ_S² + σ_AI²)
S_deg,joint = 1 − K_joint(t) / K_joint,0
CSII = 0.40·(1−S_deg) + 0.35·(1−D_joint/D_allow) + 0.25·(β_joint/β_target)
CSII ≥ 0.90
Connection Structural Integrity Index
β ≥ 3.80
Reliability index (target P_f ≈ 10⁻⁴/yr)
D_joint < 0.80
Palmgren–Miner damage threshold
S_deg < 0.10
Stiffness degradation warning bound
A_score < 3σ
Strain field anomaly threshold
Quick Start
Deploy Connection Safety Governance in 60 Seconds
pip install frame-link-engine

from frame_link import FrameLinkAssessor

# Initialize with connection configuration
assessor = FrameLinkAssessor(
    connection_config="configs/welded_T_joint.yaml",
    sensor_stream="live"
)

result = assessor.evaluate()

print(result.csii)               # CSII ∈ [0,1]
print(result.signal)             # STEADY_ELASTIC | ANOMALY_L1 | DEGRADATION_L2 | CRITICAL
print(result.beta)               # Cornell reliability index β
print(result.d_joint)            # Palmgren–Miner damage D_joint
print(result.s_deg)              # Stiffness degradation index S_deg,joint
print(result.crack_depth)        # Current estimated crack depth a (mm)
print(result.da_dn)              # Paris law crack propagation rate da/dN
from frame_link.fatigue import RainflowCounter, PalmgrenMiner
from frame_link.fatigue.sn_curves import SNcurve
import numpy as np

# Load strain time series from IIW hot-spot gauge
strain_ts = np.loadtxt("sensors/weld_toe_strain.csv")

# ASTM E1049-85 rainflow cycle counting
counter = RainflowCounter()
cycles = counter.count(strain_ts)

# Eurocode 3 FAT71 S-N curve + Goodman mean stress correction
sn = SNcurve(fat_class=71, m=3, code="EC3")
miner = PalmgrenMiner(sn_curve=sn, goodman_correction=True)
D = miner.accumulate(cycles)

print(f"Fatigue damage: {D:.4f} (warning: 0.80, failure: 1.00)")
from frame_link.fracture import ParisErdogan, WheelerRetardation
from frame_link.fracture import StressIntensityFactor

# Define weld toe geometry and material constants
sif = StressIntensityFactor(Y=1.12, geometry="weld_toe")
paris = ParisErdogan(C=3e-13, m=3.0)
wheeler = WheelerRetardation(p=2.0)

# Integrate crack growth to fracture toughness limit
result = paris.integrate(
    a_0=0.001,       # Initial crack depth 1 mm
    a_cr=0.025,      # Critical crack depth (K_Ic limit)
    delta_sigma=85.0, # MPa stress range
    sif=sif, retardation=wheeler
)

print(f"Remaining cycles: {result.N_remaining:,.0f}")
print(f"Remaining life: {result.life_hours:.1f} h")
# Launch real-time Streamlit CSII governance dashboard
$ streamlit run examples/streamlit_dashboard.py

# Dashboard at: http://localhost:8501
# Panels: CSII gauge · Paris crack growth · Fatigue damage map · β reliability · 48h forecast

# Or open web dashboard:
# https://frame-link.netlify.app/dashboard
Available on 11 Platforms
FRAME-LINK is distributed across code hosts, package registries, and research archives for maximum accessibility and archival permanence.
🐙
GitHub
Primary · Source code, issues, PRs
↗ github.com/gitdeeper12/FRAME-LINK
🦊
GitLab
Mirror · CI/CD pipeline
↗ gitlab.com/gitdeeper12/FRAME-LINK
🪣
Bitbucket
Mirror · Enterprise access
↗ bitbucket.org/gitdeeper-12/FRAME-LINK
🏔️
Codeberg
Mirror · Open-source community
↗ codeberg.org/gitdeeper12/FRAME-LINK
🐍
PyPI
Python Package · pip install frame-link-engine
↗ pypi.org/project/frame-link-engine
🔬
Zenodo
Paper & Data · Citable DOI
↗ doi.org/10.5281/zenodo.20440786
📋
OSF Project
Research project registry
↗ osf.io/framelink
📝
OSF Preregistration
Pre-registered study protocol
↗ doi.org/10.17605/OSF.IO/BP27A
🌐
Website
Live docs & dashboard
↗ frame-link.netlify.app
🧑‍🔬
ORCID
Researcher identity profile
↗ 0009-0003-8903-0029
🗄️
Internet Archive
Permanent archival copy
↗ archive.org
git clone https://github.com/gitdeeper12/FRAME-LINK.git
git clone https://gitlab.com/gitdeeper12/FRAME-LINK.git
git clone https://bitbucket.org/gitdeeper-12/FRAME-LINK.git
git clone https://codeberg.org/gitdeeper12/FRAME-LINK.git
Citation
Cite FRAME-LINK in Your Research
If FRAME-LINK contributes to your research, please use one of the citation formats below.
@software{baladi2026framelink_pypi,
  author    = {Baladi, Samir},
  title     = {{FRAME-LINK}: Fatigue Reliability Assessment and Monitoring
               Extension for Structural Connection Integrity under
               Cyclic and Dynamic Loading},
  year      = {2026},
  version   = {1.0.0},
  publisher = {Python Package Index},
  url       = {https://pypi.org/project/frame-link-engine},
  note      = {Python package, MIT License, Series CONN-SAFETY-01}
}
@dataset{baladi2026framelink_zenodo,
  author    = {Baladi, Samir},
  title     = {{FRAME-LINK}: Fatigue Reliability Assessment and Monitoring
               Extension for Structural Connection Integrity under
               Cyclic and Dynamic Loading —
               Research Paper and Simulation Data},
  year      = {2026},
  publisher = {Zenodo},
  version   = {1.0.0},
  doi       = {10.5281/zenodo.20440786},
  url       = {https://doi.org/10.5281/zenodo.20440786},
  note      = {Structural Connection Integrity · CONN-SAFETY-01}
}
@misc{baladi2026framelink_osf,
  author    = {Baladi, Samir},
  title     = {{FRAME-LINK} Framework: Pre-registered Study Protocol for
               Fatigue Reliability Assessment and Monitoring of Structural
               Connection Integrity under Cyclic and Dynamic Loading},
  year      = {2026},
  publisher = {Open Science Framework},
  doi       = {10.17605/OSF.IO/BP27A},
  url       = {https://doi.org/10.17605/OSF.IO/BP27A},
  note      = {OSF Preregistration}
}
Baladi, S. (2026). FRAME-LINK: Fatigue Reliability Assessment and Monitoring
Extension for Structural Connection Integrity under Cyclic and Dynamic
Loading (Version 1.0.0, Series CONN-SAFETY-01). Zenodo.
https://doi.org/10.5281/zenodo.20440786