Post on 27-Jun-2019
1 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
Customization of ANSYS Mechanical: ACT
2 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
Why Customize?
Solution What if a ‘super user’ could encapsulate company-specific expertise, know-how, processes etc. and provide this to ‘everyday’ users for expanded simulation capabilities?
The knowledge and expertise of one or a few becomes accessible to all in the organization
Customer requirements are diverse…
But everyone gets the same “off the shelf” software
3 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
• Application Customization Toolkit (ACT) – Toolkit for Application level
customization
– Modify functionality and integrate 3rd party tools at the Application level
– Many projects can be completed in hours, not months
– Specialist programmer skills NOT required for ACT
ANSYS Customization Suite
• Framework Software Development Kit (SDK) – Provides a tool kit for Framework
level customization
– Full integration of 3rd party tools at the Framework level
– Several months effort common
– Specialist programmer skills required for SDK
4 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
• Encapsulate APDL macros – Allows seamless integration of legacy APDL-scripts enabling transition to
Mechanical application
• MAPDL exposure – Fill the gap between MAPDL solver capabilities and their exposure in
ANSYS Mechanical
• New pre-processing features – User-created custom loads and boundary conditions
• New post-processing features – User-created custom results objects
• In-house solver integration – Your tools or solver integrated into ANSYS Mechanical
Scope of ACT
5 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
ACT Development Module
Module used by ‘super users’ to develop extensions
• Add-on to the Workbench environment
• Based on the Python and XML programming languages
• Allows you to look at and modify things ‘under the hood’ of Mechanical
• Toolkit used to create ACT customizations or ‘extensions’
• Licensed ANSYS product
• Maintained and supported by ANSYS
ACT Extensions
Files given to users to access the enhanced functionality
• Resultant ACT customizations
• Often single binary file
• Can be ‘loaded into’ ANSYS Workbench
• Act to modify ANSYS Mechanical
• Outside of the ANSYS standard support model
• No license required – Beyond access to ANSYS Mechanical
ACT Components
6 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
Ability to migrate existing process automation from MAPDL to ANSYS Mechanical at ‘low cost’
APDL
! APDL_script_for_convection.inp ! Input parameters: esel,s,type,,10 cm,component,ELEM thickness = 0.005 film_coefficient = 200. temperature = 226.85 ! Treatment: /prep7 et,100,152 keyop,100,8,2. et,1001,131 keyo,1001,3,2 sectype,1001,shell secdata,thickness,10 secoff,mid cmsel,s,component emodif,all,type,1001 emodif,all,secnum,1001 type,100 esurf fini alls /solu esel,s,type,,100 nsle sf,all,conv,film_coefficient,temperature alls
APDL Script Workbench Mechanical
Encapsulate APDL Macros
7 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
Creating the GUI definition via XML file
<load name="Convection on Blade" version="1" caption="Convection on Blade" icon="Convection" issupport="false" isload="true" color="#FF0000"> <callbacks> <onsolve>Convection_Blade_Computation</onsolve> </callbacks> <details> <property name="Geometry" dataType="string" control="scoping"></property> <property name="Thickness" caption="Thickness" dataType="string" control="text"></property> <property name="Film Coefficient" caption="Film Coefficient" dataType="string" control="text"></property> <property name="Ambient Temperature" caption="Ambient Temperature" dataType="string" control="text"></property> </details> </load>
At Runtime, the required APDL commands are generated by the Python function
8 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
Python script:
# Get the scoped geometry: propGeo = result.GetDPropertyFromName("Geometry") refIds = propGeo.Value
# Get the related mesh and create the component: for refId in refIds: meshRegion = mesh.MeshRegion(refId) elementIds = meshRegion.Elements eid = aap.mesh.element[elementIds[0]].Id f.write("*get,ntyp,ELEM,"+eid.ToString()+",ATTR,TYPE\n") f.write("esel,s,type,,ntyp \n cm,component,ELEM")
# Get properties from the details view: propThick = load.GetDPropertyFromName("Thickness") thickness = propThick.Value propCoef = load.GetDPropertyFromName("Film Coefficient") film_coefficient = propCoef.Value propTemp = load.GetDPropertyFromName("Ambient Temperature") temperature = propTemp.Value # Insert the parameters for the APDL commands: f.write("thickness="+thickness.ToString()+"\n") f.write("film_coefficient="+film_coefficient.ToString()+"\n") f.write("temperature="+temperature.ToString()+"\n")
# Reuse the legacy APDL macros: f.write("/input,APDL_script_for_convection.inp\n")
APDL reuse
/prep7 et,100,152 keyop,100,8,2. et,1001,131 keyo,1001,3,2 sectype,1001,shell secdata,thickness,10 secoff,mid cmsel,s,component emodif,all,type,1001 emodif,all,secnum,1001 type,100 esurf fini alls /solu esel,s,type,,100 nsle sf,all,conv,film_coefficient,temperature alls
Generating the APDL commands via Python
9 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
ACT exposes existing MAPDL acoustics features in Mechanical without any command objects • Defines acoustics elements
• Adds specific acoustic material properties
• Applies acoustic boundary conditions
• Unit consistent, no ‘commands objects’
Example of MAPDL Exposure
Under water
10 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
ACT can allow ANSYS Workbench to front-end your in-house solver
Example of External Solver Extension
• Small in-house verification tool
• Large-scale simulation code with weak or no user interface
• Use ACT to translate the problem setup in Mechanical into input for your in-house code
• Pre- and Post-processing
• Our powerful, easy-to-use and familiar environment, your solver
11 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
DesignXplorer (DX): – Workbench environment for parametric
studies and optimizations
– Native GUI, maintained by ANSYS
– One-click optimization setup, ease of use
– Limited set of optimization methods
Workbench Optimization environment
12 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
ACT for DesignXplorer – R15
Proprietary/External optimizer accessible in DX, as an additional optimization method
Specific settings of the proprietary optimizers presented as for any other standard DX method
External Optimizer hosted in DX
13 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
Example: MATLAB optimizers in DX
14 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
ACT for DesignModeler
• Companies often need to model a ‘family’ of geometries
• They may need to accelerate and automate the creation of these geometries/parts which are generic for them
Library of “standard” Ships’ stiffeners Automatic creation of geometries
15 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
Example: BGA-Geometry Creation in DM
• BGA Packages are surface mounted packages for Integrated circuits
• Modeling BGA Package requires various inputs like number of balls, pitch, TSV info etc..
• Modeling BGA Package is tedious – Lot of variations in Input data
– Designers who understand only Electronics language and not familiar with CAD package cannot manage easily
– ACT extension is created to model BGA package with all desired inputs
• ACT extension reduces modeling time and increases productivity enhancement
BGA Extension in DM
BGA Object in Tree view
16 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
BGA Wizard Workflow in Workbench
Click BGA Extension in DM BGA Object Gets Created in Tree
Fill Details View
Generate Package
TSV Structures
18 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
• Key point: Usability – User skill required for effectively developing extensions with ACT is
somewhere between an application engineer and a programmer
– No need for additional software or a compiler
• Documentation and training material is available
• ACT customizations have the same behavior as standard ANSYS Workbench Mechanical features
• Extensions developed with ACT will remain forward compatible with future versions of ANSYS
• ACT is ANSYS’ long-term customization tool
Ready For Your Use
19 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
ACT Extension Library
Great place to get started • Extensions made available in either binary
format (.wbex file) or binary plus scripted format (Python and XML files)
• Scripted extensions are great examples
• Links to ACT documentation and training
• Goals for an ACT developers forum
ANSYS Customer Portal • support.ansys.com
• A library of helpful ACT extensions available to any ANSYS customer
• Dozens available
• More being added continually
20 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
Many New and Updated Extensions
21 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
• Extension gives access to User Programmable Features natively in the Workbench Environment
– Previously only available in Classic environment
– Extension handles compiling and linking to the ANSYS MAPDL solver (a traditionally difficult process)
• UPF provides powerful options
– Customize the ANSYS program to your needs User-defined material behavior Create your own element Define specialized failure criterion (for composites, etc.) Much more…
Example: UPF Now Available in Workbench
22 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
How Can I Learn and Use ACT?
• Newly available in the Extension Library – Useful templates for getting you started
23 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
New HTML Documentation
Available in the 15.0 section of the Extension Library
24 © 2014 ANSYS, Inc. June 20, 2014 ANSYS Confidential
Questions?