Dear community,
First a big thank to Guido Dhondt for such a beautiful software.
I have been working recently to add a U1 user beam element with standard section.
I ha seen that other user have started to work on this topic, and wanted to augment the current user element abilities.
i know other user are working i this topic, let’s work together: Using a custom user element (UEL)
NB: some IA agent have been used for this. The code has been reviewed, except for the “patch”.
Sources can be found here : GitHub - Raztua/CCX-UB21: CCX 2.23 patch to add UB21 1D ebam elements · GitHub
This patch introduces the UB21 element—a native 2-node 3D Timoshenko/Euler-Bernoulli beam element—along with expanded cross-section definition capabilities via a new *USER BEAM SECTION input syntax.
the following key feature are implemented
-
Native 2-Node 3D Beam (
UB21): Full 6 DOFs per node (UX–ROTZ) supporting Timoshenko shear deformation, nodal offsets, and 3D orientation. -
*USER BEAM SECTIONSyntax: Parametric definitions for standard profiles (RECT,CIRC,PIPE,I,T,CHAN,L) with automatic principal axis rotation for asymmetric sections. -
Member End Releases (Hinges): Built-in shortcodes (
M1,M2,T,ALLM, etc.) or custom bitwise integer masks for individual nodal DOF releases at member ends. -
Expanded Loading Support: Distributed loads (
PX,P1,P2), trapezoidal/triangular loads, partial patch loads, gravity, and centrifugal fields. -
Analysis Compatibility: Works with
*STATIC,*FREQUENCY,*BUCKLE, and*DYNAMICsteps (with optional lumped mass matrices). -
Enhanced Post-Processing: Standard
.frddataset outputs for cross-section stresses/forces, plus an automatic multi-station span evaluation CSV (ub21_beam_forces.csv).
next steps
- validation : a validation suite is created, L shape to be improved. abaqus comparison ongoing.
you can run run_global_verification.py to test on your computer - CGX the output are compatible with CGX, however i am unable to activate result on both “faces” of the line elements. please advise.
Thank you for reading,
Pierre