Sei sulla pagina 1di 9

Chapter 19 – SE108

Chapter 19

COMPUTER AIDED DESIGN OF EARTHQUAKE RESISTANT


STRUCTURES
Nirjhar Dhang
Department of Civil Engineering,
IIT, Kharagpur.

1.1 INTRODUCTION

Design is an art and every designer has its own style of design which he has inherited from his
predecessor. It is unfortunate that the art of manual design is gone. The style of presentation is
missing. One can use computer for the design but it does not mean that the conventional style of
manual design will be forgotten. The objective should be to present similar type of manual design
using computer.

The meaning of computer aided design varies. One could call a simple equation solver as a
computer aided design. On the other hand, the program with analytical tools, different
optimization schemes, database and good graphical user interface (GUI) is also called a
computer aided design. The civil engineering design is a tedious process and many constraints
are required to be satisfied during design.. These constraints are mainly invoked from design
standards. The analysis programs are standardized, there is hardly any difference among
analysis programs available in the market other than graphical user interface. The common finite
elements are available in all programs. The civil engineering problems are mainly solved with
these elements and therefore, one will get the same results in different programs provided the
modelling is not changed. In the case of solution of design problems, no standard programs are
available. Almost every design organization has its own inhouse design programs. The output is
not properly organized. There is no presentation of intermediate calculation. The final results are
only printed. It is difficult to follow the design steps, because, in most of the cases, the design
steps are missing.

Design problems are solved by spread sheet, such as, EXCEL or any numerical programs, such
as MATLAB. The standalone computer programs are also available and it is equally possible to
make the programs web based. The objective here to demonstrate a model computer program for
design purpose. A program called as DWELL, Dead, Wind, Earthquake and Live Load for design
of wind and earthquake resistant structures is developed by author. The concept of this program
is briefly described . With the rapid development of computer, the concept of computer aided
design is also being changed. A web based computer program is also shown here. This is an
application of information technology to civil engineering where an web based system may be
useful in structural maintenance work or structural health monitoring. Essential components of
web design is briefly described. The necessity of JEADlab toolkit developed by the author is
reported.

2.1 TOOLS FOR EARTHQUAKE RESISTANT DESIGN

NPCBEERM, MHA (DM) 1


Chapter 19 – SE108

There is no reservation of using any computer language for the purpose of computer aided
design. Any language, such as, BASIC, FORTRAN, C or C++ is suitable for writing programs for
design of structures. In fact, nowadays, Visual Basic, an advanced variant of BASIC, is popularly
used for graphical user interface and design programs. Since FORTRAN is an old language and
many structural and finite element programs are developed in FORTRAN, many programs
available in the market are having analysis modules in FORTRAN and user interface and
graphics in Visual Basic or in C/C++.

The design programs are extensively dependent on the codal provisions. Most of the country has
its own standard codes. These codes also go for revision. The clauses of codes, tables or charts
may change in successive revisions. The hard coded computer programs, a program developed
after compilation and linking, are required to be recompiled to implement these changes. The
analysis tools, such as, finite element programs do not change much with time. It could be called
as time independent codes. The clauses, parameters of empirical equations of

NPCBEERM, MHA (DM) 2


Chapter 19 – SE108

codes may change due to revisions. It is not only because of changes in a particular code, it also
varies in different countries. Therefore, this time dependent changes should be implemented in
the program such a manner so that the program is not to be recompiled. This may be called as
soft code known as script language. It does not need any compilation.

Therefore, a suitable handshaking program may be developed where analysis tools are written in
higher level language and the design codes are written in script language. With this basic
concept, a program DWELL : Dead, Wind, Earthquake and Live Load is developed by the author.

NPCBEERM, MHA (DM) 3


Chapter 19 – SE108

The main analysis program is written in C and the user interface program could be written in a
popularly used script language TCL/TK . TCL is a tool command language, a general-purpose
scripting language and it is built as a C library package. It has a core library and each application
can add its own features to this core. Tk, an X11 toolkit based on Tcl, is developed to implement
the component approach. The component-based approach requires a powerful and flexible “glue”
for assembling the components. Tk allows components to be developed independently and Tcl
can be used to assemble the components and communicate between them. In a nutshell, Tcl and
Tk commands provide a high level interface to GUI programming that hides many of the details
faced by a C programmer. Tcl/Tk provides two programs along with few dynamic link libraries and
script libraries. Wish and Tclsh are two such programs : Wish for windows graphical interface
and Tclsh for pure Tcl scripts.

DWELL is developed using TCL/TK library. Finite elements, numerical methods for solution are
written in C and commonly required utilities are available with Tcl interface. It is assumed that
DWELL users will not write code in C rather they will write code in simple TCL. Few windows are
shown here which could be developed by the user. No other program gives such a wide flexibility.
The computation of earthquake load is written in TCL which could be run by DWELL as listed in
the Appendix.

3.1 WEB BASED DESIGN

The information technology has now become the backbone of the modern civilisation with its in-
built technology of network communication, computation, graphics, images and video with
multimedia utilities. The power of this technology can easily be used in the design of structural
engineering. In general, the main architecture of this type of system can be enumerated as
follows :

i) Geographical information system of the place


ii) A database of different parameters of structures. For a bridge, these are span,
width, type of deck slab, year of construction, river name, location from a main
city etc.
iii) All general information in HTML format.
iv) Java classes using JEADlab for analysis and design.

Before going to the actual application, the essential components of an web based system are
listed as follows :

i) Server : This is the main computer where all information will be stored and will be
retrieved by the client as and when it is required.
ii) Database : PostGreSQL may be best alternative for this purpose. However, commonly
used FoxPro data format can also be used for data entry.
iii) CGI : Only information is not sufficient in this type of application. A lot of computional
work, data retrieval etc. are required. These are done by different programs called
common gateway interface. These are different programs required for different utilities,
such as posting data, query of information etc.
iv) Applet/Servlet : These are different programs written in Java required for computation,
graphics, animation etc. Since Java is a platform independent language, it is best suitable
for this type of application. Applet is used in client side, i.e. in the browser side, where as,
servlet is used in the server side.

3.2 APPLICATION PROGRAMMING INTERFACE

For a specific problem, a separate API (application programming interface) can be written. This
programming is done in Java. As it is already told, Java is a platform independent language and

NPCBEERM, MHA (DM) 4


Chapter 19 – SE108

which is suitable for Internet, the required utilities called applet are developed in Java. The author
has developed a toolkit, JEADlab, for this purpose. It is purely based on object oriented
programming where different objects, such as, steel, concrete etc are modelled independently
and the functions of these objects can be added with growing features of the toolkit. The toolkit
has four major class libraries :
i) Numerical methods : For any work, the major functions used are solution of
equations, computation of eigen values of a system, time integration etc. So
these functions are kept as separate classes under jeadlab.nm. The main
classes in this module are :
a) DoubleMatrix – Inversion of matrices, solution of equitions,
b) CholeskyFull – Cholesky decomposition of full matrices
c) CholeskyBanded – Cholesky decomposition of banded matrix
d) EigenJacobi – Compution of eigen values by Jacobi method.
e) WilsonTheta – Time integration

ii) Finite element method : This module is for modellig of structure and is called as
jeadlab.fem. The main elements, such as, bar elements ( truss, beam, frame),
plane stress/strain elements ( CST, quadrilateral) are implemented now. The
structure can be modelled in two dimensions.

iii) Graphical Window Tools : A good graphical user interface is required for this type
of application. These tools are kept under this module called as jeadlab.gwt.

iv) Geographical Information System : Application of this nature requires some GIS
utilities, such as, viewing of map, calculation of length of roads, areas etc. There
are various professional GIS packages available in the market. Internet is not yet
ready for full fledged application and all the utilities of a package are also not
used at a time. Even if it is considered from a particular user’s point of view, it
may be observed that one user works only with the 20% of the utilities in his
complete work. If all utilities can be kept module wise, it will be efficient at the
time of execution. Considering this aspect, the major utilities are being written in
Java. These utilities are under jeadlab.map.

3.3 WEB BASED DESIGN : AN EXAMPLE

The web can also be used as an interactive design system. The major used structures can be
parametrized. A compound fink can be presented by span and rise of the truss. The height of the
column can also be added. In a factory, plane trusses are placed at a certain interval. So spacing
of the truss is also another parameter. The major parameters of the plane truss are as follows :
i) Span of the truss
ii) Rise of the truss
iii) Height of the column
iv) Spacing of the truss
v) Dead load
vi) Live load
vii) Wind load, (windward side)
viii) Wind load (leeward side)
ix) Wind load ( in columns)
x) Modulus of elasticity
xi) Yield strength of steel
xii) Different types of members with cross-sectional area and moment of
inertia

The program computes maximum tenile and compressive stresses in different types of members,
maximum displacements and displays permissible stresses. From this summarised page, one

NPCBEERM, MHA (DM) 5


Chapter 19 – SE108

can easily check the truss. A snapshot of the screen of the typical design of compound fink truss
is shown here. Similarly, the design of basic RCC and steel elements can also be made.

4.1 SUMMARY

The changing concept of computer aided design with the advancement of computer is presented
here. A simple problem of evaluation of earthquake forces is presented in MATLAB code. The
analysis and design of a RCC frame with a freedom of making its own graphical user interface is
developed by TCL/TK with C interface. The application of information technology in web based
design is also described here.

5.1 EXERCISE

1. Why do we need a script language in developing design programs?


2. What are the advantages of TCL/TK?
3. How web based design can be made?
4. Suggest a suitable scheme for making the steel table on line.

6.1 REFERENCES

1. Reinforced Concrete, S. K. Mallick & A. P. Gupta, Oxford & IBH , New Delhi, 1996.
2. Design of Steel Structures, A. S. Arya & J. L. Ajmani, Nem Chand & Bros, Roorkee,
1996
3. TCL and the TK Toolkit : John K. Ousterhout, Addison-Wesley, 1999.

NPCBEERM, MHA (DM) 6


Chapter 19 – SE108

4. Java : How to program, Deitel & Deitel, Prentice-Hall,Inc, 1997

Appendix

# List of variables used # initial values

array set str_symbols { array set str {


nbay "No. of bays :" a 4.0
nfloor "No. of floors :" b 4.0
a "Sp. of col. : 1st bay (m):" c 4.0
b "Sp. of col. : 2nd bay (m):"
c "Sp. of col. : 3rd bay (m):" hg1 4.0
h12 3.0
hg1 "Height from ground to 1st floor (m):" h23 3.0
h12 "Height from 1st to 2nd floor (m):" h34 3.0
h23 "Height from 2nd to 3rd floor (m):" h45 3.0
h34 "Height from 3rd to 4th floor (m):" h1 4.0
h45 "Height from 4th to roof (m):" h2 3.0
h3 3.0
H "Height of building (m) :" h4 3.0
h5 3.0
h1 "Height of 1st floor (m):"
h2 "Height of 2nd floor (m):" H 1.0
h3 "Height of 3rd floor (m):"
h4 "Height of 4th floor (m):" w1 50.0
h5 "Height of roof (m):" w2 40.0
w3 30.0
w1 "UDL in outer beam (kN/m) :"
w2 "UDL in inner beam (kN/m) :" eqzone III
w3 "UDL in roof beam (kN/m) :" soiltype medium
Z 0.16
eqzone "Earthquake zone : " I 1.5
soiltype "Soil type : " R 5.0
Z "Earthquake zone factor : " Sabyg 2.5
I "Impartance factor : " T 0.1
R "Reduction factor : " Ah 0.05
T "Time period (s) : "
Sabyg "Spectral accl. coeff. (Sa/g) : " W1 0.0
Ah "Horizontal seismic coefficient :" W2 0.0
W3 0.0
W1 "Weight of 1st floor (kN) :" W4 0.0
W2 "Weight of 2nd floor (kN) :" W5 0.0
W3 "Weight of 3rd floor (kN) :"
W4 "Weight of 4th floor (kN) :" VB 0.0
W5 "Weight of 5th floor (kN) :"
Q1 0.0
VB "Base shear (kN) :" Q2 0.0
Q3 0.0
Q1 "Lateral force in 1st floor (kN) :" Q4 0.0
Q2 "Lateral force in 2nd floor (kN) :" Q5 0.0
Q3 "Lateral force in 3rd floor (kN) :"
Q4 "Lateral force in 4th floor (kN) :" nbay 3
Q5 "Lateral force in 5th floor (kN) :" nfloor 5

} }

NPCBEERM, MHA (DM) 7


Chapter 19 – SE108

# procedure to compute seismic coefficient as per IS 1893

proc make_earthquake_coefficient {} {
global str

if {$str(eqzone) == "II"} {
set str(Z) 0.10
}
if {$str(eqzone) == "III"} {
set str(Z) 0.16
}
if {$str(eqzone) == "IV"} {
set str(Z) 0.24
}
if {$str(eqzone) == "V"} {
set str(Z) 0.36
}

set str(T) [expr exp(log(0.075)+0.75*log($str(H)))]

if {$str(soiltype) == "hard"} {
if {$str(T) <= 0.1} {
set str(Sabyg) [expr 1.0+15*$str(T)]
} elseif {$str(T) <= 0.4} {
set str(Sabyg) 2.5
} else {
set str(Sabyg) [expr 1.0/$str(T)]
}
} elseif {$str(soiltype) == "medium"} {
if {$str(T) <= 0.1} {
set str(Sabyg) [expr 1.0+15*$str(T)]
} elseif {$str(T) <= 0.4} {
set str(Sabyg) 2.5
} else {
set str(Sabyg) [expr 1.36/$str(T)]
}

} else {
if {$str(T) <= 0.1} {
set str(Sabyg) [expr 1.0+15*$str(T)]
} elseif {$str(T) <= 0.4} {
set str(Sabyg) 2.5
} else {
set str(Sabyg) [expr 1.67/$str(T)]
}
}
set str(Ah) [expr 0.5 * $str(Z) * $str(I) * $str(Sabyg)/$str(R)]
}

NPCBEERM, MHA (DM) 8


Chapter 19 – SE108

#procedure to compute earthquake load for G+4 buildings


#more optimized and generi code could be written using for loop

proc make_earthquake_load {} {
global str

set str(h1) $str(hg1)


set str(h2) [expr $str(hg1)+$str(h12)]
set str(h3) [expr $str(hg1)+$str(h12)+$str(h23)]
set str(h4) [expr $str(hg1)+$str(h12)+$str(h23)+$str(h34)]
set str(h5) [expr $str(hg1)+$str(h12)+$str(h23)+$str(h34)+$str(h45)]

set str(H) $str(h5)

make_earthquake_coefficient

set str(W1) [expr $str(a)*$str(w1)+$str(b)*$str(w2)+$str(c)*$str(w1)]


set str(W2) [expr $str(a)*$str(w1)+$str(b)*$str(w2)+$str(c)*$str(w1)]
set str(W3) [expr $str(a)*$str(w1)+$str(b)*$str(w2)+$str(c)*$str(w1)]
set str(W4) [expr $str(a)*$str(w1)+$str(b)*$str(w2)+$str(c)*$str(w1)]
set str(W5) [expr $str(a)*$str(w3)+$str(b)*$str(w3)+$str(c)*$str(w3)]

set str(W) [expr $str(W1)+$str(W2)+$str(W3)+$str(W4)+$str(W5)]


set str(VB) [expr $str(Ah)*$str(W)]

set str(Deno) [expr $str(W1)*$str(h1)*$str(h1) + \


$str(W2)*$str(h2)*$str(h2) + \
$str(W3)*$str(h3)*$str(h3) + \
$str(W4)*$str(h4)*$str(h4) + \
$str(W5)*$str(h5)*$str(h5) ]

set str(Q1) [expr $str(VB)*$str(W1)*$str(h1)*$str(h1)/$str(Deno)]


set str(Q2) [expr $str(VB)*$str(W2)*$str(h2)*$str(h2)/$str(Deno)]
set str(Q3) [expr $str(VB)*$str(W3)*$str(h3)*$str(h3)/$str(Deno)]
set str(Q4) [expr $str(VB)*$str(W4)*$str(h4)*$str(h4)/$str(Deno)]
set str(Q5) [expr $str(VB)*$str(W5)*$str(h5)*$str(h5)/$str(Deno)]

# the procdure make_earthquake_load is invoked here

make earthquake load

NPCBEERM, MHA (DM) 9

Potrebbero piacerti anche