Skip to main content

LCSim

Liquid crystal simulation tools and command-line utilities.

Installation

LCSim is published on PyPI. For regular use, install it as a uv tool. Detailed OS-specific instructions:

The default dependency set is intentionally light: it is enough for the lcsim dispatcher and shared Python code, but not for running simulations, opening the GUI, viewing files, or rendering videos. Install the profile for the workflow you actually use.

Use Python 3.13 for tool installs. The current Taichi-based viewer/render stack does not support Python 3.14, and older LCSim releases had incomplete Python compatibility metadata. Keep the >=0.1.10 lower bound unless you intentionally install an older release.

Recommended PyPI tool installs:

# All runtime modes, recommended CUDA 13 profile.
uv tool install --python 3.13 'lcsim[all-cu13]>=0.1.10'

# Batch simulation, recommended CUDA 13 profile.
uv tool install --python 3.13 'lcsim[run-cu13]>=0.1.10'

# Live simulation GUI, recommended CUDA 13 profile.
uv tool install --python 3.13 'lcsim[gui-cu13]>=0.1.10'

# Saved-file viewer with LCSIM scenes and TopoVec scenes, no simulation runtime.
uv tool install --python 3.13 'lcsim[view]>=0.1.10'

# TopoVec-based renderer for SAD/TopoVec state files, no simulation runtime.
uv tool install --python 3.13 'lcsim[render]>=0.1.10'

Use view-lite or render-lite when you want saved-file tools without TopoVec CUDA render scenes. Use all-cu12, run-cu12, or gui-cu12 only when the calculation runtime must stay on the CUDA 12 package family. Legacy lcsrender still needs a system ffmpeg executable on PATH.

For one-off execution without installing persistent commands:

uvx --python 3.13 --from 'lcsim[run-cu13]>=0.1.10' lcsim run --help
uvx --python 3.13 --from 'lcsim[gui-cu13]>=0.1.10' lcsim gui --help

From a repository checkout, use the same extras with uv sync --python 3.13 --extra ... and run commands with uv run ....

Command-line tools

The primary public entry point is now lcsim:

lcsim --help
lcsim run --help
lcsim gui --help
lcsim view --help
lcsim extract --help
lcsim render --help

Typical usage:

# Run an off-screen simulation.
lcsim run --preset consym --history HISTORY.json --period 10 --output --sad

# Open the interactive viewer.
lcsim gui

# View a saved simulation state; read-only Settings appear beside Data Sources.
lcsim view run.sad

# Extract selected SAD frames to NPZ snapshots.
lcsim extract run.sad --time 1.0 --output-dir frames

# Render a SAD file with simulation-time video sampling.
lcsim render run.sad --scene "Jones RGB" --output run.mp4 --fps 25

Inside lcsim view, use File -> Save Current State NPZ... to save the selected LCSIM SAD frame or NPZ entry as a full snapshot NPZ file.

Mode documentation:

  • lcsrun: use lcsim run ... for new workflows.
  • lcsgui: use lcsim gui ... for new workflows.
  • lcsim extract: extract selected SAD frames to NPZ snapshots.
  • lcsrender: legacy renderer; use lcsim render ... for the new renderer.
  • lcsoptics: optional optics utility. Install the optics extra if you want to use it.

Legacy commands remain available as compatibility wrappers, but they print a deprecation notice:

  • lcsrun: use lcsim run ... for new workflows.
  • lcsgui: use lcsim gui ... for new workflows.
  • lcsextract: use lcsim extract ... for new workflows.
  • lcsrender: use lcsim render ... for the new renderer.

Legacy lcsrender requires a system ffmpeg executable on PATH; the new lcsim run path writes SAD and leaves video generation to lcsim render.

Metadata

Release files for lcsim 0.1.14

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

Source distribution (sdist)

Source distribution for lcsim 0.1.14
File Size Uploaded
lcsim-0.1.14.tar.gz 697.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for lcsim 0.1.14
File Interpreter ABI Platform
lcsim-0.1.14-py3-none-any.whl Python 3 none any Details

Total release size: 1.5 MB

Release files / lcsim-0.1.14.tar.gz

Download URL lcsim-0.1.14.tar.gz
Size 697.5 kB
Tags Source
SHA-256 checksum
How to use checksums
abe1c7657874079915471ab6dd9cbc0b04ffd488a75bb0b959bc0717b75a8895
BLAKE2b-256 checksum
How to use checksums
209123c9ba73dd0445be44f66065a08a7ca6fa04f012711be567f5f003c94d31
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release files / lcsim-0.1.14-py3-none-any.whl

Download URL lcsim-0.1.14-py3-none-any.whl
Size 773.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e521e721d48d1c07569d767cb80efe83d9f2e2f1097d5fb74ec35393056222f3
BLAKE2b-256 checksum
How to use checksums
339d67e5f6698a0bea76a3c88819d22a5eb3d41ca5edcf9ba8a897412262c8ac
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.14

Release history Release notifications | RSS feed

0.2.0

2 release files

This release

0.1.14 This release

2 release files

0.1.13

2 release files

0.1.12

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

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