MQS Labs · Simulation Platform

Hamiltonians Explorer
Classical & Quantum Systems

Browse a full catalog of classical and quantum mechanical systems, animate their time evolution with live phase-space trajectories, and inspect Hamiltonian expressions, parameter tables, and physical descriptions — all without leaving Liferay.

Phase-space animation Energy-vs-time charts SSE live streaming Unicode Hamiltonians Server-side proxy

Three-tab interface

What you can do

Each tab targets a distinct workflow — from discovery to live animation to rigorous physics inspection.

Tab 01 · Systems

Browse the catalog

Search and filter the full library of classical and quantum systems by name or category.

  • Full-text search across system names and descriptions
  • Category filters (classical mechanics, quantum optics, condensed matter…)
  • System cards with a short physics summary
  • Click any card to load its details into the other tabs

Tab 02 · Animate

Live time evolution

Watch the chosen system evolve in real time via canvas-drawn charts.

  • Phase-space trajectory (q vs p) updated frame-by-frame
  • Energy-vs-time chart in a second canvas panel
  • Choose SSE streaming for live updates or batch call for custom parameters
  • Server-rendered dashboard PNG and quantum-interpretation narrative included

Tab 03 · Physics

Inspect the Hamiltonian

Dig into the mathematical and physical details of the selected system.

  • Hamiltonian expression in plain Unicode — ω, ħ, ψ, ∫ — never LaTeX markup
  • Full prose description of the physical model
  • Parameter table: symbol · label · default · valid range · unit
  • Matches the API's own Unicode-rendered Hamiltonian strings exactly
Server-side proxy

API resource endpoints

Every call to the FastAPI backend is proxied through the portlet's serveResource method — the backend URL is never exposed to the browser, and Liferay's own authentication applies to who can reach the proxy.

resourceID Backend route Method Purpose
list /hamiltonians/list GET Full system catalog (search + categories)
systemDetail /hamiltonians/systems/{system_id} GET Hamiltonian, description, parameter table for one system
evolve /hamiltonians/evolve/{system_id} POST Batch time-evolution — accepts full custom params object
stream /hamiltonians/evolve/{system_id}/stream GET SSE streaming evolution — t_max, n_steps, chunk_size only
⚠

Streaming vs batch — parameter limitation

The SSE streaming endpoint (stream resourceID) only accepts t_max, n_steps, and chunk_size — it cannot receive custom physical parameters (mass, ω, coupling constants). Only the batch endpoint (evolve) accepts the full params object. If you have edited any parameter from its default, uncheck Live streaming animation in the Animate tab to apply your values via the batch call.