STM/STS analysis

From spectra to Hamiltonians.

Inspect a measurement, check it against an existing model, or train a model for the system under study.

How it works

A spin chain's excitation spectrum depends on its exchange couplings. HamLeT simulates spectra for known couplings and trains a model to infer those couplings from measured dI/dV. Each model is valid for a specified chain length, bias window, observable, and parameter range. These conditions are checked before inference.

The usual order

  1. My data — inspect the measurement and select a bias cutoff.
  2. Can I reuse a model? — check for a compatible trained model.
  3. Train a model — generate data and train if no model matches.
  4. Get my couplings — run inference and export the results.

For DMI studies, check the proposed geometry under DMI sample design before taking data.

Where your files are saved

Look at a measurement

Open a prepared measurement or a folder containing one raw STS spectrum per site. This step reads and plots the data; it does not run inference.

Drop a measurement file here

Use Choose a file for a prepared measurement or Choose a folder for per-site .dat/.txt spectra. Browse this machine selects data stored on the computer running HamLeT, including a remote computer reached through SSH.

Accepts a canonical measurement NPZ, an experiment manifest, a CSV with site / bias / dI/dV columns, or a folder of standard Nanonis STS files.

Can I reuse an existing model?

Check whether the measurement and selected cutoff match the conditions of a trained model. Any mismatch is listed below the model.

Drop a measurement file here

The cutoff is the upper bias used for analysis. It must equal the cutoff used to train the model.

Existing models

Every model available here, published or trained by you: what it was trained on, how accurate it is, and the conditions under which it must not be reused.

A model trained since this page was opened — or one fetched from the cluster — appears after a refresh.

Get my couplings

Apply a compatible trained model and export the inferred couplings, an HTML report, and a quality-control figure.

  1. 1 · Which measurement?

    Drop a measurement file here

  2. 2 · Which model?

    The model specifies the cutoff, chain length, view, and observable. Use Can I reuse a model? to check compatibility first.

    quick-preset models are refused by default; they are for checking a pipeline, not for results.
  3. 3 · Run it

Train a model for your own system

Set the physical system, simulated measurement, and training method. Review the configuration before starting the run.

  1. 1 · Which system are you measuring?

  2. 2 · The chain and its couplings

    Couplings are drawn uniformly from these ranges. Make them cover the values you expect: predictions outside the trained range are extrapolation.

  3. 3 · The measurement to simulate

    Match this to the measurement you can actually take.

  4. 4 · Preview a simulated sample

    Simulate one chain to check the bias window and broadening. The preview uses a subset of sites and usually takes about one minute.

  5. 5 · Which model, and how big?

    Hyperparameter search

  6. 6 · Review and run

    Where should it run?

DMI sample design

In a conventional chain, symmetry prevents Dz from being determined from these spectra. Compare impurity arrangements and transverse fields that may break this symmetry before preparing the sample.

  1. 1 · The chain you can build

    The exchange scale is the gauge-invariant quantity sqrt(J1_xy² + D_z²). Each screening pair has the same exchange scale and a different DMI contribution. The comparison tests whether the simulated spectra distinguish the pair.

  2. 2 · The measurement you can take

  3. 3 · The arrangements you could build

    Add one card for each candidate sample. Select impurity sites and enter their anisotropy or a transverse field. Site numbering begins at zero.

  4. 4 · Screen them

    The symmetry check does not run a simulation. Full screening simulates one gauge pair for each remaining candidate and reports the spectral DMI imprint. Allow about one minute per candidate.

Where the heavy work runs

Review the available CPU, GPU, and scheduler settings. Long runs can be submitted to a remote cluster.

This machine

Training device

This setting applies to model training. DMRG dataset generation runs on the CPU.

A cluster

Two things are needed: the address you ssh to, and which batch system it runs. HamLeT uses your own ssh and never stores a credential.

Key-based access is required. ssh <address> true has to succeed without asking you for anything.

What to ask the scheduler for. Leave anything blank to accept your site's default.

Commands to run before the job starts — whatever your site needs to make python -m hamlet work. One per line.

Send a run there

You can select this cluster and submit directly from Train a model. These controls remain available for inspecting or resubmitting its scripts.

Running and finished work

Monitor local and cluster jobs and view their output.

When a run is stopped, the current chain, trial, or candidate finishes before the job exits. Completed simulations are retained.