Page actions
instrument mechanism / verified-clean
Mohr's Circle for 3D Stress (Principal Stresses) mechanism
The inspectable method record for Mohr's Circle for 3D Stress (Principal Stresses), kept separate from implementation and qualification.
Model scope
The core formula is standard and correct under the stated constraints. Verdict is NEEDS_REVIEW because the specification omits the required symmetric-tensor validation, eigenvalue ordering requirement, and input/output unit declaration.
- The eigenvalue method is correct for a 3D Cauchy stress tensor, provided the input tensor is symmetric: [[σx,τxy,τzx],[τxy,σy,τyz],[τzx,τyz,σz]]. The specification does not explicitly state this symmetry constraint.
- σ1, σ2, and σ3 must be explicitly sorted so that σ1 ≥ σ2 ≥ σ3; otherwise τmax=(σ1-σ3)/2 is ambiguous.
- The stated cubic-characteristic-equation method should use a real symmetric/Hermitian eigensolver or otherwise reject materially nonsymmetric input. A generic numerical eigensolver may return complex or order-dependent results.
- The maximum shear formula is correct for the maximum absolute shear stress over all planes in 3D, not merely the largest of the three coordinate-plane shear components.
Units and conventions
- σx, σy, σz, τxy, τyz, and τzx must all use the same stress unit; outputs σ1, σ2, σ3, and τmax use that same unit.
- The test vectors use MPa throughout. No input unit is specified by the instrument, so unit conversion behavior is undefined.
- Stress components are signed quantities, with tension positive and compression negative under the usual solid-mechanics convention.
Inspectable vector
One of 4 source-bound review vectors:
{
"inputs": {
"sigma_x": "0 MPa",
"sigma_y": "0 MPa",
"sigma_z": "0 MPa",
"tau_xy": "0 MPa",
"tau_yz": "0 MPa",
"tau_zx": "0 MPa"
},
"expected_outputs": {
"principal_stresses": [
"0 MPa",
"0 MPa",
"0 MPa"
],
"tau_max": "0 MPa",
"canonical_exact_result": {
"characteristic_polynomial": "lambda^3",
"eigenvalues": [
"0",
"0",
"0"
],
"ordering": "sigma1 = sigma2 = sigma3 = 0"
},
"eigenvector_verification": {
"A_v1": [
"1.000000000",
"0.000000000",
"0.000000000"
],
"lambda1_v1": [
"0.000000000",
"0.000000000",
"0.000000000"
],
"A_v2": [
"0.000000000",
"1.000000000",
"0.000000000"
],
"lambda2_v2": [
"0.000000000",
"0.000000000",
"0.000000000"
],
"A_v3": [
"0.000000000",
"0.000000000",
"1.000000000"
],
"lambda3_v3": [
"0.000000000",
"0.000000000",
"0.000000000"
]
},
"spot_checks": [
{
"at": "zero tensor, eigenvalue 1",
"input_side": 0,
"answer_side": 0
},
{
"at": "zero tensor, eigenvalue 2",
"input_side": 0,
"answer_side": 0
}
]
},
"reference_data": {
"stress_tensor": "[[0,0,0],[0,0,0],[0,0,0]] MPa",
"eigenvectors": [
"[1,0,0]",
"[0,1,0]",
"[0,0,1]"
]
},
"working": "A = [[0,0,0],[0,0,0],[0,0,0]] MPa.\n det(lambda I - A) = det([[lambda,0,0],[0,lambda,0],[0,0,lambda]]) = lambda^3.\n Therefore lambda = 0, 0, 0 MPa, so sigma1 = sigma2 = sigma3 = 0 MPa.\n tau_max = (sigma1 - sigma3)/2 = (0 - 0)/2 = 0 MPa.\n Verification: A times each coordinate-basis eigenvector is [0,0,0], equal to lambda times that eigenvector."
}Failure boundary
BREAK_CLAIMED · SELF_FLAGGED
The extreme-magnitude vector exposes a numeric hazard: although the exact mathematical principal stresses are finite, binary64/JavaScript arithmetic overflows the τmax subtraction to Infinity, and cubic characteristic-equation coefficient formation can also overflow.
Other records
Sources and evidence
These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.
VERIFIED_LEDGER.jsonevidence-tranche8/tranche8-results.jsonBOUNDARY_HAZARD_CATALOG.json