JRJoshua RandallSystems. Software. Possibility.

GEOMETRY / NUMERICAL EXPERIMENTS

Geometry & Physics Lab

An interactive portfolio lab for geometric features, curvature, diffusion, and Bayesian inference.

What this demonstrates

Browser mathematics generates point clouds, estimates curvature, simulates an analytic sphere diffusion field, and computes a Bayesian radius posterior. Recorded pretrained Geometric Neural Operator comparisons are labeled as recorded outputs; live neural inference remains a local Python workflow.

The research foundation is the work of Blaine Quackenbush and Paul J. Atzberger. Joshua Randall’s contribution is the educational interface, experiments, notebook, integration, reproducibility tooling, and portfolio adaptation. The project makes no claim that Joshua invented the underlying architecture or improved pretrained accuracy.

Original 2024 paper · Open manuscript · Credits

AUTHORED STUDY COMPANION / 3.4

Audit the recorded geometry benchmark

Prerequisites. Curvature, regression error, data provenance and fair comparisons.

A benchmark claim needs a dataset, reference target, prediction arrays, metric and a stated information budget. This companion preserves the existing Geometry Lab and independently recomputes mean absolute errors from its six recorded sphere/torus runs. Each case contains 1,200 points; noise levels are 0, 0.01 and 0.03. The model choice, weight hashes, pinned upstream revision and historical timing definition travel with the fixture.

The GNP estimator received exact clean-surface normal orientations, while the local polynomial baseline estimated a PCA frame from coordinates. That difference supplies extra geometric information to one method and limits a direct fairness claim. Recomputing a metric confirms the arithmetic on saved arrays; it does not rerun model inference, validate unseen surfaces, or reproduce a paper's benchmark.

The clean sphere's stored GNP MAE is approximately 0.0286977 and the baseline's 0.0447102. These six examples are descriptive, with no seed ensemble or uncertainty estimate. The 2026 kernel-extension paper is a separate research reference and its methods are not implemented in the protected browser lab. A useful next study would control normal estimation, neighborhood policy and tuning budget across methods.

Audit the recorded geometry benchmark — model structure
ElementModelInterpretation
InputsCoordinates plus exact normals for GNPDocument unequal information
MetricMAE on recorded arraysReproduce arithmetic
Inference statusHistorical CPU runsNo new throughput claim

Predict, run, compare

Load the package fixture, recompute |prediction−truth| for every point and average it per case. Confirm six rows of 1,200 points and compare with the original metadata.

Download executable notebooks and source Inspect source ↗

Open gnp_audit.ipynb in the package. Run cells in order, compare with the reference, then change the stated input. Restart the kernel to reset.

Computed reference result — local CPU fixture
{
  "rows": [
    {
      "label": "Sphere · clean",
      "n": 1200,
      "gnp_mae": 0.028697663595279057,
      "baseline_mae": 0.04471017103418357,
      "recorded_seconds": 0.5435332609999932
    },
    {
      "label": "Sphere · noise σ 0.01",
      "n": 1200,
      "gnp_mae": 0.10175702214241028,
      "baseline_mae": 0.24904719278290638,
      "recorded_seconds": 0.4820567790000041
    },
    {
      "label": "Sphere · noise σ 0.03",
      "n": 1200,
      "gnp_mae": 0.18370752952992916,
      "baseline_mae": 0.7271971167254867,
      "recorded_seconds": 0.33596723399978146
    },
    {
      "label": "Torus · clean",
      "n": 1200,
      "gnp_mae": 0.14401996065420333,
      "baseline_mae": 0.19156302431749042,
      "recorded_seconds": 0.29883549500027584
    },
    {
      "label": "Torus · noise σ 0.01",
      "n": 1200,
      "gnp_mae": 0.37020160244623707,
      "baseline_mae": 0.25386977623557855,
      "recorded_seconds": 0.3264977930002715
    },
    {
      "label": "Torus · noise σ 0.03",
      "n": 1200,
      "gnp_mae": 0.44398277620864346,
      "baseline_mae": 0.5765836499070437,
      "recorded_seconds": 0.26632920900010504
    }
  ],
  "provenance": {
    "upstream_revision": "4ba306ac20f5674b773a8ba980aabeef33ed5385",
    "repository": "https://github.com/atzberg/geo_neural_op",
    "gnp_version": "2.0.0",
    "torch_version": "2.6.0+cpu",
    "python": "3.12.14",
    "device": "CPU",
    "threads": 2,
    "normals": "Exact clean-surface orientation vectors supplied to GNP; not estimated from noise.",
    "units": "Arbitrary length units",
    "seed": 42,
    "point_count": 1200,
    "noise": "Independent Gaussian perturbation per coordinate; numpy default_rng seed 42",
    "weight_sha256": {
      "clean_30k": "7c2f7742e68998980fd8c79e4b4d45356c460e9c1edc6a947a1b5b7cb2a6bf28",
      "noise_70k": "c99504593443c6d161ef00d2f9af04e1c6423840ad875e12bd517b1e16448230"
    },
    "timing": "Estimator initialization, model loading, patch construction and quantity estimation; CPU; excludes imports and baseline.",
    "research_authors": [
      "Blaine Quackenbush",
      "Paul J. Atzberger"
    ],
    "website_adaptation_and_enhancements": "Joshua Randall"
  },
  "scope": "Recomputed errors of six recorded runs; no new neural inference or paper benchmark reproduction"
}

This is the recorded result of the included code under the package environment. It is not a live service or device measurement.

Extend the experiment

Design an equal-information comparison using estimated normals for both methods. Specify several seeds, shape families, held-out evaluation and timing boundaries before running it.

Check your reasoning: Recomputing these six MAEs establishes:
  1. A new broad generalization result — Six stored cases cannot establish that.
  2. Metric consistency for the stored predictions — Correct. The calculation independently checks the saved numeric arrays.
  3. Equivalent information given to both methods — The exact-normal versus PCA distinction remains.

This is an explained self-check, not a certification of mastery.

Claim-specific sources

Reviewed 2026-10-02: this worked example and its explicit assumptions. Source links and notebook results do not establish production or hardware validation.

AUTHORED STUDY COMPANION / 3.4

Separate an exact diffusion mode from an inverse problem

Prerequisites. Differential equations, eigenfunctions, likelihoods and normalization.

On a sphere of radius r, y/r is a degree-one spherical harmonic with Laplace–Beltrami eigenvalue −2/r². Therefore u(y,t)=0.5+0.5(y/r)exp(−2Dt/r²) solves the surface heat equation for this particular initial field. The surface mean stays 0.5 and the north–south contrast decays exponentially. This analytic example is not a numerical solver for arbitrary geometry or arbitrary initial conditions.

The inverse companion uses fictional curvature observations 0.98,1.04,1.01 with independent Gaussian noise σ=0.05 and a uniform radius prior on [0.4,2.5]. A discrete radius grid receives weights proportional to exp[−Σ(Kᵢ−1/r²)²/(2σ²)]. Subtracting the largest log weight before exponentiating avoids unnecessary underflow without changing normalized probabilities.

A narrow posterior can still be wrong if observations are correlated, σ is misspecified, or the prior truncates the plausible radius. The equal-tail interval is a posterior statement under this model, not a universal guarantee about repeated measurements. Compare grids before interpreting digits beyond their spacing.

Separate an exact diffusion mode from an inverse problem — model structure
ElementModelInterpretation
Forward modelOne spherical harmonicExact exponential decay
LikelihoodIndependent Gaussian curvature noiseExplicit uncertainty assumption
Posterior501 normalized grid weightsResolution and prior limits

Predict, run, compare

For r=1,D=0.2,t=1, contrast is exp(−0.4)≈0.670320. The north and south values sum to one. The radius posterior should concentrate near one for the supplied observations.

Download executable notebooks and source Inspect source ↗

Open pde_inverse.ipynb in the package. Run cells in order, compare with the reference, then change the stated input. Restart the kernel to reset.

Computed reference result — local CPU fixture
{
  "north": 0.8351600230178197,
  "south": 0.16483997698218034,
  "mean_field": 0.5,
  "decay": 0.6703200460356393,
  "posterior_mean": 0.9959553373591353,
  "interval95": [
    0.9670000000000001,
    1.0258000000000003
  ],
  "posterior_sum": 1.0,
  "grid_spacing": 0.0041999999999999815
}

This is the recorded result of the included code under the package environment. It is not a live service or device measurement.

Extend the experiment

Double σ in a copied function and compare interval width. Then shift all observations together to model a calibration error and explain why independent-noise uncertainty can be misleading.

Check your reasoning: What does the diffusion formula solve?
  1. Every heat equation on every surface — The geometry and initial condition are restricted.
  2. One specified spherical initial mode — Correct. Its eigenfunction structure gives the exact time dependence.
  3. A trained neural PDE surrogate — No neural estimator appears in this calculation.

This is an explained self-check, not a certification of mastery.

Claim-specific sources

Reviewed 2026-10-02: this worked example and its explicit assumptions. Source links and notebook results do not establish production or hardware validation.

Problem, implementation and evidence

Saved predictions, live calculations and research extensions need distinct evidence.

The protected lab retains its calculation modules and six recorded GNP cases. New notebooks recompute metrics and check the restricted diffusion/inverse models.

What the evidence establishes

Historical GNP inference plus new metric auditing. The optional pinned-upstream adapter is separate from the checked CPU notebooks.

Reproduce or extend

Run an equal-information normal-estimation comparison before making a broad model superiority claim.

Open the related experiment or review surface →

LET’S BUILD SOMETHING THAT MATTERS

Good systems start
with a conversation.

Infrastructure, engineering, technical leadership, and the next challenging problem.

Get in touch ↗︎LinkedIn ↗︎GitHub ↗︎

Explore the portfolio

Escape to close · Tab to navigate results