SYNTHETIC / THEORETICAL VALIDATION

Crosshead installation and measurement study

The calculations and generated trials below were executed using the supplied source and declared inputs. They are not measurements from manufactured hardware.

Selected operating envelope

The final reference selection is the 12 mm flange crosshead with at least 30 MN/m vertical stiffness and 500 N m/rad rotational stiffness per support. The modeled envelope is 0-550 N, modulus at least 66 GPa, thickness at least 19.9 mm, load at x = 120 or 150 mm, and through-thickness offset no greater than 2 mm. The combined calculation includes a 0.0001 mm response-fit allowance and remains below 0.05 mm. Larger offsets and weaker supports are rejected conditions.

center_mload_NE_GPathickness_mmtranslation_support_MN_mrotation_support_Nm_radoffset_mmcombined_displacement_mmincluding_fit_error_mmtarget_mmaccepted
0.125506619.93050020.048950504230986710.049050504230986710.05True
0.155506619.93050020.0441372611296484830.0442372611296484860.05True

Decision

The selected 12 mm flange profile meets 0.05 mm at the nominal 500 N/20 MN/m support condition. The combined 550 N, 66 GPa, 19.9 mm, 16 MN/m corner does not. The derived translational support requirement rounds up to 22 MN/m per support for that declared envelope. A separate torsion screen shows why off-plane load placement and rotational mount stiffness also matter.

Inputs and response model

parametervalue
basisSensitivity envelope and synthetic instrument exercise anchored to the executed 2D FEA cases; no physical stiffness or fatigue rating.
seed50050
samples_per_load_position10000
profilewindow_12mm
load_range_N[450, 550]
E_range_GPa[66, 72]
thickness_range_mm[19.9, 20.1]
support_range_MN_m[16, 24]
out_of_plane_offsets_mm[0, 2, 5]
rotational_support_Nm_rad[100, 500, 2000]
synthetic_sensor_noise_mm0.0005
synthetic_hysteresis_halfwidth_mm0.001
load_cycle_N[0, 100, 200, 300, 400, 500, 400, 300, 200, 100, 0]
cycles3
nominal_yield_MPa240
elastic_screen_factor2
stress_concentration_screens[1, 2, 3]

At each load position, fit delta = A + B/k to the three converged FEA support cases. Scale the elastic A term by force, inverse modulus and inverse thickness. Scale B/k by force only. This separates material/section compliance from the mount springs. The fit residual is retained below.

center_msupport_MN_mFEA_displacement_mmreduced_model_mmabsolute_error_mm
0.125.00.08239726946707150.082405131575539627.862108468120743e-06
0.1220.00.044880985663350080.0448436406481264663.734501522361516e-05
0.12100.00.0347977601607274560.034827243067482962.948290675550136e-05
0.155.00.082006095349413220.082012621421997076.526072583848408e-06
0.1520.00.041120389160595690.0410893903158222753.0998844773415246e-05
0.15100.00.0301520559153194460.0301765286875089922.447277218954602e-05

Bounded sensitivity

load_center_msynthetic_drawssample_min_mmsample_max_mmsample_exceedancesworst_corner_mmminimum_support_for_corner_MN_m
0.12100000.037520741550897260.054128542672005016090.0545740906011987821.789258610153492
0.15100000.034173768371542150.0498071513500305600.0504806621020506616.420807062483885
Synthetic displacement distributions and load-cycle calibration

The random sweep explores combinations; deterministic corners govern the stated support requirement. The required stiffness is obtained by solving the compliance equation for k, not by changing the displacement target.

Out-of-plane screening

A through-thickness eccentricity e creates torque P e. Centered loads split torque equally; off-center loads split it according to each path compliance. Torsion compliance integrates the actual solid and windowed lengths on both sides of the load. Each load path includes its end rotational spring; torque divides inversely with their total compliances. The centered case reduces to equal half-torque paths. The window section uses two 20 x 12 mm rectangles; solid sections use 40 x 20 mm. The rectangular torsion approximation is J = a b cubed / 3 [1 - 0.63 b/a + 0.052 (b/a) to the fifth]. Mount rotation adds P e / (2 Krot). Extra load-point vertical movement is e times the total twist.

offset_z_mmrotational_support_Nm_radstructural_twist_radsupport_twist_radadded_loadpoint_displacement_mmcombined_screen_mmmeets_target
01000.00.00.00.044843640648126466True
05000.00.00.00.044843640648126466True
020000.00.00.00.044843640648126466True
21009.07073706248375e-050.0050.0101814147412496760.055025055389376146False
25009.07073706248375e-050.0010.0021814147412496750.04702505538937614True
220009.07073706248375e-050.000250.0006814147412496750.045525055389376144True
51000.000226768426562093750.01250.063633842132810470.10847748278093694False
55000.000226768426562093750.00249999999999999960.0136338421328104680.05847748278093694False
520000.000226768426562093750.0006250.0042588421328104690.049102482780936936True

Synthetic instrument exercise

Three load/unload cycles contain 33 observations, 0.0005 mm Gaussian sensor noise and a declared plus/minus 0.001 mm hysteresis offset. The recovered compliance differs from its generating value by 1.83%. This tests data reduction; it is not an experimental FEA correlation.

Stress sensitivity

assumed_stress_factorscreening_stress_MPaallowable_MPa
19.530933458434442120.0
219.061866916868883120.0
328.592800375303327120.0

The peak reported finite stress excludes ideal corners. The factor sweep is a sensitivity screen; no sharp-corner stress convergence or fatigue life is implied.

Executed acceptance matrix

iddescriptionexpectedobservedpassed
surrogate-0.12Support-compliance surrogate matches executed FEA at all three supportsmax error < 0.0001 mm3.734501522361516e-05True
surrogate-0.15Support-compliance surrogate matches executed FEA at all three supportsmax error < 0.0001 mm3.0998844773415246e-05True
uncertainty-countTwo load positions each have 10000 synthetic combinations20000 rows20000True
nominalSelected nominal centered case meets deflection requirement< 0.05 mm0.044843640648126466True
envelope-rejectionCombined compliant/thin/high-load corner is identifiedat least one corner > 0.05 mm[np.float64(0.05457409060119878), np.float64(0.05048066210205066)]True
support-requirementDerived minimum support target closes translational envelopeall corner values <= 0.05 mm{'support_MN_m': 22, 'corner_mm': [np.float64(0.04987890423527212), np.float64(0.045365258213778806)]}True
selected-envelopeFinal selected supports include translation, torsion and fit residualall <= 0.05 mm at declared worst corner[np.float64(0.04905050423098671), np.float64(0.044237261129648486)]True
zero-offsetZero out-of-plane offset produces zero extra movement0 mm0.0True
rotation-screenWeak rotational mounts can invalidate the 2D-only result100 N m/rad rejected; 500 N m/rad accepted at 2 mm offset{'weak_mm': np.float64(0.055025055389376146), 'strong_mm': np.float64(0.04702505538937614)}True
synthetic-calibrationRegression recovers generating compliance from noisy load cyclesslope error < 5%0.01832927647230953True
stress-screenFinite stress multipliers remain below assumed yield/2all <= 120 MPa28.592800375303327True

Model boundaries

Reproduce

From this project folder, run python complete_validation.py. Run python test_completion.py for independent regression checks. Inputs are in completion-inputs.json; machine-readable outcomes and source hashes are in completion.json.