MARGINAL. Peak 21 MPa on the 0.5 mm inside fillet (face 3) at (10.3, 11.6, 10.1). It survives the load, but the safety factor 2.38 is below the 2.5 target.

Confidence: high. passed mesh convergence, force balance, hand calculation, singularities, bolt bearing, units and sanity
Max deflection 0.677 mm at (90, 0, 10).
Material PLA (3D printed), limit 50 MPa; mass 49.25 g.
Loads: 40 N down @ top and within 12 of 65,12.5,6. Fixtures: bolt holes d=4.5; wall x=min.

Checks:
  [pass] mesh convergence: max principal stress settled: 15.9 -> 20.1 -> 21.5 -> 21 MPa over 4 meshes, last change 2.7%
  [pass] force balance: reactions balance the loads to 4.4e-05% (forces) and 7.3e-06% (moments)
  [pass] hand calculation: beam theory through the critical section gives 5.21 MPa nominal; FEA peak is 4.03x that, a stress concentration of about 4.0 from the local shape
  [pass] singularities: no sharp corner or support artifact is above the reported stress
  [pass] bolt bearing: worst hole of fix1 (d 4.5 mm) carries 22.3 N sideways and 77 N along its axis; bearing stress 0.496 MPa, safety factor 100.83 on bearing
  [pass] units and sanity: part 123 mm across, peak strain 0.006, max deflection 0.677 mm (0.55% of size): all plausible

Assumptions:
  - Linear elastic material and small deflections (no yielding redistribution, no buckling).
  - PLA (3D printed): E 3500 MPa, Poisson 0.36, max principal vs tensile strength 50 MPa (Prusament PLA technical data sheet; Ultimaker PLA TDS).
  - Loads are static and applied all at once; no impact, vibration or fatigue.
  - Printed part treated as isotropic at 100% infill; across the layers it is roughly 60% as strong. Pass --print-direction to check that.
  - Brittle failure: judged by the largest tensile principal stress.
  - Bolted holes are rigidly held over the hole and a washer sized ring (twice the hole radius).
  - Wall supports push but cannot pull (frictionless contact, solved iteratively).
  - Contact between separate parts, friction and preload are not modeled.

Images: stress: images/stress.png, zoom: images/zoom.png, safety: images/safety.png, deformed: images/deformed.png, convergence: images/convergence.png
Report: report.html
