psd testing with substructuring: implementation and use

6 downloads 5730 Views 220KB Size Report
oped and is already working, a flexible finite element code is already available ... d.o.f. between the PSD test structure and the substructure are always few, say ...
PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE Ph. Buchet and P. Pegon Applied Mechanics Unit, Safety Technology Institute Joint Research Centre, European Commission, I-21020 Ispra (VA) Italy JRC-Special Publication No.I.94.25, Ispra, 1994 Summary: A communication line between the PSD controller program (MiNiPDTM) and the structural environment CASTEM 2000 is established. This implementation allows to perform PSD test with substructuring.

CONTENTS 1 INTRODUCTION 2 2 SOME SIMPLE NOTES ABOUT SUBSTRUCTURING 3 2.1 The alpha-operator splitting time integration scheme 3 2.2 Substructuring and condensation 4 2.3 Data flow between the PSD controller process and the substructuring process 5 2.4 Some remarks concerning the substructuring process 6 3 BERKELEY SOCKETS AND WORK AROUND 8 3.1 General considerations 8 3.2 Socket overview 8 3.3 Basic choices 10 3.4 Implementation 10 4 AN ELEMENTARY PSD TEST USING SUBSTRUCTURING 12 5 A BRIDGE DEMONSTRATION OF SUBSTRUCTURING 13 6 CONCLUDING REMARKS 16 ACKNOWLEDGEMENTS 16 REFERENCES 16 ANNEX 1- MANUAL OF THE ‘CHAU’SSETTE OPERATOR 17 ANNEX 2: SAMPLE GIBIANE INPUT FOR TESTING THE COMMUNICATION BETWEEN TWO CASTEM 2000 PROCESSES 18

1 of 21

INTRODUCTION

1. INTRODUCTION The Pseudo Dynamic (PSD) test method is a hybrid test technique which combines the numerical time integration of the equations of the motion of a complex structure, condensed on a reduced number of degrees-of-freedom (d.o.f.), and the experimental measurement of the reaction forces resulting from this motion. The numerical simulation of the inertial forces allows to perform a dynamical test in a dilated time scale and thus to use a reduced hydraulic power. As a consequence, it is possible to determine experimentally the response of full scale specimen subjected to seismic loading. The European Laboratory for Safety Assessment (ELSA) of the JRC is operating this method and is able to test, for instance, a full scale 4-storey reinforced concrete building. The control of the experiment together with the numerical integration of the equations of motion are performed by a program called MiNi-PDTM running on a Personal Computer (PC). Due to their very large size, civil engineering structures of strong interest such as bridges seem to exceed the PSD capabilities. It is however possible to extend the PSD field of application, at least when the behaviour of a part of the structure can be represented analytically, by introducing the substructuring technique [1]. Taking profit of the hybrid character of the PSD method, this technique combines the numerical simulation of the analytical part of the structure, the substructure, with the effective laboratory testing of the remaining part of the structure, the tested structure. This technique is well suited for bridges since the largest part of these structures, the deck, can be assumed linear elastic and then modelled by any finite-element software: only the piers, whose dimensions remain reasonable in many cases, are tested in the laboratory. A further advantage of the substructuring technique, which is again well suited for bridges, is the possibility to study situations where the seismic excitation is asynchronous or of different intensity, for instance from pier to pier. The use of the substructuring technique in PSD testing requires, for the substructure, a conveniently accurate model and the time integration of its motion. The chosen model may possess a number of d.o.f. which is greater by some orders of magnitude than the number of nodes usually controlled by the PSD algorithm and then may exceed the current capabilities of the controller program, if the substructure is also handled by the PC program. If this last choice is to be adopted, two solutions are available: improve (or even change) the hardware or improve (or even change) the software. These two solutions do not appear to be very efficient since they imply a duplication of work at both development and testing (say debugging) levels: the controller program MiNi-PDTM is already developed and is already working, a flexible finite element code is already available and is a good candidate for handling the substructure: CASTEM 2000 [2]. Unfortunately, due to its large size, CASTEM 2000 is operating on UNIX-workstations only and is unable to run on a PC. It is hopefully possible to adopt another strategy, based on the following consideration: the interface d.o.f. between the PSD test structure and the substructure are always few, say less or equal to the d.o.f. controlled by the experimental setup. Then, the amount of information which has to be exchanged between a process responsible for the PSD test, running on a PC, and a process responsible for the substructure, running, in parallel, on a remote workstation, is always limited, so that both processes would be only marginally affected by the cost of an inter-process communication, if it is possible to establish such type of communication between a PC and a workstation. The aim of this note is to show that an efficient, reliable and standard communication line may be established between MiNi-PDTM and CASTEM 2000 in a rather straightforward way using Berkeley sockets [3][4]. The note is organized as follows. In the first section, it is shown how a PSD and a substructuring process may run in parallel and when they have to exchange informations. The second section gives a short description of the Berkeley sockets and of the developments realized for establishing and assessing the communication line between MiNi-PDTM and CASTEM 2000. The third section

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

2 of 21

SOME SIMPLE NOTES ABOUT SUBSTRUCTURING

presents an experimental test which has been realized. In the last section a demonstration example of the PSD test method using substructuring is presented in the particular case of a bridge.

2. SOME SIMPLE NOTES ABOUT SUBSTRUCTURING The aim of this section is not to add any feature to the current state of the art about the substructuring technique. The intention is only to show precisely, within the framework of the α -Operator Splitting time integration scheme [5]: • how and where the controller process is modified in order to handle PSD tests with substructuring, • which are the informations to be exchanged between the controller process and the process which handles the substructure.

2.1 The alpha-operator splitting time integration scheme Consider the following system of semi-discrete differential equations Ma + Cv + r ( d ) = f

(1)

which describe the motion of a structure with m degrees-of freedom. a , v and d are the acceleration, the velocity and the displacement vectors, r and f the structural internal force and the external force vectors, M and C the mass and the damping matrices. In order to avoid any stability problem while preserving the simplicity of an explicit algorithm, the system of equations (1) is integrated with respect to time using the α -operator splitting scheme. This scheme is derived from the β -Newmark time integration scheme combined with the verification of the α -shifted equilibrium at time t Ma

n+1

+ ( 1 + α )Cv

n+1

n+1

[6] n

– αCv + ( 1 + α )r

n+1

n

– αr = ( 1 + α )f

n+1

– αf

n

(2)

and the splitting of the reaction forces according to [7][8] r

n+1

(d

n+1

I n+1

)≈K d

+ ( r˜

n+1

( d˜

n+1

I ) – K d˜

n+1

)

(3)

I

where K is a stiffness matrix, generally as close as possible to the elastic one and in any case higher T or equal to the current tangent stiffness K ( d ) of the structure, and d˜

n+1

a prediction of d

n+1

.

n

All useful quantities being known at time t , the step-wise operations for reaching the time t

n+1

n

= t + ∆t are:

i. Compute (prediction phase) d˜ d˜

n+1

and v˜

n+1

according to 2

n n ∆t n = d + ∆tv + -------- ( 1 – 2β )a 2

n+1



n+1

n

= v + ∆t ( 1 – γ )a

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

(4)

n

3 of 21

SOME SIMPLE NOTES ABOUT SUBSTRUCTURING

ii. Apply (control phase) the displacement d˜ the restoring force r˜ iii. Solve for a

n+1

n+1

n+1

to the structure in order to get (measuring phase)

.

the system of linear equations ˆ a n + 1 = ˆf n + 1 M

(5)

ˆ and the pseudo force vector ˆf n + 1 are given by where the pseudo mass matrix M ˆ = M + γ∆t ( 1 + α )C + β∆t 2 ( 1 + α )K I M

(6)

and ˆf n + 1 = ( 1 + α )f

n+1

n

n

– αf + αr˜ – ( 1 + α )r˜

n+1

n

+ αCv˜ – ( 1 + α )Cv˜

2

I

"" + α ( γ∆tC + β∆t K )a iv. Compute (correction phase) d

n+1

d

and v

n+1

v

n+1

= d˜

n+1

(7)

n

according to

n+1

= v˜

n+1

n+1

2

+ ∆t βa + ∆tγa

n+1

n+1

(8)

In order to achieve a quasi second order accuracy, the two parameters β and γ are chosen as follows[6] 2

β = (1 – α) ⁄ 4 γ = ( 1 – 2α ) ⁄ 2

(9)

1 where α ∈ [– ---,0] allows to tune the numerical damping of the α -method. 3 ˆ , which usually does not depend on Note that the computation, and possibly the factorization of M the time, may be performed during the initialization phase of the algorithm, before entering the time stepping loop.

2.2 Substructuring and condensation Among the m d.o.f. of system (1), m S d.o.f. belong to a substructure which is described using a finite element model having, for instance, an elastic behaviour, whereas m T d.o.f. belong to the structure which is effectively tested. Note that mS + m T > m since some d.o.f. are common to the substructure and the structure (connection d.o.f.). In order to be more specific, each of the m d.o.f is an element of one of the following collections: • m SS d.o.f. internal to the substructure (index i , j , etc.), • m ST d.o.f. common to the structure and the substructure (index α , β , etc.), • m TT d.o.f. internal to the structure (index I , J , etc.), PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

4 of 21

SOME SIMPLE NOTES ABOUT SUBSTRUCTURING

with m = mSS + m ST + m TT

m S = m SS + m ST

m T = m TT + m ST

(10)

Since the number m SS of d.o.f. internal to the substructure may be very large with respect to the number m T of d.o.f. usually controlled by the PSD process, the system (5) may become large enough to exceed the current capabilities of the controller process. In order to allow this process to work in any case with only m T d.o.f., the idea, proposed for instance in [1], is to make a static condensation of the m SS d.o.f. internal to the substructure. Distinguishing between the quantities coming from the substructure (S) and the tested structure (T), system (4) may be split into S

ˆ ij M

S

ˆ iβ M

S n+1 ˆf i

a jn + 1

0

n+1 n+1 ˆ αβ + SM ˆ αβ ) TM ˆ αJ • a βn + 1 = ( Tˆf α + Sˆf α ) ˆ αj ( TM M T T a Jn + 1 T n+1 ˆ Iβ ˆ IJ ˆf I 0 M M

S

(11)

If the unknowns a j are condensed, this system becomes T ˆ αβ + [ SM ˆ αβ – SM ˆ αj SM ˆ –ji1 SM ˆ iβ ] ) TM ˆ αJ ( M T

T

ˆ Iβ M

n+1

a βn + 1



=

T ( ˆf α

a Jn + 1

ˆ IJ M

n+1

S + [ ˆf α

n+1

S ˆ αj SM ˆ –ji1 Sˆf i – M

])

(12)

T n+1 ˆf I

and S

n+1

ˆ ij a jn + 1 = Sˆf i M

S ˆ iβ a βn + 1 – M

(13)

where (12) is now the system over m T d.o.f. to be solved by the controller process and (13) a system that can be solved afterwards and elsewhere, in particular by a concurrent process dedicated to the substructure.

2.3 Data flow between the PSD controller process and the substructuring process Consider an existing PSD/ α -OS algorithm, for which the generalized mass matrix corresponding to the tested structure alone is already known

T

T

ˆ = M

ˆ αβ TM ˆ αJ M

T

ˆ Iβ M

T

(14)

ˆ IJ M

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

5 of 21

SOME SIMPLE NOTES ABOUT SUBSTRUCTURING

In order to take into account the substructure, this matrix should be modified. According to (12), T ˆ αβ is modified by the following additional generalized mass term only the term M SC

ˆ αβ = SM ˆ αβ – SM ˆ αj SM ˆ ji–1 SM ˆ iβ M

(15)

This term is supplied by the process running the substructure through a condensation. Note that this condensation only requires the knowledge of the m ST d.o.f. which are in connection with the tested structure. During the time loop, at the end of the measuring phase of the test, the generalized effective force

T n+1

ˆf

=

T n+1 ˆf α

(16)

T n+1 ˆf I n+1

T should be also modified. According to (12), only the term ˆf α tional term SC n + 1 ˆf α

n+1

S = ˆf α

is modified by the following addi-

n+1

S ˆ αj SM ˆ –ji1 Sˆf i – M

(17)

This term is supplied by the process running the substructure, and may be computed during the measuring phase of the controller. The solution of (12) being performed by the controller, the value of the acceleration at the connecting nodes C n+1 aβ

= a βn + 1

(18)

has to be supplied to the substructuring process, which in turn is able to compute the solution of (13). It is now possible to summarize the various operations performed on one hand by the PSD controller process and, on the other hand, by the process which handles the substructure, and also to sketch the data flow between the two processes (Fig. 1).

2.4 Some remarks concerning the substructuring process In the same way the experimental setup has to be rather flexible, the substructuring process should be able to account easily for any new substructures. The computer code CASTEM 2000 offers this flexibility since at the same time • the implementation of any integration schemes can be realized in a way which is fully independent of the structure (note that this aspect also includes the operator which realizes in practice the static condensation (15) and the related operations (17) and (13)), • very complex substructures may be modelled and various tools (mechanical computations, preand post-processing capabilities) are available in order to assess this modelling.

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

6 of 21

SOME SIMPLE NOTES ABOUT SUBSTRUCTURING

PSD controller process

ˆ is added to TM ˆ M

and v˜

T n+1 is added to ˆf

T n+1

after solving (12)

is measured

are computed (4)



is imposed and r˜

T n+1



is computed (7) ˆf

SC n + 1

is extracted from a

are computed (8)

T n+1

a

C n+1

and v

T n+1

Make n = n + 1

T n+1

d

T n+1

T n+1

ˆf

T n+1

time loop, index n

SC

ˆ is initialized (6) M

Substructuring process

Data flow

T

ˆ M

SC

ˆf

SC n + 1

S ˆ Compute (6) M S ˆ on the α -d.o.f. Condense (15) M

time loop, index n S n+1

and v˜

S n+1

Compute (4) d˜ S e = K ⋅ d˜

S n+1

S n+1

Compute r˜ S n+1 Compute (7) ˆf S n+1 Condense (17) ˆf on the α -d.o.f. C n+1

using a

S n+1

and v

S n+1

Solve (13) for a S n+1

Compute (8) d

Make n = n + 1

Figure 1-Data exchange between the substructuring process and the PSD process

7 of 21

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

BERKELEY SOCKETS AND WORK AROUND

3. BERKELEY SOCKETS AND WORK AROUND 3.1 General considerations Assume that two concurrent processes are running, one on a PC (PSD controller) and the other on a UNIX-workstation (substructure). An efficient intercommunication method for exchanging informations between the two processes needs to be: • Standard: the method should be based on existing and easily accessible tools. This is the only way to ensure that the development will remain valid for a long time. This is also the only way to ensure the reliability of the development, and its possible conceptual reusability in the sense that it is always possible to reuse it in another context, or even to extend it. • Transparent: the implementation of the method should not affect any functionality of the two processes. As an example, a first naive implementation of an intercommunication procedure, based on intermediate data files and semaphore was found to be incompatible with the use of any graphical capabilities of CASTEM 2000. • Simple: the method should fit as much as possible to the data transmission flow of Fig. 1, and to its synchronization. For example, the availability of a “blocked read”, i.e. the process sleeps until it has received the amount of informations requested, is preferable to any tricky introduction of crossed semaphores. The Berkeley sockets (see e.g. [3][4]) offer these three features. They are standard for UNIX and Internet TCP/IP domain, they are widely used and, consequently, available for network applications: for instance the X-Window communication scheme is based on sockets. In addition their “system calls” have the same name and syntax on PC and workstation, and are accessible through almost the same C routines. The Berkeley sockets are effectively transparent: the behaviour of CASTEM 2000 does not seem to be affected by the establishment of a connection between two processes via sockets. Last but not the least, the data flow sketched in Fig. 1 may be implemented using (blocked) read and write order.

3.2 Socket overview The connection interface is available via a Client/Server protocol (see Fig. 2). A server performs some initialization and waits for any connection request. A client asks for the effective establishment of the communication. Some works, based on the existence of this duplex communication line (both the server and the client may read and write), are realized. At the end, the client closes the communication. It is important to understand that, once the connection is established, the read, write and close functionalities are the standard ones, which are provided by any standard implementation of the C library. More precisely, the write routine transfers the content of a (character) buffer of a specified size on a file, which corresponds in fact to one end of the socket communication line, whereas the read routine copies the content of a file, which corresponds in fact to the other end of the socket communication line, in a (character) buffer. As usual, the read blocks the process until the requested number of characters is available. The server may be concurrent or incremental. A concurrent server is able to give services to different clients at the same time whereas an incremental server satisfies the requests of various clients in sequence, one client at a time: the next request is accepted only once one client or the server closes the communication. The various steps for the establishment of the socket communication line are different for the server and for the client (see Fig. 2). These steps can be easily understood by making a phone installation

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

8 of 21

BERKELEY SOCKETS AND WORK AROUND

Server

Client

socket()

bind()

listen()

accept() blocks until connection from client

socket() connection establishment connect() data (request)

write()

read()

write()

data (reply) read()

close()

close()

Figure 2-Socket system call (from [4])

analogy. The communication can be established only if the server (the person which is called) and the client (the person which calls) have... a phone. The installation of the phone device is realized using the socket routine, which specifies the desired communication protocol. After the phone device has been installed, the server needs a phone number in order to be called: the registration is performed by adding a line to a system configuration file which acts as a phone directory book (like /etc/services on a UNIX system), while the effective association of the server’s phone and its number is realized by the bind routine. At this point, the server is able to receive any (phone) calls. The fact is specified by the routine listen. If now the client dials on his own phone, the number of the server’s phone, it rings, and, if the server is available, he takes off his phone, using the accept routine. From this moment, both client and server can speak or listen (even both at the same time) using the write and the read routines. They can also do specific actions related or not to the communication. At the end of the phone call, the server or the client hang up, closing the connection by the close routine.

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

9 of 21

BERKELEY SOCKETS AND WORK AROUND

The above phone analogy describes the behaviour of an incremental server. The description of a concurrent server is less simple. In fact, according to the same analogy, the server would be able to make a replica of himself and his phone each time the connection with a client is established. The replica is then in charge of the dialogue with the client while the original server waits for another call.

3.3 Basic choices MiNi-PDTM is a C program running on a PC whereas CASTEM 2000 is schematically a FORTRAN program running on a workstation. In order to avoid any problem related to the internal storage of the relevant informations the two processes have to exchange, it was decided to transfer only ASCII character strings. Moreover, since the printed format of a real number or even a character string differs slightly between C and FORTRAN, it was decided to force any FORTRAN developments to comply with the C developments, for instance • by taking care of the NULL character which always ends a string in C, • by taking care of the exponent of a (printed) floating number which is 3 digits wide in C and only 2 digits wide in FORTRAN. This point of view was also adopted for the processes: CASTEM 2000 works as an (incremental slave) server for the MiNi-PDTM (master) client. Two types of informations are transmitted through the communication line: • long character strings containing a vector of floating point numbers. These vectors represent the SC ˆ , SCˆfn + 1 and Can + 1 various physical informations the two processes have to exchange (say M of Fig. 1). Of course, before each test, the number, the meaning and the ordering of the connection variables have to be carefully defined for the two processes,

• short character strings containing a command word. As a matter of fact, the current implementation of MiNi-PDTM allows the control process to be paused, restarted at the beginning or stopped at any time step, via a keyboard interruption. The substructuring process, which runs as a slave for the controller process, should be also informed about the status of the controller in order to pause, restart or stop as well. It was decided that MiNi-PDTM would send to CASTEM 2000, just before C n+1

the acceleration vector a on the connection d.o.f., a command word which can take four values: ‘SS_CONTINUE’, ‘SS_PAUSE ’, ‘SS_RESTART ’, ‘SS_STOP ’. The pause command being only an information, MiNi-PDTM should also send to CASTEM 2000 another short string in order to inform it about what to do after the pause.

3.4 Implementation 3.4.1 Basic set of routines A library of C routines, with self explanatory names, have been first designed: InitClient, InitServer, WriteSocket, ReadSocket and CloseSocket. Initially, the same set of routines has been implemented on both UNIX system and PC (under PC-NFS). This set is now slightly different on the two types of hardware for the following reasons: • the UNIX routines are directly interfaced with FORTRAN (name of the routine without capital letters, almost all arguments exchanged only by pointers, implementation subtleties associated with the exchange of character strings, etc.),

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

10 of 21

BERKELEY SOCKETS AND WORK AROUND

• the UNIX kernel offers various possibilities which ensure the full safety of the communication, in particular the select system call is used for implementing a timeout for the accept and the read routines, in such a way the user may specified the maximum time CASTEM 2000 is able to wait when the communication is to be established (the server is blocked until a client calls) and when data are expected (the server or the client are blocked until the data are totally available), • in order to increase the potential reusability of the development for CASTEM 2000, the library includes the effective implementation of an incremental server, which supposes a very careful policy for the closure of the communication line (use of the shutdown system call in order to prevent the socket to receive data during the execution of close, use of the SO_LINGER option for the socket’s closure which disregards all the non-received data on the communication line). 3.4.2 The ‘CHAU’(SSETTE) operator in CASTEM 2000 MiNi-PDTM is a specific program which can use directly the basic set of socket routines. CASTEM 2000 is a general purpose object-oriented program implementing, as user-interface, an internal high level language GIBIANE. In fact any user of CASTEM 2000 is creating, manipulating and deleting objects by means of operators, using the GIBIANE language. In order to allow the user to perform socket operations at the GIBIANE level, a new operator, ‘CHAU’(SSETTE), the french word for socket, has been implemented. This operator is, in turn, based on the basic set of C routines. The english manual of the operator ‘CHAU’ is given in annex 1. Basically, this operator allows to open a communication line (service CASTEM/number 2000), either in the server mode on the current host, or in the client mode with any registered host, to write objects of type ‘word’ or ‘list-offloating-numbers’, to read objects of type ‘word’ or ‘list-of-floating-numbers’, and to close the communication line. 3.4.3 Low level tests Various series of low level tests have been realized in order to verify the implementation and to check the reliability of the communication line: • C programs able to exchange informations with each other have been first developed in order to assess the basic set of routines. UNIX to UNIX and UNIX to PC communications have been tested. • GIBIANE input texts, representative of the communication work to be performed during a PSD test with substructuring, have been realized in order to test the ‘CHAU’ operator. Two input texts (one for the server and one for the client) are given in annex 2 as an illustration of the use of this operator. • A C process on the PC (with the same logic and the timing of MiNi-PDTM) communicating with a CASTEM 2000 process has then been tested in order to assess the communication method in conditions close to the working one. As a broad conclusion of this set of tests, it can be said that the UNIX to UNIX communication is 100% safe, whereas the UNIX to PC communication sometime totally blocks in read at the PC level in such a way the PC has to be rebooted. Two implementations of the Berkeley sockets for PC have been checked (PC-NFS and PC-TCP), both of them giving this undesirable problem. Further possibilities are investigated (isolate the UNIX and the PC from the rest of the network during a test, use of the PC in a multi-task framework such as Windows NT) in order to increase the reliability of the communication.

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

11 of 21

AN ELEMENTARY PSD TEST USING SUBSTRUCTURING

4. AN ELEMENTARY PSD TEST USING SUBSTRUCTURING An experimental validation of the overall procedure has been realized in a simple elastic case. A full scale three-storey one-bay steel frame has been extensively tested using the PSD method by controlling the horizontal displacement of each storey [9]. In particular, data from a PSD spring back test were available. It is recalled that a spring back test is mainly a free vibration test: the structure is loaded statically at the top storey, the load is removed at time t = 0 and the resulting free vibrations of the structure are measured. This type of test is particularly interesting, since the true dynamic response of the structure may be compared to its PSD response, provided that the initial load is low enough so that the structure behaves elastically. The system being linear, the principle of superposition can be applied and, in particular, it is possible to retrieve experimentally the displacement of the first storey by controlling only this storey and using the substructuring technique (see Fig. 3). Note that the substructure in this case is virtual in the Controlled d.o.f

10m

5m

5m Steel frame structure

3 d.o.f. structure

1 d.o.f. structure

Figure 3-Elementary PSD test on the steel frame structure

sense that the upper storeys of the tested structure are not removed. In particular the stiffness of this virtual substructure is obtained by taking away (substraction) the stiffness of the 1 d.o.f structure to the stiffness of the 3 d.o.f structure of Fig. 3. Starting from the PSD-spring back test using actuators located at each three storey, the following work has been performed: • identification of the stiffness of the 3 d.o.f. structure through a static experiment (3x3 matrix), • identification of the stiffness of the 1 d.o.f structure, i.e. the complete frame loaded by a unique actuator located at the first storey, through a static experiment (1x1 matrix), • evaluation of the physical damping of the structure from the results of the 3 d.o.f. PSD spring back test, • calibration of the virtual substructure completing elastically the 1 d.o.f structure, • realization of the PSD spring back test with the 1 d.o.f structure and substructuring. The comparison between the first storey displacement for the two PSD tests, performed on the 3 d.o.f. and the 1 d.o.f. structures, is reported on Fig. 4. The curves are in very good agreement at the beginning of the test. Note in particular the positive displacement just at the beginning, which is due to the contribution of the third mode of vibration and which would not have been observed in the 1 d.o.f. structure without substructuring. Even if the first mode is still well represented, the response of the 1 d.o.f. structure slightly diverges from the response of the 3 d.o.f. structure after some cycles. This seems to be due to an insufficient modelling of the damping: the model is too crude and/or the effective physical damping associated with the 1 d.o.f structure is underestimated.

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

12 of 21

A BRIDGE DEMONSTRATION OF SUBSTRUCTURING

First storey horizontal displacement (mm).

Full spring-back

2.00

Substructured spring-back 1.00 .00 -1.00 -2.00 -3.00 -4.00 -5.00 -6.00 Time (sec) -7.00 .00

.15

.30

.45

.60

.75

.90

1.05

1.20

1.35

1.50

Figure 4-Comparison between full spring-back and spring-back with substructuring

Although the results are not perfect, the feasibility of a test with substructuring has been demonstrated.

5. A BRIDGE DEMONSTRATION OF SUBSTRUCTURING In order to illustrate the potentialities of the PSD method with substructuring in the case of bridges, a 3-D graphical demonstration has been elaborated. As shown on Fig. 5, this demonstration uses the elastic 3-D finite element model of an existing irregular bridge studied in [10], split into two parts: the piers and the deck. The connection between the two parts is assumed to be a perfect transmission of the lateral displacement and no transmission of momentum (hinges). The simulation of the PSD testing of the piers, using one numerical actuator at the top of each pier, i.e. controlling each connection d.o.f., is realized by one CASTEM 2000 process while the substructure is handled by another CASTEM 2000 process. The two processes exchange informations as sketched on Fig. 1. The seven first natural frequencies and modes of the full bridge are presented on Fig. 6. These frequencies and modes are almost identical for the PSD bridge obtained by condensing the stiffness and the mass of the piers at their top. Thus, at least in the elastic range, no difference is expected between the dynamic response of the full bridge and the PSD response of the bridge with substructuring, if the frequency range of the base acceleration a b is sufficiently low. For the current graphical demonstration, an harmonic excitation is imposed ab = a b0 sin ( 2πζt ) a b0 = 3ms

–2

ζ = 2Hz

(19)

and the frequency ζ is chosen so as to activate the non-symmetric vibration modes of the bridge.

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

13 of 21

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

Actuators (structure) Measure f

Compute & impose d

PSD controller process

DECK (simulated substructure)

Network communication via Berkeley Sockets

Castem 2000 (substructure)

PSD testing with substructuring

Pier section

Figure 5-Synopsis of the graphical demonstration of PSD testing with substructuring applied to a bridge

PIERS (tested structure)

Various deck sections

BRIDGE

A BRIDGE DEMONSTRATION OF SUBSTRUCTURING

14 of 21

A BRIDGE DEMONSTRATION OF SUBSTRUCTURING

1st pier 2nd pier

4th pier

3rd pier

1.123

HZ

1.886

HZ

2.069

HZ

3.409

HZ

3.661

HZ

5.224

HZ

5.520

HZ

Figure 6-first lateral vibration modes and frequencies of the structure (

The system (1) is integrated for the relative motion of the bridge ( f = Ma b ). The time step ∆t is 0.02s (cut-off frequency of 25Hz). The resulting displacement of the PSD-controlled points are reported on Fig. 7. Note that the four lateral displacements of the piers are in phase at the beginning Depl. .15

.10

.05

.00

-.05

1st pier 2nd pier

-.10

3rd pier 4th pier Time

-.15 .00

.20

.40

.60

.80

1.00

1.20

1.40

1.60

1.80

2.00

Figure 7-Displacement of the top of the piers during the PSD test

but rapidly exhibits strong phase differences after one period of excitation.

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

15 of 21

CONCLUDING REMARKS

Although the d.o.f of the piers have been condensed in 4 points, all the d.o.f. of the deck have been kept for the integration of the equations of the motion of the substructure. Due to the very high natural frequencies introduced by such a discretization, the use of an implicit time-integrator is mandatory. Moreover, even working with double precision numbers, the cumulated error associated with the numerous high frequency modes is large enough to perturb the solution when the α -OS algorithm is used without numerical damping ( α = 0 ). The results of Fig. 7 are obtained by taking α = – 0.1 . This is an illustration of how the α -method works, by selectively damping out only the strongly distorted high modes of the model and thus producing consistent results with respect to the frequency range of the analysis, determined by the base excitation. During the graphical demonstration, the deformed shape of each part of the structure is displayed at n

each time t by each process (the displacement field has been obviously magnified). In addition, the effective reaction forces are represented by mean of arrows on the PSD structure, while the displacement of the connection points is highlighted in the same way on the substructure.

6. CONCLUDING REMARKS This note presented how the well known substructuring technique has been implemented at the ELSA laboratory by reusing existing capabilities (MiNi-PDTM for the PSD testing and CASTEM 2000 for the numerical simulation of complex structures) and making them working together by mean of a communication line (Berkeley Sockets). A first experimental validation test has been realized while the interest of the approach has been illustrated by a graphical demonstration. What to do next? • At the experimental level, a campaign of tests is to be performed on a set of irregular 3-pier bridges. • At the simulation level, some (non-linear) studies are currently being performed in order to validate the assumptions in the modelling of the connection between the tested structure and the substructure (transmission or no transmission of bending moment, etc.). • At the programming level, the Berkeley sockets offer powerful network transmission capabilities which can be used in other situations, e.g. graphical co-process, multi-level computations, etc.

ACKNOWLEDGEMENTS The authors would like to thank Michel AMSALEM and Kent MEHR who gave strategic suggestions for the use of the Berkeley sockets, Georges MAGONETTE who supported the modification of MiNi-PDTM and included the simple test in the planning of the 3-storey steel frame, Joao GUEDES who helped in the design of the ‘numerical’ bridge of the demonstration.

REFERENCES [1] DERMITZAKIS, S.N. and MAHIN, S.A., Development of substructuring techniques for on-line computer controlled seismic performance testing, Report No. UCB/EERC-85/04, Earth. Eng. Research Center, Univ. of California, Berkeley, CA, USA, 1985. [2] CASTEM 2000, Guide d’utilisation, CEA, Saclay, France, 1990. [3] UNIX Programmer’s Reference Manual (PRM), 4.3 Berkeley Software Distribution, Comput. Sys. Research Group, Comput. Science Div., Univ. of California, Berkeley, CA, USA, 1986. [4] STEVENS, W.R., UNIX network programming, Prentice-Hall, Englewood Cliffs, NJ, USA, PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

16 of 21

ANNEX 1- MANUAL OF THE ‘CHAU’SSETTE OPERATOR

1990. [5] COMBESCURE, D., PEGON, P., Alpha-operator splitting time integration technique for pseudodynamic testing, JRC-Special Publication, to appear, 1994. [6] HILBERT, H.M., HUGHES, T.J.R. and TAYLOR, R.L., Improved numerical dissipation for time integration algorithms in structural dynamics, Earthquake Eng. Struct. Dyn., Vol. 5, pp. 283292, 1977. [7] HUGHES, T.J.R., PISTER, K.S. and TAYLOR, R.L., Implicit-explicit finite elements in nonlinear transient analysis, FENOMECH’78. [8] NAKASHIMA, M., KATO, H., Experimental Error Growth Behavior and Error Growth Control in On-line Computer Test Control Method, BRI-Report, Japan, 1987. [9] KAKALIAGOS, A., Pseudo-Dynamic Testing of a Full Scale Three-Storey One-Bay Steel Moment-Resisting Frame: Experimental and Analytical Results, JRC-EUR Report No. EUR 25605 EN, 1994. [10] VAZ, C.J.A.M.T., Seismic behaviour of bridges with R/C piers (in portuguese), PhD Thesis, Eng. Department, Porto University, 1992.

ANNEX 1- MANUAL OF THE ‘CHAU’SSETTE OPERATOR This annex presents the english manual of the ‘CHAU’ssette operator of CASTEM 2000. This manual can be obtain interactively using the operator ‘INFO’rmation. Operator CHAUSSETTE ------------------ENT1 =CHAU ’SERVEUR’ ENT1 =CHAU ’CLIENT’ MOT1; ENT1 =CHAU ’ECRITURE’ LREE1 (’ECHO’) ENT1 =CHAU ’ECRITURE’ MOT2 (’ECHO’) ENT1 LREE2=CHAU ’LECTLIST’ ENT2 (’ECHO’) ENT1 MOT3 =CHAU ’LECTUMOT’ ENT2 (’ECHO’) ENT1 =CHAU ’FERMETUR’ (’COMPLETE’);

(’ATTENTE’ ENT4); (’ATTENTE’ (’ATTENTE’ (’ATTENTE’ (’ATTENTE’

ENT4); ENT4); ENT4); ENT4);

Object: ------The CHAUSSETTE [socket] operator allows to open a communication line (service CASTEM/number 2000) either as a server on the current host (using the key word ’SERVEUR’ [serveur]) or as a client of a remote host (using the key word ’CLIENT’ followed by the name of the remote host). It is then possible to write on the line (key word ’ECRITURE’ [writing]) either the sequence of real number LREE1 (object of type ’LISTREEL’ [list-of-floatingnumber]) or the word MOT1 (type ’MOT’ [word]). It is also possible to read on the line (key word ’LECTLIST’) the sequence of ENT2 (type ’ENTIER’ [integer]) real numbers LREE2 (object of type ’LISTREEL’ [list-of-floating-number]) or (key word ’LECTUMOT’) the character string MOT3 (type ’MOT’ [word]) made of ENT3 (type ’ENTIER’ [integer]) characters. When the line is no longer useful, it is closed (key word ’FERMETURE’ [closure]).

Remarks: --------

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

17 of 21

ANNEX 2: SAMPLE GIBIANE INPUT FOR TESTING THE COMMUNICATION BETWEEN TWO CASTEM 2000 PROCESSES

Since the read options imply the blocking (with a timeout) of CASTEM 2000 until the requested data are available, CHAU not only allows to implement a full duplex inter process communication line, but also a semaphore. When a data transmission is requested, it is optionally possible to work with an echo. For a reading request, the received informations are echoed to the sender, for a writing request, ’CHAU’ waits (with a timeout) for the echo of the sent informations, which are then compare to the original ones. Almost all the operation are performed with a default wait timeout of 30 seconds. This timeout may be optionally modified using the key word ’ATTENTE’ [wait] followed by the number ENT4 (type ’ENTIER’ [integer]) of timeout seconds. ENT1 (type ’ENTIER’ [integer]) is a return code which allows to verify if the specified operation has been effectively realized. The following codes are available: ENT1= 1: ENT1=-1: ENT1=-2: ENT3=-3:

no problem the operation cannot be realized at the line level data non available on the network within the timeout the echo of the transmitted informations are not good

When ’CHAU’ is operating in server mode, the line can be closed completely (key word ’COMPLETE’ [full]) or partially (default). If the closure is only partial, the server can operate in incremental mode and is able to satisfy the connection request of any client, even if this request was performed before the server’s closure. In order to specify that the server is again ready for a connection, the use of 'CHAU' with the option 'SERVEUR' is however required. Obviously, when the server’s closure is incomplete, the line cannot be opened in clients’s mode. Finally, in the case of a complete closure, a re-opening of the line in server’s mode is possible only when all the potential clients of the previous server have closed.

ANNEX 2: SAMPLE GIBIANE INPUT FOR TESTING THE COMMUNICATION BETWEEN TWO CASTEM 2000 PROCESSES The first GIBIANE input (chauS1.dgibi) concerns the server-process. **************************************************************** * TEST OF THE CHAUSS OPERATOR: chauS1.dgibi * * This test implements an iterative server in CASTEM 2000. * * Each iteration of the server realizes a substructuring-like * task at the level of the data transferred (timeout=60 seconds): * 0 - Activate the server and wait for a client. * If NO client attempts to connect, go to 3. * 1 - Read with echo the 10-character key-word 'S_OK ' send by * the client. * 2 - Make a loop. * 2.1 - At the first iteration, send with echo a floating number * (LISTREEL with one element). * 2.2 - Send with echo a floating number (LISTREEL with one * element). * 2.3 - Read with echo a 10-character key-word. * if 'S_CONTINUE' is received go to 2.4. * if 'S_STOP ' is received go to 0 without error, * after having incompletely closed the server. * 2.4 - Read with echo a floating number (LISTREEL with one PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

18 of 21

ANNEX 2: SAMPLE GIBIANE INPUT FOR TESTING THE COMMUNICATION BETWEEN TWO CASTEM 2000 PROCESSES

* element). * 2.5 - go to 2.1. * 3 - close completely the server and quit CASTEM 2000. * * A client compatible with chauS1.dgibi is chauC1.dgibi * Such a client should be ran AFTER the server starts. ****************************************************************** *opti echo 1; * mc1=’S_CONTINUE’; ms1=’S_STOP ’; mo1=’S_OK ’; lr1=prog 0.0; lf1=lr1; * jj=0; repeter lab2;jj=jj+1; mess ’wait for the client number’ jj; i1=chau ’SERVEUR’ ’ATTENTE’ 60; si (i1 neg 1); quitter lab2; finsi; i1 m1=chau ’LECTUMOT’ 10 ’ECHO’ ’ATTENTE’ 60; si (neg m1 mo1); quitter lab2; finsi; * j=0;repeter lab1;j=j+1; * mess ’ ’; mess ’time step number’ j; si (mult j 500); mena; finsi; * si (j ega 1); mess '--> I send the initial additional generalized mass’; i1=chau 'ECRITURE' lr1 'ECHO' 'ATTENTE' 60; si (i1 neg 1); quitter lab1; finsi; finsi; * mess '--> I send the additional forces'; i1=chau 'ECRITURE' lf1 'ECHO' 'ATTENTE' 60; si (i1 neg 1); quitter lab1; finsi; * mess '--> I read a command word'; i1 m1=chau 'LECTUMOT' 10 'ECHO' 'ATTENTE' 60; si (ega m1 ms1); quitter lab1; finsi; si (neg m1 mc1); quitter lab1; finsi; * mess '--> I read the acceleration'; i1 la1=chau 'LECTLIST' 1 'ECHO' 'ATTENTE' 60; si (i1 neg 1); quitter lab1; finsi; * fin lab1; * i1=chau 'FERMETURE'; * fin lab2; * i1=chau 'FERMETURE' 'COMPLETE'; * fin;

The second GIBIANE input (chauC1.dgibi) concerns a client-process. It is assumed that the server is running on the UNIX-host called ‘ulla’. *****************************************************************

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

19 of 21

CONCLUDING REMARKS

* TEST OF THE CHAUSS OPERATOR: chauC1.dgibi * * This test implements a client of an iterative server in * CASTEM 2000. The server is supposed to run on the host “ulla”. * * At each connection attempt, the client performs the following * tasks which are substructuring-like when the connection is * successful: * 0 - Connect the server. * 1 - Write with echo the key word ''S_OK '. If the echo * is not received within 5 seconds, close the client and * go to 0. * 2 - Make a loop (here 50 iterations). * 2.1 - At the first iteration, read with echo a floating number * (LISTREEL with one element). * 2.2 - Read with echo a floating number (LISTREEL with one * element). * 2.3 - Read with echo a 10-character key-word. * if 'S_CONTINUE' is sent, go to 2.4. * if 'S_STOP ' is sent, go to 2.6 without error. * 2.4 - Read with echo a floating number (LISTREEL with one * element). * 2.5 - go to 2.1. * 2.6 - close the client and quit K2000. * * A server compatible with chauC1.dgibi is chauS1.dgibi. Such a * server should be running BEFORE the client starts. ****************************************************************** *opti echo 1; * nbiter=50; mc1='S_CONTINUE'; ms1='S_STOP '; mo1='S_OK '; la1=prog 1234.56789; * lok=vrai; j=0;repeter lab1;j=j+1; mess 'tentative of connecting the server number' j; i1=chau 'CLIENT' 'ulla'; i1=chau 'ECRITURE' mo1 'ECHO' 'ATTENTE' 5; si (i1 ega 1) ; quitter lab1; finsi; si (i1 neg -2); lok=faux; quitter lab1; finsi; i1=chau 'FERMETURE'; fin lab1; * si lok; j=0;repeter lab1;j=j+1; * mess ' '; mess 'time step number' j; * si (j ega 1); mess '--> I receive the additional generalized mass’; i1 lr1=chau 'LECTLIST' 1 'ECHO'; si (i1 neg 1); quitter lab1; finsi; finsi; * mess '--> I receive the additional forces'; i1 lf1=chau 'LECTLIST' 1 'ECHO';

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

20 of 21

CONCLUDING REMARKS

si (i1 neg 1); quitter lab1; finsi; * mess ’--> I send a command word’; si (j ega nbiter); i1=chau ’ECRITURE’ ms1 ’ECHO’; quitter lab1; sinon; i1=chau ’ECRITURE’ mc1 ’ECHO’; si (i1 neg 1); quitter lab1; finsi; finsi; * mess ’--> I send the acceleration’; i1=chau ’ECRITURE’ la1 ’ECHO’; si (i1 neg 1); quitter lab1; finsi; * fin lab1; finsi; * i1=chau ’FERMETURE’; * fin;

PSD TESTING WITH SUBSTRUCTURING: IMPLEMENTATION AND USE

21 of 21

Suggest Documents