computational aircraft prototype syntheses 0.1in [width
TRANSCRIPT
Computational Aircraft Prototype Syntheses
Training Session 1CAPS Overview
ESP v1.19
Marshall Galbraith Bob [email protected] [email protected]
Massachusetts Institute of Technology
John F. Dannenhoffer, [email protected]
Syracuse University
Galbraith CAPS Training - Session 1 July 2021 1 / 23
Overview
ESP and CAPS trainingCAPS and MDAO frameworksCAPS GoalsCAPS InfrastructurepyCAPS InterfaceESP UI and ParaViewCAPS with PointwiseCAPS training directory structureMuddy cardsAnalysis tools covered by this training
Galbraith CAPS Training - Session 1 July 2021 2 / 23
ESP and CAPS Training
CAPS DownloadCAPS is distributed as part of ESPESP is freely available at acdl.mit.edu/ESP
macOS 10.5 (and up) downloads see: OSXcatalina.txtApple M1 MACs see: AppleM1.txt
Available as source or PreBuilt binariesacdl.mit.edu/ESP/ESP.tgz (also need OpenCASCADE)acdl.mit.edu/ESP/PreBuilts
Training found in: acdl.mit.edu/ESP/TrainingRequired: overlay for ESP Rev 1.19 based on specific architectureFollow instructions in TrainingUpdate.txt
ESP TrainingCAPS training assumes participants have taken ESP trainingor are otherwise familiar with the ESP scripting language
Galbraith CAPS Training - Session 1 July 2021 3 / 23
CAPS and MDAO frameworks
Several MDAO frameworks/environments have been developedover the last couple of decadesThese tend to focus on:
automating overall analysis process by creating “data flows”between user-supplied analysesscheduling and dispatching of analysis executiongeneration of suitable candidate designs via DOE,...visualization of design spacesimprovements of designs via optimizationtechniques for assessing and improving the robustness of designs
Galbraith CAPS Training - Session 1 July 2021 4 / 23
CAPS and MDAO frameworks Cont.
“Data” that current MDAO frameworks handle are “point”quantities (possible in “small” arrays)
geometric parameters: length, thickness, camber,...operating conditions: speed, load,...performance values: cost, efficiency, range,...
No current framework handles “field” data directly:copy (same as for “point” data)interpolate/evaluateintegratesupply the derivative
Multi-disciplinary coupling in current frameworks require thatuser supplies custom pairwise coupling routines
Galbraith CAPS Training - Session 1 July 2021 5 / 23
CAPS Goals
Augment/enhance MDAO frameworksAugment MDA with richer geometric information via OpenCSMEnhance automation by tightly coupling analysis with geometryAllow interdisciplinary analysis with “field” data transferNot replacing optimization algorithms
Provide the tools & techniques for generalizing analysis couplingmultidisciplinary coupling: aeroelastic, FSImulti-fidelity coupling: conceptual and preliminary design
Provide the tools & techniques for rigorously dealing withgeometry (single and multi-fidelity) in a design framework /process
OpenCSM connects design parameters to geometryCAPS connects geometry to analysis tools
Input and attribution driven automated (not automatic) meshing
Galbraith CAPS Training - Session 1 July 2021 6 / 23
CAPS Infrastructure – API
CAPS APIThe main entry point to CAPS system is the C/C++ APIDirect interface for MDAO framework or User
pyCAPS: Python interface to CAPS API
C-Object based (not object oriented)Facilitates modification of Geometry/Analysis parameters
Geometry parameters defined with OpenCSMAnalysis parameters defined by AIMs
Tracks parameter modification and dependenciesModifying a geometric parameter invalidates analysis outputs
Galbraith CAPS Training - Session 1 July 2021 7 / 23
CAPS Infrastructure – AIMs
Analysis Interface Module (AIM)Interface between CAPS framework and analysis tools
Hides all of the individual analysis details (and peculiarities)Does not make analysis tool a “black box”
Shared libraries written in C/C++Loaded at runtime as plugins
Defines analysis input parameters and outputsInputs include attributed BRep with geometric-based information
AIMs inputs/outputs can be linkedTransfer simple or rich data (e.g. meshes) between AIMs
Galbraith CAPS Training - Session 1 July 2021 8 / 23
CAPS Infrastructure – Multidisciplinary Coupling
UserDefines “Bounds” on geometry to connect “field” dataDefines which AIMs instances “field” are coupledDefines iteration loop
AIM DeveloperFunctions to Interpolate and/or Integrate discrete data (consistentwith solver)Functions to reverse differentiated Interpolate and Integrate tofacilitate conservative transfer optimization
CAPS FrameworkPerforms the “field” data transfer (interpolate or conservative)Automatically initiated in a lazy manner
Galbraith CAPS Training - Session 1 July 2021 9 / 23
ESP with the CAPS Infrastructure
ESPUI
pyCAPS
User
——–
MDAOFramework
Sorcer
OpenMDAO
ModelCenterAnalysis
tools
Computa-tional
AircraftPrototypeSyntheses
(CAPS)API
ProblemDatabase
AnalysisSubsystem
GeometrySubsystem
—OpenCSM
EGADS
EGADSlite
AnalysisI/O Files
AnalysisInterfaceModule(AIM)
GeometryDatabase
Galbraith CAPS Training - Session 1 July 2021 10 / 23
CAPS Infrastructure – Objects
CAPS API has 6 Object types and 56 functionsMDAO framework/User manipulate these via CAPS APIfunctions
Object Description
capsProblem Top-level container for a single mission/geometry
capsValue Data container for parameters (scalar/vector/matrix)
capsAnalysis Instance of an AIM
capsBound Logical grouping of BRep Objects for data transfer
capsVertexSet Discrete representation of capsBound
capsDataSet “Field” data related to a capsVertexSet
Galbraith CAPS Training - Session 1 July 2021 11 / 23
pyCAPS Overview
Python interface to CAPS APIpyCAPS objects ≈ CAPS API objects
Nearly 1-to-1 match between interfacesSome aspects “pythonized”New interface with ESP 1.19 (deprecated interface still functions)
Training examples for CAPS sessions written with pyCAPSEvery example could be written in ANSI C
Equivalent C/pyCAPS example in session01 directorysession01/template avl.csession01/template avl.py
pyCAPS works with Python 3.3+PreBuilt ESP has Python 3.8 (some AIMs embed Python)
Includes minimal packages, e.g. MatplotlibInstall additional Python packages with pip
Galbraith CAPS Training - Session 1 July 2021 12 / 23
Analysis Scenarios
MDAO framework/User has complete control over executionprocess
SimpleLoad GeometryCreate AIMSet Geometry ParameterSet Analysis ParameterExecute AnalysisRetrieve Analysis Outputs
Database ConstructionLoad GeometryCreate AIMfor each Geometry Parameter
Set Geometry Parameterfor each Analysis Parameter
Set Analysis ParameterExecute AnalysisRetrieve Analysis Outputs
Galbraith CAPS Training - Session 1 July 2021 13 / 23
AIMs Discussed in the Training
Low FidelityAWAVEFRICTIONAVLXFoil
Structural AnalysismasstranMYSTRANNASTRANASTROS
linear static & modal analysissupport for composites,optimization & aeroelasticity
3D CFDCart3DFun3DSU2
MeshingSurface
Native EGADSAFLR4
VolumeTetGenAFLR3Pointwise
Galbraith CAPS Training - Session 1 July 2021 14 / 23
ESP UI With CAPS
Used to assist teaching/debuggingcase setup with CAPSVisualize bodies used by CAPS
Cannot change parameters orattributes
Visualize surface meshing AIMsVisualize data transfer setup andsignificant improvements in futurerelease
Galbraith CAPS Training - Session 1 July 2021 15 / 23
Volume Mesh Visualization with ParaView
Volume mesh visualization notsupported in ESPParaView freely availablevisualizerDownload at paraview.orgBasic tutorial for meshvisualization:lectures/basic paraview.pdf
Galbraith CAPS Training - Session 1 July 2021 16 / 23
Mesh Generation with Pointwise
Download Pointwisepointwise.com/downloads/pointwise.htmlDo not need License ManagerPointwise training license: CAPS training jul2021.licRequires admin to install on macOS and Windows (not on Linux)
Must tell ESP where pointwise is installed with ESPenvmacOS: ESP119/EngSketchPad/ESPenv.shexport PATH=$PATH:/Applications/Pointwise/PointwiseV18.4R4
Linux: ESP119/EngSketchPad/ESPenv.shexport PATH=$PATH:/path/to/PointwiseV18.4R4/
Windows: ESP119\EngSketchPad\ESPenv.batset PW HOME=”C:\Program Files\Pointwise\PointwiseV18.4R4”set PATH=”%PW HOME%\win64\bin”;%PATH%
Galbraith CAPS Training - Session 1 July 2021 17 / 23
CFD calculations with SU2
Download SU2su2code.github.io/download.html
Available in source or pre-compile binariesMust tell ESP where SU2 is installed with ESPenv
Linux and MacOS: ESP119/EngSketchPad/ESPenv.shsu2code.github.io/docs_v7/SU2-Linux-MacOSexport SU2 RUN=/path/to/SU2/binexport PATH=$SU2 RUN:$PATHexport PYTHONPATH=$SU2 RUN:$PYTHONPATH
Windows: ESP119\EngSketchPad\ESPenv.batsu2code.github.io/docs_v7/SU2-Windowsset SU2 RUN=”C:\path\to\SU2\bin”set PATH=%SU2 RUN%;%PATH%set PYTHONPATH=%SU2 RUN%;%PYTHONPATH%
Galbraith CAPS Training - Session 1 July 2021 18 / 23
AIM Documentation
HTML AIM documentation (doxygen)Referenced throughout training
$ESP ROOT/doc/CAPS/CAPS Overview.html
Galbraith CAPS Training - Session 1 July 2021 19 / 23
CAPS Training Directory Structure$ESP ROOT/training/CAPS
EGADSESPdata
session01, session02,...lectures: session01.pdf, session02.pdf,...solutions
session01, session02,...
Files for meshing in EGADS directoryMulti-analysis/fidelity OpenCSM files in ESP directoryLecture slides reference data directorysession01/template avl.py→$ESP ROOT/training/CAPS/data/session01/template avl.pyLecture slides in lectures directoryPossible exercise solutions in solutions directory
Galbraith CAPS Training - Session 1 July 2021 20 / 23
Training Material
Python LanguageParticipants are expected to have some programming experienceAll of CAPS training uses simple Python scriptsLimited Python basics will be covered during the CAPS training
Good resource for more in depth tutorialswww.w3schools.com/python
Relative to 2020 TrainingTraining material covers similar topics as the 2020 trainingpyCAPS interface has been refactored as part of EnCAPS
Galbraith CAPS Training - Session 1 July 2021 21 / 23
Enhanced CAPS Project
Follow-on project funded by AFRL to enhance CAPSBreaking changes in C-API (unavoidable)Existing pyCAPS scripts continue to function
Current StatusProblem directory structure containing all Analysis I/O FilesParent/Child replaced with explicit linksImproved error handling and error messages (in progress)Refactor pyCAPS to support coming restart/recycling capabilities
Future tasksRestarting the same script recycles previous dataDeprecate capsIgnore in lieu of explicit geometry removalSupport for analysis executionSingle UI (and integrated editor) for Geometry and Analysis
Galbraith CAPS Training - Session 1 July 2021 22 / 23
CAPS Training Sessions
1 CAPS Overview What is CAPS?
2 CAPS Geometry Interacting with geometry via CAPS
3 CAPS Analysis Interacting with AIMs
4 Geometry Analysis Views Geometry for Analysis
5 Aero Modeling Using multiple AIMs
6 Meshing for CFD I: AFLR Surface/Volume meshing
7 Meshing for CFD II: Pointwise Surface/Volume meshing
8 CFD Analysis: Fun3D and SU2 CFD execution
9 Meshing for Structures: EGADS Surface meshing
10 Structures Analysis Structures attributes
11 Data Transfer: Loosely-Coupled AeroelasticityGalbraith CAPS Training - Session 1 July 2021 23 / 23