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.2

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.2
File Size Uploaded
janus_core_ux-0.1.2.tar.gz 240.1 kB Details

Built distribution (wheel)

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

Total release size: 509.2 kB

Release files / janus_core_ux-0.1.2.tar.gz

Download URL janus_core_ux-0.1.2.tar.gz
Size 240.1 kB
Tags Source
SHA-256 checksum
How to use checksums
ffab58e7d181d0cc750babfd433c0bb463dd98bf64f2ea8a9092cc8968c0a581
BLAKE2b-256 checksum
How to use checksums
ee4a8ee456e4c7acad5d0fb8187a4a3b3b221727434e328ce5a3c9ed51e40962
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.2-py3-none-any.whl

Download URL janus_core_ux-0.1.2-py3-none-any.whl
Size 269.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
9f05ab649d432469b17d40cbf9b2e93791363b27193bcaae4cb483b5b3eb63c2
BLAKE2b-256 checksum
How to use checksums
57e2a01c55574e7004f0bc432267583073c6d065c21f3ca9dba8260e586bce26
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

This release

0.1.2 This release

2 release files

0.1.0

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