.. ZEFIR documentation master file ZEFIR - Potential Flow Visualizer ================================= **ZEFIR provides Engineering students with Fluid mechanics Instructional Resources and tools.** Welcome to the ZEFIR project — a collection of educational materials, Python scripts, and practical tools designed to support learning and teaching in fluid mechanics and aerodynamics. Whether you are an engineering student exploring fundamental concepts or an instructor preparing classroom demonstrations, ZEFIR aims to offer accessible resources to deepen your understanding of fluid mechanics and aerodynamics. .. toctree:: :maxdepth: 2 :caption: Contents: installation usage examples api gui ZEFIR — turning flow into insight. ================================== Key Features ------------ - **Interactive CLI**: Launch GUIs via ``python -m zefir `` with dynamic subcommand discovery - **Interactive GUI**: PySide6-based interface for creating and visualizing potential flows - **Elementary Flows**: Uniform flow, sources, sinks, doublets, vortices, and power law flows - **Multiple Visualization Modes**: Streamlines, potential lines, velocity magnitude, and pressure coefficient - **Integrated Logging**: Real-time log console with level filtering (DEBUG to CRITICAL) - **Educational Focus**: Designed for engineering students and instructors - **Extensible Architecture**: Easy to add new flow types, GUIs, and visualization options Quick Start ----------- **Method 1: Using the CLI (Recommended)** .. code-block:: bash # Launch the potential flow GUI python -m zefir potentialflow # With custom log level python -m zefir potentialflow --log-level DEBUG # In fullscreen mode python -m zefir potentialflow --fullscreen **Method 2: Direct Python Import** .. code-block:: python from zefir.gui.potential import main main() **Method 3: Programmatic GUI Creation** .. code-block:: python from zefir.gui.potential import PotentialFlowGUI import sys from PySide6.QtWidgets import QApplication app = QApplication(sys.argv) window = PotentialFlowGUI() window.show() sys.exit(app.exec()) For more detailed information, see the sections below. Indices and tables ================== * :ref:`genindex` * :ref:`modindex` * :ref:`search`