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

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.13
File Size Uploaded
lcsim-0.1.13.tar.gz 681.6 kB Details

Built distribution (wheel)

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

Total release size: 1.4 MB

Release files / lcsim-0.1.13.tar.gz

Download URL lcsim-0.1.13.tar.gz
Size 681.6 kB
Tags Source
SHA-256 checksum
How to use checksums
752bbf21c323f7e3503a8fabedd1da7d8a30d00a89fabdab90c78b7214e0f71a
BLAKE2b-256 checksum
How to use checksums
83d369d1e1684c22b090b8d09827ad15cfceeea59dcdbd10f5b69b28b632f83c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.5

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

Download URL lcsim-0.1.13-py3-none-any.whl
Size 754.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3bfa3499af1d79649cd7ce794439f068a44f61d6b856667e2c5b69b331536971
BLAKE2b-256 checksum
How to use checksums
6356ba266805534cf459a23000091ac6d98bf295e2b88365a64e00043eb43371
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.5

Release history Release notifications | RSS feed

0.2.0

2 release files

0.1.14

2 release files

This release

0.1.13 This release

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