Keywords

1 Introduction

In computer aided design parametrization is an extremely important activity. It is, however, a mostly overlooked area and parametrization is mostly done on an ad hoc basis. It is important when a flexible model is to be created that can be used in conceptual design, where different dimensions and other parameters can be explored. In [1] parametrization in aircraft design is thoroughly discussed and the importance to separate size from function is emphasized. Furthermore, to have concise, flexible and robust parametrization is also underlined. This is also discussed in [2]. This corresponds to minimizing the design entropy as discussed in [3] by having the smallest design space that includes as much as possible of the viable design space, while avoiding constraints. This was also applied to the configuration problem in [4]. In [6] axiomatic design is presented as a way to make a design that not is so coupled, the same can be applied also to the parametrization.

In this paper singular value composition (SVD), see [5], is introduced for analytical parametrization of design, since the resulting parameters can be automatically aligned around the feasible region of design. To do this a dataset with example design points within the feasible design are used. This gives a parametrization with a minimum number of parameters that can define a design within the design space.

It is, however, not always that the SVD parameters are intuitive from a user point of view. The first parameter can usually be considered as a size or scaling parameter but the other are not so clear. It can, however, also be used to test a given parametrization by studying the correlation with the ideal SVD parameter set. This is important since it is sometimes useful to have a parametrization that have a clearer interpretation than the synthetic SVD parameter set can provide. Interestingly, it is also possible to derive the number of driving requirement in a product category by studying a number of instances of a particular kind of product. This can be useful in order to understand a market.

Singular Value Decomposition (SVD) is a technique that is related to principle component analysis. It is a method to achieve this that involves an elegant mathematical method to obtain a model that is aligned with the main axis of the data set. Consider the data set X which is a matrix. Then there exist a decomposition of the form.

$$ {\text{X = U}} \times {\text{ W }} \times {\text{V}}^{\text{T}} $$
(1)

where W is diagonal. This is the Singular Value Decomposition, SVD. This can look like this:

$$ \left( \begin{aligned} \begin{array}{*{20}c} {x_{11} } & {x_{12} } & {x_{11} } \\ {x_{21} } & {x_{22} } & {x_{23} } \\ {x_{31} } & {x_{32} } & {x_{33} } \\ \end{array} \hfill \\ \begin{array}{*{20}c} {x_{41} } & {x_{42} } & {x_{43} } \\ \end{array} \hfill \\ \end{aligned} \right)\,\,{\mathbf{ = }}\,\,\left( \begin{aligned} \begin{array}{*{20}c} {u_{11} } & {u_{12} } & {u_{11} } \\ {u_{21} } & {u_{22} } & {u_{23} } \\ {u_{31} } & {u_{32} } & {u_{33} } \\ \end{array} \hfill \\ \begin{array}{*{20}c} {u_{41} } & {u_{42} } & {u_{43} } \\ \end{array} \hfill \\ \end{aligned} \right)\,\,{\mathbf{ \times }}\,\,\left( {\begin{array}{*{20}c} {w_{1} } & 0 & 0 \\ 0 & {w_{2} } & 0 \\ 0 & 0 & {w_{3} } \\ \end{array} } \right)\,{\mathbf{ \times }}\,\left( {\begin{array}{*{20}c} {v_{11} } & {v_{12} } & {v_{13} } \\ {v_{21} } & {v_{22} } & {v_{23} } \\ {v_{31} } & {v_{32} } & {v_{33} } \\ \end{array} } \right)^{{{T}}} $$
(2)

The consequence of this operation is that if each row in the X and U matrix represents a data set of the entity that should be modelled, any point in U is mapped onto X trough the matrix product. In this example there are therefore four data sets, each represented by three parameters. Usually the resulting matrices are arranged in such a way that the diagonal elements of the W-matrix are in descending order. Hence the influence of the u variables is in descending order in each row, which means that the last ones can be omitted in order to get a simpler model without too much loss in accuracy. However, for this to be valid the dataset should first be centered around the mean value. This can be done by subtracting the average of each column in the x-vector from the values of each column. An interesting property of the U matrix is then that the sum of the variance of each column is one. That is:

$$ \sum\limits_{i = 1}^{n} {u_{ij}^{2} } = 1 $$
(3)

This means that all columns (that is parameters) have the same deviation \( \sigma = 1/\sqrt n \). The \( {\text{W}} \) matrix is then a weight matrix with only diagonal elements, and \( {\text{V}}^{\text{T}} \) is a matrix that rotates the coordinate system from the main axis into \( {\text{X}} \) (Fig. 1).

Fig. 1
figure 1

The transformation from the SVD parameters to the X parameters

To estimate parameters and properties the following equation is used:

$$ {\text{X = S}}\, \times \,{\text{W}}\, \times \,{\text{V}}^{\text{T}} $$
(4)

Here the X and S are now vectors. S is the input vector with SVD-parameters that are orthogonal and X is the estimated values of parameters and properties. This can look like this:

$$ \left( {\begin{array}{*{20}c} {x_{1} } & {x_{2} } & {x_{3} } \\ \end{array} } \right) = \left( {\begin{array}{*{20}c} {s_{1} } & {s_{2} } & {s_{3} } \\ \end{array} } \right) \times \left( {\left( {\begin{array}{*{20}c} {w_{1} } & 0 & 0 \\ 0 & {w_{2} } & 0 \\ 0 & 0 & {w_{3} } \\ \end{array} } \right) \times \left( {\begin{array}{*{20}c} {v_{11} } & {v_{12} } & {v_{13} } \\ {v_{21} } & {v_{22} } & {v_{23} } \\ {v_{31} } & {v_{32} } & {v_{33} } \\ \end{array} } \right)^{\text{T}} } \right) $$
(5)

With

$$ K^{\text{T}} = W \times V^{\text{T}} $$
(6)
$$ \left( {\begin{array}{*{20}c} {k_{11} } & {k_{12} } & {k_{13} } \\ {k_{21} } & {k_{22} } & {k_{23} } \\ {k_{31} } & {k_{32} } & {k_{33} } \\ \end{array} } \right)^{\text{T}} = \left( {\begin{array}{*{20}c} {w_{1} } & 0 & 0 \\ 0 & {w_{2} } & 0 \\ 0 & 0 & {w_{3} } \\ \end{array} } \right) \times \left( {\begin{array}{*{20}c} {v_{11} } & {v_{12} } & {v_{13} } \\ {v_{21} } & {v_{22} } & {v_{23} } \\ {v_{31} } & {v_{32} } & {v_{33} } \\ \end{array} } \right)^{\text{T}} $$
(7)

This can be written as

$$ \left( {\begin{array}{*{20}c} {x_{1} } & {x_{2} } & {x_{3} } \\ \end{array} } \right)\,{\mathbf{ = }}\,\left( {\begin{array}{*{20}c} {s_{1} } & {s_{2} } & {s_{3} } \\ \end{array} } \right)\,{\mathbf{ \times }}\,\left( {\begin{array}{*{20}c} {k_{11} } & {k_{12} } & {k_{13} } \\ {k_{21} } & {k_{22} } & {k_{23} } \\ {k_{31} } & {k_{32} } & {k_{33} } \\ \end{array} } \right)^{\text{T}} $$
(8)

or

$$ \left( {\begin{array}{*{20}c} {x_{1} } \\ {x_{2} } \\ {x_{3} } \\ \end{array} } \right)\,{\mathbf{ = }}\,\left( {\begin{array}{*{20}c} {k_{11} } & {k_{12} } & {k_{13} } \\ {k_{21} } & {k_{22} } & {k_{23} } \\ {k_{31} } & {k_{32} } & {k_{33} } \\ \end{array} } \right)\,{\mathbf{ \times }}\,\left( {\begin{array}{*{20}c} {s_{1} } \\ {s_{2} } \\ {s_{3} } \\ \end{array} } \right) $$
(9)

Note that since the orthogonal parameters are sorted in ascending order it is often sufficient to use only a few input parameters. If it is reduced to just two parameters, in this example, the system gets reduced to:

$$ \left( {\begin{array}{*{20}c} {x_{1} } \\ {x_{2} } \\ {x_{3} } \\ \end{array} } \right)\,{\mathbf{ = }}\,\left( {\begin{array}{*{20}c} {\begin{array}{*{20}c} {k_{11} } & {k_{12} } \\ \end{array} } \\ {\begin{array}{*{20}c} {k_{21} } & {k_{22} } \\ \end{array} } \\ {\begin{array}{*{20}c} {k_{31} } & {k_{32} } \\ \end{array} } \\ \end{array} } \right)\,{\mathbf{ \times }}\,\left( {\begin{array}{*{20}c} {s_{1} } \\ {s_{2} } \\ \end{array} } \right) $$
(10)

The individual element in the k matrix is the same as before. The same result is therefore achieved by just setting the last element in the input vector in Eq. (9) to zero. The error introduced in this way are such that the square errors are minimized.

One issue with this model is that the elements variance of the S-vector is dependent on the number of data set, and hence also the K-matrix. Therefore, it can be suitable to normalize the S-vector so that the variance of the elements is one. This is simply done by dividing each element with the deviation and then consequently multiplying the elements in the K-matrix with the same value.

$$ \left( {\begin{array}{*{20}c} {x_{1} } \\ {x_{2} } \\ {x_{3} } \\ \end{array} } \right)\,{\mathbf{ = }}\,\left( {\begin{array}{*{20}c} {\begin{array}{*{20}c} {k_{0,11} } & {k_{0,12} } \\ \end{array} } \\ {\begin{array}{*{20}c} {k_{0,21} } & {k_{0,22} } \\ \end{array} } \\ {\begin{array}{*{20}c} {k_{0,31} } & {k_{0,32} } \\ \end{array} } \\ \end{array} } \right)\,{\mathbf{ \times }}\,\left( {\begin{array}{*{20}c} {s_{0,1} } \\ {s_{0,2} } \\ \end{array} } \right) $$
(11)

where

$$ s_{0,j} \,{\mathbf{ = }}\,\frac{{s_{j} }}{{\sigma_{S} }}\, = \,s_{j} \sqrt n $$
(12)

And consequently

$$ k_{0,ij} \,{\mathbf{ = }}\,\sigma_{S} k_{ij} \, = \,\frac{{k_{ij} }}{\sqrt n } $$
(13)

1.1 Design Space for Parameterization

The following example of parametrization of an aircraft wing planform was discussed in [3]. It is a well-known parameterization of aircraft wing used in literature e.g. in [7]. The planform for a wing can be defined with three parameters (disregarding wing sweep). These are wing span, b, root cord, c r , and tip cord, c r as defined in Fig. 2. These are here referred to as the primary parameter set. In general, however, it is common to use wing area, S, aspect ratio, AR, and tapering, \( \lambda \), as parameters instead. See e.g. [7]. These are here referred to as the secondary parameter set. The relationships between these are:

Fig. 2
figure 2

Wing parameters

$$ \begin{array}{*{20}l} {S = \frac{b}{2}(c_{r} + c_{t} )} \hfill \\ {AR = \frac{{b^{2} }}{S}} \hfill \\ {c_{t} = c_{r} \lambda } \hfill \\ \end{array} $$
(14)

To study the design space a data set of existing aircraft are shown in Table 1.

Plotting the region spanned by the extreme values in the secondary parameter set, in the coordinates of the primary parameter set gives Fig. 3.

Fig. 3
figure 3

Design space using the secondary parameter set

In order to be able to deal with large variation of parameter values it is convenient to use the logarithm of the parameters instead.

This is justified by the fact that it is more relevant to define parameter tolerance in relative terms of the nominal parameter value. In the left part of Fig. 4. The design space defined by the logarithm of the secondary parameters is shown as the slanted block. The parameters of all the studied aircraft are fitted inside this box. To the right, the outer box represents the design space defined by the primary parameters. As can be seen there is some part of the design space of the secondary parameters that is outside. This represents an empty part of the design space, which can be regarded as a sort of “waste” of design space. Using the primary parameter set all of the volume outside the slanted block in the right in Fig. 4 is also wasted design space.

Fig. 4
figure 4

Design space defined by the logarithms of the secondary parameter set, displayed in the logarithms of the primary parameter set. To the right the outer box represents limitations on primary parameters

1.2 Analytical Parametrization of Wing

If the primary parameters are used and used to formulate an SVD parametrization the following model is obtained.

 

Offset

s1

s2

s3

b

1.41

1.002

0.225

0.092

cr

0.81

0.725

−0.115

−0.498

ct

0.16

0.700

−0.203

0.384

It can be seen that the all the primary parameters are strongly dependent on the first SVD parameter. This is natural since the first SVD parameter is related to size.

If the secondary parameters are used to formulate an SVD parametrization the following model is obtained.

 

Offset

s1

s2

s3

S

2.02

0.598

−0.003

−0.024

AR

0.80

0.105

0.176

0.103

λ

−0.65

−0.055

0.303

−0.061

Here it can be seen that the first SVD variable have a strong influence on S which is the dimensional parameter. The influence on the dimensionless number has only small influence on the first SVD variable but much higher in the second (AR) and third (λ).

The design space is considerably smaller than for the other parametrizations. The result from calculating the volumes of the design spaces yields the results in the Tables 1, 2 and Fig. 5.

Table 1 Parameter values for existing aircraft
Table 2 Design space volumes of the different parameter sets
Fig. 5
figure 5

Design space defined by the logarithms of the SVD parameter set, displayed in the logarithms of the primary parameter set. To the right the outer box represents limitations on primary parameters

Apparently the analytical parametrization using SVD has the smallest volume, while still including all the samples. It is not surprising since this is the design space most aligned with the samples. This means that in order to be able to have a design space that can reach all designs, the SVD parametrization generates the smallest one. It can be interpreted such as information about the design is imprinted already in the design space, since some of the unviable solutions are removed already from the design space, and less information is needed to reach a specific part of the design space.

It also means that using the primary parameter set would waste design entropy according to [3] the difference in design information entropy needed to define a design within a certain tolerance s, for these two different design spaces is simply:

$$ H_{w} = H_{1} - H_{2} = \log_{2} \frac{{S_{1} /s}}{{S_{2} /s}} = \log_{2} \frac{{S_{1} }}{{S_{2} }} = \log_{2} \frac{0.914}{0.25} = 1.87{\text{bits}} $$
(15)

Hence if optimization is used to define the design, less effort is needed to arrive at the optimal design. Even though this is not to significant in this case with three parameters, it can significantly reduce the effort for large problems. Furthermore, this can also be used to reduce the number of parameters for optimization. E.g. the thirds SVD variable have a rather small impact on any of the parameters and could be considered to be dropped to further speed up optimization.

1.3 Singular Value Decomposition for Estimation of System Characteristics

If also other attributes such as functional characteristics, are added to the data set, they can also be mapped onto the design space, and an estimate of system characteristics can be obtained directly. As an example a parameter set of 400 jet engines where used.

The result is a model that can predict the relation between geometrical dimension, diameter and length, bypass ratio, mass, and thrust and specific fuel consumption (Figs. 6 and 7).

Fig. 6
figure 6

SVD-model for aero engines. Showing values for the Pratt & Whitney PW2040 for reference

Fig. 7
figure 7

Influence of the SVD parameters

Since the two first parameters are dominant a reduced model base on this is:

$$ \begin{array}{*{20}l} {{\text{Bpr}}{\mathbf{ = }}10^{{0.67 + 0.106s_{1} - 0.208s_{2} }} = 4.68 \times 10^{{s_{1} 0.106}} 10^{{s_{2} ( - 0.208)}} = 4.68 \times S_{1}^{0.106} S_{2}^{ - 0.208} } \hfill \\ {T = 87.1 \times 10^{{s_{1} 0.483}} 10^{{s_{2} 0.025}} = 87.1S_{1}^{0.483} S_{2}^{0.025} } \hfill \\ {{\text{Sfc}} = 0.457S_{1}^{ - 0.074} S_{2}^{0.101} } \hfill \\ {m = 1737S_{1}^{0.463} S_{2}^{0.042} } \hfill \\ {d = 1.77S_{1}^{0.213} S_{2}^{ - 0.042} } \hfill \\ {l = 1.41S_{1}^{0.158} S_{2}^{0.042} } \hfill \\ \end{array} $$
(16)

Here we have also introduced \( S_{i} = 10^{{s_{i} }} \). Varying s between −1 and 1 means that S would vary between 0.1 and 10, to stay within the standard deviation of the dataset. Note that setting both S to one means that the average engine is obtained.

The error when using just two parameters instead of the full set of six parameters is small, although for one or two characteristics that can be up to 30% for some of the engines. It can also be interpreted such that some engines are slightly outside the design space created. Even so, this must be considered a good fit since the engines are so diverse, and it gives an indication of what typical engine characteristics that are reasonable when different concepts are studied in early aircraft design, where typically only desired thrust is known and one more degree of freedom is useful to get the proper balance between weight (m), specific fuel consumption (SFC) and size (l, d).

This type of model can be used in e.g. conceptual design stage to quickly get estimates of component characteristics in a system. Models can be used for any kinds of components such as electric motors, hydraulic, pumps and motors etc. It is possible to use e.g. one more parameter to get an additional degree of freedom and optimize an engine also for e.g. low weight. This will produce a plausible engine that is likely to be produced with modern technology since some of the engines in the dataset are quite old and will bias the dataset towards to an engine of average age, and not the most modern one.

2 Conclusions

In this paper it has been shown how analytical parametrization of a design using sample designs to span the design space. The resulting parametrization will have a minimum of parameters, and still be able to reach the sample designs, and also to interpolate in between. In some sense it can be regarded as the ideal parameter set. However, these parameters are seldom intuitive except one that the first can be interpreted as a measure of size or scale. Therefore, other parameter sets are often formulated. These can, however, be compared to the analytical parameter set. Singular value decomposition of sets of products or components can also be used to create very simple fast models of components that can be used in initial stages of design to get quick estimates of component characteristics.