Title: Aerostructural Optimization with the Component Object Model Technology
1Aerostructural Optimization with the Component
Object Model Technology
- Jaehun Lee, Jang Hyuk Kwon
- Korea Advanced Institute of Science and
Technology - Department of Aerospace Engineering
- Aerodynamic Simulation Design Integration Lab.
- 2006. 11. 20.
2Content
- Background
- Objective
- Component Object Model
- Aerostructural optimization
- Discussion Conclusion
3Background ModelCenter
- Phoenix Integration Corporation
- Process integration environment
- Easy to integrate programs running in different
computers or different OS. - Optimization tool
- Design of Experiment tool
4Background ModelCenter
- Advantage
- Analysis server Java, OS independent
- Convenient to integrate programs running in
various operating systems - Disadvantage
- Programming environment Visual Basic Script,
Java Script and etc. - Limited optimizer
- DOT variable Metric, conjugate gradient,
sequential linear programming, sequential
quadratic programming - Genetic algorithm
5Objective
- To construct the Multidisciplinary Analysis in
the FORTRAN environment with ModelCenter - To use the COM technology
- To use object-oriented programming in the FORTRAN
environment
6Component Object Model
- Microsofts middleware to support component-based
distributed computing. - OMG(Object Management Group) CORBA (Common
Object Request Broker Architecture) - Sun EJB (Enterprise JavaBeans)
- A binary standard that defines how objects are
created and destroyed and how they interact with
each other1) - Different applications from different sources can
communicate with each other across process
boundaries. - Language independent
1) MSDN online
7Component Object Model
- Object
- An object combines different data types and
creates a new data type. - Structure in C, derived type in FORTRAN90
- FORTRAN
- FORTRAN90 supports the object-oriented
programming - Module procedure a subroutine defined in a
module - Compaq Visual Fortran and Intel Visual Fortran
provide subroutines to support COM such as
AUTOALLOCATEINVOKEARGS, AUTOADDARG and
AUTOINVOKE. ? complicate to use
8Component Object Model Matlab
- Actxserver to create a COM Automation server and
return a COM object for the server's default
interface - Invoke to invoke a method on an object or
interface - Example to call ModelCenter in Matlab
To initialize COM client mcactxserver(ModelCent
er.Application) To load a modelcenter
file invoke(mc,loadModel,D\public_aserver\kflo
w.pxc) To assign a parameter for
KFLOW invoke(mc,setvalue,Model.kflow.Input.Solv
erCondition.FlowItermax,100) To run
KFLOW Clinvoke(mc,getValue,Model.kflow.Output.
SolverLog.Cl)
9Component Object Model FORTRAN
- To create ModelCenter interfaces with CVF/IVF
Fortran Module Wizard
MODULE ModelCenter ! Module Procedures CONTAINS
FUNCTION IModelCenter_getValue(OBJECT,
varName, STATUS) . END FUNCTION
IModelCenter_getValue END MODULE
10Component Object Model FORTRAN
- COM Routine
- Cominitialize to initialize the COM library
- Comcreateobject to create a COM Automation
server and return a COM object - ModelCenter interface
- IModelCenter_loadModel to load a model
- IModelCenter_setValue to set a value in the
model - IModelCenter_getValue to get the value of a
variable
INTEGER(4) status,status2,model_center CHARACTE
R(50)citer CALL COMINITIALIZE(status) CALL
COMCREATEOBJECT ('ModelCenter.Application',
model_center, status) CALL IModelCenter_loadModel(
model_center,cmodel_center) CALL
IModelCenter_setValue(model_center,'Model.KFLOW.In
put.SolverCondition.FlowIterMax',citer,status2) f
lowtimeIModelCenter_getValue(model_center,'Model.
KFLOW.Output.CLCDLog.FlowTime',status2)
11Aerostructural Optimization
- Flow Analysis
- KFLOW in-house code, parallelized multiblock
structured solver - Navier-Stokes equation, Bald-lowmax turbulence
model - ONERAM6
- OS Linux
- Structural Analysis
- NASTRAN MacNeal-Schwendler Corporation (MSC)
- Linear static analysis
- Skin, spar, rib
- OS Windows
- Fluid Structure Interaction Analysis
- Static aeroelastic analysis
12Aerostructural Optimization
- Optimization
- Design variables
- Aerodynamic sweepback, upper thickness ratio,
lower thickness ratio(3EA) - Structural thickness of structural members(12EA)
- Objective to find minimum structural weight
(estimated by NASTRAN) - Constraints
- Aerodynamic
- Structural
- Optimization Algorithm Sequential Quadratic
Programming - Language FORTRAN, Compaq Visual Fortran (CVF)
13Aerostructural Optimization KFLOW
(b) Running of KFLOW through ModelCenter
(a) Running of KFLOW in Linux
14Aerostructural Optimization
15Discussion Conclusion
- Demonstration of the use of COM in FORTRAN
- Based on the use of commercial programs (CVF,
ModelCenter) - Object-oriented programming via FORTRAN
- Application of COM in the aerostructural
optimization - Alternative approach for integrating programs in
the multidisciplinary analysis