GUI tool for exploring formulas using DearPyGui
Project description
Lambda Explorer
A small GUI application for interacting with symbolic formulas and plotting them using Dear PyGui.
The GUI presents every available formula and lets you calculate or plot results by filling in all but one variable. Formulas are defined with SymPy and are automatically discovered when the application starts. Displayed formulas are rendered from LaTeX using Matplotlib for clarity.
Installation
pip install lambda-explorer
To install from source:
pip install -r requirements.txt
pip install -e .
Usage
After installation you can launch the GUI with the command:
lambda-explorer
This will open the formula browser where you can calculate and visualize formulas.
Lightweight CLI
If memory usage is a concern you can use a simple command line interface:
lambda-explorer-cli
This avoids the GUI and only loads the selected formula when needed.
Library Usage
lambda-explorer can also be used programmatically. Formula classes are
available in lambda_explorer.tools.aero_formulas and provide a convenient
solve() method. Exactly one variable must be omitted so that it can be
calculated:
from lambda_explorer.tools.aero_formulas import ReynoldsNumber
eq = ReynoldsNumber()
# Solve for Re while providing the other values
re = eq.solve(rho=1.225, V=50.0, c=0.5, mu=1.8e-5)
print(re)
To launch the GUI from Python simply call lambda_explorer.main():
from lambda_explorer import main
main()
Default values used inside the GUI can be customised. Use the Defaults tab in
any formula window to load or save the defaults.yaml file directly, or choose
"Save As" to export the defaults to a custom YAML file. The defaults map
variable names to their stored string values.
The application also remembers your window layout. When you close the GUI, the
current positions and sizes of all windows are written to layout.ini and the
list of visible windows is stored in open_windows.json. Both the layout and
open windows are restored on the next start.
The Settings window lets you adjust the logging level of the application at
runtime. Choose between DEBUG, INFO, WARNING and ERROR to control the
amount of information written to the log window.
Developer Documentation
Developers who want to implement additional formulas can follow the guide in
docs/developer_guide.md. It describes the required
class structure and how new equations are automatically integrated into the GUI.
Development Workflow
Use the provided Makefile to streamline common tasks:
make install # install dependencies and project in editable mode
make format # apply code formatting using Black
make lint # run pre-commit hooks
Run make run to start the GUI or make run-cli for the command line interface.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file lambda_explorer-1.0.0.tar.gz.
File metadata
- Download URL: lambda_explorer-1.0.0.tar.gz
- Upload date:
- Size: 536.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e44f051ba1c5e4ca97952a603d239673f20518be409877f9b7733d465c75ff5
|
|
| MD5 |
92a8306589dc7b7f4391d6a81952f99f
|
|
| BLAKE2b-256 |
17afe5456a65aa5903c902d412ba8a39bc2b8f66d92450f222dbdab74343f86a
|
File details
Details for the file lambda_explorer-1.0.0-py3-none-any.whl.
File metadata
- Download URL: lambda_explorer-1.0.0-py3-none-any.whl
- Upload date:
- Size: 538.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0111b56a0ca9cea453885ddbf91ae6db88fb3fa045215d1ff11d3d03ab19f1be
|
|
| MD5 |
2ca0ea376d2a4f5e998f985d4d34f083
|
|
| BLAKE2b-256 |
3ddc8cf3ea88e836c1db88c8abc87eab04f1ad91502f0ba10316a494b5797eaf
|