CoolFace
Datasetpublic

kopaaParametric/ec3-steel-portal-frames

EC3 Steel Portal Frame Structural Analysis Dataset Dataset Summary A parametric structural analysis dataset of 995 single-span steel portal frames designed and verified to Eurocode 3 (EN 1993-1-1:2005). Each record represents a unique frame configuration solved with the Karamba3D 3.1 FEM solver inside Grasshopper / Rhinoceros 3D. The dataset is intended for training and benchmarking AI models that predict structural performance, section selection, and code… See the full description on the dataset page: https://huggingface.co/datasets/kopaaParametric/ec3-steel-portal-frames.

sourceHugging Facecc-by-nc-4.0updated 5mo agoView on Hugging Face
0likes6downloads
Dataset Card

EC3 Steel Portal Frame Structural Analysis Dataset

Dataset Summary

A parametric structural analysis dataset of 995 single-span steel portal frames designed and verified to Eurocode 3 (EN 1993-1-1:2005). Each record represents a unique frame configuration solved with the Karamba3D 3.1 FEM solver inside Grasshopper / Rhinoceros 3D.

The dataset is intended for training and benchmarking AI models that predict structural performance, section selection, and code compliance in the early design phase of steel-framed buildings — industrial sheds, agricultural buildings, warehouses, and sports halls.


Dataset Structure

Two linked JSONL files:

FileRecordsDescription
frames.jsonl995One record per frame — geometry, loads, global results
elements.jsonl3 450One record per structural element — section properties, utilization, internal forces

Frames and elements are linked via run_id (format: SF-00001 → SF-01000).


Frame Schema

Each frame is a 2D single-span portal in one of two configurations:

TypeCountElements
Monopitch5302 columns + 1–2 rafters
Gable4652 columns + 2 rafters

Element identifiers: C1, C2 = columns; B1, B2 = roof beams (rafters)


Parametric Ranges

ParameterRangeDistribution
Span5.0 – 25.0 mUniform random
Eaves height3.0 – 10.0 mUniform random
Roof pitch3.0 – 25.0°Derived from geometry
Steel gradeS235 / S275 / S355 / S420 / S460~200 frames each
Wind load0.30 – 2.00 kN/m²Uniform random
Snow load0.30 – 4.00 kN/m²Uniform random
Column profile familyHEBFixed
Rafter profile familyIPEFixed

Key Statistics

MetricValue
Total frames995
Total elements3 450
EC3 compliant frames630 / 995 (63.3%)
Mean frame weight4 036 kg
Frame weight range323 – 11 799 kg
Mean element utilization0.646
Utilization range0.003 – 1.755
Governing load caseULSSnowLead (86.7%), ULSWindLead (13.2%)
Governing EC3 checkMy bending (93.3%), N axial (6.7%)
Mean monopitch rafter midspan deflection112 mm
Mean gable rafter midspan deflection47 mm

Fields

frames.jsonl — 30 fields per record

FieldTypeUnitDescription
run_idstring—Unique frame identifier (SF-XXXXX)
design_codestring—EC3EN1993-1-12005
solverstring—Karamba3D_3.1
roof_typestring—gable or monopitch
frame_schemastring—Frame topology identifier
span_mmfloatmmClear span between column bases
eaves_h_mmfloatmmEaves height
ridge_h_mmfloatmmRidge height
haunch_h_mmfloatmmVertical rise from eaves to ridge
slope_degfloatdegreesRoof pitch angle
slope_pctfloat%Roof pitch as percentage
rafter_length_mmfloatmmTrue rafter length along slope
steel_gradestring—S235 / S275 / S355 / S420 / S460
col_profile_familystring—Column section family (HEB)
beam_profile_familystring—Rafter section family (IPE)
wind_kNm2floatkN/m²Characteristic wind pressure
snow_kNm2floatkN/m²Characteristic snow load
roof_sw_kgm2floatkg/m²Roof self-weight (cladding + purlins)
tech_load_kgm2floatkg/m²Imposed technical load on roof
max_col_defl_Lint—Column sway limit denominator (H/L)
max_beam_defl_Lint—Rafter deflection limit denominator (L/x)
frame_weight_kgfloatkgTotal steel weight of frame
max_horiz_defl_mmfloatmmMaximum horizontal nodal displacement (all LCs)
max_vert_defl_mmfloatmmMaximum vertical nodal displacement (all LCs)
roof_mid_vert_defl_mmfloatmmMaximum vertical displacement at rafter midspan (all LCs)
n_elementsint—Number of structural elements
load_caseslist[str]—Names of all ULS load case combinations
is_ec3_compliantbool—True if all elements util ≤ 1.0
nodeslist[dict]—Node coordinates and support flags
displacementslist[dict]—Nodal displacements per node per LC (mm)

elements.jsonl — 47 fields per record

FieldTypeUnitDescription
run_idstring—Links to parent frame
elem_idstring—Element identifier (C1, C2, B1, B2)
elem_typestring—column or rafter
node_start / node_endint—Node indices
length_mmfloatmmElement length
sectionstring—Profile name (e.g. HEB300, IPE400)
section_familystring—Profile family (HEB, IPE)
A_cm2floatcm²Gross cross-sectional area
Iyy_cm4floatcm⁴Second moment of area (strong axis)
Izz_cm4floatcm⁴Second moment of area (weak axis)
Wply_cm3floatcm³Plastic section modulus (strong axis)
Wplz_cm3floatcm³Plastic section modulus (weak axis)
iy_cm / iz_cmfloatcmRadii of gyration
Ay_cm2 / Az_cm2floatcm²Shear areas
uf_width_mmfloatmmFlange width
uf_thick_mmfloatmmFlange thickness
web_thick_mmfloatmmWeb thickness
lf_thick_mmfloatmmLower flange thickness
materialstring—Steel grade name
fy_MPafloatMPaYield strength
E_GPafloatGPaYoung's modulus
alpha_y / alpha_zfloat—Buckling imperfection factors (EC3 Table 6.2)
alpha_ltfloat—LT buckling imperfection factor (EC3 §6.3.2)
Lcr_y_mmfloatmmBuckling length (strong axis)
Lcr_z_mmfloatmmBuckling length (weak axis)
Lcr_lt_mmfloatmmLateral-torsional buckling length
lambda_y / lambda_zfloat—Slenderness ratios
lambda_bar_y / lambda_bar_zfloat—Non-dimensional slenderness (EC3 §6.3)
weight_kgfloatkgElement steel weight
N_max_kN / N_min_kNfloatkNMax/min axial force across all LCs
axial_by_lclist[dict]—Axial force per load case
util_maxfloat—Peak EC3 utilization ratio (governing LC)
util_Nfloat—Axial force utilization at governing LC
util_Vy / util_Vzfloat—Shear utilization at governing LC
util_My / util_Mzfloat—Bending utilization at governing LC
is_ec3_okbool—True if util_max ≤ 1.0
govern_checkstring—Governing EC3 check (N / My / Mz / Vy / Vz)
govern_lcstring—Name of governing load case combination

Load Case Combinations (10 per frame)

All combinations follow EN 1990 Annex A1 ULS persistent/transient design situation with ψ₀ combination factors per EN 1991:

NameLeading action
ULS_SnowLeadSnow dominant (wind as accompanying)
ULS_WindLeadWind dominant (snow as accompanying)
+ 8 further combinationsDead load, imposed, combinations thereof

Data Generation Pipeline

Grasshopper / Rhinoceros 3D
  └── Parametric frame geometry (uniform random sampling)
  └── Karamba3D 3.1 FEM solver
        └── 10 ULS load case combinations (EN 1990 Annex A1)
        └── EC3 EN 1993-1-1:2005 cross-section + stability checks
        └── BeamView utilization component (max across all LCs)
        └── BeamDisplacements component (midspan deflection)
  └── GHPython 3 extractor (CPython 3.9, Rhino 8)
        └── frames.jsonl
        └── elements.jsonl

Solver: Karamba3D 3.1 (Clemens Preisinger, TU Vienna / Bollinger+Grohmann) Design code: EC3 EN 1993-1-1:2005 with EN 1990 load combinations Platform: Rhinoceros 8 / Grasshopper, Windows


Known Limitations

  • —Column profiles limited to HEB only — HEA, UC, HD sections not included
  • —Rafter profiles limited to IPE only — welded, cellular, and tapered sections not included
  • —Wind pressure only — wind suction (uplift) load cases are not included; wind uplift on roof can govern rafter design in practice and is absent from this dataset
  • —2D single-span frames only — no multi-bay, crane gantry, mezzanine, or 3D effects
  • —Connections not modelled — fully rigid frame assumption throughout
  • —No second-order (P-Δ) effects — first-order linear elastic analysis only
  • —5 missing run_ids in SF-00001–SF-01000 sequence due to solver failures during batch generation

Intended Use Cases

  • —Training ML regression models to predict util_max, frame_weight_kg, roof_mid_vert_defl_mm from geometric and load input parameters
  • —Training classification models to predict is_ec3_compliant
  • —Surrogate modelling for structural optimisation loops
  • —Benchmarking graph neural networks on 2D frame topology
  • —Research in AI-assisted structural design and automated EC3 checking
  • —Education — demonstrating EC3 design parameter sensitivity

License

CC BY-NC 4.0 — free for research and non-commercial use with attribution. For commercial licensing enquiries contact the author.


Citation

bibtex
@dataset{neiburgs_ec3_steel_frames_2025,
  title     = {EC3 Steel Portal Frame Structural Analysis Dataset},
  author    = {Neiburgs, Arturs},
  year      = {2025},
  publisher = {KOPAA},
  url       = {https://huggingface.co/datasets/kopaaParametric/ec3-steel-portal-frames},
  license   = {CC BY-NC 4.0},
  note      = {Generated with Karamba3D 3.1 / Grasshopper / Rhinoceros 8.
               995 frames, 3450 elements, EC3 EN 1993-1-1:2005.}
}

Contact

Arturs Neiburgs KOPAA ✉ arturs.neiburgs@kopaa.io 🔗 LinkedIn