You are on page 1of 26

User’s Manual for

BECAS v2.0
(Executable version)
A cross section analysis tool for anisotropic and
inhomogeneous beam sections of arbitrary geometry
Jos´e Pedro Blasques
RISØ – National Laboratory for Sustainable Energy
Technical University of Denmark
Frederiksborgvej 399, P.O. Box 49, Building 114,
DK-4000 Roskilde, Denmark
jpbl@risoe.dtu.dk
January 4, 2012
1
Title of document:
User’s Manual for BECAS v2.0 (Executable version) - a cross section analysis
tool for anisotropic and inhomogeneous beam sections of arbitrary geometry
Author:
Jos´e Pedro Blasques
Address: RISØ – National Laboratory for Sustainable Energy
Technical University of Denmark
Frederiksborgvej 399, P.O. Box 49, Building 114,
DK-4000 Roskilde, Denmark
E-mail: jpbl@risoe.dtu.dk
Copyright and ownership:
All rights to this User’s Manual belong exclusively to RISØ-DTU. The User’s
Manual may only be used when the user has a valid license from RISØ-DTU
to use the BECAS software.
Disclaimer:
RISØ-DTU disclaims all responsibility for any kind of damage, including
loss of profit, loss of capital or any caused damage or loss, which might
appear by use or erroneous use of the BECAS software or Documentation,
even though RISØ-DTU should have been informed of the possibilities of
such damage.
2
Contents
1 Introduction 4
2 Why complicate? 4
3 A little note on the theory part 6
3.1 Assumptions . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.2 Cross section equilibrium equations . . . . . . . . . . . . . . . 7
3.3 Cross section stiffness matrix . . . . . . . . . . . . . . . . . . 7
3.4 Shear center and elastic center positions, and elastic axes . . 8
3.5 Cross section mass matrix . . . . . . . . . . . . . . . . . . . . 9
3.6 Definition of the material properties . . . . . . . . . . . . . . 10
3.7 Cross section finite element mesh . . . . . . . . . . . . . . . . 12
4 Practical use of BECAS (executable version) 12
4.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.2 Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.2.1 Example . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4.3 Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
5 User’s Manual for BECAS (open source version) 16
5.1 Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
5.1.1 Example . . . . . . . . . . . . . . . . . . . . . . . . . . 18
5.2 List of functions and output . . . . . . . . . . . . . . . . . . . 18
5.2.1 BECAS_Utils . . . . . . . . . . . . . . . . . . . . . . . 18
5.2.2 BECAS_Constitutive_Ks . . . . . . . . . . . . . . . . 18
5.2.3 BECAS_Constitutive_Ms . . . . . . . . . . . . . . . . 19
5.2.4 BECAS_CrossSectionProps . . . . . . . . . . . . . . . 19
5.2.5 BECAS_RecoverStrains . . . . . . . . . . . . . . . . . 20
5.2.6 BECAS_RecoverStresses . . . . . . . . . . . . . . . . 21
5.2.7 BECAS_Becas2Hawc2 . . . . . . . . . . . . . . . . . . . 21
5.2.8 BECAS_TransformMat . . . . . . . . . . . . . . . . . . 22
5.2.9 Examples . . . . . . . . . . . . . . . . . . . . . . . . . 22
5.3 The BECAS 3D implementation . . . . . . . . . . . . . . . . 22
5.3.1 Input . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5.3.2 List of functions and output . . . . . . . . . . . . . . . 23
5.3.3 BECAS_3D_Utils . . . . . . . . . . . . . . . . . . . . . 23
5.3.4 BECAS_3D_Constitutive_Ks . . . . . . . . . . . . . . 23
5.3.5 BECAS_3D_CrossSectionProps . . . . . . . . . . . . . 24
3
1 Introduction
The BEam Cross section Analysis Software – BECAS – is a set of MAT-
LAB functions developed at DTU-RISØ for the analysis of anisotropic and
inhomogeneous beam cross sections of arbitrary geometry (see Blasques [1]).
The BECAS source code and User’s Manual are freely available for academic
use from jpbl@mek.dtu.dk.
NOTE: This document is a (very) short version of the original
BECAS User’s Manual by Blasques [1] which includes a thorough
description of the theory, implementation, and validation of BE-
CAS. Only the use of BECAS in its executable version is discussed
here.
2 Why complicate?
Cross section analysis tools are commonly employed in the development
of beam models for the analysis of long slender structures. These type of
models can be very versatile when compared against its equivalent counter-
parts as they generally offer a very good compromise between accuracy and
computational efficiency. When suited, beam models can be advantageously
used in an optimal design context (see, e.g., Ganguli and Chopra [4], Li et al.
[5], Blasques and Stolpe [6]) or in the development of complex multiphysics
codes. Wind turbine aeroelastic codes, for example, commonly rely on these
types of models for the representation of most parts of the wind turbine,
from the tower to the blades (see, e.g., Hansen et al. [7], Chaviaropoulos
et al. [8]). In specific, the development of beam models which correctly de-
scribe the behaviour of the wind turbine blades have been the focus of many
investigations. The estimation of the properties of these types of structures
becomes more complex as the use of different combinations of advanced
materials becomes a standard (see Figure 1 for a schematic description on
the use of beam elements to analyze the response of wind turbine blades).
It is therefore paramount to develop cross section analysis tools which can
correctly account for all geometrical and material effects.
BECAS is a general purpose cross section analysis tool specifically de-
veloped for these types of applications. BECAS is able to handle a large
range of arbitrary section geometries and correctly predict the effects of in-
homogeneous material distribution and anisotropy. Based on a definition
of the cross section geometry and material distribution, BECAS is able to
determine the cross section stiffness properties while accounting for all the
geometrical and material induced couplings. These properties can be con-
sequently utilized in the development of beam models to accurately predict
4
the response of wind turbine blades with complex geometries and made of
advanced materials.
Figure 1: Schematic description illustrating the use of beam finite element
models to analyse the response of wind turbine blades.
BECAS is based on the theory originally presented by Giavotto et al. [9]
for the analysis of inhomogeneous anisotropic beams. The theory leads to
the definition of two types of solutions of which, and in accordance to Saint-
Venant’s principle, the non-decaying solutions are the basis for the evalu-
ation of the cross section stiffness properties. A slight modification to the
theory was introduced later by Borri and Merlini [10] where the concept of
intrinsic warping is introduced in the derivation of the cross section stiffness
matrix. Despite the modifications, no difference in the results was reported.
The theory was subsequently extended by Borri et al [11] to account for
large displacements, curvature and twist. Ghiringhelli and Mantegazza in
[12] presented an implementation of the theory for commercial finite element
codes. Finally Ghiringhelli in [13, 14] and Ghiringhelli et al. [15] presented
a formulation incorporating thermoelastic and piezo-electric effects, respec-
tively. The validation results presented throughout each of the previously
mentioned publications highlight the robustness of the method in the analy-
sis of the stiffness and strength properties of anisotropic and inhomogeneous
beam cross sections. According to Yu et al. [16] implementations of this
theory have been in fact used as a benchmark for the validation of any new
tool emerging since the early 1980’s (see, e.g., Yu et al. [16, 17] and Chen
et al. [18]).
Many other cross section analysis tools have been described in the liter-
ature. The reader is referred to Jung et al. [19] and Volovoi et al. [20] for
an assessment of different cross section analysis tools. Nonetheless, at this
stage the Variational Asymptotic Beam Section analysis commercial pack-
age VABS by Yu et al. [16] is perhaps the state of the art for these type of
tools. VABS has been extensively validated (see Yu et al. [16, 17], Chen et
al. [18]) and has therefore been used as the benchmark for the validation of
BECAS. It was shown then that the cross section properties estimated by
both tools are in very good agreement.
5
(a) Forces and moments (b) Strains and curvatures
Figure 2: Cross section coordinate system, forces and moments (a) and
corresponding strains and curvatures (b).
3 A little note on the theory part
This section presents a brief description of the theory underlying BECAS
and described in Blasques [1].
3.1 Assumptions
For a linear elastic beam there exists a linear relation between the cross
section generalized forces T and moments M in θ =
_
T
T
M
T
¸
T
(cf. Figure
2(a)), and the resulting strains τ and curvatures κ in ψ =
_
τ
T
κ
T
¸
T
(Figure
2(b)). This relation is given in its stiffness form as θ = Kψ, or








T
x
Ty
Tz
Mx
My
Mz








=








K
11 K12 K13 K14 K15 K16
K21 K22 K23 K24 K25 K26
K31 K32 K33 K34 K35 K36
K41 K42 K43 K44 K45 K46
K51 K52 K53 K54 K55 K56
K61 K62 K63 K64 K65 K66
















τ
x
τy
τz
κx
κy
κz








where K is the 6 × 6 cross section stiffness matrix. In the most general
case, considering material anisotropy and inhomogeneity, all the 21 stiffness
parameters in K may be required to describe the deformation of the beam
cross section. The transverse force components T = [T
x
T
y
T
z
]
T
represent
the shear in the x direction, the shear in the y, and the tension force in
the z direction, respectively. The components of the M = [M
x
M
y
M
z
]
T
represent the bending moment in around the x axis, the bending component
around the y axis, and the torsional moment around the z axis. The shear
component τ = [τ
x
τ
y
τ
z
]
T
is composed of the shear strains τ
x
and τ
y
, and
the tension strain τ
z
. The components of the vector of curvatures κ =

x
κ
y
κ
z
]
T
are the bending curvatures κ
x
and κ
y
, and the twist rate κ
z
.
6
3.2 Cross section equilibrium equations
The theory underlying BECAS assumes that the cross section deformation
is defined by a superimposition of the rigid body motions r (translations
and rotations) and warping deformations g. The first step in the deriva-
tion consists of establishing the cross section equilibrium equations. The
equations are derived in a finite element context. The cross section face
is discretized using two dimensional finite elements. The three-dimensional
warping deformations in g are approximated by the nodal deformations of
the finite element mesh u. Application of the principle of virtual work it is
possible to establish the finite element form of the cross section equilibrium
equations, defined as
_
E
∂u
∂z
+R
∂ψ
∂z
= 0
R
T ∂u
∂z
+A
∂ψ
∂z
=
∂θ
∂z
_
Eu +Rψ =
_
C−C
T
_
∂u
∂z
+L
∂ψ
∂z
R
T
u +Aψ = −L
T ∂u
∂z

(1)
where,
∂θ
∂z
= T
T
r
θ
The matrices E, A, R, L, C, and T
r
are defined in Blasques [1]. For a
given vector θ it is possible using the equations above (after application of
the correct contraints) to determine the cross section warping displacements
u and the cross section generalized strains ψ.
3.3 Cross section stiffness matrix
Consider the case where the set of equations (1) is solved for different right-
hand sides each corresponding to setting one of the entries of θ to unity and
the remaining to zero. This procedure is similar to the stiffness method in
the finite element method. It can be realized by replacing the cross section
load vector θ by the 6 × 6 identity matrix I
6
and solving the following set
of equations
_
EX+RY =
_
C−C
T
_
∂X
∂z
+L
∂Y
∂z
R
T
X+AY = −L
T ∂X
∂z
+I
6
_
E
∂X
∂z
+R
∂Y
∂z
= 0
R
T ∂X
∂z
+A
∂Y
∂z
= T
T
r
(2)
where the resulting solution matrices U, ∂U/∂z, Ψ and ∂Ψ/∂z have six
columns each corresponding to each of the six right-hand sides. Using the
7
solutions from the system of linear equations in (2) and based on the compli-
mentary form of the internal virtual energy of the cross section it is possible
to determine the cross section compliance matrix F defined as
F =
_
_
X
∂X
∂z
Y
_
_
T
_
_
E C R
C
T
M L
R
T
L
T
A
_
_
_
_
X
∂X
∂z
Y
_
_
(3)
where M is defined in Blasques [1]. The corresponding stiffness matrix K
can be computed as
K = F
−1
(4)
This result can be used to generate beam finite element models for which
the strains can be exactly described by the six strain parameters in ψ. The
material may be anisotropic, inhomogeneously distributed, and the reference
coordinate system may be arbitrarily located. The stiffness matrix K will
correctly account for any geometrical or material couplings.
3.4 Shear center and elastic center positions, and elastic axes
Having determined the cross section stiffness matrix it is possible to de-
termine the locations of the shear and elastic centers. The shear center
s
c
= (x
s
, y
s
) is defined as the point at which a load applied parallel to the
plane of the section will produce no torsion (i.e., κ
z
= 0). The shear center
is defined as
x
s
= −
F
62
+ F
64
(L −z)
F
66
y
s
=
F
61
+ F
65
(L −z)
F
66
where F
ij
is the entry ij of the compliance matrix F. From the previous
equation it can be seen that the shear center is not a property of the cross
section. Instead, in the case where the entries F
64
and F
65
associated with
the bending-twist coupling are not zero, the position of the shear center
varies linearly along the beam length .
The elastic center e
c
= (x
e
, y
e
) is defined as the point where a force
applied normal to the cross section will produce no bending curvatures (i.e.,
κ
x
= κ
y
= 0). The position of the elastic center is defined as
x
e
= −
−F
44
F
53
+ F
45
F
43
F
44
F
55
−F
2
45
y
e
= −
F
43
F
55
−F
45
F
53
F
44
F
55
−F
2
45
8
Often, the bending stiffnesses are measured along the elastic axis. such
that the coupling between the bending in x and y directions is uncoupled,
i.e., K
45
= K
54
= 0. In BECAS, the orientation of the elastic axis is
determined by solving the following eigenvalue problem
__
K
44
K
45
K
54
K
55
_
−λI
_
v = 0 (5)
The solution to the eigenvalue problem above yields the eigenvectors v
1
and
v
2
which indicate the orientation of the elastic axes. The angle α
ea
between
the reference coordinate system and the elastic axes is determined as
α
ea
= arctan
_
v
1,2
v
1,1
_
; (6)
where v
i,j
is the jth entry of the ith eigenvector.
3.5 Cross section mass matrix
The 6 × 6 cross section mass matrix M
s
relates the linear and angular
velocities in φ to the inertial linear and angular momentum in γ through
φ = M
s
γ. The cross section mass matrix is given with respect to the cross
section reference point as (cf. Hodges [3])
M
s
=
_
¸
¸
¸
¸
¸
¸
_
m 0 0 0 0 −my
m
0 m 0 0 0 mx
m
0 0 m my
m
−mx
m
0
0 0 my
m
I
xx
−I
xy
0
0 0 −mx
m
−I
xy
I
yy
0
−my
m
mx
m
0 0 0 I
xx
+ I
yy
_
¸
¸
¸
¸
¸
¸
_
(7)
where m is the mass per unit length of the cross section. The cross section
moments of inertia with respect to x and y are given by I
xx
and I
yy
, respec-
tively, while I
xy
is the cross section product of inertia. The term I
xx
+I
yy
is
the polar moment of inertia associated with the torsion of the cross section.
The mass and moments of inertia are obtained through integration of the
mass properties on the cross section finite element mesh and defined as
_
_
m 0 0
0 I
xx
Ixy
0 0 I
yy
_
_
=
_
A
_
_
1 0 0
0 y
2
xy
0 0 x
2
_
_
dA
The off-diagonal terms are associated with the offset between the mass center
position m
c
= (x
c
, y
c
) and the cross section reference point. The position of
9
the mass center m
c
is given as
x
c
=
_
ne

e=1
x
ce
v
e

e
_
/
_
ne

e=1
v
e

e
_
y
c
=
_
ne

e=1
y
ce
v
e

e
_
/
_
ne

e=1
v
e

e
_ (8)
where (x
ce
, y
ce
), v
e
and
e
are the coordinates of the centroid, the volume
and the density of element e, respectively, and n
e
is the number of elements
in the cross section mesh.
3.6 Definition of the material properties
At each element of the cross section finite element mesh, the user of BECAS
must specify
• Material properties
• Orientation of the laminate plane
• Orientation of the material coordinate system
Based on this input, the first step consists of assembling the material consti-
tutive matrix in the material coordinate system based on a set of material
properties. At this point BECAS accepts only orthotropic materials. In this
case the stress-strain relation or generalized Hookes’ Law is stated as
_
¸
¸
¸
¸
¸
¸
_
σ
22
σ
33
σ
23
σ
12
σ
13
σ
11
_
¸
¸
¸
¸
¸
¸
_
=
_
¸
¸
¸
¸
¸
¸
¸
_
1
E
22

ν
23
E
22
0 0 0 −
ν
21
E
11

ν
23
E
22
1
E
33
0 0 0 −
ν
31
E
11
0 0
1
G
23
0 0 0
0 0 0
1
G
12
0 0
0 0 0 0
1
G
13
0

ν
2z
E
11

ν
13
E
11
0 0 0
1
E
11
_
¸
¸
¸
¸
¸
¸
¸
_
−1
. ¸¸ .
Q
_
¸
¸
¸
¸
¸
¸
_
γ
22
γ
33
γ
23
γ
12
γ
13
γ
11
_
¸
¸
¸
¸
¸
¸
_
where the material properties are given in the material coordinate system
(see Figure 3c) and defined as
• E
11
the Young modulus of material the 1 direction.
• E
22
the Young modulus of material the 2 direction.
• E
33
the Young modulus of material the 3 direction.
• G
12
the shear modulus in the 12 plane.
• G
13
the shear modulus in the 13 plane.
10
(a) (b)
x'
y'
z'
1
2
3
β
(c)
Figure 3: Determination of the material constitutive matrix at each finite
element of the cross section mesh. (a) Definition of the cross section coor-
dinate system XY Z and element coordinate system xyz. (b) Convention
adopted for the rotation of the element coordinate system xyz into the fiber
plane coordinate system x

y

z

. (c) Convention adopted for the rotation of
the fiber plane coordinate system x

y

z

into the material coordinate system
123.
• G
23
the shear modulus in the 23 plane.
• ν
12
the Poisson’s ratio in the 12 plane.
• ν
13
the Poisson’s ratio in the 13 plane.
• ν
23
the Poisson’s ratio in the 23 plane.
• the material density.
Moreover, note that
ν
ij
E
ii
=
ν
ji
E
jj
where ν
ij
is the Poisson’s ration that characterizes the transverse strain in
the j-direction when the material is stressed in the i direction. The natural
strains
ij
are related to the engineering strains γ
ij
by
γ
22
=
22
, γ
33
=
33
, γ
11
=
11
,
γ
13
= 2
13
, γ
12
= 2
12
, γ
23
= 2
23
The next two steps concern the two rotations of the material constitutive
matrix necessary to determine the element material constitutive matrix in
the fiber coordinate system. The three element coordinate systems – element
coordinate system, fiber plane coordinate system, and material coordinate
system – and respective conventions for each of the rotations are defined
in Figure 3. The material constitutive matrix is rotated first into the fiber
plane coordinate system and subsequently into the fiber coordinate system.
11
3.7 Cross section finite element mesh
In BECAS both four and eight node elements can be used in the cross section
finite element mesh. The four node element uses linear interpolation while
the eight node uses quadratic interpolation. Note that the although these
are similar to the typical two-dimensional elements, in this case there are
three degrees of freedoms per node corresponding to the displacements in
the three directions x, y, and z. The node ordering and position of the Gauss
points for both elements are presented in Figure 4. The triangular forms of
these elements can be obtained by simply defining coinciding nodes.
i
j
k
l
ξ
η
ζ
Four node element
i
j
k
l
ξ
η
ζ
Eight node element
m
n
o
p
Figure 4: Node numbering convention and position of Gauss points for the
four and eight node finite elements which may be used in the cross section
finite element mesh.
4 Practical use of BECAS (executable version)
The practical use of BECAS (executable version) is discussed in this section.
BECAS (executable version) is limited version of the original software. The
time limit is typically one month for trial purposes and the limit number of
nodes is 2000. This limitations are obviously non-existent once the source
code is acquired.
4.1 Installation
BECAS is distributed as a self-extracting package which includes the MAT-
LAB Compiler Runtime (MCR) and the BECAS executable. The MCR
must be installed in order for BECAS to work (this is independent of the
user having a valid MATLAB installation or not). In order to install the
MCR and have access to the BECAS executable, place the executable pack-
age in the directory where you want to run BECAS, double click on the ex-
ecutable package and the installation will commence automatically. Follow
the instructions on the screen. After a successful installation the BECAS.exe
12
file will be available. In order to run BECAS, place the input files in the
folder where the executable is and double click on the BECAS.exe file.
Note that different versions of the executable package may be required
depending on the Windows version. Please contact us in case of problems.
Furthermore, the executable version of BECAS may be slower than its orig-
inal version. Finally, acquiring the source will allow the user to use faster
solvers in the solution of the cross section equilibrium equations. The solu-
tion time has been decreased ten fold using dedicated solvers which cannot
be included in the executable version.
4.2 Input
In order to run BECAS the following input files must be placed in the same
directory as the BECAS executable:
• N2D.in - (n
n
×3) file storing an array with the list of nodal positions
where each row is in the form (node number, x coordinate, y coordi-
nate), where n
n
is the total number of nodes. The node numbering
need not be in any specific order.
• E2D.in - (n
e
× 8) file storing an array with the element connectivity
table where each row is in the form (element number, node 1, node
2, node 3, node 4, node 5, node 6, node 7, node 8), where n
e
is the
total number of elements. The element numbering need not be in any
specific order. The value of node 5 through node 8 has to be zero for
Quad4 element to be used. Otherwise, Quad8 is automatically chosen.
• EMAT.in - (n
e
×4) file storing an array with element material properties
assignment where each row is in the form (element number, material
number, fiber angle, fiber plane angle), where n
e
is the total number
of elements. The element numbering need not be in any specific order.
The material number corresponds to the materials assigned in the
MATPROPS.in file. The rotation of the material constitutive matrix
with respect to the fiber angle and fiber plane angle is described in
Section 3.6.
• MATPROPS.in - (nmat × 10) file storing an array with the material
properties where each row is in the form (E
11
, E
22
, E
33
, G
12
, G
13
,
G
23
, ν
12
, ν
13
, ν
23
, ), where nmat is the total number of different
materials considered. The material mechanical properties given with
respect to the material coordinate system are defined as
– E
11
the Young modulus in the 1 direction.
– E
22
the Young modulus in the 2 direction.
– E
33
the Young modulus in the 3 direction.
13
– G
12
the shear modulus in the 12 plane.
– G
13
the shear modulus in the 13 plane.
– G
23
the shear modulus in the 23 plane.
– ν
12
the Poisson’s ratio in the 12 plane.
– ν
13
the Poisson’s ratio in the 13 plane.
– ν
23
the Poisson’s ratio in the 23 plane.
– the material density.
4.2.1 Example
Example files are distributed together with BECAS. These files can be used
as a starting point for the development of new input for BECAS. The user
can open the different folders and copy the input files into the directory
where the BECAS executable is.
4.3 Output
The following output files are generated and stored in the working directory
if BECAS is ran with success is returned by BECAS (executable version):
• BECAS_2D.out - All of BECAS results are printed to this file. The
results include:
– Cross section stiffness matrix with respect to the cross section
reference point;
– Cross section compliance matrix with respect to the cross section
reference point;
– Cross section mass matrix with respect to the cross section ref-
erence point;
– Shear center position;
– Elastic center position;
– Mass center position;
– Mass per unit length;
– Orientation of principle axis w.r.t. reference center;
– Orientation of principle axis w.r.t. elastic center;
– Stiffness matrix with respect to shear center;
– Stiffness matrix with respect to the elastic center;
– Stiffness matrix rotated along principle axis;
– Stiffness matrix at the elastic center rotated along principle axis;
– Mass matrix with respect to mass center;
14
• BECAS2HAWC2.out - The results from BECAS are written in the
HAWC2 format in this file. The reader is referred to the HAWC2
Manual (Larsen [2])for information on each of the entries in this file.
Note that the cross section reference point must be coincident
with the mid-chord location in order to generate the correct
input for HAWC2.
• BECAS_FIG*.fig - After each run BECAS presents and saves six
figures. The first five figures are useful for debugging purposes while
the last allows for the visualization of some of the results. The six
figures are:
– BECAS_FIG_Fiber_orientation - Figure presenting the fiber
orientations. A vertical line indicates the 0

orientation, or along
the length of the beam.
– BECAS_FIG_Fiber_plane_orientation - Figure presenting the
fiber plane orientations. The fiber plane at each element is par-
allel to the line presented at each element in this figure.
– BECAS_FIG_Element_numbers - Figure presenting the number
of each element.
– BECAS_FIG_Material_numbers - Figure presenting the mate-
rial number at each element.
– BECAS_FIG_Fibers_in_3D Figure presenting the three dimen-
sional orientation of the fibers. The user should use the 3D ro-
tation capabilities in the MATLAB figure to fully visualize the
orientation of the fibers at each element.
– BECAS_FIG_Cross_section_centers - Figure presenting the
position of the reference point, shear center, mass center, elastic
center, and orientation of the elastic axes.
15
5 User’s Manual for BECAS (open source version)
The usage of BECAS in open source format is described in this chapter. The
aim is to go through the functionalities of BECAS and discuss its practical
usage within a structural analysis environment. BECAS is implemented as a
Matlab toolbox.
The following functions are currently available
• BECAS_Utils - Build arrays for BECAS calculations.
• BECAS_Constitutive_Ks - Calculation of the cross section stiffness
matrix;
• BECAS_Constitutive_Ms - Calculation of the cross section mass ma-
trix;
• BECAS_CrossSectionProps - Calculation of the cross section proper-
ties;
• BECAS_RecoverStrains - Calculation of the three-dimensional strains
at each point in the cross section;
• BECAS_RecoverStresses - Calculation of the three-dimensional stresses
at each point in the cross section;
• BECAS_TransformationMat - Rotate and translate the cross section
constitutive matrices;
• BECAS_Becas2Hawc2 - Generate output for latest version of Hawc2.
• BECAS_3D_Utils - Build working arrays for BECAS calculations.
• BECAS_3D_Constitutive_Ks - Calculation of the cross section stiffness
matrix based on solid finite element models of the cross section;
• BECAS_3D_CrossSectionProps - Calculation of the cross section prop-
erties;
The version of BECAS based on two-dimensional finite element discretizations
of the cross section is presented first.
Note that the BECAS toolbox also includes a number of functions for
visualization of the input and output. The description of this functions has
been omitted as it falls beyond the scope of this manual.
Part of the MATLAB code in BECAS is generated through MAPLE. There
are four MAPLE files which follow together with the BECAS code:
• GenerateMatricesBECAS.mw used to generate all the element stiffness
matrices which are included in the MATLAB function Quad4 used
within the function BECAS_Constitutive_Ks.
16
• LayerRotationBECAS.mw used to generate the code for the function
which rotates the material constitutive matrix Q in the MATLAB
function BECAS_Utils when orienting the fibers in a layer.
• FiberPlaneRotationBECAS.mw used to generate the code for the func-
tion which rotates the material constitutive matrix Q when orienting
the fiber plane in an element in the MATLAB function BECAS_Utils.
5.1 Input
In order to run BECAS the following input is necessary:
• nl_2d - (n
n
×3) array with the list of nodal positions where each row
is in the form (node number, x coordinate, y coordinate), where n
n
is
the total number of nodes. The node numbering need not be in any
specific order.
• el_2d - (n
e
×8) array with the element connectivity table where each
row is in the form (element number, node 1, node 2, node 3, node
4, node 5, node 6, node 7, node 8), where n
e
is the total number of
elements. The element numbering need not be in any specific order.
The value of node 5 through node 8 has to be zero for Quad4 element
to be used. Otherwise, Quad8 is automatically chosen.
• emat - (n
e
× 4) array with element material properties assignment
where each row is in the form (element number, material number, fiber
angle, fiber plane angle), where n
e
is the total number of elements. The
element numbering need not be in any specific order. The material
number corresponds to the materials assigned in the matprops array.
• matprops - (nmat ×10) array with the material properties where each
row is in the form (E
11
, E
22
, E
33
, G
12
, G
13
, G
23
, ν
12
, ν
13
, ν
23
, ),
where nmat is the total number of different materials considered. The
material mechanical properties given with respect to the material co-
ordinate system have been are defined as
– E
11
the Young modulus of material the 1 direction.
– E
22
the Young modulus of material the 2 direction.
– E
33
the Young modulus of material the 3 direction.
– G
12
the shear modulus in the 12 plane.
– G
13
the shear modulus in the 13 plane.
– G
23
the shear modulus in the 23 plane.
– ν
12
the Poisson’s ratio in the 12 plane.
– ν
13
the Poisson’s ratio in the 13 plane.
17
– ν
23
the Poisson’s ratio in the 23 plane.
– the material density.
The rotation of the material constitutive tensor is described in Section
3.6.
5.1.1 Example
All the files necessary to run all the validation examples presented in Blasques
[1] are distributed together with BECAS. These files can be used as a starting
point for the development of new input for BECAS.
5.2 List of functions and output
The different functions included in the BECAS library and corresponding
output are described in this chapter.
5.2.1 BECAS_Utils
The function BECAS_Utils is used to build working arrays. It is included
inside all the other functions in the 2D version of BECAS. It is called using
[utils]=BECAS_Utils(nl_2d,el_2d,emat,matprops)
5.2.2 BECAS_Constitutive_Ks
The function BECAS_Constitutive_Ks is the BECAS central function and is
used primarily for the evaluation of the cross section stiffness matrix K
s
.
The function is called using
[Ks,dX,dY,X,Y]=BECAS_Constitutive_Ks(nl_2d,el_2d,emat,matprops);
The output is
• Ks - (6 ×6) array storing the cross section stiffness matrix K
s
.
• dX - (n
d
×6) array
∂X
∂z
.
• dY - (6 ×6) array
∂Y
∂z
.
• X - (n
d
×6) array X.
• Y - (6 ×6) array Y.
where n
d
= n
n
×3 is the number of degrees of freedom in cross section finite
element equations.
18
5.2.3 BECAS_Constitutive_Ms
The function BECAS_Constitutive_Ms is used for the evaluation of the cross
section mass matrix M
s
. It is called as
[Ms]=BECAS_Constitutive_Ms(nl_2d,el_2d,emat,matprops);
The output is
• Ms - (6 ×6) array storing the cross section mass matrix M
s
.
5.2.4 BECAS_CrossSectionProps
The function BECAS_CrossSectionProps is used to determine a series of
relevant cross section properties. It presumes that the cross section stiffness
K
s
has been previously determined. The function is called using
[ ShearX,ShearY,ElasticX,ElasticY,...
MassX,MassY,MassPerUnitLength,...
AlphaPrincipleAxis,AlphaPrincipleAxis_ElasticCenter,...
AreaX,AreaY,AreaTotal,...
Ixx,Iyy,Ixy,Axx,Ayy,Axy]=...
BECAS_CrossSectionProps(Ks,nl_2d,el_2d,emat,matprops);
The output is
• ShearX - the x
s
position of the cross section shear center.
• ShearY - the y
s
position of the cross section shear center.
• ElasticX - the x
t
position of the cross section elastic center.
• ElasticY - the y
t
position of the cross section elastic center.
• MassX - the x
m
position of the cross section mass center.
• MassY - the y
m
position of the cross section mass center.
• MassPerUnitLength - the cross section mass per unit length.
• AlphaPrincipleAxis - the orientation of the cross section elastic axis
determined at the reference point (in radians).
• AlphaPrincipleAxis_ElasticCenter - the orientation of the cross
section elastic center determined at the elastic center (in radians).
• AreaX - the x coordinate of the area centroid.
• AreaY - the y coordinate of the area centroid.
• AreaTotal - total cross section area.
19
• Ixx - the mass moment of inertia with respect to the x axis.
• Iyy - the mass moment of inertia with respect to the y axis.
• Ixy - the mass product of inertia.
• Axx - the area moment of inertia with respect to the x axis.
• Ayy - the area moment of inertia with respect to the y axis.
• Axy - the area product of inertia.
5.2.5 BECAS_RecoverStrains
The function BECAS_RecoverStresses is used to determine the three-dimensional
strains components at the center of each element and at each Gauss point
in the cross section finite element mesh. The function is meant to be used
after the one-dimensional beam finite element solution has been determined.
The resulting strain values are given in the global coordinate systems. The
function is called as
[ElementStrain_GlobalCS,NodalStrain_GlobalCS]=...
BECAS_RecoverStrains(theta0,dX,dY,X,Y,nl_2d,el_2d,emat,matprops);
Part of the input is coming from the BECAS_Constitutive_Ks function. The
extra input consists of
• theta0 - (1 ×6) array holding the cross section generalized forces and
moments (i.e., the variable θ =
_
T
T
M
T
¸
T
. The magnitude of the
entries are generally determined based on the one-dimensional beam
finite element solution.
The output is
• ElementStrain_GlobalCS - (6×n
e
) array holding the three-dimensional
strain components evaluated at the center of each of the elements in
the cross section finite element mesh.
• NodalStrain_GlobalCS - ((6 × n
gp
) × n
e
) array holding the three-
dimensional strain components evaluated at the each of the Gauss
points (n
gp
Gauss points at each element) in the cross section finite
element mesh.
Note: function is not yet validated.
20
5.2.6 BECAS_RecoverStresses
The function BECAS_RecoverStress is used to determine the three-dimensional
stress components at each element or at each Gauss point in the cross sec-
tion finite element mesh. The function is meant to be used after the one-
dimensional beam finite element solution has been determined. The stresses
are evaluated based on the strains determined using the BECAS_RecoverStrains.
The resulting stress values are given in both the global and material coor-
dinate systems. The function is called as
[ElementStress_GlobalCS,ElementStress_MaterialCS,...
NodalStress_GlobalCS,NodalStress_MaterialCS] = ...
BECAS_RecoverStress(ElementStrain_GlobalCS,...
NodalStrain_GlobalCS,nl_2d,el_2d,emat,matprops);
The output is
• ElementStress_GlobalCS - (6×n
e
) array holding the three-dimensional
stress components in the global coordinate system evaluated at the
center of each of the elements in the cross section finite element mesh.
• ElementStress_MaterialCS - (6×n
e
) array holding the three-dimensional
stress components in the local coordinate system evaluated at the cen-
ter of each of the elements in the cross section finite element mesh.
• NodalStress_GlobalCS - ((6 × n
gp
) × n
e
) array holding the three-
dimensional strain components in the global coordinate system eval-
uated at the each of the Gauss points (where n
gp
are the number of
Gauss points at each element) in the cross section finite element mesh.
• NodalStress_MaterialCS - ((6 ×n
gp
) ×n
e
) array holding the three-
dimensional strain components in the material coordinate system eval-
uated at the each of the Gauss points (where n
gp
are the number of
Gauss points at each element) in the cross section finite element mesh..
Note: function is not yet validated.
5.2.7 BECAS_Becas2Hawc2
The function BECAS_Becas2Hawc2 is used to generate input for RISØ’s
HAWC2 code for the aeroelastic analysis of wind turbines. It is presumed
that the functions BECAS_Constitutive_Ks, BECAS_Constitutive_Ms, and
BECAS_CrossSectionProps have been previously called. Extra input is re-
quired for this function, namely, the following have to be defined:
• RadialPosition - coordinate of the section along the span of the
blade.
21
• OutputFilename - name of file to which the output is written (e.g.,
OutputFilename = ’BECAS2HAWC2.out’ ).
The function is called as
BECAS_Becas2Hawc2(OutputFilename,RadialPosition,...
Ks,Ms,...
ShearX,ShearY,...
ElasticX,ElasticY,...
MassX,MassY,...
AlphaPrincipleAxis_ElasticCenter,...
AreaX,AreaY,AreaTotal,...
Axx,Ayy,Axy,...
nl_2d,el_2d,emat,matprops)
5.2.8 BECAS_TransformMat
The function BECAS_TransformMat is used to determine the translated and
rotated values of the cross section constitutive stiffness or mass matrices.
The function requires extra input, namely:
• p - column array specifying the coordinates of the new reference point
(e.g., p = [ShearX ShearY] to translate the matrix to the shear cen-
ter).
• alpha - angle of rotation around the z axis, in degrees, defined positive
in the counter-clockwise direction (e.g., alpha=AlphaPrincipleAxis
to align with the elastic axis).
The function is called as
[M]=BECAS_TransformationMat(M,p,alpha);
5.2.9 Examples
All the files required for the replication of the validation examples are dis-
tributed together with BECAS. The user should specify the name of the cor-
responding folder in the file Inputdata4RunMe.m. The file RunMe.m which
calls BECAS should then be ran to obtain the results.
5.3 The BECAS 3D implementation
An alternative implementation of BECAS using solid finite elements is de-
scribed here. The main advantage of this approach concerns the possibility
of using layered solid finite elements. All BECAS functions associated with
this implementation start by BECAS_3D.
22
5.3.1 Input
The input to the BECAS_3D group of functions is
• k3d - n
d
×3 array with the sparse form of stiffness matrix of the cross
section slice meshed with solid finite elements, where n
d
is the number
of degrees of freedom in the solid finite element model. Each row in the
k3d array is in the form (row number, column number, value), where
row and column number correspond to the row and column positions
in the global stiffness matrix.
• nl_3d - n
n,3d
×3 array with the list of nodal positions where each row
is in the form (node number, x coordinate, y coordinate, z coordinate),
where n
n,3d
is the total number of nodes in the solid finite element
model. The node numbering needs to be in the same order as it is
listed in the k3d matrix.
5.3.2 List of functions and output
The following functions are part of the BECAS_3D group of functions.
5.3.3 BECAS_3D_Utils
The function BECAS_3D_Utils is used to build working arrays. It is included
inside all the other functions in the 3D version of BECAS. It is called using
[utils] = BECAS_3D_Utils(k3d,n3d);
5.3.4 BECAS_3D_Constitutive_Ks
This is the main function of the BECAS_3d and is used to determine the cross
section stiffness matrix K
s
. It is called using
[Ks,dX,dY,X,Y]=BECAS_3D_Constitutive_Ks(k3d,n3d);d
The output is
• Ks - (6 ×6) array storing the cross section stiffness matrix K
s
.
• dX - (n
d
×6) array
∂X
∂z
.
• dY - (6 ×6) array
∂Y
∂z
.
• X - (n
d
×6) array X.
• Y - (6 ×6) array Y.
where n
d
= n
n
×3 is the number of degrees of freedom in cross section finite
element equations.
23
5.3.5 BECAS_3D_CrossSectionProps
The function BECAS_3D_CrossSectionProps returns some relevant cross
section properties. It presumes that the cross section stiffness matrix K
s
has been previously determined. The function is called through
[ShearX,ShearY,ElasticX,ElasticY,AlphaPrincipleAxis]=...
BECAS_3D_CrossSectionProps(Ks);
The output is
• ShearX - the x
s
position of the cross section shear center.
• ShearY - the y
s
position of the cross section shear center.
• ElasticX - the x
t
position of the cross section elastic center.
• ElasticY - the y
t
position of the cross section elastic center.
• MassX - the x
m
position of the cross section mass center.
• MassY - the y
m
position of the cross section mass center.
• MassPerUnitLength - the cross section mass per unit length.
• AlphaPrincipleAxis - the orientation of the cross section elastic
24
References
[1] Blasques J. P., User’s Manual for BECAS v2.0 - A cross section anal-
ysis tool for anisotropic and inhomogeneous beam sections of aribtrary
geometry, DTU-RISØTechnical Report RISØ-R 1785, 2011
[2] Larsen T. J., How 2 HAWC2, the user’s manual, DTU-RISØTechnical
Report RISØ-R 1785 (v3-9), 2009
[3] Hodges D., Nonlinear Composite Beam Theory, Progress in Astronau-
tics and Aeronautics Series, 213, AIAA, 2006.
[4] Ganguli R., Chopra I., Aeroelastic optimization of a helicopter rotor
with composite coupling, Journal of Aircraft, 32(6), 1326-1334, 1995
[5] Li L., Volovoi V. V., Hodges D. H., Cross-sectional design of composite
rotor blades, Journal of the American Helicopter Society, 53(3), 240-
251, 2008
[6] Blasques J. P., Stolpe M., Maximum stiffness and minimum weight op-
timization of laminated composite beams using continuous fiber angles,
Structural and Multidisciplinary Optimization, DOI: 10.1007/s00158-
010-0592-9, 2010
[7] Hansen M. O. L., Sørensen J. N., Voutsinas S., Sørensen N., Madsen
H. A., State of the art in wind turbine aerodynamics and aeroelasticity,
Progress in Aerospace Sciences, (42), 285-330, 2006
[8] Chaviaropoulos, P.K., et al., Enhancing the damping of wind turbine
rotor blades - the DAMPBLADE project, Wind Energy, 9, 163-177,
2006.
[9] Giavotto V., Borri M., Mantegazza P., Ghiringhelli G., Carmaschi V.,
Maffiolu G.C., Mussi F., Anisotropic beam theory and applications,
Composite Structures, (16)1-4, 403-413, 1983
[10] Borri M., Merlini T., A large displacement formulation for anisotropic
beam analysis, Meccanica, (21), 30-37, 1986
[11] Borri M., Ghiringhelli G. L., Merlini T., Linear analysis of naturally
curved and twisted anisotropic beams, Composites Engineering, (2)5-7,
433-456, 1992
[12] Ghiringhelli G. L., Mantegazza P., Linear, straight and untwisted
anisotropic beam section properties from solid finite elements, (4)12,
1225-1239, 1994
25
[13] Ghiringhelli G. L., On the thermal problem for composite beams using a
finite element semi-discretization, Composites Part B, (28B), 483-495,
1997
[14] Ghiringhelli G. L., On the linear three dimensional behaviour of com-
posite beams, Composites Part B, (28B), 613-626, 1997
[15] Ghiringhelli G. L., Masarati P., Mantegazza P.,Characterisation of
Anisotropic, Non-Homogeneous Beam Sections with Embedded Piezo-
Electric Materials, Journal of Intelligent Material Systems and Struc-
tures, (8)10, 842-858, 1997
[16] Yu W., Hodges D. H., Volovoi V., Cesnik C. E. S., On Timoshenko-like
modelling of initially curved and twisted composite beams, International
Journal of Solids and Structures, (39), 5101-5121, 2002
[17] Yu W., Volovoi, V. V., Hodges D. H., Hong X., Validation of the Vari-
ational Asymptotic Beam Sectional Analysis (VABS), AIAA Journal,
(40)10, 2105-2113, 2002
[18] Chen H., Yu W., Capellaro M., A critical assessment of computer tools
for calculating composite wind turbine blade properties, Wind Energy,
(13)6, 497-516, 2010
[19] Jung S. N., Nagaraj V. T., Chopra I., Assessment of composite rotor
blade modeling techniques, Journal of the American Helicopter Society,
(44)3, 188-205, 1999
[20] Volovoi V. V., Hodges D. H., Cesnik C. E. S., Popescu B., Assessment
of beam modeling methods for rotor blade applications, Mathematical
and Computer Modeling, (33), 1099-1112, 2001
26