kopaaParametric/ec3-steel-portal-frames
收藏Hugging Face2026-04-17 更新2026-04-26 收录
下载链接:
https://hf-mirror.com/datasets/kopaaParametric/ec3-steel-portal-frames
下载链接
链接失效反馈官方服务:
资源简介:
---
license: cc-by-nc-4.0
task_categories:
- tabular-classification
- tabular-regression
language:
- en
tags:
- structural-engineering
- steel-frames
- finite-element-analysis
- eurocode-3
- karamba3d
- grasshopper
- architecture
- aec
- beam-design
- utilization
pretty_name: EC3 Steel Portal Frame Structural Analysis Dataset
size_categories:
- 1K<n<10K
---
# 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:
| File | Records | Description |
|---|---|---|
| `frames.jsonl` | 995 | One record per frame — geometry, loads, global results |
| `elements.jsonl` | 3 450 | One 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:
| Type | Count | Elements |
|---|---|---|
| Monopitch | 530 | 2 columns + 1–2 rafters |
| Gable | 465 | 2 columns + 2 rafters |
Element identifiers: `C1`, `C2` = columns; `B1`, `B2` = roof beams (rafters)
---
## Parametric Ranges
| Parameter | Range | Distribution |
|---|---|---|
| Span | 5.0 – 25.0 m | Uniform random |
| Eaves height | 3.0 – 10.0 m | Uniform random |
| Roof pitch | 3.0 – 25.0° | Derived from geometry |
| Steel grade | S235 / S275 / S355 / S420 / S460 | ~200 frames each |
| Wind load | 0.30 – 2.00 kN/m² | Uniform random |
| Snow load | 0.30 – 4.00 kN/m² | Uniform random |
| Column profile family | HEB | Fixed |
| Rafter profile family | IPE | Fixed |
---
## Key Statistics
| Metric | Value |
|---|---|
| Total frames | 995 |
| Total elements | 3 450 |
| EC3 compliant frames | 630 / 995 (63.3%) |
| Mean frame weight | 4 036 kg |
| Frame weight range | 323 – 11 799 kg |
| Mean element utilization | 0.646 |
| Utilization range | 0.003 – 1.755 |
| Governing load case | ULS_SnowLead (86.7%), ULS_WindLead (13.2%) |
| Governing EC3 check | My bending (93.3%), N axial (6.7%) |
| Mean monopitch rafter midspan deflection | 112 mm |
| Mean gable rafter midspan deflection | 47 mm |
---
## Fields
### `frames.jsonl` — 30 fields per record
| Field | Type | Unit | Description |
|---|---|---|---|
| `run_id` | string | — | Unique frame identifier (SF-XXXXX) |
| `design_code` | string | — | EC3_EN1993-1-1_2005 |
| `solver` | string | — | Karamba3D_3.1 |
| `roof_type` | string | — | `gable` or `monopitch` |
| `frame_schema` | string | — | Frame topology identifier |
| `span_mm` | float | mm | Clear span between column bases |
| `eaves_h_mm` | float | mm | Eaves height |
| `ridge_h_mm` | float | mm | Ridge height |
| `haunch_h_mm` | float | mm | Vertical rise from eaves to ridge |
| `slope_deg` | float | degrees | Roof pitch angle |
| `slope_pct` | float | % | Roof pitch as percentage |
| `rafter_length_mm` | float | mm | True rafter length along slope |
| `steel_grade` | string | — | S235 / S275 / S355 / S420 / S460 |
| `col_profile_family` | string | — | Column section family (HEB) |
| `beam_profile_family` | string | — | Rafter section family (IPE) |
| `wind_kNm2` | float | kN/m² | Characteristic wind pressure |
| `snow_kNm2` | float | kN/m² | Characteristic snow load |
| `roof_sw_kgm2` | float | kg/m² | Roof self-weight (cladding + purlins) |
| `tech_load_kgm2` | float | kg/m² | Imposed technical load on roof |
| `max_col_defl_L` | int | — | Column sway limit denominator (H/L) |
| `max_beam_defl_L` | int | — | Rafter deflection limit denominator (L/x) |
| `frame_weight_kg` | float | kg | Total steel weight of frame |
| `max_horiz_defl_mm` | float | mm | Maximum horizontal nodal displacement (all LCs) |
| `max_vert_defl_mm` | float | mm | Maximum vertical nodal displacement (all LCs) |
| `roof_mid_vert_defl_mm` | float | mm | Maximum vertical displacement at rafter midspan (all LCs) |
| `n_elements` | int | — | Number of structural elements |
| `load_cases` | list[str] | — | Names of all ULS load case combinations |
| `is_ec3_compliant` | bool | — | True if all elements util ≤ 1.0 |
| `nodes` | list[dict] | — | Node coordinates and support flags |
| `displacements` | list[dict] | — | Nodal displacements per node per LC (mm) |
### `elements.jsonl` — 47 fields per record
| Field | Type | Unit | Description |
|---|---|---|---|
| `run_id` | string | — | Links to parent frame |
| `elem_id` | string | — | Element identifier (C1, C2, B1, B2) |
| `elem_type` | string | — | `column` or `rafter` |
| `node_start` / `node_end` | int | — | Node indices |
| `length_mm` | float | mm | Element length |
| `section` | string | — | Profile name (e.g. HEB300, IPE400) |
| `section_family` | string | — | Profile family (HEB, IPE) |
| `A_cm2` | float | cm² | Gross cross-sectional area |
| `Iyy_cm4` | float | cm⁴ | Second moment of area (strong axis) |
| `Izz_cm4` | float | cm⁴ | Second moment of area (weak axis) |
| `Wply_cm3` | float | cm³ | Plastic section modulus (strong axis) |
| `Wplz_cm3` | float | cm³ | Plastic section modulus (weak axis) |
| `iy_cm` / `iz_cm` | float | cm | Radii of gyration |
| `Ay_cm2` / `Az_cm2` | float | cm² | Shear areas |
| `uf_width_mm` | float | mm | Flange width |
| `uf_thick_mm` | float | mm | Flange thickness |
| `web_thick_mm` | float | mm | Web thickness |
| `lf_thick_mm` | float | mm | Lower flange thickness |
| `material` | string | — | Steel grade name |
| `fy_MPa` | float | MPa | Yield strength |
| `E_GPa` | float | GPa | Young's modulus |
| `alpha_y` / `alpha_z` | float | — | Buckling imperfection factors (EC3 Table 6.2) |
| `alpha_lt` | float | — | LT buckling imperfection factor (EC3 §6.3.2) |
| `Lcr_y_mm` | float | mm | Buckling length (strong axis) |
| `Lcr_z_mm` | float | mm | Buckling length (weak axis) |
| `Lcr_lt_mm` | float | mm | Lateral-torsional buckling length |
| `lambda_y` / `lambda_z` | float | — | Slenderness ratios |
| `lambda_bar_y` / `lambda_bar_z` | float | — | Non-dimensional slenderness (EC3 §6.3) |
| `weight_kg` | float | kg | Element steel weight |
| `N_max_kN` / `N_min_kN` | float | kN | Max/min axial force across all LCs |
| `axial_by_lc` | list[dict] | — | Axial force per load case |
| `util_max` | float | — | Peak EC3 utilization ratio (governing LC) |
| `util_N` | float | — | Axial force utilization at governing LC |
| `util_Vy` / `util_Vz` | float | — | Shear utilization at governing LC |
| `util_My` / `util_Mz` | float | — | Bending utilization at governing LC |
| `is_ec3_ok` | bool | — | True if util_max ≤ 1.0 |
| `govern_check` | string | — | Governing EC3 check (N / My / Mz / Vy / Vz) |
| `govern_lc` | string | — | 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:
| Name | Leading action |
|---|---|
| `ULS_SnowLead` | Snow dominant (wind as accompanying) |
| `ULS_WindLead` | Wind dominant (snow as accompanying) |
| + 8 further combinations | Dead 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](https://www.linkedin.com/in/arturs-neiburgs-75351996/)
提供机构:
kopaaParametric



