Skip to main content

Janus-Core Desktop UX

A desktop graphical user interface for STFC janus-core built with Qt6 and PySide6.

Janus UX Python MLIP Visualization


Features

  • Dedicated Tabs for All Janus-Core Calculations:

    • ⚙️ MLIP Environments & Potentials Setup: Manage multiple micromamba/conda/virtual environments with incompatible dependencies. Auto-detect installed models (MACE, SevenNet, CHGNet, FairChem, NequIP, ORB, MatterSim), install/upgrade potentials directly via uv, and choose target execution environments per calculation.
    • ⚡ Geometry Optimization: Atomic coordinate relaxation and crystal unit cell optimization (FrechetCellFilter, ExpCellFilter), convergence curves, and trajectory playback.
    • 🎯 Single Point: Potential energy, atomic forces, stress tensor, and Hessian matrix.
    • 🌊 Molecular Dynamics: NVE, NVT, and NPT ensembles with Langevin or Nosé-Hoover thermostats, temperature ramping, thermodynamic curves (T, Epot, Pressure vs Time), and trajectory player.
    • 🎵 Phonons: Supercell generation, finite displacement, phonon band structures, DOS/PDOS, and vibrational heat capacity / entropy curves.
    • 📈 Equation of State (EOS): Birch-Murnaghan, Murnaghan, and Vinet E(V) curve fitting, bulk modulus $B_0$, and interactive strained cell inspector.
    • 💎 Elasticity: Full $6 \times 6$ elastic stiffness matrix $C_{ij}$, compliance matrix $S_{ij}$, and Voigt-Reuss-Hill bulk, shear, and Young's moduli.
    • ⛰️ NEB Reaction Pathways: Climbing-image Nudged Elastic Band (CI-NEB) for transition state search and activation energy barriers $\Delta E^\ddagger$.
    • 🧬 MLIP Descriptors: Atomic and system-level MLIP representations and invariants.
  • Chemiscope 3D Atomistic Visualizer:

    • Embedded via QWebEngineView using local offline Chemiscope JavaScript libraries.
    • Interactive camera rotation, zoom, panning, unit cell boundary toggling, atomic bonds, and measurement tools.
    • Trajectory playback and frame scrubber.
  • Interactive 2D/3D Linked Graphs with Point Picking:

    • Click any point on a geometry optimization convergence curve, EOS $E(V)$ curve, or NEB reaction path to immediately update the 3D Chemiscope visualizer to that specific structure/frame.
  • Asynchronous Background Execution:

    • Calculations run in background QThread workers without freezing the interface.
    • Live colorized terminal log streaming with search filtering.
    • Cancel button for long simulations.

Installation & Environment

Install from PyPI or editable source using uv:

# Install with uv
uv pip install -e . --python /opt/micromamba/envs/janus/bin/python

# Or install desktop shortcut and system icon
janus-core-ux --install-desktop

Launching the Application

Run directly from the command line using any of the installed entry points:

janus-core-ux

You can also launch it directly from your Linux system desktop application launcher (GNOME, KDE Plasma, XFCE).


Desktop Shortcut & Icon

To register the desktop application shortcut and system icon to ~/.local/share/applications and ~/.local/share/icons:

  • Run CLI flag: janus-core-ux --install-desktop
  • Or from inside the GUI: Navigate to Help -> Install Desktop Shortcut.

Running Tests

Run the test suite with uv and pytest:

uv run --no-project --python /opt/micromamba/envs/janus/bin/python -m pytest tests/

Metadata

Release files for janus-core-ux 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for janus-core-ux 0.1.0
File Size Uploaded
janus_core_ux-0.1.0.tar.gz 62.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for janus-core-ux 0.1.0
File Interpreter ABI Platform
janus_core_ux-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 141.2 kB

Release files / janus_core_ux-0.1.0.tar.gz

Download URL janus_core_ux-0.1.0.tar.gz
Size 62.3 kB
Tags Source
SHA-256 checksum
How to use checksums
a6c9077b203cf60818175b35c938fa2a519defe51a1ca3c5542d9b212fb88b8a
BLAKE2b-256 checksum
How to use checksums
2d2eb585068da42024171738de1134715657c4f20149ca39df059787e54bae42
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / janus_core_ux-0.1.0-py3-none-any.whl

Download URL janus_core_ux-0.1.0-py3-none-any.whl
Size 78.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9199eab7eda07f8c45c97d364511c4cdd8a9f3d3e86e9e1e700a785bb412b487
BLAKE2b-256 checksum
How to use checksums
e10e269ba9b4da1b813e9dff40b3765afe6fe045594d0f89b26ba161891ed67a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.17 {"installer":{"name":"uv","version":"0.12.17","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

0.1.2

2 release files

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page