Skip to content
forked from ansys/pyfluent

Pythonic interface to Ansys Fluent

License

Notifications You must be signed in to change notification settings

dnwillia/pyfluent

 
 

Repository files navigation

PyFluent

PyAnsys PyPI GH-CI codecov MIT Black pre-commit.ci status

Overview

PyFluent provides Pythonic access to Ansys Fluent. Its features enable the seamless use of Fluent within the Python ecosystem and broad access to native Fluent features, including the ability to:

  • Launch Fluent using a local Ansys installation
  • Use Fluent's TUI (text user interface) commands for both meshing and solver features
  • Use Fluent's built-in postprocessing capabilities

Documentation and issues

Documentation for the latest stable release of PyFluent is hosted at PyFluent documentation.

In the upper right corner of the documentation's title bar, there is an option for switching from viewing the documentation for the latest stable release to viewing the documentation for the development version or previously released versions.

You can also view or download the PyFluent cheat sheet. This one-page reference provides syntax rules and commands for using PyFluent.

On the PyFluent Issues page, you can create issues to report bugs and request new features. On the PyFluent Discussions page or the Discussions page on the Ansys Developer portal, you can post questions, share ideas, and get community feedback.

To reach the project support team, email [email protected].

Installation

The ansys-fluent-core package supports Python 3.8 through Python 3.11 on Windows and Linux.

Install the latest release from PyPI with:

pip install ansys-fluent-core

If you plan on doing local development of PyFluent with Git, install the latest release with:

git clone https://github.com/ansys/pyfluent.git
cd pyfluent
pip install pip -U
pip install -e .
python codegen/allapigen.py  # Generates the API files

Dependencies

You must have a licensed copy of Ansys Fluent installed locally. PyFluent supports Fluent 2022 R2 and later. The Windows installation of Ansys Fluent automatically sets the required environment variables so that PyFluent can find the Ansys Fluent installation. Using Fluent 2023 R2 (or 23.2) installed in the default directory as an example, the installer automatically sets the AWP_ROOT232 environment variable to point to C:\Program Files\ANSYS Inc\v232.

On Linux, the required environment variable is not set automatically, and can be set for the current user in the current shell session, using Fluent 2023 R1 in the default installation directory as an example, before running PyFluent, with:

export AWP_ROOT232=/usr/ansys_inc/v232

For this setting to persist between different shell sessions for the current user, the same export command can instead be added to the user's ~/.profile file.

Getting started

Launching Fluent

To launch Fluent from Python, use the launch_fluent method:

import ansys.fluent.core as pyfluent
solver_session = pyfluent.launch_fluent(mode="solver")
solver_session.health_check_service.is_serving

Basic usage

You can use the solver_session.tui interface to run all Fluent TUI commands:

solver_session.tui.file.read_case('elbow.cas.h5')
solver_session.tui.define.models.unsteady_2nd_order("yes")
solver_session.tui.solve.initialize.initialize_flow()
solver_session.tui.solve.dual_time_iterate(2, 3)

You can also install and use these PyFluent libraries:

License and acknowledgments

PyFluent is licensed under the MIT license.

PyFluent makes no commercial claim over Ansys whatsoever. This library extends the functionality of Ansys Fluent by adding a Python interface to Fluent without changing the core behavior or license of the original software. The use of the interactive Fluent control of PyFluent requires a legally licensed local copy of Fluent.

For more information on Fluent, see the Ansys Fluent page on the Ansys website.

About

Pythonic interface to Ansys Fluent

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 99.5%
  • Other 0.5%