computational aircraft prototype syntheses 0.1in [width

23
Computational Aircraft Prototype Syntheses Training Session 1 CAPS Overview ESP v1.19 Marshall Galbraith Bob Haimes [email protected] [email protected] Massachusetts Institute of Technology John F. Dannenhoffer, III [email protected] Syracuse University Galbraith CAPS Training - Session 1 July 2021 1 / 23

Upload: others

Post on 18-Dec-2021

2 views

Category:

Documents


0 download

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