← All engines

RUST ENGINE / verify_shadows

Solar shadow geometry verification

Compare measured shadow geometry with a calculated solar position using control points, a homography and Monte Carlo uncertainty.

Open the verify_shadows demonstration ↗Try the live calculation ↗Connect an AI assistant →

What does a real call return?

The expected shadow azimuth is 359.77° and the measured azimuth 0.00°, a difference of 0.23°. The verdict is compatible, for example control points, not an authenticity check on an image.

Recorded on 2 November 2026 through the public MCP endpoint, service release 0.17.1. Inputs and full responses, response SHA-256 2f40f6d25134…. Verdict values are the literal values the tool returns. Run the same inputs yourself to compare; elapsed times vary, and a new release may change the figures.

Checked against

Recorded on release 0.16.1. These checks cover the listed cases, not every input. Evidence cards.

How it works

A solar model predicts the horizontal shadow direction from a UTC timestamp and location. Control points map image pixels onto a reference ground plane. Monte Carlo perturbations propagate uncertainty into the angular comparison.

Inputs and units

Supply date and coordinates, calibrated pixel-to-ground control points and the endpoints of a shadow segment. Ground coordinates must use the documented orientation and scale; a photograph alone is insufficient.

What the result contains

The engine returns compatible, contradicted or untestable, with solar angles, measured and expected direction, uncertainty and reasons. Excessive uncertainty or inconsistent controls can make the result untestable.

Connect and inspect the inputs

Initialize an MCP connection, call tools/list and inspect the schema for verify_shadows. The live lab provides a complete example with editable inputs.

Call this engine in one command

Node.js 20+ and npm. This downloads a small remote MCP client; it does not install the engine locally.

npx --yes --package https://scorecompute.com/downloads/scorecompute-call-0.14.2.tgz scorecompute-call verify_shadows --arguments '{"date_utc":"2026-06-21T11:52:00Z","latitude":48.85,"longitude":2.35,"control_points":[{"px":[100,800],"world":[0,0]},{"px":[200,800],"world":[10,0]},{"px":[100,700],"world":[0,10]},{"px":[200,700],"world":[10,10]}],"shadow":{"a":[150,750],"b":[150,650]},"pixel_sigma":3,"time_sigma_minutes":1,"seed":7,"samples":1000}'

Client download, PowerShell input and verification →

Cite this engine

Engine identified by source hash, source SHA-256 abae56e3d8ef…. Evidence recorded on release 0.16.1; the public service currently runs 0.17.1. Replace the access date when you cite it.

ScoreCompute. Solar shadow geometry verification (verify_shadows), identified by source hash, source SHA-256 abae56e3d8ef08a430ba19c80c77d0bca7d190ffda6e9b14ea366057bf6a2c13. Evidence release 0.16.1, service release 0.17.1. https://scorecompute.com/engines/verify-shadows/ (accessed YYYY-MM-DD).

All engine citations · Evidence card

Execution and availability

ScoreCompute exposes this tool through MCP Streamable HTTP. Rust computation runs on a connected worker; the public website and MCP gateway run separately. Among these 22 scientific tools, CUDA is implemented for simulate_pi; the other scientific engines run on CPU. The separate contributor network runs two compiled public workloads: a π estimate and fixed synthetic schedule probes. Requests are bounded and concurrent work may be refused when capacity is occupied.

Record inputs, assumptions and returned provenance when sharing a result. The public observatory displays software client names and tool activity, without publishing calculation arguments or results.

Explore another engine →Agent-readable overview ↗

Sources

These publications describe the method or a reference used in its tests. Citing them does not certify this implementation.

First published 30 September 2026 · Last updated 2 November 2026