AIAA-96-3991
USE OF CAD GEOMETRY IN MDO
Jamshid A. Samareh
j.a.samareh@larc.nasa.gov
Computer Sciences Corporation,
Geometry Laboratory (GEOLAB, http://geolab5.larc.nasa.gov)
(ftp://techreports.larc.nasa.gov/pub/techreports/larc/96)
6th AIAA/USAF/NASA/ISSMO Symposium on
Multidisciplinary Analysis and Optimization
September 4-6, 1996
Bellevue, WA
1
USE OF CAD GEOMETRY IN MDO
�
Jamshid A. Samareh
y
1 Abstract
The purpose of this paper is to discuss the use of
Computer-Aided Design (CAD) geometry in a Multi-
Disciplinary Design Optimization (MDO) environ-
ment. Two techniques are presented to facilitate the
use of CAD geometry by di�erent disciplines, such as
Computational Fluid Dynamics (CFD) and Compu-
tational Structural Mechanics (CSM). One method is
to transfer the load from a CFD grid to a CSM grid.
The second method is to update the CAD geometry
for CSM de
ection.
2 Introduction
The process of aircraft design can be broken into
three phases[1]: (1) conceptual design, (2) prelimi-
nary design, and (3) detail design. The conceptual
design process focuses on the basic design optimiza-
tion of features, such as weights, sizes, and overall
performance. During the preliminary design, the fo-
cus is on the mathematical modeling of the outside
skin of an aircraft with su�cient accuracy. After this
phase, the geometry is frozen, and any change could
be costly. Detail design concentrates on the actual
design of pieces to be fabricated.
Often an aircraft is represented by a simple model
during the conceptual and preliminary designs. Be-
cause simple models are neither accurate nor com-
plete, optimization of these models could lead to an
impractical design [2, 3]. This shortcoming can be
alleviated by using a high �delity model, and the in-
teraction among various disciplines must be modeled
accurately. These interactions are very complicated
and important piece of MDO.
The strong interactions of CSM and CFD are very
common in an MDO environment. Such interactions
can prompt physically important phenomena such as
those occurring in aircraft due to aeroelasticity. Cor-
�
This paper is declared a work of the U. S. Government and
is not subjected to copyright protection in the United States.
(ftp://techreports.larc.nasa.gov/pub/techreports/larc/96)
y
Senior Computer Scientist (j.a.samareh@larc.nasa.gov),
Computer Sciences Corporation, Geometry Laboratory (GE-
OLAB, http://geolab5.larc.nasa.gov)
rect modeling of these complex aeroelastic phenom-
ena requires direct coupling of CSM and CFD. Dur-
ing optimization of a
exible structure (e.g., wing),
the geometry changes due to the aeroelastic e�ect.
All disciplines share the same geometry, and must be
able to consistently communicate and share informa-
tion (e.g. de
ection and load). The geometry repre-
sentation for MDO must be accurate and suitable for
grid generation for various disciplines such as CFD
and CSM. To further complicate the process, model-
ing of complicated geometrical models requires use of
CAD systems.
The interactions among various disciplines require
the manipulation of the original CAD geometry that
is stored as a set of NonUniform Rational B-Splines
(NURBS). This paper describes two techniques to
manipulate the NURBS geometry. In the next fol-
lowing sections there are brief discussions on NURBS,
parameterization of aircraft geometry, NURBS-based
optimization, load transfer, de
ection transfer, re-
sults, and conclusions.
3 NURBS
This section contains a brief overview of the NURBS,
and readers should consult [4] for a detailed discus-
sion. A NURBS curve,
~
R(u), can be represented as
~
R(u) =
P
n
i=0
N
i;p
(u)W
i
~
P
i
P
n
i=0
N
i;p
(u)W
i
: (1)
The parameter, u, is bounded by u
min
� u � u
max
.
The
~
P
i
are the control points (forming a control poly-
gon), and W
i
are the weights. The N
i;p
are the p-th
degree B-spline basis functions de�ned on the non-
periodic and nonuniform knot vector (u)
u 2 [u
min
= u
0
� u
1
� . . .u
j
� . . . � u
k
= u
max
];
(2)
where k is the number of knots. This completes
the mapping between the one-dimensional parameter
space, u, and the three-dimensional Euclidean space,
~
R. A NURBS curve has �ve important properties:
� It is invariant under linear transformation.
2
� A NURBS curve of order p, having no multiple
interior knots, is p - 2 di�erentialable.
� The approximation is local in nature.
� A NURBS curve is contained in the convex hull
of its control points.
� The NURBS approximation is variation dimin-
ishing.
To evaluate, the three-dimensional curve NURBS is
commonly represented in homogeneous form as
~
R(X;Y; Z)()
~
R
W
(WX;WY;WZ;W ): (3)
So, the NURBS curve can conveniently be de�ned as
a perspective map of its nonrational counterpart in
four-dimensional space as
~
R
W
=
n
X
i=0
N
i;p
(u)
~
P
W
i
; (4)
where
~
P
W
i
is de�ned as
~
P
W
i
= fX
i
W
i
; Y
i
W
i
; Z
i
W
i
;W
i
g: (5)
The basis functions can be e�ciently computed by
using DeBoor algorithm [5] as
N
i;0
(u) =
�
1 if u
i
� u < u
i+1
; u
i
< u
i+1
,
0 otherwise
(6)
N
i;p
(u) = L
i
(u)N
i;p�1
(u) +M
i
(u)N
i+1;p�1
(u); (7)
where
L
i
(u) =
u� u
i
u
i+p
� u
i
; (8)
M
i
(u) =
u
i+p+1
� u
u
i+p+1
� u
i+1
: (9)
It is agreed that 0=0 = 0.
A NURBS surface is a parametric surface and is
de�ned as a function of two parameters as
~
R(
~
U ) = fX(
~
U ); Y (
~
U ); Z(
~
U )g
T
;
~
U = fu
1
; u
2
g
T
2 [(a; b); (c; d)];
(10)
where the components of vector,
~
U , are the sur-
face parameters and have no geometrical signi�cance.
However, for a constant u
2
, as u
1
increases the point,
~
R(
~
U ) moves always from one side of the surface to
the other side. The NURBS de�nition for the surface
is de�ned as
~
R(
~
U ) =
P
n
i=0
P
m
j=0
N
i;p
(u
1
)N
j;q
(u
2
)W
i;j
~
P
i;j
P
n
i=0
P
m
j=0
N
i;p
(u
1
)N
j;q
(u
2
)W
i;j
: (11)
where
~
P
i;j
are control points (forming a control sur-
face), W
i;j
are the weights, and N
i;p
and N
j;q
are
the p-th and q-th degree B-spline basis functions de-
�ned on the non-periodic and nonuniform knot vec-
tor. The evaluation process is very similar to the
NURBS curve evaluation.
4 Aircraft Parameterization
To use complex shapes in an MDO environment, the
parameterization and geometry modeling must be
compatible with existing CAD systems, and it must
be adaptable to CFD (i.e., block-structured or un-
structured grids) and CSM. The four approaches for
parameterization of an aircraft geometry are based
on: analytical, semi-analytical, discrete, and CAD
representation.
Analytical methods for optimization have been
used for a long time. These methods converts a set
of design variables (e.g., wing sweep, thickness ra-
tios) into a set of surfaces. Then, these surfaces can
be used to analyze and compute the objective func-
tion (e.g., [6, 7, 8]). This approach is very simple and
requires a few design variables. The geometry based
on this approach is very smooth. On the other hand,
the geometry can take a limited form, and it is hard
to optimize existing and free-form geometry. Inter-
actions among disciplines are very di�cult to model.
Blair and Reich [8] have implemented a Virtual De-
sign Process (VDM) that is integrated with full as-
sociativity within Pro/Engineer CAD/CAM software
[9].
In the second approach, semi-analytical, a set of
points can describe the initial geometry, and a poly-
nomial can model the perturbation of geometry [10].
Then, the coe�cients of this polynomial are used as a
set of design variables. Again, this method is simple,
and it allows the designer to use existing geometry.
This approach requires a few design variables, and the
smoothness of the geometry depends on the baseline
geometry. This approach is very di�cult to general-
ize and use in an MDO environment for a complex
geometry.
The third approach, discrete, is based on a discrete
representation of the geometry. The baseline geom-
etry creates the grids, and the position of each grid
point becomes a design variable for the optimizer.
3
This is very easy to implement, and the geometry
changes don't have a limited form. The latter could
create a problem in which the optimum design may
not be practical to manufacture. The number of de-
sign variables often becomes very expensive which,
leads to high costs and a di�cult optimization prob-
lem to solve. Also it is di�cult to maintain a smooth
geometry.
The fourth approach, CAD, is based on the op-
timization of a NURBS representation of geometry
(e.g., [11]). The large number of design variables of-
ten becomes very expensive which leads to high costs
and a di�cult optimization problem to solve. The
geometry continuity and smoothness are guaranteed.
Also, the geometry can change locally without a�ect-
ing everything else. This type of parameterization is
exible enough to represent a wide range of geome-
tries. Existing complicated CAD models can be used
as the baseline model, but modeling the interaction
among disciplines is very di�cult.
These four approaches are summarized and listed
in Table 1. In the next section, a NURBS-based opti-
mization that is a hybrid approach based on �rst and
fourth approaches is discussed.
5 NURBS-Based
Optimization
CAD systems have been developed very rapidly and
integrated into the design process(e.g., see [8]). Use of
CAD systems for geometry modeling in an MDO en-
vironment could potentially save development time.
However, there are two drawbacks: (1) initial invest-
ment (software and training), and (2) inability to
calculate analytical sensitivity. The geometry rep-
resentation in these systems is complicated due to
a large number of entity representations. In a tra-
ditional CAD system, the geometry is represented
as one of many possible mathematical forms such as
Bezier, Coons patch, B-Spline, surface of revolution,
etc. However, one can use NURBS equations to rep-
resent most parametric and implicit surfaces without
loss of accuracy [4]. NURBS can represent quadric
primitives (e.g., cylinder, cones), as well as free form
geometry [4]. There are some CAD surfaces (e.g.,
helix and helicoidal[12]) that cannot be directly con-
verted to NURBS. These surfaces are not common in
most CAD system. The NURBS representation must
be used in such as a way that it should be possible to
altered it automatically to accommodate the changes
due to: (1) design variable changes, or (2) structural
and control surface de
ections.
Calculating of the sensitivity of geometry with re-
spect to the design variables could prove to be very
di�cult. In some instances, it is possible to relate
the NURBS control points to the design variables.
Then the analytical sensitivity can be calculated out-
side of the CAD system. Another way to calculate
the sensitivity is to use �nite di�erence, as long as
the perturbed geometry has the same topology as the
unperturbed one. Both methods, the analytical and
�nite di�erence, have their pitfalls and limitations.
Implementation described here is based on the
Framework for Interdisciplinary Design Optimization
(FIDO) [13, 14] developed at NASA Langley Re-
search Center (LaRC). The process for geometry cre-
ation, integration, and manipulation are designed
around the NURBS representation of the complete
geometry. To embed this process into an optimiza-
tion process such as FIDO, the model (High-Speed
Civil Transport) has to be parameterized with a set
design variables (DVs).
For each optimization cycle, the run starts with
a de�nition for a set of design variables (see Figure
1), to build a NURBS-based geometry. Pro-Engineer
([9]) is proposed for this step as the geometry builder.
Once the geometry is built, the NURBS geometry
will be deposited into a NURBS database, which will
be shared among di�erent disciplines. This database
will be maintained as the baseline geometry changes.
During the optimization process, CFD and CSM dis-
ciplines will need the complete geometry de�nition.
For each iteration of the aeroelastic loop, the CAD
geometry is used to create CFD and CSM grids. This
requires that both disciplines use and modify the
same unique geometry in the geometry database. In
each loop, the CFD grid is used to compute the aero-
dynamic load, which is transferred to the CSM grid.
This load will be converted to a NURBS de�nition
and deposited into the database. At this point, the
CSM grid will be generated based on the NURBS
database. The NURBS CFD load will be mapped to
the CSM grid, which along with the CSM grid is used
to compute the resulting de
ection. The next criti-
cal step is to modify the original CAD geometry to
accommodate and re
ect the aeroelastic de
ection.
Each optimization loop can be summarized as
shown in Figure 1:
� 1. The CAD system, Pro/Engineer, will convert
a set of design variables (D) into a NURBS geom-
etry (G). Because the source for Pro/Engineer
code is not available, the sensitivity has to be
4
calculated outside of the system.
� 2. At this point, the geometry, G, and its
sensitivity, GD, will be stored in the NURBS
database.
� 3. The Coordinates and Sensitivity Calcula-
tor for Multidisciplinary Design Optimization
(CSCMDO) ([15]) will calculate the CFD mesh
and its sensitivity M, MD.
� 4. The CFD code, with the capability to calcu-
late the sensitivity, will obtain the load, which
will be stored in the NURBS database.
� 5. Similarly, the CSM grid generator can cre-
ate the �nite element grid and its sensitivity.
The load stored in the NURBS database will be
mapped onto the �nite element model.
� 6. The CSM code, with the capability to cal-
culate the sensitivity, will obtain the de
ection
which will be stored in the NURBS database.
� 2'. The �nal step is to modify the NURBS
database to accommodate the new structural de-
ection.
The two steps that are de�ned and discussed in
this paper in detail are: (1) converting CFD load
to a NURBS de�nition, and (2) modify the NURBS
geometry to accommodate the de
ection.
6 Load Transfer
To transfer the load to CSM elements, one needs to
be able to compute the load at any point on the sur-
face. Initially, the load, F (
~
R)
CFD
, is computed on
the CFD grid, (
~
R
CFD
= fX;Y; Zg
T
), which could be
a set of structured quadrangles or unstructured tri-
angles with the appropriate connectivity. There are
two basic problems in �tting this data with NURBS:
(1) the data has four dimensions, (X;Y; Z; F ), and
(2) the CFD grid could be an unstructured grid.
The �rst problem can be solved by mapping the
CFD grid to the original NURBS surfaces, hence,
reducing the dimension from four, (X;Y; Z; F ), to
three, (U; V; F ). The U; V are the parametric coor-
dinates of the original NURBS surface. This infor-
mation may be available from a CFD grid generation
process. If not, the CFD grid points can be projected
onto the original NURBS surface [16]. The process
of projecting a point, ~r = fX;Y; Zg
T
, on a surface,
~
R(
~
U ), can be performed by �nding a ~w such that the
distance, d, between the ~r and
~
R(~w) is minimal and
~w is constrained to 2 [(a; b); (c; d)]. The distance, d,
can be written in terms of parameters ~w as
d
2
(~w) = f(~w) = j
~
R(~w)� ~rj � j
~
R(~w)� ~rj: (12)
The next step is to �tting a single-value three-
dimensional surface, F = F (U; V ). This surface
can be �tted based on a least-squares approximation
[17, 18] that minimizes the approximation error. A
three-dimensional curve is used as an example of the
least-squares �tting.
A set of points in three space, ~r(u), can be �tted
by a B-Spline curve,
~
R(u). The B-Spline equation
can be expressed at each parameter, u, as
~r
j
= N
1;k
(u
j
)
~
R
1
+N
2;k
(u
j
)
~
R
2
+ :::+N
n;k
(u
j
)
~
R
n
(13)
The above equation can be expressed as
[~r] = [N ][
~
R] (14)
where
[~r]
T
= [~r
1
; ~r
2
; :::; ~r
jmax
]
T
(15)
[
~
R]
T
= [
~
R
1
;
~
R
2
; :::;
~
R
n
]
T
(16)
[N ] =
2
4
N
1;k
(u
1
) ::: N
n;k
(u
1
)
N
1;k
(u
j
) ::: N
n;k
(u
j
)
N
1;k
(u
jmax
) ::: N
n;k
(u
jmax
)
3
5
(17)
where jmax is the maximum number of data points,
~r
j
.
~
R
n
is the nth B-Spline control points. If jmax =
n, the matrix [N ] is a square matrix and the control
points can be calculated directly by matrix inversion,
[
~
R] = [N ]
�1
[~r]: (18)
In this case, the resulting B-Spline curve passes
through each data point. However, if the number
of data points, jmax, is greater than the number of
control points, n, the problem is over-speci�ed. A
least-square method can solve the problem as,
[
~
R] = [[N ]
T
[N ]]
�1
[N ]
T
[~r]: (19)
The least-squares approximation for surfaces is
very similar to the least-squares approximation for
the curves. The minimization error can be written as
5
Error =
P
N
0
E
N
;
E
N
=
�
F (
~
U
N
)�
P
n
i
P
m
j
N
i;p
(U)N
j;q
(V )W
i;j
F
i;j
P
n
i
P
m
j
N
i;p
(U)N
j;q
(V )W
i;j
�
2
(20)
where F
i;j
are control points for the NURBS sur-
face representing the CFD load,W
i;j
are the weights,
and N
i;p
and N
j;q
are the p-th and q-th degree B-
spline basis functions de�ned on the non-periodic and
nonuniform knot vector. N is the number of points
in the CSM grid. This forms a system of linear
equations that can be solved for control points of a
NURBS surface representing the load.
7 De
ection Transfer
As described in the previous section, the load is de-
�ned on the CFD grid,
~
R
CFD
= fX;Y; Zg
T
. On the
other hand, the de
ection, �
~
R
CSM
, is de�ned on the
CSM grid,
~
R
CSM
= fX;Y; Zg
T
, which is represented
by a set of polygons (e.g., triangles and quadrangles)
with appropriate connectivity. The goal is to modify
the CAD geometry de�nition,
~
R(
~
U ), such that it re-
ects the de
ection produced by CSM. The algorithm
for de
ection transfer has four steps:
1. Project the
~
R
CSM
onto the original NURBS sur-
face.
2. Create a NURBS surface based on the de
ection,
�
~
R
CSM
(U; V ), which has the same degree as the
original NURBS surface.
3. Add/remove knots from the new surface to make
it compatible with the original NURBS surface.
4. Add the control points to the original NURBS
surface to form the new surface.
This algorithm has following properties:
1. As �
~
R
CSM
approaches zero, the method will re-
produce the original NURBS surface,
~
R(
~
U ).
2. Smoothness is controlled on the resulting
NURBS surface.
3. The results surface is a NURBS surface with the
same degree as the original NURBS surface.
4. It is possible to maintain the same knot vector
as the original NURBS surface.
8 Results and Discussions
The results are presented for the load and de
ection
transfers. For the load transfer, a generic path�nder
geometry (see Figure 2) is used. The geometry is
a single cubic NURBS surface with 53 by 24 control
points. There are two test cases for the load transfer.
For the �rst test case, a Sin function is de�ned over
a triangular mesh (see Figure 3), which covers the
surface of the path�nder. The data is �tted with a
NURBS surface. The original and interpolated con-
tours are shown in Figure 4. The Root Mean Squares
(RMS) error for interpolation is less than two per-
cent, and the resulting cubic NURBS surface has 15
by 15 control points. For the second test case, the
pressure distribution on the surface is �tted with a
cubic NURBS surface (see Figure 5). The resulting
NURBS surface has 35 by 24 control points, and the