Source: https://guthlabs.ai/docs/instruments/mohr-s-circle-for-plane-stress/implementation/

instrument implementation / implementation-contract

# Mohr's Circle for Plane Stress implementation

A source-bound implementation contract for Mohr's Circle for Plane Stress; deployment and executable qualification remain separate.

Status: **VERIFIED_CLEAN**Lifecycle: **implementation-contract**

## Binding contract

This record describes what an executable surface must bind and validate. It does not claim that a public calculator, package, or production route is deployed.

**Record owner**: Guth Instruments

**Lifecycle**: verified-clean

**Evidence ID**: t6-054

**Effect**: Computation or source lookup only

## Input and validation requirements

The all-zero stress state produces valid zero principal stresses and zero maximum shear, but theta_p requires atan2(0,0), which is undefined. The instrument must not silently return a numeric orientation for this input.

## Required corrections

No binding erratum is attached to this unique-name record. Implementers must still preserve the declared units, domain, and failure behavior.

## Inspectable interface fixture

The sample below is evidence for interface and validation tests, not a production implementation.

````
{
  "inputs": {
    "sigma_x": 80,
    "sigma_y": 20,
    "tau_xy": 30,
    "stress_unit": "MPa",
    "angle_unit": "degrees"
  },
  "expected_outputs": {
    "sigma_avg": "50 MPa",
    "R": "42.4264069 MPa",
    "sigma_1": "92.4264069 MPa",
    "sigma_2": "7.57359310 MPa",
    "tau_max_in_plane": "42.4264069 MPa",
    "theta_p": "22.5 degrees modulo 90 degrees",
    "circle_center": "(50, 0) MPa",
    "sampled_circle_points": [
      {
        "phi": "0 degrees",
        "sigma": "92.4264069 MPa",
        "tau": "0 MPa"
      },
      {
        "phi": "90 degrees",
        "sigma": "50 MPa",
        "tau": "42.4264069 MPa"
      },
      {
        "phi": "180 degrees",
        "sigma": "7.57359310 MPa",
        "tau": "0 MPa"
      },
      {
        "phi": "270 degrees",
        "sigma": "50 MPa",
        "tau": "-42.4264069 MPa"
      }
    ],
    "curve_features": {
      "sigma_axis_intersections": [
        "(92.4264069, 0) MPa",
        "(7.57359310, 0) MPa"
      ],
      "tau_extrema": [
        "(50, 42.4264069) MPa",
        "(50, -42.4264069) MPa"
      ],
      "center": "(50,0) MPa",
      "radius": "42.4264069 MPa"
    }
  },
  "working": "σavg=(80+20)/2=100/2=50 MPa. Half-difference=(80-20)/2=60/2=30 MPa. R=√(30²+30²)=√(900+900)=√1800=42.4264069 MPa. σ1=50+42.4264069=92.4264069 MPa. σ2=50-42.4264069=7.57359310 MPa. τmax=R=42.4264069 MPa. θp=½ atan2(2·30,80-20)=½ atan2(60,60)=½·45°=22.5°, with the second principal direction at 112.5°. The plotted circle is (σ-50)²+τ²=42.4264069²; evaluating φ=0°,90°,180°,270° gives the four listed points."
}
````

## Other records

[01**Overview**](<https://guthlabs.ai/docs/instruments/mohr-s-circle-for-plane-stress/>)[02**Mechanism**](<https://guthlabs.ai/docs/instruments/mohr-s-circle-for-plane-stress/mechanism/>)[04**Qualification**](<https://guthlabs.ai/docs/instruments/mohr-s-circle-for-plane-stress/qualification/>)

## Sources and evidence

These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.

- `VERIFIED_LEDGER.json`

- `evidence-tranche6/tranche6-results.json`
