Skip to main content

A Python wrapper for Ansys optiSLang application.

Project description

PyAnsys Python PyPI GH-CI Codecov MIT Black

Overview

PyOptiSLang is a Python wrapper for Ansys optiSLang. It supports Pythonic access to optiSLang to be able to communicate with optiSLang directly from Python. The latest ansys-optislang package provides these capabilities:

  • Remote connections to optiSLang via TCP/IP

  • Basic server commands, queries, and the running of Python scripts

Documentation and issues

For comprehensive information on PyOptiSLang, see the latest release documentation. On the PyOptiSLang Issues page, you can create issues to submit questions, report bugs, and request new features. This is the best place to post questions and code.

Installation

The ansys-optislang-core package supports Python 3.7 through 3.10 on Windows and Linux. Three modes of installation are available:

  • User installation

  • Developer installation

  • Offline installation

For either a developer or offline installation, consider using a virtual environment.

User installation

Install the latest release from PyPi with this command:

pip install ansys-optislang-core

Alternatively, install the latest PyOptiSLang GitHub package with this command:

pip install git+https://github.com/pyansys/pyoptislang.git

Developer installation

If you plan on doing local development with GitHub, clone and install PyOptiSLang with this code:

git clone https://github.com/pyansys/pyoptislang.git
cd pyoptislang
pip install -e .

A developer installation allows you to edit ansys-optislang-core files locally. Any changes that you make are reflected in your setup after restarting the Python kernel.

Offline installation

Using a wheelhouse can be helpful if you work for a company that restricts access to external networks. From the Releases page in the PyOptiSLang repository, you can find the wheelhouses for a particular release in its assets and download the wheelhouse corresponding to your setup.

You can then install PyOptiSLang and all of its dependencies from one single entry point that can be shared internally, which eases the security review of the PyOptiSLang package content.

For example, on Linux with Python 3.7, unzip the wheelhouse and install PyOptiSLang with code like this:

unzip PyOptiSLang-v0.1.0-wheelhouse-Linux-3.7.zip wheelhouse
pip install ansys-optislang-core -f wheelhouse --no-index --upgrade --ignore-installed

If you’re on Windows with Python 3.9, unzip the wheelhouse to a wheelhouse directory and then install using the same pip command as in the preceding Linux code example.

Dependencies

You must have a local licensed copy or a remote instance of optiSLang installed. The first supported version is 2023 R1.

Getting started

Using the Optislang class, you can either launch optiSLang locally or connect to a remote optiSLang instance.

Launch optiSLang locally

For launching optiSLang locally, both the host and port parameters in the Optislang class must be set to None, which are their defaults. Other parameters can optionally be specified.

from ansys.optislang.core import Optislang

osl = Optislang()
osl.dispose()

Connect to a remote optiSLang instance

For remote connection, it is assumed that an optiSLang instance is already running on a remote (or local) host as a server. In this case, you must specify the host and port parameters. Parameters related to the execution of a new optiSLang instance are ignored.

from ansys.optislang.core import Optislang

host = "127.0.0.1"
port = 5310
osl = Optislang(host=host, port=port)
osl.dispose()

Basic usage

This code shows how to launch optiSLang locally, open and run a Python script file, save the results to a new project, and then close the connection:

from ansys.optislang.core import Optislang

osl = Optislang()
file_path = r"C:\Users\Username\my_scripts\myscript.py"
osl.run_python_file(path=script_path)
osl.save_copy("MyNewProject.opf")
osl.dispose()

License and acknowledgments

PyOptiSLang is licensed under the MIT license.

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

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ansys-optislang-core-0.2.0.tar.gz (504.3 kB view details)

Uploaded Source

Built Distribution

ansys_optislang_core-0.2.0-py3-none-any.whl (524.2 kB view details)

Uploaded Python 3

File details

Details for the file ansys-optislang-core-0.2.0.tar.gz.

File metadata

  • Download URL: ansys-optislang-core-0.2.0.tar.gz
  • Upload date:
  • Size: 504.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.10

File hashes

Hashes for ansys-optislang-core-0.2.0.tar.gz
Algorithm Hash digest
SHA256 55fe2688c86dc5dabc86bea409cf69ba93628cd5f8dee4e2851e83946df7d302
MD5 0b7306f2e6af48c16eba4024e803657a
BLAKE2b-256 a3ca823de34aa01d9b450b57532c195c961f9d6cf14d1395e9d8f5575acd7e74

See more details on using hashes here.

File details

Details for the file ansys_optislang_core-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for ansys_optislang_core-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dab4a4f62e22634d67aacd33efa5e7576c1f218df97ac32643b2e730d83e568b
MD5 bb244a86e7fe28f19db7c630a8c07fda
BLAKE2b-256 c1ef659716ec37f5df89a3aa647b4eb19c64bdbc3450fc4089e1d5e64bc3f765

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page