Chang 2016

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

Engineering Computations

A Fortran implementation of isogeometric analysis for thin plate problems with the penalty method
Feng Chang Weiqiang Wang Wang Yan Liu Yanpeng Qu
Article information:
To cite this document:
Feng Chang Weiqiang Wang Wang Yan Liu Yanpeng Qu , (2016),"A Fortran implementation of isogeometric analysis for thin
plate problems with the penalty method", Engineering Computations, Vol. 33 Iss 7 pp. -
Permanent link to this document:
http://dx.doi.org/10.1108/EC-10-2015-0306
Downloaded on: 10 September 2016, At: 08:15 (PT)
References: this document contains references to 0 other documents.
To copy this document: permissions@emeraldinsight.com
The fulltext of this document has been downloaded 5 times since 2016*

Access to this document was granted through an Emerald subscription provided by emerald-srm:333301 []
Downloaded by Cornell University Library At 08:15 10 September 2016 (PT)

For Authors
If you would like to write for this, or any other Emerald publication, then please use our Emerald for Authors service
information about how to choose which publication to write for and submission guidelines are available for all. Please
visit www.emeraldinsight.com/authors for more information.
About Emerald www.emeraldinsight.com
Emerald is a global publisher linking research and practice to the benefit of society. The company manages a portfolio of
more than 290 journals and over 2,350 books and book series volumes, as well as providing an extensive range of online
products and additional customer resources and services.
Emerald is both COUNTER 4 and TRANSFER compliant. The organization is a partner of the Committee on Publication
Ethics (COPE) and also works with Portico and the LOCKSS initiative for digital archive preservation.

*Related content and download information correct at time of download.


A Fortran Implementation of Isogeometric Analysis for
Thin Plate Problems with the Penalty Method
1. Introduction

Isogeometric analysis (IGA) was first proposed by Hughes et al. [1] with the goal of integrating design into analysis. The root
idea is that the same shape functions used for exact geometric representation are directly used as basis functions for the analysis,
which produces accurate results. Also, it eliminates the time-consuming conversion between the computer aided design (CAD)
model and analysis model in FEA. NURBS are chosen as shape functions due to their universality, flexibility, and precision. The
mesh generation and refinement processes make the whole analysis cost-saving.
The problems of plates are very common in engineering practice. The previous methods including the FEA [2, 3], and the
meshfree method [4, 5] are effective to handle the issue. Since the concept of IGA was proposed, it has been fast applied to the field
of plates. Yu et al. combined IGA and a simple first-order shear deformation plate theory to solve geometrically nonlinear analysis
Downloaded by Cornell University Library At 08:15 10 September 2016 (PT)

of homogeneous and non-homogeneous functionally graded plates [6], and investigated new numerical results of thermal buckling
for functionally graded plates with internal defects using level sets [7]. Yin et al. developed a new simple and effective IGA for
modeling buckling and free vibration problems of thin laminated composite plates with cutouts [8], and proposed an effective,
simple, robust and locking-free plate formulation to analyze the static bending, buckling, and free vibration of homogeneous and
functionally graded plates [9]. Bhardwaj et al. [10] used extended IGA to simulate the cracked functionally graded material plates
using first order shear deformation theory under different types of loading and boundary conditions. Shojaee et al. [11] developed
IGA for natural frequencies and buckling analysis of thin symmetrically laminated composite plates basing on the classical plate
theory. Valizadeh et al. studied the buckling, free and forced vibration analysis of orthotropic plates [12] and the static and dynamic
characteristics of functionally graded material plates [13] with IGA. An accurate extended 3-node triangular plate element in the
context of the extended IGA is developed to obtain new numerical results in buckling failure analysis of cracked composite
functionally graded plates subjected to uniaxial and biaxial compression loads [14]. More research has been done for plates with
IGA [15-18].
Along with the wide application of IGA in various engineering problems [19-24], the relevant implementations of IGA have been
introduced. Cottrell et al. [25] wrote a book to elaborate on what IGA is and offered the key pseudo-code of IGA. Nguyen et al. [26]
presented an introduction to the open source Matlab code of IGA applied to engineering analysis. GeoPDEs, a suite of free and open
software tools is flexible in order to allow users to implement new and more general methods with a relatively small effort [27].
Rypl et al. [28] showed how the IGA concept may be implemented into an existing object oriented finite element environment.
Some implementations depend on existing mature software, e.g., LS- DYNA [29], Rhino [30-32]. A framework based on PETSc for
high performance IGA was presented [33, 34]. T. Elguedj et al. provided a free software package named Abqnurbs for usage and
development in Abaqus [35].
Generally, NURBS basis functions are non-interpolated, i.e., they do not satisfy the Kronecker-Delta property. Special
treatments of essential boundary conditions are needed to be employed. Many methods for IGA boundary problems have been
studied [36-44]. The penalty method is used as an efficient way to resolve IGA boundary problems. However, the influence of
penalty coefficients on the results is ambiguous and therefore, it is difficult to choose the appropriate ones.
In this paper, we used the Kirchhoff-Love theory for thin plate problems. The at least C1-inter-element continuity was easily
obtained by the high order construction of NURBS basis functions. For the large sparse stiffness matrix, the existing solvers in IGA
may be time-consuming which is an obstacle of the development of IGA for more complex problems. An effective solver was used
to implement IGA with Fortran in this study. It was demonstrated that the implementation had satisfactory performance in accuracy,
robustness, and especially, efficiency by several plate problems. Due to the wide use of Fortran in some mature software of FEA, e.g.
ANSYS, the implementation is hopeful to integrate IGA to the finite element environment. In the aspect of boundary condition
treatments, the penalty method was used and a reasonable suggestion of the selection of penalty coefficients was given.
The rest of the paper is arranged as follows. First a brief review of NURBS basis functions is introduced in Section 2. The
isogeometric formulation of the thin plate based on Kirchhoff-Love theory is derived in Section 3. In Section 4, the modularization
design and a solver for solving large sparse linear systems are given. Section 5 presents some numerical examples of thin plates with
various geometries under different boundary conditions to verify the Fortran implementation. Finally, we draw our conclusions.

2. B-splines, NURBS and NURBS based IGA

In this section, B-splines and NURBS are briefly reviewed. For more details, refer to [25, 45].
Consider a set of non-decreasing sequence of real numbers: Ξ = {ξ1 , ξ2 ,..., ξn + p +1} , i.e., ξi≤ξi+1,i=1,…,n+p, where p is the
polynomial degree and n is the number of basis functions. With the given knot vector Ξ, the ith univariate B-spline basis function
denoted by Ni (ξ ) can be constructed by the following recursive formula:
p

1 ifξ i ≤ ξ ≤ ξ i +1
N i0 (ξ ) = 
0 otherwise
(1)
ξ − ξi ξi + p +1 − ξ
N ip ( ξ ) = N ip −1 (ξ ) + N ip+−11 (ξ )
ξi + p − ξ i ξ i + p +1 − ξ i +1

Let Ξ={0,0,0,0.25,0.25,0.5,0.75,1,1,1} and p=2, the nonzero second degree basis functions are shown in Figure 1.
Downloaded by Cornell University Library At 08:15 10 September 2016 (PT)

Figure 1 The nonzero second-degree basis functions, Ξ = {0, 0, 0,0.25,0.25,0.5,0.75,1,11


, }.

A pth-degree B-spline curve is defined by

n
C(ξ ) = ∑ Nip (ξ )Pi (2)
i =1

where the {Pi} are the control points.


A NURBS surface of degree p in the ξ direction and degree q in the η direction is a bivariate vector-valued piecewise rational
function of the form

n m
S(ξ ,η ) = ∑∑ Rijpq (ξ ,η )Pij (3)
i =1 j =1

with the NURBS basis function

N ip (ξ ) N qj (η )ωij
Rijpq (ξ ,η ) = n m
(4)
∑∑ N iˆ
p
(ξ ) N ˆqj (η )ωijˆˆ
iˆ =1 ˆj =1

where {ωi} are the weights.


Similar to the isoparametric FEA, the physical coordinate variable x and the approximate field variable uh(x) in IGA are
represented as

 n

 x = ∑ Ri (ξ ) Pi
 i =1
 n
(5)
u ( x ) = R (ξ )u

h
∑i =1
i i

where x=(x, y) and ξ=(ξ, η).

3. Isogeometric formulation of the Kirchhoff-Love plate theory

Based on the Kirchhoff-Love plate hypothesis, the displacements of an arbitrary point in a plate can be written as
 ∂w 
− z 
∂x 
u  
 ∂w
u =  v  =  − z  (6)
∂y 
 w 
 
 w 
 

where w is the deflection of the plate.


Then the strain field can be given by

 ∂u   ∂2w 
   − 2 
 ∂x   ∂x 
 ∂v   ∂2w 
ε =  = z  − 2  = zχ (7)
 ∂y   ∂y 
Downloaded by Cornell University Library At 08:15 10 September 2016 (PT)

 ∂u ∂v   ∂2w 
 +   −2 
 ∂y ∂x   ∂x∂y 

Under a plane stress condition, the physics equation of stress-strain relation written in matrix notation is
CCCC

σ = ε (8)

where the constitutive matrix C is

1 ν 0 
E  
C= ν 1 0 (9)
1 −ν 2  
 0 0 0.5(1 −ν ) 

E is Young’s modulus and ν is the Poisson ratio. The bending moments can be calculated by
C

C
d

h/ 2 h/ 2 h3
Μ = ∫ σz z = ∫ εz z = χ (10)
−h / 2 −h / 2 12

h is thickness of the plate. The static discrete equation is as follows

Ku=f (11)

The force matrix is defined as

f = ∫ RT qdΩ + ∫ RT tdΓ N (12)


Ω ΓN

where q is uniform load and t is the forces on the natural boundary. The element stiffness matrix is defined as

K e = ∫ BTe DBe dΩ (13)


Ωe

where the constitutive matrix D is

1 ν 0 
Eh3  
D= ν 1 0 (14)
12(1 − ν 2 )  
0 0 0.5(1 − ν ) 

and the strain-displacement matrix is given by


 R1, xx R2, xx ... Rn , xx 
 
B e =  R1, yy R2, yy ... Rn , yy  (15)
 2 R1, xy 2 R2, xy ... 2 Rn , xy 

where Rn,xx , Rn,yy , and Rn,xy denote the second derivatives of the shape functions (NURBS basis functions) with regard to the
physical coordinates.
Applying the chain rule [26], the second derivatives of a shape function with respect to the parametric coordinates can obtained
as

 R,ξξ   x,ξ 2 y,ξ 2 2 x,ξ y,ξ   R, xx   x,ξξ y,ξξ 


   2      R, x 
 R,ηη  =  x,η y,η 2 2 x,η y,η   R, yy  +  x,ηη y,ηη   
R, y
(16)
  
 R,ξη   x,ξ x,η y,ξ y,η x,ξ y,η + x,η y,ξ   R, xy   x,ξη y,ξη   

Then the second derivatives of the shape functions with respect to physical coordinates can be written as
Downloaded by Cornell University Library At 08:15 10 September 2016 (PT)

−1
 R, xx   x,ξ 2 y,ξ 2 2 x,ξ y,ξ    R,ξξ   x,ξξ y,ξξ  
   2       R, x  
 R, yy  =  x,η y,η 2 2 x,η y,η    R,ηη  −  x,ηη y,ηη    
R, y
(17)
  
 R, xy   x,ξ x,η y,ξ y,η x,ξ y,η + x,η y,ξ   R   x
  ,ξη   ,ξη y,ξη    

Using the penalty method to impose essential boundary conditions, the final discrete equation is

% =f
(K + K)u (18)

% is defined as
K

% = α R T RdΓ
K ∫ ΓD
D (19)

in which α is a symmetric matrix of the penalty coefficients. Its size is determined by the number of restrained control points.

4. Fortran and IGA

4.1 Modularization design and code architecture

A module is a relatively independent program segment which has a certain function. Every module consists of an external
interface and internal processing function. In the Fortran implementation of IGA, the modularization design was adopted. Hence the
implementation becomes portable, revisable, and efficient. Furthermore, as a module the “function” or “subroutine” can be used as
a “black box”, i.e., only given its input parameters, the module can be called to obtain the results you want even if you do not know
why. The module which computes the NURBS basis functions and derivatives is shown in Listing 1. The flowchart of the IGA
implementation is presented in Figure 2. The Fortran implementation of IGA is strongly supported in the B-Spline/NURBS
evaluating algorithms. As can be seen in Figure 2, these algorithms are utilized at many stages and they fulfill the isoparametric
concept that both geometry of the design and the space of the solution are supported by the same functions.
Downloaded by Cornell University Library At 08:15 10 September 2016 (PT)

Figure 2. Flowchart of an IGA code.

4.2 Solving large sparse linear systems

Solving large sparse linear systems is one of the core problems of numerical calculation. In practical applications, some
algorithms such as the Conjugate Gradient Method, Gauss-Jordan Elimination Method, and Jacobi Iteration Method are usually
used to obtain the solution. However, the computational efficiency and accuracy of these methods are often unsatisfactory. Grus
Sparse Solver (GSS, http://www.grusoft.com) is an adaptive parallel direct solver. It can easily solve engineering problems with
several hundred thousand degrees of freedom. The high performance, robustness, and generality of GSS have been verified. In the
Fortran implementation of IGA, GSS is made into a subroutine. The default storage format of the global stiffness matrix K is
compressed column storage (CCS). Any unnecessary elements are not stored. Therefore the storage saving for this approach is
significant. How to use Fortran for the CCS is illustrated in Listing 2.

Listing 1 Computation of NURBS basis functions and derivatives

subroutine RBas_Der(p,q,noLBas,sub1,sub2,noUpts,ANF,AMF,BNder,BMder,weights,RBas,Rder,R2der)
implicit nnone
one
integer::uind,vind,i,j,locNum,c !declare variables
integer
real*8::fac,wi,dwdxi,d2wdxi,dwdet,d2wdet,d2wdxe,w
real*8
integer,intent
integer intent(in)::p,q,noLBas,sub1,sub2,noUpts
intent
real*8,intent
real*8 intent(in)::ANF(:,:),AMF(:,:),BNder(:,:),BMder(:,:),weights(:)
intent
real*8,intent
real*8 intent(out)::RBas(:),R2der(:,:),Rder(:,:)
intent
locNum=1 !local basis function number
RBas=0
uind=sub1-p
do j=0,q
vind=sub2-q+j
do i=0,p
c=uind+i+vind*(noUPts+1)
wi=weights(c) !the value of weight
w=w+ANF(i,p)*AMF(j,q)*wi !NURBS function denominator
dwdxi=dwdxi+AMF(j,q)*BNder(1,i)*wi !sum of N ip ' (ξ ) N qj (η )
dwdet=dwdet+ANF(i,p)*BMder(1,j)*wi !sum of N ip (ξ ) N qj ' (η )
d2wdxi=d2wdxi+BNder(2,i)*AMF(j,q)*wi !sum of Nip '' (ξ ) N qj (η )
d2wdet=d2wdet+ANF(i,p)*BMder(2,j)*wi !sum of Nip (ξ ) N qj '' (η )
d2wdxe=d2wdxe+BNder(1,i)*BMder(1,j)*wi !sum of Nip ' (ξ ) N qj ' (η )
end do
end do
!Divide by denominators to obtain NURBS functions and derivatives w.r.t. parametric coordinates
uind=sub1-p
do j=0,q
vind=sub2-q+j
Downloaded by Cornell University Library At 08:15 10 September 2016 (PT)

do i=0,p
c=uind+i+vind*(noUPts+1)
wi=weights(c)
fac=weights(c)/(w*w)
RBas(locNum)=ANF(i,p)*AMF(j,q)*fac*w !NURBS function
Rder(0,locNum)=(AMF(j,q)*BNder(1,i)*w-ANF(i,p)*AMF(j,q)*dwdxi)*fac !first derivative w.r.t. xi
Rder(1,locNum)=(ANF(i,p)*BMder(1,j)*w-ANF(i,p)*AMF(j,q)*dwdet)*fac !first derivative w.r.t. eta
!second derivative w.r.t. xi
R2der(0,locNum)=wi*(BNder(2,i)*AMF(j,q)/w-2*BNder(1,i)*AMF(j,q)*dwdxi/w/w
-ANF(i,p)*AMF(j,q)*d2wdxi/w/w+2*ANF(i,p)*AMF(j,q)*dwdxi*dwdxi/w/w/w)
!second derivative w.r.t. eta
R2der(1,locNum)=wi*(BMder(2,j)*ANF(i,p)/w-2*BMder(1,j)*ANF(i,p)*dwdet/w/w
-ANF(i,p)*AMF(j,q)*d2wdet/w/w+2*ANF(i,p)*AMF(j,q)*dwdet*dwdet/w/w/w)
!second derivative w.r.t. xi and eta
R2der(2,locNum)=wi*(BNder(1,i)*BMder(1,j)/w-BNder(1,i)*AMF(j,q)*dwdet/w/w
-ANF(i,p)*BMder(1,j)*dwdxi/w/w-ANF(i,p)*AMF(j,q)*d2wdxe/w/w
+2*ANF(i,p)*AMF(j,q)*dwdxi*dwdet/w/w/w)
locNum=locNum+1
end do
end do
end subroutine RBas_Der

Listing 2 Preparation for calling GSS

allocate(ptr(1:noDofs+1),rhs(1:noDofs))
allocate !allocate memory space to arrays
ptr(1)=1
do j=1,noDofs
ptr(j+1)=ptr(j)+count(abs(kGlobal(:,j))>1.0e-8) !the number of nonzero values in every column
end do
cnt=ptr(noDofs+1)-1 ! the number of nonzero values in the matrix
allocate(val(1:cnt),ind(1:cnt))
allocate
number=1
do j=1,noDofs
do i=1,noDofs
if(abs(kGlobal(i,j))>1.0e-8)then
if then
val(number)=kGlobal(i,j) !the values of the nonzero elements in stiffness matrix K
ind(number)=(i) !the row indexes of the elements in val
number=number+1
end if
end do
end do
rhs=f !assign force matrix f to rhs
m_type=0
call GSS_DEMO_6_FORTRAN(noDofs,ptr,ind,val,rhs,U,m_type) !call subroutine GSS

5. Numerical examples

To validate the performance of the Fortran implementation of IGA, several plate examples are presented. The results were
compared with theoretical solutions and an open implementation of IGA. Unless otherwise specified, the material in all examples
was isotropic with Young’s modulus E= 2.0×108N/m2 and the Poisson ratio ν=0.3. The number of Gauss points of each NURBS
Downloaded by Cornell University Library At 08:15 10 September 2016 (PT)

element was max ((p+1)2,16) [18]. The Fortran code of the examples can be downloaded from http://pan.baidu.com/s/1mgWBhdI.

5.1 Cantilever plate subjected to tip load

In this example, a cantilever thin plate was considered. The parameters were as follows: load on tip of plate P=-1.0N, length
l=6.0m, width b=2.0m, and thickness h=0.15m. The reference solution of the tip deflection was -0.001242m[46]. Different
polynomial orders and mesh refinements were used to solve the problem. The results of deflections are shown in Figure 3. In all
cases, the convergence to the reference solution was fast. Lower refinements (4 elements) and order basis functions (quadratic)
cannot produce accurate results. However, for the higher-order basis functions, namely, quartic, quintic, and sextic, even the second
refinement step can provide a very accurate solution. In Table 1, the CPU time cost by Fortran is compared with that cost by Matlab
(http://sourceforge.net/projects/cmcodes/) with the same number of degrees of freedom and polynomial orders (Computer
configuration: Intel Core i7 CPU and 16 GB RAM). The computational speed of the Fortran implementation is twice as fast as that
of the Matlab implementation.

Figure 3 Deflection convergence of a cantilever plate.

Table 1 Time consumption comparison of Fortran and Matlab for a cantilever plate
Order of NURBS basis function Degrees of freedom Deflection Time consumption of Matlab (s) Time consumption of Fortran(s)
2 4356 -0.00253 10.664 3.619
3 4422 -0.00250 11.603 4.134
4 4488 -0.00255 12.695 5.117
5 4554 -0.00249 13.550 5.788
6 4620 -0.00248 14.566 6.958
5.2 Circular plate uniformly loaded

To investigate the applicability of IGA to model the exact geometry of common engineering shapes, a clamped circular plate
under a uniform load P=-10.0N was considered. The radius of the circular plate was assumed to be R=0.5m and the thickness was
h=0.01m. The theoretical solution of central deflection was − PR 4 / 64 D =-0.0005332m [47]. Physical meshes and control points
for the circular plate modeled by quartic NURBS basis functions are shown in Figure 4. The results of central deflections with
different orders and variable numbers of elements are shown in Figure 5. The higher order NURBS elements converged very fast to
the theoretical solution even at the first refinement step. Different time consumptions are given in Table 2, and the superiority of
computational efficiency of the Fortran implementation is obvious.
Downloaded by Cornell University Library At 08:15 10 September 2016 (PT)

Figure 4 Physical meshes with 16, 64, 256, and 1024 elements and control points for a circular plate.

Figure 5 Central deflections of a circular plate

Table 2 Time consumption comparison of Fortran and Matlab for a circular plate
Order of NURBS basis function Degrees of freedom Deflection Time consumption of Matlab (s) Time consumption of Fortran(s)
2 4356 -0.0005329 8.774 3.588
3 4489 -0.0005332 14.840 5.242
4 4624 -0.0005332 25.155 7.472
5 4761 -0.0005332 42.536 12.059
6 4900 -0.0005332 68.104 18.549

5.3 Clamped square plate subjected to uniform load

A thin square plate with a length L= 1.0m and thickness h=0. 01m and under a uniform load P=-100.0N was considered.
Clamped boundary conditions were analyzed and the exact solution of the central deflection was -0.0012653m [47]. Figure 6
shows the results of central deflections. Lower order basis functions still can not obtain accurate solutions but it can be
improved during element increase (h-refinement) and order elevation (p-refinement). Higher order basis functions showed
good stability to the reference solution. The comparison of time consumption is presented in Table 3 and it again proves the
rapidness of the Fortran implementation.
Downloaded by Cornell University Library At 08:15 10 September 2016 (PT)

Figure 6 Central deflections of a square plate.

Table 3 Time consumption comparison of Fortran and Matlab for a square plate
Order of NURBS basis function Degrees of freedom Deflection Time consumption of Matlab (s) Time consumption of Fortran(s)
2 4356 -0.0012642 8.794 3.322
3 4489 -0.0012653 15.200 5.210
4 4624 -0.0012653 25.130 7.426
5 4761 -0.0012653 41.778 11.856
6 4900 -0.0012653 66.917 18.939

5.4 Symmetric treatment of a square plate

In this example, only a 1/4 plate which is illustrated in Section 5.3 was modeled. For fully clamped boundary conditions,
the transverse deflections of two rows of control points at the boundary are needed to be simply fixed [26, 48], because these
control points define the geometry of the plate. For symmetry boundary conditions, the rotation should be zero along the
symmetry lines, thus Equation (19) can be used to enforce the boundary conditions. The number of penalty coefficients is
defined by the number of two rows of control points along these lines together. As illustrated in Figure 7, it is a 1/4 model of
a fully clamped square plate. The right nodes, next to right nodes, bottom nodes, and next to bottom nodes are fully fixed. The
left nodes, next to left nodes, top nodes, and next to top nodes are enforced by penalty technique. However, the inappropriate
selection of values of penalty coefficients may lead to significant errors. In Figure 8, central deflections were obtained from
different maximums of K (MOK) which were produced by various refinements. The results were plotted versus different
values of penalty coefficients (e.g. E6=106). As the magnitude of MOK increases, the relevant penalty coefficients should be
enlarged for accurate results. It was observed that an appropriate penalty coefficient has a value that is 103-104 higher than the
magnitude of MOK.

Figure 7 1/4 model of a fully clamped square plate


Downloaded by Cornell University Library At 08:15 10 September 2016 (PT)

Figure 8 Central deflections of a 1/4 square plate.

5.5 Annular plate subjected to uniform load

In this section, the bending of a circular plate with a concentric circular hole, the so-called annular plate, was discussed
under a uniform load P=-10.0N. The outer and inner radii of the plate were a=3m and b=1m, respectively, and the thickness was
h=0.01m. The inner edge of the annular plate was clamped. The max deflections were at the outer edge and the reference solution
was -0.00011m [46]. Figure 9 shows the physical meshes and control points of the annular plate modeled by quartic NURBS basis
functions. In Figure 10, the results of outer edge deflections with different orders and elements are shown. All the NURBS elements
except the quartic ones can get a fast convergence to the reference solution. Different time consumptions are listed in Table 4, and
the efficient solving speed of the Fortran implementation for large degrees of freedom is demonstrated.

Figure 9 Physical meshes with 16, 64, 256, and 1024 elements and control points for an annular plate.
Downloaded by Cornell University Library At 08:15 10 September 2016 (PT)

Figure 10 Outer edge deflections of an annular plate

Table 4 Time consumption comparison of Fortran and Matlab for an annular plate
Order of NURBS basis function Degrees of freedom Deflection Time consumption of Matlab (s) Time consumption of Fortran(s)
2 17226 -0.00010998 60.255 16.973
3 17755 -0.00011000 112.228 23.868
4 18292 -0.00011000 183.338 34.819
5 18837 -0.00011000 285.692 53.332
6 19390 -0.00011000 462.706 83.383

6. Conclusions

In this paper, a Fortran implementation of NURBS based IGA was developed to solve Kirchhoff-Love plate problems. It
easily obtained high continuity basis functions which are necessary for Kirchhoff formulation. In comparison with theoretical
solutions, the numerical examples demonstrated higher accuracy and faster convergence of the Fortran implementation.
Lower order basis functions can not produce accurate solutions but it can be improved by h-refinement and p-refinement.
However, the computational cost was increased. The Fortran implementation can well solve this problem and it was validated
by the time consumption comparison with the Matlab implementation. Due to the non-interpolating of NURBS, the penalty
method was used to impose boundary conditions. A suggestion of the selection of penalty coefficients was given based on the
maximums of K. More examples are needed to consolidate the suggestion. Further studies will have to be done to apply the
Fortran implementation to more complex structures and theories.

Acknowledgement:

The authors thank Dr. Edward C. Mignot, Shandong University, for linguistic advice and Yingshi Chen for the permission
to use GSS.

References

[1] T.J.R. Hughes, J.A. Cottrell, Y. Bazilevs, Isogeometric analysis: CAD, finite elements, NURBS, exact geometry and mesh refinement, Computer Methods in
Applied Mechanics and Engineering. 194 (2005) 4135-4195.
[2] D. Ribarić, G. Jelenić, Higher-order linked interpolation in triangular thick plate finite elements, Eng. Computation. 31 (2014) 69-109.
[3] D.R.J. Owen, J.A. Figueiras, Anisotropic elasto-plastic finite element analysis of thick and thin plates and shells, Int. J. Numer. Meth. Eng. 19 (1983) 541-566.
[4] T. Bui, M. Nguyen, C. Zhang, An efficient meshfree method for vibration analysis of laminated composite plates, Computational Mechanics. 48 (2011)
175-193.
[5] T.Q. BUI, M.N. NGUYEN, MESHFREE GALERKIN KRIGING MODEL FOR BENDING AND BUCKLING ANALYSIS OF SIMPLY SUPPORTED
LAMINATED COMPOSITE PLATES, International Journal of Computational Methods. 10 (2013) 1350011.
[6] T.T. Yu, S. Yin, T.Q. Bui, S. Hirose, A simple FSDT-based isogeometric analysis for geometrically nonlinear analysis of functionally graded plates, Finite
Elements In Analysis And Design. 96 (2015) 1-10.
[7] T. Yu, T.Q. Bui, S. Yin, D.H. Doan, C.T. Wu, T.V. Do, S. Tanaka, On the thermal buckling analysis of functionally graded plates with internal defects using
extended isogeometric analysis, Composite Structures. 136 (2016) 684-695.
[8] S. Yin, T. Yu, T.Q. Bui, S. Xia, S. Hirose, A cutout isogeometric analysis for thin laminated composite plates using level sets, Composite Structures. 127 (2015)
152-164.
[9] S. Yin, J.S. Hale, T. Yu, T.Q. Bui, S.P. Bordas, Isogeometric locking-free plate element: a simple first order shear deformation theory for functionally graded
plates, Composite Structures. 118 (2014) 121-138.
[10] G. Bhardwaj, I.V. Singh, B.K. Mishra, T.Q. Bui, Numerical simulation of functionally graded cracked plates using NURBS based XIGA under different loads
and boundary conditions, Composite Structures. 126 (2015) 347-359.
[11] S. Shojaee, N. Valizadeh, E. Izadpanah, T. Bui, T.-V. Vu, Free vibration and buckling analysis of laminated composite plates using the NURBS-based
isogeometric finite element method, Composite Structures. 94 (2012) 1677-1693.
[12] N. VALIZADEH, T.Q. BUI, V.T. VU, H.T. THAI, M.N. NGUYEN, ISOGEOMETRIC SIMULATION FOR BUCKLING, FREE AND FORCED
Downloaded by Cornell University Library At 08:15 10 September 2016 (PT)

VIBRATION OF ORTHOTROPIC PLATES, International Journal of Applied Mechanics. 05 (2013) 1350017.


[13] N. Valizadeh, S. Natarajan, O.A. Gonzalez-Estrada, T. Rabczuk, T.Q. Bui, S.P.A. Bordas, NURBS-based finite element analysis of functionally graded plates:
Static bending, vibration, buckling and flutter, Composite Structures. 99 (2013) 309-326.
[14] P. Liu, T.Q. Bui, D. Zhu, T.T. Yu, J.W. Wang, S.H. Yin, S. Hirose, Buckling failure analysis of cracked functionally graded plates by a stabilized discrete shear
gap extended 3-node triangular plate element, Composites Part B: Engineering. 77 (2015) 179-193.
[15] S.H. Yin, T.T. Yu, P. Liu, Free Vibration Analyses of FGM Thin Plates by Isogeometric Analysis Based on Classical Plate Theory and Physical Neutral Surface,
Advances in Mechanical Engineering. (2013).
[16] H. Nguyen-Xuan, L.V. Tran, C.H. Thai, S. Kulasegaram, S.P.A. Bordas, Isogeometric analysis of functionally graded plates using a refined plate theory,
Composites Part B-Engineering. 64 (2014) 222-234.
[17] S.H. Yin, T.T. Yu, T.Q. Bui, M.N. Nguyen, Geometrically nonlinear analysis of functionally graded plates using isogeometric analysis, Engineering
Computations. 32 (2015) 519-558.
[18] S. Shojaee, N. Valizadeh, NURBS-based isogeometric analysis for thin plate problems, Structural Engineering and Mechanics. 41 (2012) 617-632.
[19] M.N. Nguyen, T.Q. Bui, T. Yu, S. Hirose, Isogeometric analysis for unsaturated flow problems, Computers And Geotechnics. 62 (2014) 257-267.
[20] T.Q. Bui, Extended isogeometric dynamic and static fracture analysis for cracks in piezoelectric materials using NURBS, Computer Methods In Applied
Mechanics And Engineering. 295 (2015) 470-509.
[21] X. Yuan, W. Ma, Parametric mesh regularization for interpolatory shape design and isogeometric analysis over a mesh of arbitrary topology, Computer
Methods in Applied Mechanics and Engineering. 284 (2015) 906-942.
[22] I. Temizer, M.M. Abdalla, Z. Gurdal, An interior point method for isogeometric contact, Computer Methods in Applied Mechanics and Engineering. 276 (2014)
589-611.
[23] D. Grossmann, B. Juttler, H. Schlusnus, J. Barner, A.V. Vuong, Isogeometric simulation of turbine blades for aircraft engines, Computer Aided Geometric
Design. 29 (2012) 519-531.
[24] L. Dedè, C. Jäggli, A. Quarteroni, Isogeometric numerical dispersion analysis for two-dimensional elastic wave propagation, Computer Methods in Applied
Mechanics and Engineering. 284 (2015) 320-348.
[25] J.A. Cottrell, T.J.R. Hughes, Isogeometric Analysis: Toward Integration of CAD and FEA, Wiley, 2009.
[26] V.P. Nguyen, S. Bordas, T. Rabczuk, Isogeometric analysis: an overview and computer implementation aspects, arXiv preprint arXiv:1205.2129. (2012).
[27] C. de Falco, A. Reali, R. Vazquez, GeoPDEs: A research tool for Isogeometric Analysis of PDEs, Advances in Engineering Software. 42 (2011) 1020-1034.
[28] D. Rypl, B. Patzak, From the finite element analysis to the isogeometric analysis in an object oriented computing environment, Advances in Engineering
Software. 44 (2012) 116-125.
[29] D.J. Benson, Y. Bazilevs, E. De Luycker, M.C. Hsu, M. Scott, T.J.R. Hughes, T. Belytschko, A generalized finite element formulation for arbitrary basis
functions: From isogeometric analysis to XFEM, International Journal for Numerical Methods in Engineering. 83 (2010) 765-785.
[30] Z. Kacprzyk, K. Ostapska-Łuczkowska, Isogeometric Analysis as a New FEM Formulation - Simple Problems of Steady State Thermal Analysis, Procedia
Engineering. 91 (2014) 87-92.
[31] J. Kiendl, K.U. Bletzinger, J. Linhard, R. Wuchner, Isogeometric shell analysis with Kirchhoff-Love elements, Computer Methods in Applied Mechanics and
Engineering. 198 (2009) 3902-3914.
[32] Rhino, CAD modeling and design toolkit, www.rhino3d.com.
[33] P. Vignal, L. Dalcin, N.O. Collier, V.M. Calo, Modeling Phase-transitions Using a High-performance, Isogeometric Analysis Framework, Procedia Computer
Science. 29 (2014) 980-990.
[34] L.D. N. Collier, V.M. Calo, PetIGA: A framework for high performance Isogeometric Analysis, https://bitbucket.org/dalcinl/petiga.
[35] A.D. T. Elguedj, F. Maurin, H. Al Akhras, An implementation of NURBS based Isogeometric Analysis for Abaqus, http://abqnurbs.insa-lyon.fr.
[36] N.T. Dung, G.N. Wells, Geometrically nonlinear formulation for thin shells without rotation degrees of freedom, Computer Methods in Applied Mechanics and
Engineering. 197 (2008) 2778-2788.
[37] B. Koo, M. Yoon, S. Cho, Isogeometric shape design sensitivity analysis using transformed basis functions for Kronecker delta property, Computer Methods in
Applied Mechanics and Engineering. 253 (2013) 505-516.
[38] U. Langer, A. Mantzaflaris, S.E. Moore, I. Toulopoulos, Mesh grading in isogeometric analysis, Computers & Mathematics with Applications.
[39] Z. Lei, F. Gillot, L. Jezequel, A multiple patches connection method in isogeometric analysis, Applied Mathematical Modelling.
Downloaded by Cornell University Library At 08:15 10 September 2016 (PT)

[40] K. Li, X.P. Qian, Isogeometric analysis and shape optimization via boundary integral, Computer-Aided Design. 43 (2011) 1427-1437.
[41] H.W. Lin, Q.Q. Hu, Y.Y. Xiong, Consistency and convergence properties of the isogeometric collocation method, Computer Methods in Applied Mechanics
and Engineering. 267 (2013) 471-486.
[42] B. Marussig, J. Zechner, G. Beer, T.-P. Fries, Fast isogeometric boundary element method based on independent field approximation, Computer Methods in
Applied Mechanics and Engineering. 284 (2015) 458-488.
[43] S. Natarajan, J. Wang, C. Song, C. Birk, Isogeometric analysis enhanced by the scaled boundary finite element method, Computer Methods in Applied
Mechanics and Engineering. 283 (2015) 733-762.
[44] D.D. Wang, J.C. Xuan, An improved NURBS-based isogeometric analysis with enhanced treatment of essential boundary conditions, Computer Methods in
Applied Mechanics and Engineering. 199 (2010) 2425-2436.
[45] P. Les, T. Wayne, The NURBS Book, second ed., Springer, 1997.
[46] V.P. Nguyen, igafem, http://sourceforge.net/projects/cmcodes/.
[47] S. Timoshenko, S. Woinowsky-Krieger, Theory of Plates and Shells, Second ed., McGraw Hill, New York.
[48] J. Kiendl, K.U. Bletzinger, J. Linhard, R. Wüchner, Isogeometric shell analysis with Kirchhoff–Love elements, Computer Methods in Applied Mechanics and
Engineering. 198 (2009) 3902-3914 %@ 0045-7825.

You might also like