diff --git a/projects/hydrotech-beam/kb/_index.md b/projects/hydrotech-beam/kb/_index.md index 16199b72..b4ad07f5 100644 --- a/projects/hydrotech-beam/kb/_index.md +++ b/projects/hydrotech-beam/kb/_index.md @@ -8,12 +8,13 @@ ## Overview -I-beam optimization for a test fixture. Steel (AISI 1005) cantilever beam with lightening holes in the web. Goal: minimize mass from 11.33 kg baseline while meeting displacement (≤ 10 mm) and stress (≤ 130 MPa) constraints. +I-beam optimization for a test fixture. Steel (AISI 1005) cantilever beam with lightening holes in the web. Goal: minimize mass from **1,133.01 kg** baseline while meeting displacement (≤ 10 mm) and stress (≤ 130 MPa) constraints. -**Key confirmed parameters (Gen 002):** -- Beam length: 5,000 mm (cantilever — left fixed, right loaded) +**Key confirmed parameters (Gen 002 + Introspection):** +- Beam length: 5,000 mm (`beam_lenght` ⚠️ typo in NX), cantilever — left fixed, right loaded - Load: 10,000 kgf downward at free end -- Baseline mass: 11.33 kg (expression `p1`) +- Baseline mass: **1,133.01 kg** (expression `p173: body_property147.mass`) +- DV baselines: face=21.504mm, core=25.162mm, holes_dia=300mm, hole_count=10 - Material: AISI Steel 1005 (density 7.3 g/cm³) - Mesh: CQUAD4 thin shell, 33.7 mm element size diff --git a/projects/hydrotech-beam/studies/01_doe_landscape/OPTIMIZATION_STRATEGY.md b/projects/hydrotech-beam/studies/01_doe_landscape/OPTIMIZATION_STRATEGY.md index 71d5535e..1447c5c1 100644 --- a/projects/hydrotech-beam/studies/01_doe_landscape/OPTIMIZATION_STRATEGY.md +++ b/projects/hydrotech-beam/studies/01_doe_landscape/OPTIMIZATION_STRATEGY.md @@ -4,7 +4,7 @@ **Project:** Hydrotech Beam Structural Optimization **Author:** ⚡ Optimizer Agent **Date:** 2025-02-09 (updated 2026-02-10 — introspection corrections) -**Status:** DRAFT — Corrected baselines, sending to Auditor review +**Status:** APPROVED WITH CONDITIONS — Auditor review 2026-02-10, blockers resolved inline **References:** [BREAKDOWN.md](../../BREAKDOWN.md), [DECISIONS.md](../../DECISIONS.md), [CONTEXT.md](../../CONTEXT.md) --- @@ -193,46 +193,59 @@ The hard limits remain 10 mm / 130 MPa for final validation. The buffer prevents **Critical concern:** At extreme DV3 × DV4 combinations, holes may overlap or leave insufficient ligament (material between holes). -#### Overlap condition +#### Overlap condition (CORRECTED — Auditor review 2026-02-10) -If the beam web has usable length `L_web` and `n` holes of diameter `d` are equally spaced: +The NX pattern places `n` holes across a span of `p6` mm using `n-1` intervals (holes at both endpoints of the span). Confirmed by introspection: `Pattern_p8 = 4000/9 = 444.44 mm`. ``` -Spacing between hole centers = L_web / (n + 1) -Ligament between holes = spacing - d = L_web/(n+1) - d +Spacing between hole centers = hole_span / (hole_count - 1) +Ligament between holes = spacing - d = hole_span/(hole_count - 1) - d ``` -For **no overlap**, we need: `L_web/(n+1) - d > 0`, i.e., `d < L_web/(n+1)` +For **no overlap**, we need: `hole_span/(n-1) - d > 0`, i.e., `d < hole_span/(n-1)` + +With `hole_span = 4,000 mm` (fixed, `p6`): #### Worst case: n=15 holes, d=450 mm ``` -Required: L_web > (n+1) × d = 16 × 450 = 7200 mm = 7.2 m +Spacing = 4000 / (15-1) = 285.7 mm +Ligament = 285.7 - 450 = -164.3 mm → INFEASIBLE (overlap) ``` -If the beam is shorter than ~7.2 m, this combination is **geometrically infeasible**. - #### Minimum ligament width -For structural integrity and mesh quality, a minimum ligament of ~20-30 mm is advisable: +For structural integrity and mesh quality, a minimum ligament of ~30 mm is advisable: ``` -Minimum ligament constraint: L_web/(n+1) - d ≥ 30 mm +Minimum ligament constraint: hole_span / (hole_count - 1) - holes_diameter ≥ 30 mm ``` -> ⚠️ **ACTION REQUIRED:** We need to know the beam web length to validate bounds. If beam length < 7.2 m, either reduce max hole_count, reduce max hole_diameter, or add a geometric feasibility pre-check that skips NX evaluation for impossible geometries. +#### Pre-flight geometric filter -### 4.3 Hole-to-Web-Height Ratio +Before sending any trial to NX, compute: +1. `ligament = 4000 / (hole_count - 1) - holes_diameter` → must be ≥ 30 mm +2. `web_clear = 2 × beam_half_height - 2 × beam_face_thickness - holes_diameter` → must be > 0 -The hole diameter must also fit within the web height. If web height = 2 × half_core_thickness + 2 × face_thickness (approximate): +If either fails, skip NX evaluation and record as infeasible with max constraint violation. This saves compute and avoids NX geometry crashes. + +### 4.3 Hole-to-Web-Height Ratio (CORRECTED — Auditor review 2026-02-10) + +The hole diameter must fit within the web clear height. From introspection: +- Total beam height = `2 × beam_half_height = 2 × 250 = 500 mm` (fixed) +- Web clear height = `total_height - 2 × face_thickness = 500 - 2 × beam_face_thickness` ``` -At minimum DV1=10, DV2=10: web_height ≈ 2×10 + 2×10 = 40 mm → max hole = 40 mm +At baseline (face=21.504mm): web_clear = 500 - 2×21.504 = 456.99 mm → holes of 450mm barely fit (7mm clearance) +At face=40mm: web_clear = 500 - 2×40 = 420 mm → holes of 450mm DO NOT FIT +At face=10mm: web_clear = 500 - 2×10 = 480 mm → holes of 450mm fit (30mm clearance) ``` -But holes_diameter goes up to 450 mm — this suggests the web height is substantially larger than what the parametric cross-section variables alone define, OR the holes are in a different part of the geometry (e.g., a wider flange region or a tall web independent of core/face dimensions). +This means `beam_face_thickness` and `holes_diameter` interact geometrically — thicker faces reduce the web clear height available for holes. This constraint is captured in the pre-flight filter (§4.2): -> ⚠️ **ACTION REQUIRED:** Clarify the geometric relationship between DV1/DV2 and the web where holes are placed. The holes may be in a different structural member than the sandwich faces. +``` +web_clear = 500 - 2 × beam_face_thickness - holes_diameter > 0 +``` ### 4.4 Expected Feasible Region