Source: https://guthlabs.ai/docs/instruments/centroid-center-of-mass-calculator-composite-areas-bodies/

instrument / verified-clean

# Centroid & Center of Mass Calculator (Composite Areas/Bodies)

The current ledger marks this instrument verified clean within the source-bound verification corpus.

Status: **VERIFIED_CLEAN**Lifecycle: **verified-clean**

## Inspectable records

[01**Overview**Purpose and lifecycle](<https://guthlabs.ai/docs/instruments/centroid-center-of-mass-calculator-composite-areas-bodies/>)[02**Mechanism**Method and assumptions](<https://guthlabs.ai/docs/instruments/centroid-center-of-mass-calculator-composite-areas-bodies/mechanism/>)[03**Implementation**Binding and validation](<https://guthlabs.ai/docs/instruments/centroid-center-of-mass-calculator-composite-areas-bodies/implementation/>)[04**Qualification**Evidence and errata](<https://guthlabs.ai/docs/instruments/centroid-center-of-mass-calculator-composite-areas-bodies/qualification/>)

## Ledger state

The current ledger marks this instrument verified clean within the source-bound verification corpus.

**Area**: Mechanical, Civil & Structural Engineering — Statics/Dynamics, Strength of Materials, Machine Design, Civil, HVAC, Vibration

**Tranche**: tranche-4

**Evidence ID**: t4-154

**Ledger rows**: 1

No ledger note is attached.

## Review findings

The area-weighted and mass-weighted formulas are standard when their inputs and constraints are defined, but the supplied specification is incomplete and contains a malformed mass expression. Clarify whether 3D input uses volumes, masses, or densities; add explicit y and z formulas; define signed-area handling, coordinate reference conventions, unit conversion behavior, and zero-denominator handling before release.

### Formula and scope findings

- The mass formula is malformed as written: "ΣmᵢxᵢΣmᵢ" lacks the division operator and should be x̄=Σ(mᵢxᵢ)/Σmᵢ.

- Only the x-coordinate formula is supplied, although the outputs claim x̄, ȳ, and z̄; corresponding y and z formulas are missing.

- For 3D bodies, it is ambiguous whether the instrument computes geometric centroid using volumes, V̄=Σ(Vᵢrᵢ)/ΣVᵢ, or center of mass using masses; mass weighting is correct for center of mass but not generally for geometric centroid of bodies with differing densities.

- The area formula requires signed component areas for holes and cutouts, but that constraint is not stated.

### Unit assumptions

- All component areas and centroid coordinates must use one consistent length unit; the resulting centroid coordinates use that same length unit.

- For 3D geometric centroids, component volumes must use one consistent volume unit; for center of mass, all masses must use one consistent mass unit.

- Each supplied position is assumed to be the component centroid measured from one common coordinate origin.

- Component areas for holes or cutouts are assumed negative; ordinary additive regions use positive areas.

- No automatic conversion between mm, cm, m, in, or ft is assumed unless explicitly implemented.

## Boundary hardening

### Recorded hazards

- Division by zero occurs when the sum of component areas is zero or the sum of component masses is zero.

- Signed areas can cancel to zero or produce a centroid outside the visible region; this requires validation and an honest explanation to users.

- Overlapping positive-area components are double-counted unless the decomposition is explicitly non-overlapping.

- A geometric centroid of 3D bodies cannot generally be obtained from masses unless density is uniform or the intended result is center of mass.

- Mixed coordinate units can produce numerically plausible but incorrect results if no conversion is performed.

- The common coordinate origin and the meaning of each component's supplied position must be defined.

- The empty honest_label is a concern: the instrument should clearly state whether it computes area centroids, volume centroids, center of mass, or all of these, and should disclose signed-area and unit requirements.

## Errata and corrections

No applied erratum is attached to this unique-name record.

## Inspectable example

4 review vectors are recorded. One source-bound sample is shown below.

````
{
  "inputs": {
    "mode": "area_2d",
    "coordinate_unit": "m",
    "components": [
      {
        "type": "rectangle",
        "area_m2": 0.08,
        "centroid": {
          "x_m": 0.2,
          "y_m": 0.1
        }
      },
      {
        "type": "rectangle",
        "area_m2": 0.03,
        "centroid": {
          "x_m": 0.55,
          "y_m": 0.25
        }
      }
    ]
  },
  "expected_outputs": {
    "x_bar_m": 0.2954545455,
    "y_bar_m": 0.1409090909
  },
  "working": "ΣA=0.08+0.03=0.11 m². x numerator=(0.08×0.20)+(0.03×0.55)=0.016+0.0165=0.0325 m³. x̄=0.0325/0.11=0.2954545455 m. y numerator=(0.08×0.10)+(0.03×0.25)=0.008+0.0075=0.0155 m³. ȳ=0.0155/0.11=0.1409090909 m."
}
````

## Related workflows

No source-defined multi-instrument workflow membership is recorded.

## Sources and evidence

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

- `VERIFIED_LEDGER.json · VERIFIED_CLEAN`

- `evidence-tranche4/tranche4-results.json`
