On-Demand Libraries

Optionally install on-demand libraries through the Extension Manager.

The Compose installation provides on-demand, special-purpose libraries that expand the OML capabilities of the core libraries. You can conveniently pre-load the on-demand libraries in a given session, and enable them only as needed.

Note that when using the Extension Manager as a library loader, commands in use through the loader.oml and unload.oml files may affect the behavior of the Extension Manager.

Note: The Altair CAE Readers and Writers, Altair Product Integration, and Advance Optimization libraries are part of the Compose installation and are only accessible with Altair Licenses.

Altair CAE Readers and Writers

This extension contains Altair CAE Reader and Writer libraries.

Modules

  • ABF - Commands used to create and write data in Altair Binary format (*.ABF).
  • CAE Readers - Commands use Altair Readers to read data from a given CAE results file.
  • CAE Readers 3D - Commands use Altair Readers to read data that require access to model information like corner data, averaging method, layer, and coordinate systems.
  • CAE Writers - Commands used to create, write (new and append) data in Altair H3D format.
  • CAE Reader Utility - GUI Utility to manually select and get commands for extracting data from a CAE/Test result file.

Altair Production Integration

This extension contains Hyperstudy Python Fit and Multibody Postprocessing workflow.

Modules

  • Multibody Processing - This library supports multibody-related and multi-disciplinary workflows and system-level vibration analysis in time and frequency domains.
  • Hstpyfit - Commands read and evaluate Hyperstudy .pyfit.

Altair Advance Optimization

This extension contains advance optimization algorithms.

  • arsm - Find the constrained minimum of a real function.
  • arsmoptimset - Specify the arsm optimization function options.
  • grsm - Find the constrained minima of a real multi-objective function.
  • grsmoptimset - Specify the grsm optimization function options.
  • moga - Find constrained minima of a real multi-objective function.
  • mogaoptimset - Specify moga optimization function options.

OMLPY

OMLPY is an extension that lets you seamlessly call OML built-in functions and user-defined functions from within a Python environment of Altair products like Compose, HyperMesh, HyperGraph, HyperView, and Inspire.

Use

Basic use of OMLPY.

To use OMLPY, from Python, instantiate the OmlPy class and start using OML functions.

OMLPY leverages a two-way bridge that enables communication between Python and OML in Compose to share data in memory.

Input arguments to these Python functions and methods are automatically mapped to OML data types. OMLPY then evaluates the OML function and puts OML outputs into Python.
Figure 1. OMLPY Example
from omlpy import OmlPy
x=OmlPy() 
t = x.linspace(0,1000,1000)  #evaluates oml built-in command - linspace

All OML errors are caught and displayed in Python automatically. An attribute error is thrown if any function is not available in the given product environment.

Figure 2. OMLPY Attribute Error

OMLPY Attribute Error

Functions

In addition to support of OML built-in commands, OMLPY comes with the ‘omlfunction’ method, which lets you run an OML function defined in an OML file.

omlfunction

Evaluates an OML function from a specified file name and arguments.

Syntax

omlfunction(self,filename,func, *args, **kwargs):

Inputs

filename : filename
The file location of the OML file.
func : str
OML function name to evaluate.
*args :
Arguments to the OML function.

Outputs

filename : filename
A list of outputs from the OML function.

Example

from omlpy import OmlPy
import numpy as np
wp=500; # Passband frequency
ws=2000; # Stopband frequency
Rp=3; # Passband ripple
Rs=20; # Stopband attenuation
Fs=8000; # Sampling frequency
Fn=Fs/2; # Normalized sampling frequency

x = OmlPy()
f = x.linspace(0,4000,10)  # running linspace oml built-in command

#calling user defined function from filename

filename = './ButterworthFilterDesign.oml'
x.omlfunction(filename,'ButterworthFilterDesign',f,wp,ws,Rp,Rs,Fs,Fn)

Install a Library in the Extension Manager

  1. Select File > Extension Manager.
    The available libraries are listed with their corresponding extensions.
  2. On the library you want to install, slide the install button to the right .
    The library automatically becomes available in the Library Browser. For example, if you install the Multibody Processing library, you will see it displayed with the core libraries.

Uninstall a Library in the Extension Manager

  1. Select File > Extension Manager.
    The available libraries are listed with their corresponding extensions.
  2. On the library you want to uninstall, slide the install button to the left .
    Note that a native Compose library, such as MultibodyProcessing, is uninstalled, but not removed from your system. Even if you click the Remove button, the library is removed for your current session only and remains on your system should you wish to re-install it later in a new session.

Using the librarymanager Function

When using the librarymanager function to install or uninstall a native, on-demand library, the library status (installed or uninstalled) that you define wih the function is automatically reflected in the Extension Manager.