Guth
NewsDocs
Page actions
View as Markdown ↗
Explore MCP tools ↗

instrument mechanism / verified-clean

Solar PV Array Sizing Calculator mechanism

The inspectable method record for Solar PV Array Sizing Calculator, kept separate from implementation and qualification.

Status: VERIFIED_CLEANLifecycle: verified-clean

Model scope

The supplied honest label correctly identifies the result as an estimate and mentions important yield factors, but the instrument cannot honestly claim complete array sizing until it defines the load-to-panel-count algorithm, electrical voltage/current constraints, and monthly-period convention. Exact ambiguity requiring review: the specification does not define how panel count, Nseries, or Nparallel are calculated from the daily load and panel inputs, and it does not define the units of P_array or the number of days used for monthly energy.

  • The energy formula E=P_array×PSH×derate is standard for a first-order daily estimate only when P_array is in watts, PSH is in hours per day, and derate is dimensionless; the resulting E is Wh/day.
  • No formula is provided to determine panel count, Nseries, or Nparallel from daily load, panel ratings, voltage requirements, or allowable current. Therefore the claimed sizing function is incomplete.
  • P_array is undefined; it should be explicitly defined as panel rated power multiplied by Nseries multiplied by Nparallel, with consistent units.
  • The monthly-energy calculation is unspecified; a month length such as 30 days must be declared.
  • Voc and Isc scaling by Nseries and Nparallel is a simplified nameplate calculation, not an operating-point or maximum-power calculation. Temperature, irradiance, mismatch, charge-controller/inverter limits, and voltage-window constraints are omitted.
  • The daily load input is not used by any supplied formula, so the specification cannot verify whether the proposed array meets the load.

Units and conventions

  • Panel power is entered in Wp, not kWp.
  • PSH is peak-sun-hours per day.
  • Derate is a dimensionless decimal fraction, such as 0.80, not 80.
  • P_array is in watts; therefore daily energy from the formula is Wh/day.
  • Monthly energy test results assume 30 days per month.
  • Voc is in volts per panel and Isc is in amperes per panel.

Inspectable vector

One of 4 source-bound review vectors:

{
  "inputs": {
    "panel_power_wp": 400,
    "panel_voc_v": 49.5,
    "panel_isc_a": 10.2,
    "daily_load_wh": 7200,
    "peak_sun_hours_per_day": 5,
    "derate": 0.8,
    "nseries": 10,
    "nparallel": 2
  },
  "expected_outputs": {
    "panel_count": 20,
    "array_power_w": 8000,
    "string_voltage_v": 495,
    "string_current_a": 20.4,
    "daily_energy_wh": 32000,
    "monthly_energy_wh": 960000,
    "monthly_energy_kwh": 960
  },
  "working": "Panel count = 10×2 = 20. Array power = 400×20 = 8,000 W. String voltage = 49.5×10 = 495 V. String current = 10.2×2 = 20.4 A. Daily energy = 8,000×5×0.8 = 40,000×0.8 = 32,000 Wh/day. Monthly energy = 32,000×30 = 960,000 Wh = 960 kWh."
}

Failure boundary

BREAK_CLAIMED · SELF_FLAGGED

The sizing calculation becomes undefined when peak sun hours are zero because the required panel-count denominator vanishes. The calculator also has a severe unit-convention hazard if a derate entered as 80% is treated as factor 80 rather than 0.80. The discrete ceiling branch causes a one-panel to two-panel jump for an arbitrarily small load increase above an exact boundary.

Other records

Sources and evidence

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

  • VERIFIED_LEDGER.json
  • evidence-tranche4/tranche4-results.json
  • BOUNDARY_HAZARD_CATALOG.json