Step 6 — Listing is not yet automating
DLIST,ALL,ALL
FLIST,ALL,ALL
Listings allow you to read nodes, labels and values in the file .out. They are
essential for debugging, but a human review is not enough to run many cases.
We will convert the same questions into approval parameters and conditions.
Step 7 — Audit the three prescribed displacements
CMSEL,S,fixed_nodes
node_id=0
*DO,j,1,n_fixed
node_id=NDNEXT(node_id)
*GET,dof_ux,NODE,node_id,D,UX
*GET,dof_uy,NODE,node_id,D,UY
*GET,dof_uz,NODE,node_id,D,UZ
! check all three values
*ENDDO
NDNEXT returns the next selected node. This lets us traverse the actual IDs
without assuming that they are consecutive. Each of the six nodes must store three zero values:
n_constrained_dof=18.
Checked Compatibility: MAPDL 2025 R2 may return zero when querying
an unconstrained displacement. That is why the macro audits values on
fixed_nodes and uses the global DLIST output to document that there are no
constraints outside the component. It does not attempt to detect absence using a sentinel value.
Step 8 — Sum the forces stored in the model
ALLSEL,ALL
node_id=0
*DO,j,1,n_nodes
node_id=NDNEXT(node_id)
*GET,node_fx,NODE,node_id,F,FX
*GET,node_fy,NODE,node_id,F,FY
*GET,node_fz,NODE,node_id,F,FZ
force_sum_x=force_sum_x+node_fx
force_sum_y=force_sum_y+node_fy
force_sum_z=force_sum_z+node_fz
*ENDDO
This sum runs through the entire model, not just tip_nodes. Therefore it can detect
an accidental force outside the expected region or an unexpected component.
load_error=ABS(force_sum_y-tip_force)/ABS(tip_force)The audit requires:
n_force_nodes = n_tip
force_sum_x = 0
force_sum_y = -1000
force_sum_z = 0
load_error < 0.001CSV contract
05_loads_constraints.mac generates:
case,mesh_h,n_nodes,n_elements,n_fixed,n_tip,n_constrained_dof,n_force_nodes,force_per_node,force_sum_x,force_sum_y,force_sum_z,target_force,load_error,passes
The base row must contain 126 nodes, 40 elements, 18 constraints, 6 loaded nodes, and
passes=1. In MAPDL 2025 R2 the validated sum is -1000 N with an error
on the order of 10⁻¹⁶.