# 3D Euler-Bernoulli Beam Kernel Research Brief ## Metadata - feature_id: euler-beam-3d - source_requirement: docs/requirements/euler-beam-3d.md - status: ready-for-formulation - owner_agent: research-agent - date: 2026-06-12 ## Research Questions - What theory is sufficient for a straight, prismatic, two-node 3D Euler-Bernoulli beam kernel? - Which terms must appear in the local stiffness matrix for axial, torsion, and two uncoupled bending planes? - Which implementation checks can verify the kernel without running Abaqus or creating reference CSV artifacts? - Which input cases must be rejected before matrix construction? ## Source Inventory | source_type | title | author_or_org | URL_or_identifier | access_date | reliability_tier | notes | | --- | --- | --- | --- | --- | --- | --- | | textbook | Concepts and Applications of Finite Element Analysis | Cook, Malkus, Plesha, Witt | ISBN 978-0-471-35605-9 | 2026-06-12 | Tier 2 | Beam element stiffness and coordinate transformation background. | | textbook | A First Course in the Finite Element Method | Daryl L. Logan | ISBN 978-1-305-63511-1 | 2026-06-12 | Tier 2 | Direct-stiffness beam and frame examples. | | textbook | Matrix Structural Analysis | William McGuire, Richard H. Gallagher, Ronald D. Ziemian | ISBN 978-0-471-12379-7 | 2026-06-12 | Tier 2 | Space-frame element local stiffness and transformation conventions. | | project requirement | 3D Euler-Bernoulli Beam Kernel Requirements | FESA | docs/requirements/euler-beam-3d.md | 2026-06-12 | Tier 1 project contract | Defines approved kernel scope and exclusions. | ## Extracted Facts - Verified fact: a 3D straight prismatic Euler-Bernoulli beam frame element can be assembled from one axial response, one torsional response, and two uncoupled cubic-Hermite bending responses in the element local frame. - Verified fact: for a local element axis `x`, bending displacement in local `y` couples with rotation about local `z` and uses `EIz`; bending displacement in local `z` couples with rotation about local `y` and uses `EIy`. - Verified fact: a two-node space-frame element with six DOFs per node has a 12-entry vector. The FESA requirement fixes per-node order as `ux, uy, uz, rx, ry, rz`. - Verified fact: the unconstrained element local stiffness is symmetric positive semidefinite and has six rigid body modes before constraints are applied. - Project contract: no shear deformation, warping, end releases, offsets, mass, geometric stiffness, nonlinear kinematics, parser integration, HDF5 output, or reference artifact generation is allowed in this kernel increment. ## Candidate Benchmarks | benchmark_id | source | benchmark_type | physics | target_quantities | artifact_needs | applicability | | --- | --- | --- | --- | --- | --- | --- | | EB3D-BENCH-001 | project/formulation | code verification | local matrix algebra | symmetry of all `K(i,j)` | C++ unit test only | Does not verify solver assembly. | | EB3D-BENCH-002 | direct stiffness theory | analytical | axial extension | `EA/L` terms and equal/opposite axial end forces | C++ unit test only | Axis-aligned local response. | | EB3D-BENCH-003 | direct stiffness theory | analytical | torsion | `GJ/L` terms and equal/opposite torsional end moments | C++ unit test only | Saint-Venant torsion constant assumed supplied. | | EB3D-BENCH-004 | beam theory | analytical | bending in local `x-y` | `12EIz/L^3`, `6EIz/L^2`, `4EIz/L`, `2EIz/L` terms | C++ unit test only | Euler-Bernoulli small-displacement bending. | | EB3D-BENCH-005 | beam theory | analytical | bending in local `x-z` | `12EIy/L^3`, `6EIy/L^2`, `4EIy/L`, `2EIy/L` terms | C++ unit test only | Euler-Bernoulli small-displacement bending. | | EB3D-BENCH-006 | matrix structural analysis | invariant | rigid body motion | local end forces are near zero for rigid translations/rotations | C++ unit test only | Numerical tolerance needed. | | EB3D-BENCH-007 | matrix structural analysis | invariant | coordinate transform | axis-aligned global stiffness equals local stiffness when basis is identity | C++ unit test only | Does not validate parser orientation input. | ## Verification Relevance - code_verification: local stiffness entries, symmetry, end-force recovery as `K*u`, invalid input handling, and transformation invariants can be checked by deterministic C++ unit tests. - solution_verification: future cantilever axial, torsion, and bending reference models can compare displacements, reactions, and internal forces after parser/assembly/HDF5 integration exists. - validation: no physical experiment validation is in scope for this kernel increment. - reference_comparison: future reference comparison requires Abaqus-generated artifacts under `reference//`; this phase only defines the contract and must not create those files. ## Applicability Limits - linear_or_nonlinear: linear only. - deformation: small displacement and small rotation. - element_type: straight two-node prismatic Euler-Bernoulli beam. - material_model: constant linear elastic `E` and `G`. - geometry: nonzero length, no offsets, no curved beams. - boundary_conditions: not applied inside the kernel. - loads: no distributed or equivalent nodal load vector in this increment. - coordinate_system: right-handed local Cartesian basis and global Cartesian basis. - units: user-consistent; no conversion. ## Risks and Open Issues - Orientation vector parallel or nearly parallel to the beam axis must be rejected because the local `y` direction is undefined. - Zero or near-zero length must be rejected before stiffness coefficient computation. - Nonpositive or nonfinite `E`, `G`, `A`, `J`, `Iy`, or `Iz` must be rejected. - Very slender beams can produce ill-conditioned local stiffness matrices; kernel tests should avoid relying on a condition-number estimate as a pass/fail criterion. - Exact parser keyword mapping for future beam input remains open and belongs to the I/O contract, not the kernel implementation. ## Downstream Handoff ### Formulation Agent - Define the local stiffness matrix with named axial, torsion, `EIz`, and `EIy` coefficients. - Define the local-to-global transform convention so global stiffness and force recovery are unambiguous. ### Numerical Review Agent - Review symmetry, rigid body modes, sign convention, coefficient dimensions, and invalid geometry handling. ### Reference Model Agent - Future reference models should include axial cantilever, torsion cantilever, two bending cantilevers, and one skew transform case. ### Implementation Planning Agent - Unit tests should cover representative local entries, symmetry, `K*u` force recovery, invalid constants, axis-aligned transform identity, rotated symmetry, rigid translation, and axial end forces.