UBC Theses and Dissertations

UBC Theses Logo

UBC Theses and Dissertations

A visualization of an experiment on a shake table Penn, Michael 1991

Your browser doesn't seem to have a PDF viewer, please download the PDF to view this item.

Item Metadata

Download

Media
831-UBC_1991_A6_7 P46.pdf [ 2.63MB ]
Metadata
JSON: 831-1.0051981.json
JSON-LD: 831-1.0051981-ld.json
RDF/XML (Pretty): 831-1.0051981-rdf.xml
RDF/JSON: 831-1.0051981-rdf.json
Turtle: 831-1.0051981-turtle.txt
N-Triples: 831-1.0051981-rdf-ntriples.txt
Original Record: 831-1.0051981-source.json
Full Text
831-1.0051981-fulltext.txt
Citation
831-1.0051981.ris

Full Text

A V i s u a l i z a t i o n o f an E x p e r i m e n t on a Shake T a b l e by M i c h a e l Penn B . S c , The Hebrew U n i v e r s i t y o f J e r u s a l e m B.Sc, T e c h n i o n , H a i f a A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE i n THE FACULTY OF GRADUATE STUDIES COMPUTER SCIENCE We a c c e p t t h i s t h e s i s a s c o n f o r m i n g t o t h e r e q u i r e d s t a n d a r d THE UNIVERSITY OF BRITISH COLOMBIA JANUARY 1991 © M i c h a e l Penn, 1991 In presenting this thesis in partial fulfilment of the requirements for an advanced degree at the University of British Columbia, I agree that the Library shall make it freely available for reference and study. I further agree that permission for extensive copying of this thesis for scholarly purposes may be granted by the head of my department or by his or her representatives. It is understood that copying or publication of this thesis for financial gain shall not be allowed without my written permission. Department of C ^ g w / > u r £ < Sctgrf<£ The University of British Columbia Vancouver, Canada Date J > V \% 17*/. DE-6 (2/88) ABSTRACT A m o d e l t o e n a b l e a g r a p h i c s p r e s e n t a t i o n o f an e x p e r i m e n t h a s b e e n d e v e l o p e d . The model was d e v e l o p e d s p e c i f i c a l l y f o r e x p e r i m e n t s r u n on a s h a k e t a b l e f o r e a r t h q u a k e s i m u l a t i n g t e s t s b u t c o u l d be u s e d f o r any e x p e r i m e n t t h a t i n v o l v e s movement and i n s t r u m e n t a t i o n . By i n t e g r a t i n g t h e r e s u l t s o b t a i n e d f r o m t h e i n s t r u m e n t s u s e d d u r i n g an e x p e r i m e n t i t i s p o s s i b l e t o d i s p l a y , on a computer s c r e e n , t h e m o t i o n o f t h e model b e i n g t e s t e d . By u s e o f v i s u a l i z a t i o n t e c h n i q u e s i t i s p o s s i b l e t o o b t a i n a g r a p h i c a l r e p r e s e n t a t i o n o f a l l t h e i n s t r u m e n t s b e i n g u s e d and t h e r e b y p r o d u c i n g a p i c t u r e o f t h e e n t i r e e x p e r i m e n t . i i T A B L E OF CONTENTS A B S T R A C T i i INTRODUCTION 1 S C I E N T I F I C V I S U A L I Z A T I O N 7 D E F I N I T I O N OF T H E P R O J E C T 11 D E F I N I T I O N OF A D I S P L A Y A B L E MODEL 11 T H E S C R I P T F I L E 14 T H E HEADER D E S C R I P T I O N 15 T H E NODES D E S C R I P T I O N 16 T H E SEGMENT D E S C R I P T I O N 21 AN E X A M P L E OF A STRUCTURE AND I T S S C R I P T F I L E . . . 24 CODE D E S C R I P T I O N 35 A B R I E F D E S C R I P T I O N OF T H E MODULES 35 T H E USER I N T E R F A C E 38 C A L C U L A T I O N S AND DRAWING ROUTINES 40 T H E DATA STRUCTURES 45 CONCLUSIONS 50 B I B L I O G R A P H Y 58 i i i INTRODUCTION The u s e o f c o m p u t e r s a s d a t a a c q u i s i t i o n s y s t e m s h a s e n a b l e d r e s e a r c h e r s t o c o l l e c t enormous amounts o f d a t a d u r i n g an e x p e r i m e n t . I t i s q u i t e common t o h a v e a s y s t e m o f t h i r t y two i n s t r u m e n t s a c q u i r i n g d a t a a t a r a t e o f 500 Hz f o r a p e r i o d o f 120 s e c o n d s . S uch a s y s t e m w o u l d p r o d u c e 60,000 s a m p l e s p e r i n s t r u m e n t and a b o u t 2,000,000 s a m p l e s a l t o g e t h e r . The e x p e r i m e n t may be r e p e a t e d many t i m e s a day. V a s t amounts o f d a t a c a n be a c c u m u l a t e d d u r i n g a d a y s work. The n e x t s t a g e i n t h e r e s e a r c h i s u s u a l l y months o f d a t a a n a l y s i s . T h e r e a r e a number o f p r o b l e m s t o be d e a l t w i t h d u r i n g t h e e x p e r i m e n t and a l s o d u r i n g t h e d a t a a n a l y s i s s t a g e . D u r i n g t h e e x p e r i m e n t t h e r e c o u l d be a p r o b l e m o f s e e i n g t h e o v e r a l l p i c t u r e o f t h e model b e i n g t e s t e d . I f movement i s i n v o l v e d , t h e human ey e i s u s u a l l y n o t c a p a b l e o f d e t e c t i n g e x a c t d i s p l a c e m e n t s . T h i s p r o b l e m a r i s e s when t h e d i s p l a c e m e n t s a r e s m a l l , t h e movements a r e r a p i d and a c c e l e r a t i o n s a r e i n v o l v e d . T h e r e f o r e , t h e r e i s a n e e d t o be a b l e t o r e p r o d u c e t h e e x p e r i m e n t on a s c r e e n . One method c o u l d be t o u s e s e v e r a l v i d e o c a m e r a s . A number o f p r o b l e m s a r e c o n n e c t e d t o t h e u s e o f v i d e o c a m e r a s i n o b t a i n i n g an o v e r a l l p i c t u r e o f a n e x p e r i m e n t . A number o f c a m e r a s must be u s e d t o s e e d i f f e r e n t a n g l e s o f t h e e x p e r i m e n t . T h i s i s c o s t l y and a l s o i t i s d i f f i c u l t t o v i e w a l l a n g l e s s i m u l t a n e o u s l y . A n o t h e r p r o b l e m i s t o o b t a i n e x a c t m e a s u r e m e n t s . The v i d e o e q u i p m e n t n e e d e d t o m e a s u r e s m a l l 1 d i s p l a c e m e n t s , o f .5 mm f o r example, and t o m easure r a p i d movements, i s v e r y e x p e n s i v e . A n o t h e r method c o u l d be t o u s e t h e a c t u a l d a t a f r o m t h e i n s t r u m e n t s i n an a t t e m p t t o r e p r o d u c e , g r a p h i c a l l y t h e o v e r a l l p i c t u r e o f t h e e x p e r i m e n t . T h i s p a p e r p r o p o s e s a m odel t o e n a b l e a g r a p h i c a l r e p r e s e n t a t i o n o f t h e e x p e r i m e n t . A n o t h e r p r o b l e m t h a t a r i s e s when many i n s t r u m e n t s a r e i n v o l v e d i s t o d e t e r m i n e w h e t h e r a l l t h e i n s t r u m e n t s a r e f u n c t i o n i n g c o r r e c t l y . I t w o u l d be t o o l a t e t o d i s c o v e r a m a l f u n c t i o n i n g i n s t r u m e n t a t t h e t i m e o f d a t a a n a l y s i s . On t h e o t h e r h a n d t o c h e c k e a c h i n s t r u m e n t by c o n v e n t i o n a l methods, t h a t i s by v i e w i n g t h e o u t p u t g r a p h o f t h e i n s t r u m e n t a s a f u n c t i o n o f t i m e i s t i m e c o n s u m i n g and a l s o i n a c c u r a t e . A r e p l a y o f t h e e x p e r i m e n t , u s i n g t h e a c t u a l d a t a f r o m t h e i n s t r u m e n t a t i o n , w o u l d e n a b l e t h e d e t e c t i o n o f a m a l f u n c t i o n i n g i n s t r u m e n t . The m odel p r o p o s e d i n t h i s p a p e r e n a b l e s a v i e w on t h e s c r e e n o f t h e c o m p u t e r o f a l l t h e i n s t r u m e n t s i n v o l v e d i n t h e e x p e r i m e n t . I n one g l a n c e i t i s p o s s i b l e t o s e e t h e r e a c t i o n o f a l l t h e i n s t r u m e n t s . By e n a b l i n g t h e r e s e a r c h e r an o v e r a l l v i e w o f t h e e n t i r e e x p e r i m e n t t h e r e i s t h e p o s s i b i l i t y o f phenomena b e i n g d e t e c t e d t h a t were unknown o r u n e x p e c t e d . U s u a l l y , d u r i n g an e x p e r i m e n t t h e r e i s a f o c u s on a c e r t a i n a r e a o f t h e m odel b e i n g t e s t e d and o t h e r p a r t s may be n e g l e c t e d . An o v e r a l l p i c t u r e o f t h e m odel c o u l d h e l p i n d e t e c t i n g new phenomena. T h i s i s o b t a i n a b l e f r o m a g r a p h i c s r e p r e s e n t a t i o n s i n c e t h e w h o l e m o d e l c a n be 2 d i s p l a y e d . The m o t i v a t i o n f o r t h i s p a p e r came a s a r e s u l t o f work b e i n g done on t h e s h a k e t a b l e a t t h e E a r t h q u a k e L a b o r a t o r y i n t h e C i v i l E n g i n e e r i n g D e p a r t m e n t o f t h e U n i v e r s i t y o f B r i t i s h C o l o m b i a . The s h a k e t a b l e i s c o n t r o l l e d by an MTS h y d r a u l i c f e e d b a c k s y s t e m w h i c h i s d r i v e n by a m i c r o c o m p u t e r . An e x p e r i m e n t i n t h e l a b o r a t o r y i n v o l v e s p l a c i n g an o b j e c t , w h i c h i s u s u a l l y a model s i m u l a t i n g a s t r u c t u r e , on t h e s h a k e t a b l e and m o v i n g t h e t a b l e by c o n t r o l o f t h e c o m p u t e r . The t a b l e c o u l d be moved a c c o r d i n g t o an a c t u a l e a r t h q u a k e r e c o r d e d f i l e o r by any o t h e r waveform s u c h a s a s i n e wave. I n s t r u m e n t s a r e a t t a c h e d t o t h e m odel and t o t h e s h a k e t a b l e . The m i c r o c o m p u t e r c o n t r o l l i n g t h e s h a k e t a b l e a c q u i r e s t h e d a t a f r o m t h e i n s t r u m e n t s a t a s a m p l i n g r a t e o f up t o 500 Hz. T h e r e c o u l d be t h i r t y two i n s t r u m e n t s b e i n g s a m p l e d d u r i n g an e x p e r i m e n t . Some o f t h e m o d e l s b e i n g p l a c e d on t h e s h a k e t a b l e a r e o f l a r g e s i z e and mass. A model c o u l d be l a r g e r t h a n 3 x 3 m e t e r s . The maximum d i s p l a c e m e n t o f t h e t a b l e i s ±7 cm. The maximum a c c e l e r a t i o n o f t h e t a b l e i s 2.5 g. T h i s s i z e d m o d e l and t h i s k i n d o f movement makes i t v e r y d i f f i c u l t f o r human v i s i o n t o o b s e r v e what i s a c t u a l l y h a p p e n i n g a t t h e t a b l e . I t i s a l s o v e r y d i f f i c u l t w i t h t h e a i d o f an a v e r a g e v i d e o r e c o r d e r t o d e t e c t movements o f l e s s t h a n .5 cm. I n a d d i t i o n , t h e s i z e o f t h e m odel p r e s e n t s t h e p r o b l e m o f d e t e r m i n i n g what i s a c t u a l l y h a p p e n i n g a t a l l s i d e s and c o r n e r s a t e v e r y i n s t a n t o f t i m e . The model p r o p o s e d i n t h i s p a p e r w i l l a l l o w an e x p e r i m e n t 3 t o be d i s p l a y e d on a c o m p u t e r s c r e e n . A s i m p l e l a n g u a g e h a s b een d e v e l o p e d t o e n a b l e t h e r e p r e s e n t a t i o n o f a m o d e l on t h e s c r e e n a n d t o a l l o w d i f f e r e n t t y p e s o f i n s t r u m e n t s t o be d i s p l a y e d u s i n g d a t a t h a t h a s b e e n a c q u i r e d d u r i n g an e x p e r i m e n t . A s c r i p t f i l e must be w r i t t e n t o d e s c r i b e t h e m odel and t h e i n s t r u m e n t s b e i n g u s e d . T h e r e a r e v a r i o u s ways o f r e p r e s e n t i n g d a t a on t h e s c r e e n o f a c o m p u t e r . D a t a f r o m a d i s p l a c e m e n t m e a s u r i n g i n s t r u m e n t c a n be r e p r e s e n t e d by a c t u a l l y m o v i n g t h e o b j e c t b e i n g m e a s u r e d on t h e s c r e e n . D a t a f r o m i n s t r u m e n t s s u c h a s s t r a i n g a g e s , t h e r m o m e t e r s , a c c e l e r o m e t e r s c o u l d be r e p r e s e n t e d by t h e u s e o f c o l o r o r by t h e u s e o f v e r t i c a l b a r c h a r t s . The b r i g h t n e s s o r hue o f a c o l o r c o u l d r e p r e s e n t a p h y s i c a l measurement. The l e n g t h o f a b a r , i n a c h a r t , c o u l d r e p r e s e n t an i n s t r u m e n t s u c h a s an a c c e l e r o m e t e r . The s c r i p t f i l e e n a b l e s t h e u s e r t o d e s i g n h i s own r e p r e s e n t a t i o n o f t h e e x p e r i m e n t . E a c h i n s t r u m e n t c a n be r e p r e s e n t e d by any o f t h e above methods. Many a d v a n t a g e s o f r e p r e s e n t i n g d a t a on t h e s c r e e n o f a c o m p u t e r a r i s e f r o m t h e c a p a b i l i t i e s o f m a n i p u l a t i n g t h e d a t a . The d a t a c a n be m a n i p u l a t e d a t d i f f e r e n t l e v e l s . The a c t u a l d a t a f r o m t h e e x p e r i m e n t c o u l d be f i l t e r e d b e f o r e b e i n g r e p r e s e n t e d on t h e s c r e e n . D a t a c o u l d be s c a l e d t o e n a b l e an e a s i e r v i e w o f c e r t a i n a s p e c t s o f t h e m odel b e i n g t e s t e d . The s c r i p t f i l e a l l o w s d a t a m a n i p u l a t i o n s s u c h a s s c a l i n g , a d d i n g o f f s e t s t o f i l e s a n d a l s o a l l o w s f o r a d d i n g o r s u b t r a c t i n g f i l e s . T h i s l a s t c a p a b i l i t y a l l o w s f o r i s o l a t i n g c e r t a i n p a r t s o f t h e m o d e l . F o r 4 example, i f t h e model i s m o v i n g i n a h o r i z o n t a l a n d v e r t i c a l d i r e c t i o n , i t i s p o s s i b l e t o i s o l a t e t h e v e r t i c a l movement by s i m p l y s u b t r a c t i n g t h e h o r i z o n t a l movement. Then, b y s c a l i n g , a c l e a r v i e w o f t h e v e r t i c a l m o t i o n c a n be o b t a i n e d . A d e t a i l e d v i e w o f any s e c t i o n o f t h e s t r u c t u r e i s a t t a i n a b l e by a d d i n g more i n s t r u m e n t s i n t h e s p e c i f i c a r e a o f i n t e r e s t . I n t h i s way a c c u r a c y i s o b t a i n a b l e up t o t h e c a p a b i l i t i e s o f t h e i n s t r u m e n t a t i o n . D u r i n g t h e d i s p l a y o f t h e model on t h e c o m p u t e r s c r e e n , i t i s n e c e s s a r y t o a l l o w u s e r i n t e r a c t i o n . I t i s u s e f u l t o be a b l e t o s p e e d up t h e d i s p l a y , s l o w i t down o r e v e n s i n g l e s t e p t h r o u g h t h e d a t a . I t i s p o s s i b l e t o d i s p l a y t h e d a t a i n b o t h f o r w a r d and r e v e r s e modes. The u s e r s h o u l d be a l l o w e d t o f r e e z e t h e d i s p l a y a t any t i m e and be a b l e t o v i e w t h e a c t u a l m easurements b e i n g d i s p l a y e d . Zooming p a r t s o f t h e p i c t u r e c o u l d a l s o be a d v a n t a g e o u s . A l l t h e s e f e a t u r e s a r e e a s i l y accommodated by a g r a p h i c a l r e p r e s e n t a t i o n on t h e s c r e e n o f a c o m p u t e r . 5 An example of the screen during the display of an experiment can be seen i n figure 1. The window on the top l e f t side of the screen contains the structure and the shake table. The window on the bottom l e f t side contains a zoomed area of the f i r s t window. The windows on the r i g h t side of the screen are, st a r t i n g from the top of the screen, the ARROW window, the BAR COLOR window, the GRAPH window and the window of the actual r e s u l t s which can be created by using the HOLD function. These windows and t h i s experiment w i l l be described below. F i g u r e 1 The windows available for viewing the r e s u l t s of an experiment. 6 S C I E N T I F I C VISUALIZATION S c i e n t i f i c v i s u a l i z a t i o n h a s b e e n d e f i n e d a s f o l l o w s [1] : V i s u a l i z a t i o n i s a method o f c o m p u t i n g . I t t r a n s f o r m s t h e s y m b o l i c i n t o t h e g e o m e t r i c , e n a b l i n g r e s e a r c h e r s t o o b s e r v e t h e i r s i m u l a t i o n s and c o m p u t a t i o n s . V i s u a l i z a t i o n o f f e r s a method o f s e e i n g t h e u n s e e n . I t e n r i c h e s t h e p r o c e s s o f s c i e n t i f i c d i s c o v e r y and f o s t e r s p r o f o u n d and u n e x p e c t e d i n s i g h t s . T h i s d e f i n i t i o n s h o u l d be e x p a n d e d t o i n c l u d e v i s u a l i z a t i o n o f d a t a t h a t h a s b e e n a c q u i r e d f r o m an e x p e r i m e n t . I n a d d i t i o n , s c i e n t i f i c v i s u a l i z a t i o n d o e s n o t o n l y t r a n s f o r m t h e s y m b o l i c i n t o t h e g e o m e t r i c , b u t i n t o o t h e r v i s u a l f o r m s a s w e l l . F o r example, c o l o r b l o b s , where t h e c o l o r d e f i n e s t h e m e a s u r e d v a l u e . M o s t a r t i c l e s on t h e s u b j e c t o f s c i e n t i f i c v i s u a l i z a t i o n d e a l w i t h t h e p r o b l e m o f huge amounts o f d a t a . As t h e c o m p u t i n g power o f t o d a y ' s c o m p u t e r s i n c r e a s e , s o t h e amount o f a c q u i r e d d a t a i n c r e a s e s . The m a j o r g o a l o f s o f t w a r e p a c k a g e s i n s c i e n t i f i c v i s u a l i z a t i o n i s t o e n a b l e t h e r e s e a r c h e r t o v i s u a l i z e a c q u i r e d d a t a w i t h a minimum o f e f f o r t . F o l l o w i n g i s a s h o r t l i s t o f s o f t w a r e p a c k a g e s t h a t h a v e b e e n r e c e n t l y d e v e l o p e d f o r t h i s p u r p o s e . AVS [2] A p p l i c a t i o n V i s u a l i z a t i o n S ystem. T h i s i s a s o f t w a r e s y s t e m f o r d e v e l o p i n g i n t e r a c t i v e s c i e n t i f i c 7 v i s u a l i z a t i o n a p p l i c a t i o n s . AVS i s d e s i g n e d a r o u n d m o d u l e s t h a t c a n be i n t e r c o n n e c t e d t o f o r m v i s u a l i z a t i o n a p p l i c a t i o n s . The m a i n p u r p o s e o f AVS i s t o p r o v i d e t o o l s t o a l l o w t h e r e s e a r c h e r t o f o c u s on w r i t i n g c o d e t h a t d o e s t h e " r e a l work". Among t h e v i s u a l i z a t i o n t e c h n i q u e s u s e d i n AVS a r e : 1) V o x e l b a s e d v olume r e n d e r i n g t o v i e w 3D d a t a , w i t h o u t t h e g e o m e t r i c r e p r e s e n t a t i o n . 2) H i g h q u a l i t y volume r e n d e r i n g , w h i c h i s l i k e v o x e l b a s e d v o l u m e r e n d e r i n g b u t a l l o w s h i g h q u a l i t y f r a m e s by t h e u s e o f h i g h o r d e r i n t e r p o l a t i o n , a n t i a l i a s i n g , p e r s p e c t i v e and s o l i d t e x t u r e m a p p i n g . 3) I s o s u r f a c e t i l i n g . A t h r e s h o l d i s c h o s e n f o r a 3D s c a l a r f i e l d t h u s d e f i n i n g a c o n t o u r s u r f a c e , w h i c h i s a p p r o x i m a t e d by a c o n n e c t e d n e t o f p o l y g o n s . 4) P a r t i c l e a d v e c t i o n , i n w h i c h p a s s i v e t r a c e r s a r e moved t h r o u g h o u t t h e c o m p u t a t i o n a l domain i n a s i m i l a r manner t o a dye b e i n g u s e d t o t r a c k t h e f l o w o f a f l u i d . apE [3] V e r s i o n 2.0 i s a s o f t w a r e t o o l k i t f o r v i s u a l i z a t i o n d e v e l o p e d a t O h i o S t a t e U n i v e r s i t y . S c i e n t i f i c d a t a c a n be v i e w e d a s p l o t s , c o l o r images and 3D o b j e c t s . apE i s a d a t a f l o w e n v i r o n m e n t t h a t a l l o w s c o n s t r u c t i o n o f compl e x f l o w t o p o l o g i e s . Among t h e t o o l s a v a i l a b l e a r e c o n t o u r i n g , c o l o r p l o t t i n g , c a r p e t p l o t t i n g a n d v a r i o u s d a t a m a n i p u l a t i o n u t i l i t i e s . Time v a r i a n t d a t a c a n be p l a y e d b a c k . P r o v i d e d a l s o a r e t o o l s s u c h a s : h i s t o g r a m s , s u r f a c e d e t e c t i o n , t e r r a i n g e n e r a t i o n a n d f o r m s o f 8 r e n d e r i n g l i k e s c a n l i n e p o l y g o n a l t e c h n i q u e s and r a y t r a c i n g . PV Wave [4] i s a c o m m e r c i a l p a c k a g e w h i c h p r o v i d e s i n t e r a c t i v e s o f t w a r e f o r v i s u a l i z i n g a nd a n a l y z i n g t e c h n i c a l d a t a . P r o v i d e d i n PV Wave a r e 2D and 3D g r a p h i c s , d y n a m i c g r a p h i c s , image p r o c e s s i n g and m a n i p u l a t i o n , and u s e r a p p l i c a t i o n d e v e l o p m e n t . PV Wave i n c l u d e s a l i b r a r y o f r o u t i n e s f o r m a t h e m a t i c a l f u n c t i o n s , g r a p h i c s , f i l e m a n i p u l a t i o n and a r r a y m a n i p u l a t i o n s . The s o f t w a r e p a c k a g e d e s c r i b e d i n t h i s p a p e r d o e s n o t compete i n any way w i t h t h e above p a c k a g e s . I t m i g h t be p o s s i b l e t o i n t e g r a t e t h i s p a c k a g e w i t h one o f t h e abo v e o n e s t o g a i n t h e u s e o f t h e i r s o p h i s t i c a t e d v i s u a l i z a t i o n t o o l s . The p r o b l e m w i t h t h e a b o v e m e n t i o n e d p a c k a g e s i s t h a t t h e y do n o t p r o v i d e a d i r e c t c o n n e c t i o n between t h e e x p e r i m e n t m odel and t h e d i s p l a y s c r e e n . I t i s n o t p o s s i b l e t o r e l a t e t h e measurements o b t a i n e d f r o m two o r more d i s p l a c e m e n t t r a n s d u c e r s w i t h t h e s i d e o f t h e s t r u c t u r e u n d e r e x p e r i m e n t . T h e r e i s no l a n g u a g e t o e n a b l e t h e u s e r t o e x p r e s s w h i c h measurements t o u s e d i r e c t l y f o r d i s p l a c e m e n t , w h i c h measurements t o u s e a s i n t e r p o l a t i o n p o i n t s t o o b t a i n o t h e r p o s i t i o n s on t h e s t r u c t u r e . T h e r e i s no o b v i o u s way, i n u s i n g t h e abo v e p a c k a g e s , o f d i s p l a y i n g t h e movement o f a s t r u c t u r e by d e f i n i n g a f i n i t e number o f d i s p l a c e m e n t i n s t r u m e n t s . I n a d d i t i o n t h e r e i s no d i r e c t way t o d i s p l a y t h e movement o f a s t r u c t u r e t o g e t h e r w i t h t h e c h a n g i n g o f 9 i n s t r u m e n t a t i o n v a l u e s s u c h a s s t r a i n g a g e s a n d a c c e l e r o m e t e r s . T h e r e a r e CAD/CAM p a c k a g e s s u c h a s IDEAS [5] t h a t w o u l d a l l o w t h e d i s p l a y o f a model on t h e s c r e e n , u s i n g t h e measurements o b t a i n e d by t h e d i s p l a c e m e n t i n s t r u m e n t s . T h e r e a r e p r o b l e m s c o n n e c t e d w i t h t h e u s e o f t h e s e p a c k a g e s . T h e y were d e s i g n e d m a i n l y a s f i n i t e e l e m e n t a n a l y s i s t o o l s , t h e r e f o r e i n o r d e r t o a c h i e v e a d i s p l a y o f t h e s t r u c t u r e t h e u s e r must h a v e k n o w l e d g e i n u n r e l a t e d s u b j e c t s . T h ey do n o t h a v e s p e c i a l u t i l i t i e s f o r v i s u a l i z a t i o n . The l e a r n i n g c u r v e , j u s t t o g e t s t a r t e d , c o u l d be many months. I n a d d i t i o n t o t h e above, p a c k a g e s l i k e IDEAS a r e v e r y e x p e n s i v e and a r e n o t a l w a y s a v a i l a b l e . The g o a l o f t h e s o f t w a r e p a c k a g e d e s c r i b e d i n t h i s p a p e r i s t o e n a b l e t h e r e s e a r c h e r t o o b t a i n a v i s u a l p i c t u r e o f t h e s t r u c t u r e u n d e r e x p e r i m e n t and a l s o t o be a b l e t o s i m u l t a n e o u s l y o b s e r v e t h e q u a l i t a t i v e r e a d i n g s o f a l l t h e i n s t r u m e n t s b e i n g u s e d . I t i s n o t t h e p u r p o s e o f t h i s p a c k a g e t o e n a b l e a d e t a i l e d a n a l y s i s o f t h e r e s u l t s o f t h e e x p e r i m e n t s b u t r a t h e r t o p r o v i d e a q u a l i t a t i v e i m p r e s s i o n o f what's a c t u a l l y h a p p e n i n g d u r i n g t h e e x p e r i m e n t . 10 DEFINITION OF THE PROJECT DEFINITION OF A DISPLAYABLE MODEL T h i s p a p e r s u g g e s t s a s i m p l e method o f o b t a i n i n g an a b s t r a c t o u t l i n e o f a s o l i d s t r u c t u r e on t h e s c r e e n o f a c o m p u t e r . T h e r e a r e two m a i n b u i l d i n g b l o c k s t o d e f i n e t h e m o d e l , namely, segments and n o d e s . A node i s s i m p l y a p o i n t on t h e s t r u c t u r e . A segment i s a c o l l e c t i o n o f t h e s e p o i n t s , c o n n e c t e d by a l i n e a r o r p o l y n o m i a l l i n e . I d e a l l y , e a c h p o i n t i n t h e segment s h o u l d r e p r e s e n t t h e o u t p u t o f a m e a s u r i n g i n s t r u m e n t . S i n c e t h e number o f i n s t r u m e n t s a v a i l a b l e i s u s u a l l y l i m i t e d a s y s t e m o f i n t e r p o l a t i o n h a s b e e n d e v e l o p e d . F o r example, t o r e p r e s e n t an edge o f a s t r u c t u r e ( s u c h a s a w a l l , beam e t c . ) w h i c h h a s c o n n e c t e d t o i t two d i s p l a c e m e n t i n s t r u m e n t s (LVDT), f o u r n o d e s may be d e f i n e d . The f i r s t a nd l a s t n o d e s c o u l d d e f i n e t h e b e g i n n i n g and e n d o f t h e segment. The two i n n e r n o d e s c o u l d d e f i n e t h e d i s p l a c e m e n t i n s t r u m e n t s . See f i g u r e 2 . By d e f i n i n g t h e f i r s t a n d end n o d e s a s i n t e r p o l a t e d n o d e s , t h e w h o l e edge may be r e p r e s e n t e d u s i n g o n l y two m e a s u r i n g i n s t r u m e n t s . A segment s u c h a s t h i s w o u l d h a v e a f i x e d l e n g t h . 11 END NODE -> LVDT 2 -> LVDT 1 -> FIRST NODE -> Figure 2 A segment and f o u r nodes To d e s c r i b e a segment of changing l e n g t h , e i t h e r (or both) of the end nodes must r e p r e s e n t a measuring instrument. The types o f s t r u c t u r e s r e p r e s e n t a b l e under the system t o be d e s c r i b e d below are t y p i c a l l y s t r u c t u r e s t h a t would be mounted on a shake t a b l e . Examples of d i s p l a y a b l e s t r u c t u r e s are w a l l s of b u i l d i n g s , beams and columns of b u i l d i n g s , boxes e t c . There are v a r i o u s ways t o d e f i n e the r e p r e s e n t a t i o n of a model experiment on the scre e n . One way i s t o use a s c r i p t f i l e . T h i s f i l e i s w r i t t e n by the user i n an ASCII e d i t o r and i s composed of a l i s t of commands. The s c r i p t f i l e d e f i n e s the s t r u c t u r e , t he instruments and a l l the v i s u a l f e a t u r e s of the d i s p l a y . A second way t o go about d e f i n i n g the model experiment i s t o have a f u l l user i n t e r f a c e i n which the user i s prompted 12 f o r a l l t h e d e t a i l s o f t h e e x p e r i m e n t . I n t h i s method t h e u s e r must h a v e f u l l c a p a b i l i t i e s o f d r a w i n g on t h e s c r e e n , s e l e c t i n g o b j e c t s a n d w r i t i n g command s p e c i f i c a t i o n s . A t h i r d way i s a c o m b i n a t i o n o f t h e two, a l l o w i n g t h e u s e r t o d e v e l o p a s c r i p t f i l e and a l s o t o h a v e t h e a b i l i t y t o i n t e r a c t i v e l y c h a n g e t h e d i s p l a y on t h e s c r e e n . The p r o g r a m d e s c r i b e d i n t h i s p a p e r f o l l o w s t h e f i r s t c h o i c e , t h e u s e r composes a s c r i p t f i l e w h i c h d e f i n e s t h e e n t i r e e x p e r i m e n t . D u r i n g d i s p l a y , t h e u s e r h a s i n t e r a c t i o n w i t h t h e d a t a on t h e s c r e e n b u t c a n n o t r e d e f i n e n o d e s o r s e g m e n t s . The r e a s o n f o r p u r s u i n g t h i s d i r e c t i o n was b e c a u s e o f t i m e l i m i t a t i o n s . The t h i r d method, n a m e l y a l l o w i n g a s c r i p t f i l e i n a d d i t i o n t o u s e r i n t e r a c t i o n w i t h t h e n o d e s and segments on t h e s c r e e n i s more u s e r f r i e n d l y and f l e x i b l e b u t w o u l d demand a s o f t w a r e p a c k a g e on a much l a r g e r s c a l e t h a n i s d e s c r i b e d i n t h i s p a p e r . 13 THE SCRIPT F I L E The f i r s t t a s k i n r e p r e s e n t i n g an e x p e r i m e n t on t h e c o m p u t e r s c r e e n i s t o d e s c r i b e t h e p o s i t i o n and s t r u c t u r e o f t h e model b e i n g t e s t e d . The s t r u c t u r e i s r e p r e s e n t e d by two components, namely, n o d e s and s e g m e n t s . Nodes a r e r e p r e s e n t e d by p o i n t s on t h e s c r e e n . A node may move i n t h r e e d i r e c t i o n s a l o n g t h e x y o r z a x i s . A node w o u l d be d e f i n e d a t s p e c i a l p o s i t i o n s on t h e s t r u c t u r e . A c o r n e r w o u l d be r e p r e s e n t e d by a node. A m e a s u r e d p o i n t w o u l d be d e s c r i b e d by a node, i e . , a p o s i t i o n o f a m e a s u r i n g i n s t r u m e n t ( s u c h as a L i n e a r V o l t a g e D i f f e r e n t i a l T r a n s d u c e r - L V D T ) . A p o i n t o f i n t e r s e c t i o n o f s i d e s o f t h e s t r u c t u r e w o u l d a l s o be r e p r e s e n t e d by a node. A segment i s a c o l l e c t i o n o f n o d e s , t h e t y p e o f segment d e t e r m i n e s t h e method t o d e s c r i b e t h e n o d e s . T h e r e a r e f o u r t y p e s o f s e g m e n t s . The f i r s t t y p e o f segment a l l o w s f o r t h e d r a w i n g o f t h e model by c o n n e c t i n g t h e n o d e s . A s e c o n d t y p e o f segment e n a b l e s r e p r e s e n t i n g p h y s i c a l v a l u e s o f t h e n o d e s w i t h i n t h e segment w i t h t h e u s e o f a b a r c h a r t . E a c h node i s r e p r e s e n t e d by an a r r o w , t h e l e n g t h o f t h e a r r o w r e p r e s e n t s t h e p h y s i c a l v a l u e o f t h e node. A t h i r d t y p e o f segment a l l o w s f o r r e p r e s e n t i n g t h e v a l u e s o f t h e nodes w i t h t h e u s e o f c o l o r s . The v a l u e o f t h e node i s d i s p l a y e d by a l e v e l o f b r i g h t n e s s o f t h e node. The l a s t t y p e o f segment a l l o w s t h e p l o t t i n g o f t h e v a l u e s o f t h e n o d e s on a g r a p h , t h e X a x i s i s t i m e . 14 A segment o f t h e f i r s t t y p e r e p r e s e n t s a s i d e o f a s t r u c t u r e . The p o s i t i o n o f t h e segment i s d e f i n e d by t h e nodes i t c o n t a i n s . T h e r e i s a f i r s t node and an end node w h i c h w o u l d d e f i n e t h e l e n g t h a nd d i r e c t i o n o f t h e segment. I n c l u d e d i n t h e d e f i n i t i o n o f a segment a r e t y p e o f segment, c o l o r o f segment, w i d t h o f segment and t y p e o f c o l o r i n g o f t h e segment. A f u l l d e s c r i p t i o n o f t h e components o f a node a n d a segment w i l l be g i v e n b e l o w . I n a d d i t i o n t o d e s c r i b i n g t h e nodes and segments o f t h e s t r u c t u r e t h e u s e r must s t a t e t h e s i z e o f t h e " w o r l d c o o r d i n a t e s " t h a t i s , t h e r e p r e s e n t a t i o n o f t h e s c r e e n i n u n i t s o f t h e r e a l w o r l d . I t i s a l s o u s e f u l t o h a v e a few l i n e s and s h a p e s i n t h e d r a w i n g , j u s t f o r t h e s a k e o f m a k i n g a b a c k g r o u n d and f o r h e l p i n g i n o r i e n t a t i n g t h e model w i t h i t s s u r r o u n d i n g s . The s c r i p t f i l e h a s t h r e e p a r t s . The h e a d e r d e s c r i p t i o n , t h e n o d e s d e s c r i p t i o n and t h e segment d e s c r i p t i o n . THE HEADER DESCRIPTION I n t h e h e a d e r t h e u s e r d e f i n e s t h e f o l l o w i n g : WORLD_COORD xO yO zO x l y l z l LI N E w i d t h c o l o r xO yO zO x l y l z l GRAPH N u m b e r _ o f _ p o i n t s { l i s t o f c o l o r s } The w o r l d c o o r d i n a t e s a l l o w t h e p r o g r a m t o r e l a t e r e a l s i z e d i m e n s i o n s t o t h e s c r e e n . I f t h e s t r u c t u r e i s 3 00cm x 300cm, and room i s n e e d e d a r o u n d t h e s t r u c t u r e , t h e u s e r w o u l d s p e c i f y 15 WORLD_COORD o f 0 0 0 400 400 400. I n t h i s c a s e t h e b o t t o m l e f t s i d e o f t h e s c r e e n w o u l d be 0 0 0 and t h e t o p r i g h t s i d e i s 400 400 400. LI N E - t h e p r o g r a m s i m p l y c o n n e c t s t h e c o o r d i n a t e s s p e c i f i e d b e y o n d " c o l o r " w i t h a l i n e o f t h e s p e c i f i e d w i d t h a n d c o l o r . T h e r e may be a s many LINE commands a s n e c e s s a r y - e a c h LINE s p e c i f i e s one p i e c e w i s e l i n e a r l i n e c o n n e c t i n g t h e c o o r d i n a t e s . GRAPH - t h e number o f p o i n t s i s t h e number o f s a m p l e s o f a g r a p h w i t h i n t h e window t o be d i s p l a y e d a t one t i m e . W i t h i n t h e b r a c k e t s a r e a l i s t o f c o l o r s t o be u s e d i n d r a w i n g t h e g r a p h s . L e g a l c o l o r s a r e : RED GREEN BLUE WHITE BLACK CYAN MAGENTA YELLOW. THE NODES DESCRIPTION E a c h node i s d e s c r i b e d w i t h i n a b l o c k s t r u c t u r e . The f i r s t l i n e c o n s i s t s o f t h e name, t h e s e c o n d l i n e must be a b r a c k e t : 1 { ' , and t h e end o f t h e b l o c k h a s a b r a c k e t : 1 } 1 . W i t h i n t h e b r a c k e t s a r e t h e command d e f i n i t i o n s o f t h e node, one d e f i n i t i o n p e r l i n e . The l e n g t h o f t h e name must n o t e x c e e d 3 a l p h a n u m e r i c l e t t e r s . 16 Example NODE N2 { commands } "N2 1 i s the name of the node. A node i s d e f i n e d by any combination o f the f o l l o w i n g commands • POSITION TYPE FILE_NAME RUN_TRANSL ADD_NODE INTERP_FROM COLOR_FROM GAGE_DEFINITION F o l l o w i n g i s a d e s c r i p t i o n of each command i n the node b l o c k : POSITION XO yO zO T h i s i s the i n i t i a l p o s i t i o n of the node on the scr e e n . From t h i s p o s i t i o n the node can be moved by s p e c i f y i n g o f f s e t s i n 17 d a t a f i l e s w h i c h a r e d e f i n e d u n d e r FILE_NAME. The c o o r d i n a t e s a r e t h e r e a l w o r l d c o o r d i n a t e s . TYPE POSITION ! COLOR ] ARROW j EXTRAPOLATED_END J STATIC j INTERPOLATED. Any one o f t h e abo v e d e f i n i t i o n s may be u s e d . TYPE POSITION T h i s node i s t o be moved i n s p a c e a c c o r d i n g t o t h e d a t a i n t h e f i l e s a s s p e c i f i e d i n FILE_NAME. TYPE COLOR c o l o r _ p c o l o r _ n T h i s node i s t o be r e p r e s e n t e d by a c o l o r . T he d a t a i n t h e f i l e s i n t h i s n o d e s b l o c k s p e c i f i e s c o l o r . C o l o r _ p and c o l o r _ n a r e p a r a m e t e r s . Any o f t h e f o l l o w i n g c o l o r s a r e l e g a l : WHITE, BLACK, RED, GREEN, BLUE, CYAN, MAGENTA, YELLOW. TYPE ARROW The d a t a i n t h e f i l e s o f t h i s node s p e c i f y t h e l e n g t h o f an a r r o w o r b a r t h a t w i l l r e p r e s e n t t h e p h y s i c a l s i z e o f t h e i n s t r u m e n t . TYPE EXTRAPOLATED_END T h i s s i g n i f i e s t h e end o f a segment ( t o be e x p l a i n e d b e l o w ) . The a c t u a l p o s i t i o n o f t h e node i s t o be d e r i v e d by 18 an e x t r a p o l a t i o n . The n o d e s t o u s e i n t h e e x t r a p o l a t i o n a r e d e f i n e d i n INTERP_FROM a s d e s c r i b e d b e l o w . TYPE STATIC T h i s t y p e o f node h a s an i n i t i a l p o s i t i o n w h i c h r e m a i n s u n c h a n g e d . TYPE INTERPOLATED The p o s i t i o n o f t h i s node i s t o be d e r i v e d by i n t e r p o l a t i o n u s i n g t h e nodes a s s p e c i f i e d i n INTERP_FROM. NAME s c a l e o f f s e t a n g l e i n x y p l a n e a n g l e i n xz p l a n e E a c h node may h a v e up t o t h r e e f i l e s . A f i l e c o n t a i n s m e a s u r e d d a t a f r o m an i n s t r u m e n t i n an e x p e r i m e n t . The d a t a may be r e p r e s e n t e d by a change i n p o s i t i o n , c o l o r o r b a r d e p e n d i n g on t h e t y p e o f node. The s c a l e and o f f s e t p a r a m e t e r s a l l o w d a t a t o be c h a n g e d b e f o r e b e i n g l o a d e d i n t o t h e memory o f t h e c o m p u t e r . The two p a r a m e t e r s f o r a n g l e r e p r e s e n t t h e d i r e c t i o n t h a t t h e measurement i s b e i n g t a k e n . F o r an LVDT, f o r example, i t w o u l d be t h e d i r e c t i o n i n w h i c h t h e i n s t r u m e n t i s p o i n t i n g a t t h e t i m e o f measurement. 19 RUN TRANSL s c a l e x o f f s e t x s c a l e _ y o f f s e t _ y s c a l e z o f f s e t z T h e s e p a r a m e t e r s a l l o w t h e d a t a f o r e a c h node t o be s c a l e d a t r u n t i m e . Two nodes may u s e t h e same f i l e o f d a t a , b u t t h e i r d a t a c o u l d be s c a l e d i n d e p e n d e n t l y . T h i s p a r a m e t e r a l l o w s a d d i t i o n and s u b t r a c t i o n o f o t h e r n o d e s t o t h e node b e i n g d e f i n e d . The f i r s t p a r a m e t e r , name, i s t h e name o f a n o t h e r node t o combine w i t h t h e p r e s e n t one. The s e c o n d two p a r a m e t e r s a r e u s e d t o s c a l e t h e d a t a o f t h e node t o combine ( t h e d a t a o f t h e node t o add i s t a k e n a s i s w i t h o u t t h e nodes RUN_TRANSL p a r a m e t e r ) . INTERP_FROM { n o d e l node2 node3 ...} The n o d e s t o u s e f o r i n t e r p o l a t i o n must be w i t h i n b r a c k e t s . T h i s i s t o a l l o w f o r any number o f nodes t o be named. I f l i n e a r i n t e r p o l a t i o n i s t o be u s e d , t h e n o n l y t h e f i r s t two no d e s w i l l be t a k e n . COLOR_FROM { n o d e l node2 } Two n o d e s may be u s e d a t p r e s e n t t o d e f i n e how t o d e r i v e a c o l o r f o r a node w i t h i n a segment. GAGE_DEFINITION name xO yO zO T h i s i s u s e d f o r d e f i n i n g a name and p o s i t i o n o f t h e name o f a node. The name i s a t i t l e t h a t w i l l a p p e a r a t t h e ADD NODE name s c a l e o f f s e t 20 s p e c i f i e d p o s i t i o n on t h e s c r e e n . I t w o u l d u s u a l l y be t h e name o f t h e node. THE SEGMENT DESCRIPTION A segment i s a c o l l e c t i o n o f n o d e s w i t h v a r i o u s p r o p e r t i e s . The TYPE command w i t h i n t h e segment d e f i n i t i o n , d e t e r m i n e s how t h e n o d e s a r e t o be d i s p l a y e d . The nodes w i t h i n a segment c o u l d r e p r o d u c e a l i n e , on t h e computer s c r e e n , w h i c h w o u l d b e h a v e a s a s i m u l a t i o n o f a s e c t i o n o f t h e o u t l i n e o f a m o d e l l e d s t r u c t u r e . A TYPE ARROW command w o u l d d i s p l a y t h e n o d e s w i t h i n t h e segment a s a r r o w s , t h e l e n g t h o f an a r r o w s i m u l a t e s t h e v a l u e o f t h e node. A f u l l d e s c r i p t i o n o f a l l t h e t y p e s o f segments i s g i v e n b elow. The segment i s d e f i n e d s i m i l a r l y t o t h e node i n t h a t i t h a s a name and a l l t h e commands a r e w i t h i n b r a c k e t s : segment S3 { • • • * commands } T h e r e c a n be one command p e r row. E a c h command r e p r e s e n t s a c h a r a c t e r i s t i c o f t h e l i n e segment t o be drawn. F o l l o w i n g i s a l i s t o f t h e a v a i l a b l e commands f o r a l i n e segment a n d an e x p l a n a t i o n o f e a c h one. 21 NODES_LIST TYPE INIT_COLOR WIDTH_SEG POSITION NODES_LIST { nO n l n2 n3 } T h i s command a l l o w s t h e d e f i n i t i o n o f a l i s t o f n o d e s t o be i n c l u d e d i n t h e segment. The o r d e r o f t h e n o d e s i n t h e l i s t i s i m p o r t a n t a s t h i s w i l l d e f i n e t h e o r d e r o f d r a w i n g t h e segment. The f i r s t node i n t h e l i s t w i l l be t h e b e g i n n i n g o f t h e segment and t h e l a s t node w i l l be a t t h e end o f t h e l i n e . T h e r e i s no l i m i t t o t h e number o f n o d e s , i f t h e r e i s an o v e r f l o w i n t h e l i n e o f t h e s c r i p t f i l e , j u s t p r o c e e d on t h e f o l l o w i n g l i n e . T h e r e must be a t l e a s t one s p a c e between e a c h node name. T h e r e must a l s o be a s p a c e between a name and a b r a c k e t . TYPE RECTANGLE j LINEAR j CUBIC j QUADRATIC J COLOR ! ARROW The v a r i o u s t y p e s o f segments a r e d e f i n e d by one o f t h e a b o v e p a r a m e t e r s . E a c h p a r a m e t e r w i l l d i r e c t t h e p r o g r a m i n w h i c h way t o r e p r e s e n t t h e d a t a . TYPE RECTANGLE The segment i s a r e c t a n g l e . T h e r e s h o u l d be two n o d e s i n 22 the nodes l i s t . These two nodes w i l l r e p r e s e n t the bottom l e f t hand corner and the top r i g h t c o r n e r of the r e c t a n g l e t o be drawn. TYPE LINEAR The segment w i l l by r e p r e s e n t e d by a l i n e a r l i n e . A l l the nodes i n the NODE_LIST w i l l be connected w i t h s t r a i g h t l i n e s . L i n e a r i n t e r p o l a t i o n w i l l be used t o determine the p o s i t i o n of the nodes of type INTERPOLATED or EXTRAPOLATED. TYPE CUBIC The segment w i l l be drawn u s i n g a c u b i c p o l y n o m i a l f u n c t i o n t o connect the nodes. The i n t e r p o l a t e d nodes are c a l c u l a t e d u s i n g the polynomial f u n c t i o n . TYPE QUADRATIC The same as LINEAR and CUBIC but u s i n g a q u a d r a t i c f u n c t i o n . TYPE ARROW T h i s type of segment i s not p a r t of the s t r u c t u r e drawn on the s c r e e n , but w i l l be a c h a r t of a l l the nodes i n the NODE_LIST. The l e n g t h of a bar on the c h a r t r e p r e s e n t s a p h y s i c a l measurement of the node. 23 TYPE COLOR T h i s t y p e i s s i m i l a r t o t h e b a r c h a r t d e s c r i b e d i n TYPE ARROW. I n s t e a d o f h a v i n g a b a r w i t h c h a n g i n g l e n g t h , t h e r e w i l l be a b a r w i t h c h a n g i n g c o l o r . INIT_COLOR RED | GREEN j BLUE | BLACK |- MAGENTA | YELLOW | CYAN The i n i t i a l c o l o r o f t h e segment i s s p e c i f i e d i n t h e s c r i p t f i l e . T h i s c o l o r i s f o r t h e model a t r e s t . D u r i n g a d y n a m i c d i s p l a y o f t h e model t h e c o l o r w i l l c h a n g e a c c o r d i n g t o t h e t y p e o f n odes and t h e v a l u e s m e a s u r e d a t t h e n o d e s . WIDTH_SEG xxxx The w i d t h o f t h e segment may be s p e c i f i e d . Any number i s a c c e p t a b l e . T h i s number d e t e r m i n e s t h e w i d t h o f t h e l i n e b e i n g drawn, i n p i x e l s . AN EXAMPLE OF A STRUCTURE AND ITS SCRIPT F I L E As an example o f b u i l d i n g t h e s c r i p t f i l e , a s t r u c t u r e w i l l be d e s c r i b e d t o g e t h e r w i t h i t s s c r i p t f i l e . The s t r u c t u r e i s d e s c r i b e d i n f i g u r e 3. The s t r u c t u r e c o n s i s t s o f two v e r t i c a l c o n c r e t e c o l u m n s o f l e n g t h 290 cm and two h o r i z o n t a l beams o f o f l e n g t h 239 cm. The t h i c k n e s s o f t h e c o l u m n s and beams i s 2 0 cm. The b o t t o m l e f t c o r n e r o f t h e f i g u r e i s p o i n t 0,0,0 i n r e a l w o r l d c o o r d i n a t e s . The s t r u c t u r e and t h e r e s u l t s a r e f r o m an 24 a c t u a l e x p e r i m e n t r u n on t h e s h a k e t a b l e i n t h e e a r t h q u a k e l a b o r a t o r y i n t h e C i v i l E n g i n e e r i n g D e p a r t m e n t o f t h e U n i v e r s i t y o f B r i t i s h C o l o m b i a . F i g u r e 1 shows t h e r e s u l t i n g s c r e e n a s d e f i n e d by t h e s c r i p t f i l e . A2 A l VL4 L2 VL3 VL2 L l VL1 VLO - s i -s9 s7-s5--s2- -s4-- — s l O -- s 8 — - s 6 — - s l 2 -- s l 6 -- s l 4 --s3 . s l l s l 5 s l 3 LO AO TO H4 H3 H2 HI VRO T l s h a k e t a b l e F i g u r e 3 The s h a k e t a b l e and a c o n c r e t e s t r u c t u r e mounted t o t h e s h a k e t a b l e . I n t h e s c r i p t f i l e t h e r e a r e s e v e n segments, t h e s h a k e t a b l e , two v e r t i c a l segments and f o u r h o r i z o n t a l s e g m e n t s . E a c h h o r i z o n t a l beam i s s p l i t i n t o two segments b e c a u s e o f t h e way t h e s t r a i n g a g e s a r e a l i g n e d . Node names w h i c h s t a r t w i t h t h e l e t t e r "A" r e p r e s e n t a c c e l e r o m e t e r s , l e t t e r "S 1 r e p r e s e n t s s t r a i n g a g e s and 'L' r e p r e s e n t s LVDT ( w h i c h m e a s u r e s d i s p l a c e m e n t ) . The s h a k e t a b l e i s d e s c r i b e d by n o d e s TO and T l w h i c h a r e d e f i n e d i n SEGMENT 0 a s a RECTANGULAR SEGMENT ( a l l t h e names a r e u s e r d e f i n e d ) . The s e c o n d segment i n c l u d e s n o d e s VLO, VL1, VL2, VL3, VL4, L l , L2, S5, S7, S9 and S I . L l and L2 a r e LVDTS w h i c h g i v e a d i s p l a c e m e n t i n t h e X d i r e c t i o n . VLO i s a POSITIONAL node w h i c h i s c o n n e c t e d t o t h e s h a k e t a b l e . T h i s n o d e s movement i s t h e same as node TO, b u t i t s i n i t i a l p o s i t i o n i s d i f f e r e n t . Nodes VL1 t o VL4 a r e a l l i n t e r p o l a t e d n o d e s . T h e i r d y n a m i c p o s i t i o n s a r e d e r i v e d f r o m n o d es L I and L2 a n d f r o m t h e i r r e l a t i v e d i s t a n c e s t o VLO. T h e s e r e l a t i v e d i s t a n c e s ( o f t h e V L i n o d e s t o VLO) a r e c o n s t a n t a s t h e s t r u c t u r e i s r i g i d and t h e r e i s no s t r e t c h i n g o f t h e s e g m e n t s . Node VRO i s c o n n e c t e d t o t h e t a b l e and i t s movement i s t h e same a s t h a t o f t h e t a b l e . The p o s i t i o n s o f n o d e s HI, H2, H3 and H4 a r e d e r i v e d f r o m t h e n o d e s V L I , VL2, VL3 and VL4. T h e r e a r e no d i s p l a c e m e n t i n s t r u m e n t s a l o n g t h e beams, t h e r e f o r e t h e b e s t e s t i m a t i o n f o r t h e p o s i t i o n o f t h e s e n o d e s i s t o u s e t h e same p o s i t i o n a s t h e V L i nodes w i t h an o f f s e t w h i c h c o r r e s p o n d s t o t h e l e n g t h o f t h e beams. The p o s i t i o n o f t h e S i n o d e s ( s t r a i n g ages) i s d e r i v e d by i n t e r p o l a t i o n f r o m t h e nodes i n t h e r e s p e c t i v e s egments. WORLD_COORD 0 0 0 6 0 0 4 0 0 0 L I N E 10 BLUE 0 30 0 16 30 0 16 0 0 L I N E 10 BLUE 384 0 0 384 30 0 400 30 0 GRAPH 100 { RED GREEN BLUE } /* t a b l e n o d e s */ NODE TO { POSITION 47 10 0 FILE_NAME b r / t l 0 2 . d 0 2 76.2 0 0 0 TYPE POSITION } 26 NODE T l { POSITION 353 30 0 FILE_NAME b r / t l 0 2 . d 0 2 76.2 0 0 0 TYPE POSITION } /* t a b l e a c c e l e r o m e t e r */ NODE A l { POSITION 10 150 0 TYPE ARROW FILE_NAME b r / t l 0 0 . d 0 2 1 0 0 0 GAGE_DEFINITION RECTANGLE A l 24 20 0 } /* a c c e l e r o m e t e r */ NODE A2 { POSITION 15 150 0 TYPE ARROW FILE_NAME b r / t l 0 3 . d 0 2 1 0 0 0 GAGE_DEFINITION RECTANGLE A2 6 314 0 } /* s t r a i n gage */ NODE S I { POSITION 62 322 0 TYPE COLOR GREEN RED INTERPOLATE_FROM { L I L2 } FILE_NAME b r / t l 2 2 . d 0 2 1 0 0 0 GAGE_DEFINITION RECTANGLE S I 32 326 0 } /* s t r a i n gage */ NODE S9 { POSITION 62 302 0 TYPE COLOR GREEN RED FILE_NAME b r / t l 2 0 . d 0 2 1 0 0 0 INTERPOLATE_FROM { L I L2 } GAGE_DEFINITION RECTANGLE S9 32 300 0 } 27 /* s t r a i n gage */ NODE S7 { POSITION 62 185 0 TYPE COLOR BLUE RED FILE_NAME b r / t l l 8 . d 0 2 1 0 0 0 /* GAGE_DEFINITION RECTANGLE S7 32 185 0 } /* s t r a i n gage */ NODE S5 { POSITION 62 165 0 TYPE COLOR BLUE RED FILE_NAME b r / t l l 6 . d 0 2 1 0 0 0 /* GAGE_DEFINITION RECTANGLE S5 32 165 0 } NODE VLO { POSITION 62 45 0 TYPE POSITION FILE_NAME b r / t l 0 2 . d 0 2 76.2 0 0 0 RUN_TRANSL 1 0 1 0 1 0 } /* t h i s node i s u s e d t o d e f i n e t h e h o r i z o n t a l beam NODE VL1 { POSITION 62 166 0 INTERPOLATE_FROM { VLO L l } TYPE INTERPOLATED } /* d i s p l a c e m e n t t r a n s d u c e r */ NODE L l { POSITION 62 178 0 TYPE POSITION FILE_NAME b r / t l l 5 . d 0 2 76.2 0 0 0 RUN_TRANSL 1 0 1 0 1 0 GAGE_DEFINITION RECTANGLE L l 32 180 0 } /* t o d e f i n e t o p o f l o w e r beam */ NODE VL2 { POSITION 62 186 0 INTERPOLATE_FROM { L l L2 } TYPE INTERPOLATED } 28 /* t o d e f i n e a h o r i z o n t a l beam */ NODE VL3 { POSITION 62 304 0 TYPE INTERPOLATED INTERPOLATE_FROM { L I L2 } } NODE L2 { POSITION 62 310 0 TYPE POSITION FILE_NAME b r / t l l 3 . d 0 2 76.2 0 0 0 RUN_TRANSL 1 0 1 0 1 0 GAGE_DEFINITION RECTANGLE L2 32 314 0 } /* t o d e f i n e a h o r i z o n t a l beam */ NODE VL4 { POSITION 62 324 0 TYPE EXTRAPOLATED_END INTERPOLATE_FROM { L I L2 } } /* n o t e , o n l y one p o s i t i o n p o i n t i s d e f i n e d */ NODE HI { POSITION 341 166 0 TYPE EXTRAPOLATED_END INTERPOLATE_FROM { V L I } } NODE H2 { POSITION 341 186 0 TYPE EXTRAPOLATED_END INTERPOLATE_FROM { VL2 } } NODE H3 { POSITION 341 304 0 TYPE EXTRAPOLATED_END INTERPOLATE_FROM { VL3 } } 29 NODE H4 { POSITION 341 324 0 TYPE EXTRAPOLATED_END INTERPOLATE_FROM { VL4 } } NODE S2 { POSITION 82 322 0 TYPE COLOR GREEN RED INTERPOLATE_FROM { VL4 } FILE_NAME b r / t l 2 3 . d 0 2 1 0 0 0, GAGE_DEFINITION RECTANGLE S2 82 340 0 } NODE S4 { POSITION 321 322 0 TYPE COLOR BLUE RED FILE_NAME b r / t l 2 7 . d 0 2 1 0 0 0 / * GAGE_DEFINITION RECTANGLE S4 311 352 0 } NODE S10 { POSITION 82 302 0 TYPE COLOR BLUE RED FILE_NAME b r / t l 2 1 . d 0 2 1 0 0 0 / * GAGE_DEFINITION RECTANGLE S10 92 3 02 0 } NODE S12 { POSITION 321 302 0 TYPE COLOR BLUE RED FILE_NAME b r / t l 2 5 . d 0 2 1 0 0 0 / * GAGE_DEFINITION RECTANGLE S12 311 302 0 } NODE S8 { POSITION 82 185 0 TYPE COLOR BLUE RED FILE_NAME b r / t l l 9 . d 0 2 1 0 0 0 / * GAGE_DEFINITION RECTANGLE S8 92 215 0 } 30 NODE S16 { POSITION 321 185 0 TYPE COLOR GREEN RED FILE_NAME b r / t l 3 1 . d 0 2 1 0 0 0 INTERPOLATE_FROM { VL2 } GAGE DEFINITION RECTANGLE S16 311 204 NODE S6 NODE S14 NODE VRO POSITION 82 165 0 TYPE COLOR BLUE RED FILE_NAME b r / t l l 7 . d 0 2 1 0 0 0 GAGE DEFINITION RECTANGLE S6 92 165 POSITION 321 165 0 TYPE COLOR BLUE RED FILE_NAME b r / t l 2 9 . d 0 2 1 0 0 0 GAGE DEFINITION RECTANGLE S14 311 165 POSITION 341 45 0 TYPE POSITION FILE_NAME b r / t l 0 2 . d 0 2 76.2 0 0 0 RUN TRANSL 1 0 1 0 1 0 NODE VR1 POSITION 341 324 0 TYPE EXTRAPOLATED_END INTERPOLATE FROM { VRO } * s t r a i n gage */ NODE S3 POSITION 341 322 0 TYPE COLOR BLUE RED FILE_NAME b r / t l 2 6 . d 0 2 1 0 0 0 GAGE DEFINITION RECTANGLE S3 361 332 31 /* s t r a i n gage */ NODE S l l { POSITION 341 302 0 TYPE COLOR BLUE RED FILE_NAME b r / t l 2 4 . d 0 2 1 0 0 0 /* GAGE_DEFINITION RECTANGLE S l l 361 292 0 } /* s t r a i n gage */ NODE S15 { POSITION 341 185 0 TYPE COLOR BLUE RED FILE_NAME b r / t l 3 0 . d 0 2 1 0 0 0 /* GAGE_DEFINITION RECTANGLE S15 361 195 0 } /* s t r a i n gage */ NODE S13 { POSITION 341 165 0 TYPE COLOR BLUE RED FILE_NAME b r / t l 2 8 . d 0 2 1 0 0 0 /* GAGE_DEFINITION RECTANGLE S13 361 155 0 } /* t o p beam o f n o r t h s t r u c t u r e , f i r s t p o i n t o f r e c t a n g l e NODE NO { POSITION 62 350 0 FILE_NAME b r / t l l 4 . d 0 2 76.2 0 0 0 TYPE POSITION GAGE_DEFINITION RECTANGLE NI 32 356 0 } NODE NI { POSITION 341 370 0 FILE_NAME b r / t l l 4 . d 0 2 76.2 0 0 0 TYPE POSITION } /* t h e s h a k e t a b l e */ SEGMENT TO { NODES_LIST { TO T l } TYPE RECTANGLE INIT_COLOR YELLOW } 32 /* l e f t s i d e o f t h e m o d e l */ SEGMENT 1 { NODES_LIST { v l O v l l 11 v l 2 s9 v l 3 12 s i v l 4 } TYPE LINEAR INIT_COLOR YELLOW COLOR_TYPE LOCAL WIDTH_SEG 1 } /* t o p o f u p p e r h o r i z o n t a l beam */ SEGMENT 2 { NODES_LIST { V l 4 s2 h4 } TYPE LINEAR INIT_COLOR YELLOW COLORJTYPE LOCAL WIDTH_SEG 2 } /* n o t e s : 1) The u s e r i s r e s p o n s i b l e f o r d r a w i n g segment 1 /* b e f o r e segment 2 a s segment 2 n e e d s v l 4 /* 2) The p r o g r a m i s a b l e t o d e t e c t t h a t o n l y two /* end p o i n t s w i l l d e s i g n a t e t h e segment /* b o t t o m o f u p p e r h o r i z o n t a l beam */ /*h2 and v l 3 a r e s p e c i a l l y d e f i n e d f o r t h i s segment */ SEGMENT 3 { NODES_LIST { V l 3 h3 } TYPE LINEAR INIT_COLOR YELLOW COLORJTYPE LINEAR WIDTH_SEG 2 } /* u p p e r s i d e o f b o t t o m h o r i z o n t a l beam */ SEGMENT 4 { NODES_LIST { V l 2 S l 6 h2 } TYPE LINEAR INIT_COLOR YELLOW COLORJTYPE LINEAR WIDTH_SEG 2 } 33 /* b e l o w b o t t o m h o r i z o n t a l beam o f t h e model */ SEGMENT 5 { NODES_LIST { v l l h i } TYPE LINEAR INIT_COLOR YELLOW COLOR_TYPE LINEAR WIDTH_SEG 2 } /* r i g h t v e r t i c a l s i d e o f t h e model */ SEGMENT 6 { NODES_LIST { VRO HI H2 H3 H4 } TYPE LINEAR INIT_COLOR YELLOW COLOR_TYPE LINEAR WIDTH_SEG 1 } SEGMENT 7 { TYPE VARROW NODES_LIST { A l A2 } POSITION 380 360 0 INIT_COLOR CYAN WIDTH_SEG 10 } SEGMENT 8 { TYPE BAR_CLR NODES_LIST { POSITION 380 WIDTH_SEG 15 } SEGMENT 9 { TYPE GRAPH NODES_LIST { S9 S I S2 } WIDTH_SEG 1 } /* t h e n o r t h beam */ SEGMENT NO { NODESJLIST { NO NI } TYPE RECTANGLE INIT_COLOR YELLOW } GREEN RED 59 S I S2 S16 } 60 0 34 CODE DESCRIPTION A BRIEF DESCRIPTION OF THE MODULES The p r o g r a m i s w r i t t e n i n t h e ' C L a n g u a g e . The p r o g r a m was i n i t i a l l y d e v e l o p e d on an AT/IBM c o m p a t i b l e m a c h i n e . I t was f u r t h e r d e v e l o p e d on t h e S i l i c o n G r a p h i c s m a c h i n e u s i n g t h e GL L i b r a r y [ 6 ] . The c o d e c o n s i s t s o f f i v e f i l e s named SEE01.C t o SEE05.C. T h e r e a r e a number o f d a t a s t r u c t u r e s t h a t a r e common t o a l l t h e m o d u l e s . T h e s e s t r u c t u r e s a r e d e f i n e d i n an i n c l u d e f i l e named SEE.H. F o l l o w i n g i s a d e s c r i p t i o n o f t h e m a i n m o d u l e s and o f t h e s t r u c t u r e s . SEE01.C c o n t a i n s a l l t h e i n i t i a l i z a t i o n s o f t w a r e where a l l t h e d a t a s t r u c t u r e s a r e i n i t i a l i z e d . I t a l s o i s t h e m a i n p r o g r a m t h a t i n i t i a t e s t h e v a r i o u s s t a g e s i n t h e r u n n i n g o f t h e p r o g r a m . I n a d d i t i o n t h e f i l e c o n t a i n s some u t i l i t i e s s u c h a s s e n d i n g e r r o r m essages t o t h e s c r e e n . A b r i e f f l o w c h a r t o f t h e module f o l l o w s : 1) I n i t i a t e a l l d a t a s t r u c t u r e s and v a r i a b l e s . 2) C a l l t h e module t h a t d e c o d e s t h e s c r i p t f i l e . 3) C a l l t h e module t h a t c o n t r o l s t h e d i s p l a y o f t h e e x p e r i m e n t 4) E x i t p r o g r a m and f r e e a l l a l l o c a t e d memory. SEE02.C i s t h e module t h a t d o e s a l l t h e d e c o d i n g f r o m t h e s c r i p t f i l e and p u t s r e a l v a l u e s i n t o t h e d a t a s t r u c t u r e s . T h e r e a r e f o u r m a i n p h a s e s i n t h e d e c o d i n g o f t h e s c r i p t f i l e . F i r s t , t h e h e a d e r o f t h e f i l e i s d e c o d e d . The h e a d e r d e f i n e s t h e w o r l d c o o r d i n a t e s and some b a c k g r o u n d l i n e s . The s e c o n d p h a s e i s t h e d e c o d i n g o f t h e NODES. E a c h node i s d e t e c t e d , t h e Node S t r u c t u r e 35 i s g i v e n v a l u e s a c c o r d i n g t o t h e s p e c i f i c a t i o n s i n t h e s c r i p t f i l e . I n a d d i t i o n t h e name o f t h e node i s e n t e r e d i n t o t h e t a b l e t h a t c o n t a i n s t h e names o f t h e n o d e s . A f t e r a l l t h e n o d e s h a v e b e e n d e t e c t e d , t h e same p r o c e d u r e i s f o l l o w e d f o r t h e SEGMENTS. The l a s t p h a s e c o n s i s t s o f a s e c o n d p a s s o v e r a l l t h e n o d e s and t h e n o v e r a l l t h e segments. The s e c o n d p h a s e i s n e e d e d t o i n i t i a l i z e t h o s e n o d es t h a t a r e d e p e n d e n t on o t h e r n o d e s , f o r example INTERPOLATION nodes o r nodes t h a t h a v e an ADD_NODE command. The s e c o n d p a s s i s n e c e s s a r y s i n c e a d e p e n d e n t node may be d e f i n e d b e f o r e t h e node t h a t i t i s d e p e n d e n t on. F o l l o w i n g i s a b r i e f f l o w c h a r t o f t h e module : 1) Read t h e h e a d e r o f t h e s c r i p t f i l e . I n i t i a t e t h e w o r l d c o o r d i n a t e s t r u c t u r e and t h e s t r u c t u r e f o r d r a w i n g b a c k g r o u n d l i n e s . 2) G e t a l l t h e n o d e s , i n i t i a t e t h e node s t r u c t u r e . Make a s e c o n d p a s s on a l l t h e d e f i n e d n o d e s . I f t h e node h a s an ADD_NODE command and t h e v a r i a b l e was n o t i n i t i a t e d i n t h e f i r s t p a s s t h e n i n i t i a t e i t now. I f t h e node i s o f t y p e INTERPOLATE and t h e v a r i a b l e t h a t d e f i n e s w h i c h n o d e s t o u s e i n t h e i n t e r p o l a t i o n i s n o t d e f i n e d , t h e n i n i t i a t e t h e v a r i a b l e now. 3) G e t a l l t h e segments, i n i t i a t e t h e segment s t r u c t u r e . Make a s e c o n d p a s s o v e r a l l t h e segments. F o r e a c h segment c a l c u l a t e t h e i n i t i a l d i s t a n c e o f e a c h node f r o m t h e f i r s t n ode i n t h e segment. T h e r e i s an i m p o r t a n t d i f f e r e n c e b etween a m e a s u r e d node and an i n t e r p o l a t e d node. The 36 l e n g t h o f an i n t e r p o l a t e d node t o t h e f i r s t node i n t h e segment i s c o n s t a n t . The d i s t a n c e o f a m e a s u r e d node (node o f t y p e p o s i t i o n ) t o t h e f i r s t node i n t h e segment i s n o t c o n s t a n t . The p o s i t i o n o f a m e a s u r e d node ( t y p e p o s i t i o n ) i s o b t a i n e d f r o m t h e c o o r d i n a t e s o f t h e i n s t r u m e n t a n d t h e d i s p l a c e m e n t v a l u e s t h a t t h e i n s t r u m e n t m e a s u r e s . SEE03.C, SEE04.C, SEE05.C T h i s module i n i t i a t e s t h e g r a p h i c s t e r m i n a l , o p e n s a l l t h e d i s p l a y windows. T h i s module i n c l u d e s a l l t h e g r a p h i c a l d i s p l a y r o u t i n e s , a l l t h e c o m p u t a t i o n a l c a l c u l a t i o n s t o d e t e r m i n e t h e p o s i t i o n a nd c o l o r o f a node on t h e s c r e e n a nd t o c o n n e c t n o d e s o f t h e same segment. The module i s s p l i t i n t o t h r e e f i l e s m a i n l y b e c a u s e o f t h e l e n g t h o f t h e module. SEE03.C d o e s most o f t h e c a l c u l a t i o n s and c o n t r o l o v e r t h e windows. The r o u t i n e s t o d i s p l a y t h e f i r s t window (MODEL - s e e below) a r e i n t h i s f i l e . SEE04.C c o n t a i n s most o f t h e r o u t i n e s t h a t c o n t r o l t h e o t h e r windows namely ARROW, COLOR BAR and GRAPH ( s e e b e l o w f o r an e x p l a n a t i o n o f a l l t h e d i s p l a y a b l e w i n d o w s ) . SEE05.C c o n t a i n s r o u t i n e s t o d e a l w i t h t h e HOLD a n d ZOOM f u n c t i o n s . F o l l o w i n g i s a b r i e f f l o w c h a r t o f t h i s module : 1) I n i t i a t e v a r i a b l e s 2) Open f o u r windows : MODEL, ARROW, COLOR BAR a n d GRAPH. 3) I n i t i a t e d e v i c e s 4) G e t u s e r i n p u t . T h i s module p o l l s t h e mouse. I f t h e r i g h t b u t t o n o f t h e mouse i s p r e s s e d a menu i s p r o d u c e d a n d t h e 37 u s e r s e l e c t s one o f t h e f u n c t i o n s . I f t h e u s e r c h o o s e s one o f t h e d i s p l a y menus ( P l a y , R e v e r s e , S i n g l e S t e p ) t h e r o u t i n e d i s p l a y _ d y n a m i c _ m o d e l ( ) i s c a l l e d . T h i s r o u t i n e d o e s a l l t h e c a l c u l a t i o n s o f node p o s i t i o n s , node c o l o r s and a l s o s t a r t s t h e d i s p l a y p r o c e s s by c a l l i n g t h e r o u t i n e d r a w _ m o d e l ( ) . T h i s module c o n t a i n s a l l t h e f u n c t i o n s f o r c o n t r o l l i n g window s w i t c h i n g , b u f f e r s w i t c h i n g and mouse b u t t o n s . THE USER INTERFACE F o u r windows a r e opened when t h e p r o g r a m i s s t a r t e d . The f i r s t window, MODEL, d i s p l a y s t h e s t r u c t u r e b e i n g m o d e l e d on t h e s c r e e n . The u s e r s menu i s a c t i v a t e d when t h e c u r s o r i s i n t h i s window. The s e c o n d window, ARROW, c o n t a i n s a v e r t i c a l a x i s w i t h t h e minimum a n d maximum v a l u e s o f a l l t h e n o d e s b e i n g d i s p l a y e d w i t h i n t h e window. The node names a r e d i s p l a y e d b e l o w t h e r e s p e c t i v e a r r o w s b e i n g d i s p l a y e d . The t h i r d window, COLOR BAR, h a s a c o l o r t a b l e a l o n g t h e v e r t i c a l a x i s and t h e node names a r e d i s p l a y e d b e n e a t h t h e c o l o r b a r s . Maximum and minimum v a l u e s a r e d i s p l a y e d a l o n g t h e c o l o r t a b l e . The f o u r t h window, GRAPH, h a s t h e minimum and maximum v a l u e s d i s p l a y e d on t h e v e r t i c a l a x i s and t h e s a m p l e number on t h e h o r i z o n t a l a x i s . The s a m p l e number c a n be c o n v e r t e d i n t o t i m e i f t h e s a m p l i n g r a t e i s known. The menu, w h i c h c a n be s e l e c t e d i n t h e f i r s t window by d e p r e s s i n g t h e r i g h t b u t t o n o f t h e mouse, a l l o w s t h e f o l l o w i n g f u n c t i o n s : 38 PLAY REVERSE SPEED HOLD IN I T ZOOM STEP T h i s i s t h e n o r m a l d i s p l a y mode. The s t r u c t u r e i s r e d r a w n f o r e a c h sample a s d e f i n e d by t h e nodes and seg m e n t s . T h i s i s t h e same a s PLAY b u t i n t h e r e v e r s e d i r e c t i o n . The u s e r i s p r o m p t e d f o r a number. The h i g h e r t h e number t h e s l o w e r t h e d i s p l a y ( t h e number i s a c t u a l l y u s e d a s a d e l a y ) . A f t e r e n t e r i n g t h e number, t h e u s e r must p r e s s ENTER f o r t h e p r o g r a m t o c o n t i n u e . T h i s f u n c t i o n a l l o w s t h e p r e s e n t a t i o n o f a l l t h e p h y s i c a l v a l u e s o f a l l t h e n o d e s b e i n g d i s p l a y e d . A window i s opened and t e n n o d e s a r e d i s p l a y e d : f i r s t t h e n o d e s name, t h e n i t s p o s i t i o n i f r e l e v a n t , t h e n t h e v a l u e o f t h e i n s t r u m e n t b e i n g r e p r e s e n t e d by t h e node. I f t h e r e a r e more t h a n 10 n o d e s t h e u s e r may s c r o l l up o r down by u s e o f t h e F o r B k e y s . To a b o r t , t h e u s e r must p r e s s t h e ESC k e y . R e s e t f u n c t i o n . A l l t h e windows a r e c l e a r e d and t h e s t r u c t u r e i s d i s p l a y e d a t r e s t . The u s e r may c h o o s e an a r e a o f t h e s t r u c t u r e t o be b l o w n up. A f t e r s e l e c t i n g ZOOM a r e c t a n g l e i s d i s p l a y e d . W i t h t h e u s e o f t h e mouse a n d t h e l e f t b u t t o n o f t h e mouse t h e u s e r may s e l e c t a n a r e a t o be zoomed. A f t e r s e l e c t i o n o f t h e a r e a , a window i s c r e a t e d w h i c h w i l l c o n t a i n t h e s e l e c t e d a r e a . T h i s i s a t o g g l e mode f u n c t i o n t o a l l o w t h e u s e r t o s i n g l e s t e p t h e d i s p l a y o f t h e s t r u c t u r e . When 39 s e l e c t e d , e a c h p r e s s o f t h e m i d d l e mouse b u t t o n w i l l c a u s e t h e s t r u c t u r e t o move by one s a m p l e i n t h e p o s i t i v e ( t i m e - sample) d i r e c t i o n . The l e f t mouse b u t t o n c a u s e s t h e s t r u c t u r e t o move b a c k w a r d s ( i n t i m e ) . TRACE T h i s i s a t o g g l e mode. I n t h i s mode t h e p r o g r a m d o e s n o t c l e a r t h e s c r e e n a f t e r e a c h s a m p l e d i s p l a y , i n s t e a d a l l t h e d r a w i n g s o f t h e s t r u c t u r e r e m a i n on t h e s c r e e n . T h i s f u n c t i o n i s u s e f u l t o s e e t h e e n v e l o p e o f t h e movement o f a s t r u c t u r e . QUIT To e x i t t h e p r o g r a m . CALCULATIONS AND DRAWING ROUTINES F o l l o w i n g i s a b r i e f d e s c r i p t i o n o f t h e d r a w i n g r o u t i n e s and t h e c a l c u l a t i o n s b e i n g made f o r e v e r y s a m p l e , t o d e t e r m i n e t h e p o s i t i o n and c o l o r o f e a c h node. T h e r e a r e two m a i n r o u t i n e s t h a t c o n t r o l t h e d r a w i n g , n a m e l y d i s p l a y _ d y n a m i c _ m o d e l ( ) and d r a w _ m o d e l ( ) . The p r o g r a m u s e s t h e d o u b l e b u f f e r f a c i l i t y o f t h e S i l i c o n G r a p h i c s m a c h i n e . A l l w r i t i n g i s done t o an u n d i s p l a y e d b u f f e r . When t h e d a t a i s r e a d y t h e b u f f e r i s s w i t c h e d . B e f o r e w r i t i n g t o a b u f f e r a c l e a r b u f f e r command i s g i v e n ( u n l e s s t h e t r a c e command i s o n ) . A b r i e f f l o w c h a r t o f t h e two r o u t i n e s i s g i v e n t o e x p l a i n how t h e m o d e l i s d i s p l a y e d . The s t e p s a r e r e p e a t e d f o r e a c h s ample t o be d i s p l a y e d . 1) C l e a r a l l windows. T h i s i s done t o t h e b u f f e r s t h a t a r e n o t 40 b e i n g d i s p l a y e d . I f t h e TRACE mode i s on t h e n t h i s s t e p i s n o t e x e c u t e d . 2) C a l c u l a t e a l l t h e c o o r d i n a t e s f o r t h e n o d e s . C a l c u l a t e t h e c o l o r f o r t h e n o d e s . A more d e t a i l e d e x p l a n a t i o n w i l l be g i v e n b e l o w . 3) C a l c u l a t e v a l u e s f o r t h e s e g m e n t s . A more d e t a i l e d d e s c r i p t i o n w i l l be g i v e n b e l o w . 4) R e c o n s t r u c t t h e b a c k g r o u n d o f t h e s c r e e n . T h a t i s , draw b a c k g r o u n d l i n e s and w r i t e node names. 5) Draw a l l t h e windows u s i n g t h e n e w l y c a l c u l a t e d v a l u e s o f t h e n o d e s and segments. T h i s i s done i n t h e b a c k g r o u n d b u f f e r . 6) S w i t c h b u f f e r s . 7) D e l a y a c c o r d i n g t o t h e u s e r s p e c i f i e d number g i v e n u n d e r t h e SPEED menu. A l l t h e c a l c u l a t i o n s o f where t o p l a c e t h e n o d e s , how t o c o n n e c t them a n d what c o l o r t o u s e a r e done ( o r i n i t i a t e d ) i n t h e r o u t i n e s c a l c _ c o o r d s _ n o d e ( ) and c a l c _ c o o r d s _ s e g ( ) . A nodes a b s o l u t e p o s i t i o n i s o b t a i n e d f r o m two s o u r c e s . I n t h e s c r i p t f i l e t h e p o s i t i o n o f t h e node a t r e s t i s g i v e n i n w o r l d c o o r d i n a t e s . T h i s v a l u e i s s t o r e d i n a v e c t o r i n i t _ p o s i t i o n . The d i s p l a c e m e n t o f t h e node r e l a t i v e t o i t s i n i t i a l p o s i t i o n i s d e s c r i b e d i n t h e v e c t o r d y n a m i c _ p o s i t i o n . The a b s o l u t e p o s i t i o n o f t h e node i s t h e sum o f t h e two : i n i t _ p o s i t i o n + d y n a m i c _ p o s i t i o n ( t h e r e c o u l d a l s o be s c a l i n g f a c t o r s i n v o l v e d ) . Nodes o f t y p e i n t e r p o l a t i o n , e x t r a p o l a t i o n a n d c o l o r h a v e an 41 a d d i t i o n a l v e c t o r named p o s i t i o n _ f r o m [ ] w h i c h c o n t a i n s a l i s t o f n o d e s t o u s e i n t h e c a l c u l a t i o n o f t h e a b s o l u t e p o s i t i o n . A more d e t a i l e d e x p l a n a t i o n o f t h e d a t a s t r u c t u r e s w i l l f o l l o w t h e r o u t i n e f l o w c h a r t s . F o l l o w i n g i s a b r i e f f l o w c h a r t f o r c a l c _ c o o r d s _ n o d e ( ) F o r a l l d e f i n e d n o d e s : 1) a. I f i t i s a POSITION o r ARROW t y p e node : i f t h e r e i s a f i l e i n t h e X d i r e c t i o n t h e n : d y n a m i c _ p o s i t i o n [ 0 ] = sample * s c a l e + o f f s e t i f t h e r e i s a f i l e i n t h e Y d i r e c t i o n t h e n : d y n a m i c _ p o s i t i o n [ 1 ] = sample * s c a l e + o f f s e t i f t h e r e i s a f i l e i n t h e Z d i r e c t i o n t h e n : d y n a m i c _ p o s i t i o n [ 2 ] = sample * s c a l e + o f f s e t b. I f i t i s a COLOR node : g e t t h e maximum and minimum v a l u e s o f t h e d a t a f i l e d e f i n e d f o r t h e node. T r a n s l a t e t h e d a t a s a mple : i f t h e sample i s p o s i t i v e ( o r z e r o ) : c o l o r = i n i t _ c o l o r l * (1 - (maximum - sample) * 0.9 / maximum). I n i t _ c o l o r i s d e f i n e d i n t h e s c r i p t f i l e i n t h e d e f i n i t i o n o f t h e node : TYPE COLOR i n i t c o l o r l i n i t c o l o r 2 . 42 i f t h e sample i s n e g a t i v e : c o l o r = i n i t _ c o l o r 2 * (1 - (minimum - sample) * 0.9 / minimum). The v a l u e o f 0.9 i s c h o s e n a r b i t r a r i l y t o a v o i d a c o m p l e t e l y b l a c k c o l o r . 2) F i x a l l n o d e s t h a t h a v e an ADD_NODE p a r a m e t e r and h a v e n o t b e e n i n i t i a t e d y e t . A t t h i s s t a g e , i f t h e node t o be added h a s n o t b e e n f u l l y d e f i n e d ( t h a t i s , i f t h e n o d e s d a t a i s n o t r e a d y ) t h e n an e r r o r message i s g i v e n and t h e p r o g r a m w i l l a b o r t . The f u n c t i o n c a l c _ c o o r d s _ s e g ( ) s e a r c h e s i n e a c h segment f o r INTERPOLATION, EXTRAPOLATION and COLOR nodes a n d c a l l s t h e r o u t i n e l i n e a r _ i n t e r p o l a t e t o c a l c u l a t e t h e p o s i t i o n o f t h e node. F o l l o w i n g i s a b r i e f f l o w c h a r t f o r l i n e a r _ i n t e r p o l a t e ( ) 1) I f o n l y one node i s d e f i n e d i n t h e v e c t o r p o s i t i o n _ f r o m [ ] , t h e n u s e t h i s n o d e s d y n a m i c _ p o s i t i o n t o o b t a i n t h e a b s o l u t e p o s i t i o n o f t h e node. 2) C a l c u l a t e t h e l i n e a r d i s t a n c e o f t h e f i r s t node i n t h e v e c t o r p o s i t i o n _ f r o m t o t h e f i r s t node i n t h e segment 3) C a l c u l a t e t h e d i s t a n c e between t h e two n o d e s i n t h e v e c t o r p o s i t i o n _ f r o m . C a l c u l a t e t h e s l o p e . 4) Use t h e d i s t a n c e o f t h e i n t e r p o l a t e d node t o t h e f i r s t node i n t h e segment and t h e s l o p e c a l c u l a t e d i n s t e p 3 t o o b t a i n t h e d i s p l a c e m e n t o f t h e i n t e r p o l a t e d node and s t o r e t h e r e s u l t i n d y n a m i c _ p o s i t i o n . The d i s t a n c e o f t h e 43 interpolated node to the f i r s t node i n the segment i s a constant and i s calculated at the s t a r t of the program. For c l a r i t y , a short example i s given i n figure 4 : . j-j node3 • . j-j interp • node2 • . j-| nodel |-| nodeO Figure 4 Calculation of an interpolated node. The NODES_LIST command i n the segment i s { nodeO nodel node2 interp node3 } The interp node has the following d e f i n i t i o n : NODE interp { POSITION_FROM { node2 node3 } } To c a l c u l a t e the p o s i t i o n of the interp node: 44 C a l c u l a t e t h e d i s t a n c e o f n o d e l t o nodeO d l O C a l c u l a t e t h e d i s t a n c e o f node2 t o n o d e l d21 The d i s t a n c e s d l O and d21 a r e e a s i l y c a l c u l a t e d s i n c e t h e a b s o l u t e p o s i t i o n s o f t h e nodes a r e known. The d i s t a n c e o f i n t e r p t o node2 i s l e n g t h _ i n t e r p - ( d l O + d21) L e n g t h _ i n t e r p i s a known c o n s t a n t . The s l o p e o f node2 t o node3 i s c a l c u l a t e d by n o r m a l g e o m e t r y . The a b s o l u t e p o s i t i o n o f i n t e r p i s f o u n d f r o m t h e s l o p e and t h e d i s t a n c e t o node2. THE DATA STRUCTURES The d a t a s t r u c t u r e s a r e d e f i n e d i n t h e i n c l u d e f i l e s e e . h . A p a r t i a l p r e s e n t a t i o n o f t h e s t r u c t u r e s i s g i v e n h e r e . The segment a n d node s t r u c t u r e s a r e g i v e n i n d e t a i l b e c a u s e t h e v a r i a b l e s o f t h e s e s t r u c t u r e s a r e r e l a t e d t o i n t h i s p a p e r . The o t h e r s t r u c t u r e s a r e l i s t e d w i t h a s h o r t d e s c r i p t i o n . A more c o m p l e t e d e s c r i p t i o n c a n be f o u n d i n t h e f i l e s e e . h . The segment s t r u c t u r e c o n t a i n s a l l t h e i n f o r m a t i o n n e e d e d t o r e p r o d u c e t h e segment on t h e s c r e e n . s t r u c t segment { i n t s e g _ t y p e ; i n t n u m _ n o d e s _ i n _ s e g ; i n t nodes_list[MAX_NO_NODES_PER_SEG]; f l o a t nodes_len[MAX_NO_NODES_PER_SEG]; f l o a t i n i t _ c o l o r _ p [ 3 ] ; f l o a t i n i t _ c o l o r _ n [ 3 ] ; i n t c o l o r _ t y p e ; s h o r t s e g _ w i d t h ; }; 45 Seg_type defines the type of segment to be displayed : RECTANGLE, LINEAR, CUBIC, ARROW, BARCLR, GRAPH. Num_nodes_in_seg defines the number of nodes to be drawn i n the segment. The l i s t i s given i n NODES_LIST command. Nodes_len i s the distance of the node to the f i r s t node i n the segment. This c a l c u l a t i o n i s made during the i n i t i a t i o n of variables and remains constant. This value i s used for nodes of type INTERPOLATION and COLOR to determine t h e i r absolute p o s i t i o n on the screen. I n i t _ c o l o r _ p and i n i t _ c o l o r _ n are the i n i t i a l colors for the segment defined i n the s c r i p t f i l e by the user. I f the segment i s of type LINEAR or RECTANGLE then only i n i t _ c o l o r _ p i s used, as the color of the segment remains constant. In a segment of type BARCLR both colors are used. The f i r s t color i s used for p o s i t i v e values of the node, the second for negative values. Color_type defines how to use the color nodes. LOCAL means that the node w i l l be displayed l o c a l l y using a square; the color of the square represents the value of the node. LINEAR causes the whole segmented to be given an interpolated color. An in t e r p o l a t i o n function i s used for a l l the color nodes and the entir e segment i s drawn using t h i s function. Seg_width defines the thickness of the l i n e being drawn. 46 s t r u c t node { c h a r *node_name; f l o a t i n i t _ p o s i t i o n [ 3 ] ; f l o a t d y n a m i c _ p o s i t i o n [ 3 ] ; f l o a t d y n a r a i c _ c o l o r [ 3 ] ; i n t t y p e ; f l o a t i n i t _ c o l o r _ p [ 3 ] ; f l o a t i n i t _ c o l o r _ n [ 3 ] ; i n t r e a d y _ f l a g ; i n t p o s i t i o n _ f r o m [ 4 ] ; i n t c o l o r _ f r o m [ 2 ] ; i n t d o f _ x ; i n t d o f _ y ; i n t d o f _ z ; f l o a t * p t r _ t o _ s a m p l e _ x ; f l o a t * p t r _ t o _ s a m p l e _ y ; f l o a t * p t r _ t o _ s a m p l e _ z ; i n t i n d e x _ s a m p l e _ x ; i n t i n d e x _ s a m p l e _ z ; i n t i n c r _ i n d e x _ x ; i n t i n c r _ i n d e x _ y ; i n t i n c r _ i n d e x _ z ; i n t e n t r y _ f i l e _ x ; i n t e n t r y _ f i l e _ y ; i n t e n t r y _ f i l e _ z ; f l o a t r u n _ s c a l e _ x ; f l o a t r u n _ o f f s e t _ x ; f l o a t r u n _ s c a l e _ y ; f l o a t r u n _ o f f s e t _ y ; f l o a t r u n _ s c a l e _ z ; f l o a t r u n _ o f f s e t _ z ; i n t add_node_no; f l o a t a d d _ n o d e _ s c a l e ; f l o a t a d d _ n o d e _ o f f s e t ; s t r u c t g a g e _ d e f i n i t i o n g a g e _ d e f ; }; I n i t _ p o s i t i o n [ ] c o n t a i n s t h e p o s i t i o n o f t h e node i n a b s o l u t e w o r l d c o o r d i n a t e s a t r e s t . T h i s i s a c o n s t a n t a n d d o e s n o t c h a n g e d u r i n g t h e r u n o f t h e p r o g r a m . D y n a m i c _ p o s i t i o n [ ] c o n t a i n s t h e d i s p l a c e m e n t o f t h e node w i t h r e s p e c t t o t h e no d e ' s o r i g i n a l p o s i t i o n a s d e s c r i b e d i n i n i t _ p o s i t i o n . The v a l u e i n d y n a m i c _ p o s i t i o n f o r a node o f t y p e 47 POSITION i s o b t a i n e d f r o m t h e f i l e d e f i n e d by FILE_NAME i n t h e s c r i p t f i l e a nd p o i n t e d t o by t h e p o i n t e r : p o i n t e r _ t o _ s a m p l e _ x ( o r _ y o r _ z ) . The a b s o l u t e p o s i t i o n i s : i n i t _ p o s i t i o n + d y n a m i c _ p o s i t i o n * r u n _ s c a l e + r u n _ o f f s e t . D y n a m i c _ c o l o r [ ] c o n t a i n s t h e c o l o r t o u s e f o r a node o f t y p e COLOR. The c o l o r f o r t h e node i s o b t a i n e d b y t h e f o l l o w i n g e q u a t i o n : I f t h e sample i s p o s i t i v e : d y n a m i c _ c o l o r [ ] = i n i t _ c o l o r _ p * (1 - (max - sample) * 0.9 / max. I f t h e sample i s n e g a t i v e : d y n a m i c _ c o l o r [ ] = i n i t _ c o l o r _ n * (1 - (min - sample) * 0.9 / m i n . Max and m i n a r e t h e maximum and minimum v a l u e s o f t h e sample f i l e u s e d f o r t h e node. I n i t _ c o l o r _ p and i n i t _ c o l o r _ n a r e t h e c o l o r s d e f i n e d by t h e u s e r i n t h e s c r i p t f i l e f o r t h e node i n t h e command : "TYPE COLOR c o l o r _ p c o l o r _ n " . P o s i t i o n _ f r o m [ ] and c o l o r _ f r o m [ ] a r e a r r a y s t h a t c o n t a i n node i n d e x e s t o d e t e r m i n e w h i c h nodes t o u s e f o r i n t e r p o l a t i o n -p o s i t i o n o r c o l o r . 0.9 i s c h o s e n a r b i t r a r i l y t o a v o i d a c o m p l e t e l y b l a c k c o l o r . Add_node_no, a d d _ n o d e _ s c a l e and a d d _ n o d e _ o f f s e t a r e u s e d t o add t h e d y n a m i c p o s i t i o n o f a node. Add_node_no c o n t a i n s t h e i n d e x o f t h e node t o add. A d d _ n o d e _ s c a l e and a d d _ n o d e _ o f f s e t a l l o w t h e n o d e s v a l u e s t o be t r a n s l a t e d . The e q u a t i o n u s e d i s : d y n a m i c _ p o s i t i o n _ i = d y n a m i c _ p o s i t i o n _ i + 48 d y n a m i c _ p o s i t i o n _ j * a d d _ n o d e _ s c a l e + a d d _ n o d e _ o f f s e t . The l e t t e r i r e p r e s e n t s t h e node b e i n g d e f i n e d , t h e l e t t e r j r e p r e s e n t s t h e node t o add. G a g e _ d e f i n i t i o n i s a s t r u c t u r e w i t h i n t h e node s t r u c t u r e t o d e f i n e t h e t e x t and p o s i t i o n o f t h e t e x t t o u s e f o r t h e node on t h e s c r e e n . U s u a l l y t h e nodes name i s p l a c e d n e a r t h e i n i t i a l p o s i t i o n o f t h e node. A d d i t i o n a l s t r u c t u r e s i n t h e f i l e s e e . h a r e : s t r u c t d r a w _ l i n e s t r u c t s c r e e n _ d e f s t r u c t f i l e s s t r u c t t a b l e s s t r u c t g r a p h _ t . S t r u c t u r e s s c r e e n _ d e f and d r a w _ l i n e c o n t a i n i n f o r m a t i o n d e f i n e d i n t h e h e a d e r s e c t i o n o f t h e s c r i p t f i l e . T h e s e s t r u c t u r e s e n a b l e d r a w i n g o f t h e b a c k g r o u n d l i n e s on t h e s c r e e n and a l s o c o n t a i n t h e w o r l d c o o r d i n a t e s . S t r u c t u r e f i l e s c o n t a i n s a p o i n t e r t o a l l t h e f i l e s b e i n g u s e d f o r t h e n o d e s . T h i s s t r u c t u r e a l l o w s s h a r i n g o f f i l e s by t h e n o d e s . I t a l s o c o n t a i n s i n f o r m a t i o n o f t h e f i l e s s u c h a s t h e minimum and maximum v a l u e s . S t r u c t u r e t a b l e s c o n t a i n s p o i n t e r s t o t a b l e s t h a t c o n t a i n i n f o r m a t i o n on t h e node names, segment names a n d f i l e names. S t r u c t u r e g r a p h _ t c o n t a i n s i n f o r m a t i o n f o r t h e f u n c t i o n s t h a t d i s p l a y t h e g r a p h s . CONCLUSIONS T h e r e a r e many a d v a n t a g e s t o be g a i n e d by d i s p l a y i n g an e x p e r i m e n t w i t h g r a p h i c a l u t i l i t i e s a s d e s c r i b e d i n t h i s p a p e r . The m a i n window o f t h e p r o g r a m c o n t a i n s an a b s t r a c t o u t l i n e o f t h e s t r u c t u r e b e i n g e x p e r i m e n t e d on. A l l t h e d i s p l a c e m e n t m e a s u r i n g i n s t r u m e n t s c a n be u s e d t o d i s p l a y t h e s t r u c t u r e i n t h i s window. I t i s p o s s i b l e t o o b t a i n a d e t a i l e d p i c t u r e o f t h e w h o l e s t r u c t u r e . The p i c t u r e c a n i n c l u d e o t h e r i n s t r u m e n t s s u c h a s a c c e l e r o m e t e r s and s t r a i n g a g e s . The c o m p l e t e movement o f t h e s t r u c t u r e c a n be p l a y e d f o r w a r d and b a c k w a r d . I n a d d i t i o n t o t h e movement, i t i s p o s s i b l e t o o b t a i n a v i s u a l q u a l i t a t i v e image o f t h e o t h e r i n s t r u m e n t s w h i c h move w i t h t h e s t r u c t u r e on t h e s c r e e n . The s e c o n d window c o n t a i n s a r r o w s ( o r b a r s ) o f c h a n g i n g l e n g t h ; t h e l e n g t h o f t h e a r r o w b e i n g p r o p o r t i o n a l t o t h e i n s t r u m e n t s v a l u e . T h i s window e n a b l e s t h e r e s e a r c h e r t o compare v a l u e s o f g r o u p s o f i n s t r u m e n t s . From t h i s window t h e u s e r may g a i n q u a l i t a t i v e i m p r e s s i o n s o f t h e b e h a v i o u r o f t h e i n s t r u m e n t s ; f o r example, w h i c h ones h a v e h i g h v a l u e s , w h i c h h a v e low, w h i c h a r e c o n s t a n t e t c . The u s e r may d i s p l a y a s many o f t h e i n s t r u m e n t s t h a t he d e s i r e s t o . The u s e r c a n v i e w t h e c h a n g i n g o f t h e i n s t r u m e n t s t o g e t h e r w i t h t h e a c t u a l s t r u c t u r e w h i c h i s d i s p l a y e d i n t h e f i r s t window. I t i s a l s o q u i t e e a s y t o d e t e c t a m a l f u n c t i o n i n g i n s t r u m e n t i n t h i s window. The window o f c o l o r b a r s i s s i m i l a r i n i t s u s e t o t h e a r r o w 50 window. S i n c e c o l o r i s u s e d , i n s t e a d o f l e n g t h , i t i s n o t s o e a s y t o r e a d a c t u a l v a l u e s f r o m t h e c o l o r b a r s . The p u r p o s e o f t h e c o l o r b a r s i s t o h e l p t h e r e s e a r c h e r i n i d e n t i f y i n g g r o u p s o f i n s t r u m e n t s [ 8 , 1 3 ] . F o r example, i f f o u r b a r s o u t o f , s a y t w e n t y , a r e o f a d i f f e r e n t c o l o r , t h i s w i l l be v e r y n o t i c e a b l e . Or i f one o f t h e i n s t r u m e n t s a l w a y s h a s a d i f f e r e n t c o l o r t o t h e r e s t , t h i s t o o w i l l s t a n d o u t . By a s s i g n i n g a d i f f e r e n t c o l o r f o r p o s i t i v e and n e g a t i v e v a l u e s o f t h e i n s t r u m e n t s i t i s p o s s i b l e t o r e l a t e p o l a r i t i e s o f i n s t r u m e n t s t o t h e movement o f t h e s t r u c t u r e . Or by a s s i g n i n g t h e same c o l o r t o p o s i t i v e and n e g a t i v e v a l u e s i t i s p o s s i b l e t o r e l a t e , q u a l i t a t i v e l y , t h e a b s o l u t e v a l u e o f t h e i n s t r u m e n t s t o t h e movement o f t h e s t r u c t u r e . The f o u r t h window c o n t a i n s c o n v e n t i o n a l g r a p h s o f any o f t h e i n s t r u m e n t s t h a t t h e u s e r may w i s h . L i k e t h e a b o v e windows i t i s meant f o r a q u a l i t a t i v e i m p r e s s i o n o f t h e b e h a v i o u r o f nodes o r i n s t r u m e n t s i n t h e e x p e r i m e n t . E a c h g r a p h i s a s s i g n e d a d i f f e r e n t c o l o r , s o many g r a p h s c a n be d i s p l a y e d t o g e t h e r . I n a d d i t i o n , t h e u s e r may d e f i n e , i n t h e s c r i p t f i l e , t h e number o f s a m p l e s t o be d i s p l a y e d w i t h i n t h e window. T h i s a l l o w s f o r an e x p a n d e d v i e w o f t h e g r a p h s . The g r a p h s d i s p l a y e d i n t h i s window, l i k e a l l g r a p h s , a l l o w t h e u s e r t o s e e what h a s h a p p e n e d t o an i n s t r u m e n t p r i o r t o t h e p r e s e n t s a m ple a n d what i s a b o u t t o h a p p e n . The a d v a n t a g e o f t h e g r a p h s i n t h i s f o r m i s t h a t i t i s v e r y e a s y t o r e l a t e t h e a c t u a l g r a p h s o f t h e i n s t r u m e n t s t o t h e movement o f t h e s t r u c t u r e , w h i c h i s d i s p l a y e d a t t h e same 51 t i m e i n t h e f i r s t window. F e a t u r e s s u c h a s c h a n g i n g t h e s p e e d o f t h e d i s p l a y , s i n g l e s t e p p i n g i n b o t h d i r e c t i o n s and h a v i n g t h e a c t u a l v a l u e s o f t h e i n s t r u m e n t s d i s p l a y e d a t any t i m e a r e a l l n e c e s s a r y f o r f u l l u s e r i n t e r a c t i o n w i t h t h e d a t a . The p r o g r a m d e s c r i b e d i n t h i s p a p e r i s n o t meant t o be u s e d a s a d a t a a n a l y s i s p a c k a g e . R a t h e r , i f t h e p r o g r a m i s f o u n d t o be u s e f u l , i t c o u l d be i n t e g r a t e d i n t o a s o f t w a r e p a c k a g e t h a t was s p e c i f i c a l l y d e v e l o p e d f o r d a t a a n a l y s i s . The i d e a l p a c k a g e w o u l d be one t h a t c o n t a i n s f i n i t e e l e m e n t a n a l y s i s , t h i s p r o g r a m , and a p o s t p r o c e s s i n g a n a l y s i s p r o g r a m . U s i n g a p a c k a g e l i k e t h i s , t h e r e s e a r c h e r w o u l d n e e d t o d e f i n e t h e n o d e s , segments and a t t r i b u t e s o n l y o n c e . Many a d d i t i o n s c o u l d be a d d e d t o t h e p r o g r a m . A more e l a b o r a t e u s e r i n t e r f a c e c o u l d be d e v e l o p e d where t h e u s e r c a n i n t e r a c t i v e l y c h ange t h e model b e i n g d i s p l a y e d on t h e s c r e e n . The u s e r s h o u l d be a b l e t o p i c k any p o i n t on t h e s t r u c t u r e t o o b t a i n t h e p o s i t i o n o f t h a t p o i n t a t any g i v e n t i m e d u r i n g t h e e x p e r i m e n t . An i n t e r p r e t e r f o r t h e s c r i p t f i l e c o u l d be u s e f u l . T h a t i s , t h e m o d e l i s d i s p l a y e d t o g e t h e r w i t h i t s d e v e l o p m e n t i n t h e s c r i p t f i l e . The s c r i p t f i l e i s u s e f u l e s p e c i a l l y f o r t h e a b i l i t y o f u s i n g i t i n c o m p l e t e l y d i f f e r e n t m a c h i n e s . A t p r e s e n t a l l t h e s a m p l e d d a t a a r e i n A S C I I f i l e s . T h i s i s t i m e c o n s u m i n g , s i n c e e a c h t i m e t h e p r o g r a m i s l o a d e d , t h e d a t a must be t r a n s l a t e d i n t o a b i n a r y f o r m a t . I n a d d i t i o n , t h e l o a d e d d a t a i s s c a l e d and t h e maximum and t h e minimum v a l u e s a r e 52 d e t e c t e d . A l l t h i s c o u l d be done o n c e and s a v e d i n a b i n a r y f o r m a t t e d f i l e . More d e v e l o p m e n t i s n e c e s s a r y t o a l l o w t h e i n t e g r a t i o n o f d i f f e r e n t t y p e s o f i n s t r u m e n t s . F o r example, r o t a t i o n a l t r a n s d u c e r s c o u l d be u s e d i n a s i m i l a r way t o d i s p l a c e m e n t t r a n s d u c e r s . O t h e r i n s t r u m e n t s h a v e n o t b e e n i n t r o d u c e d i n t o t h e p r o g r a m f o r l a c k o f a v a i l a b i l i t y o f t h e s e i n s t r u m e n t s . T h i s p r o g r a m d o e s n o t r e p l a c e t h e u s e o f a n o r m a l v i d e o . I n s t e a d , i t c a n augment t h e r e s e a r c h e r s v i e w o f t h e c o m p l e t e p i c t u r e o f what i s a c t u a l l y h a p p e n i n g d u r i n g t h e e x p e r i m e n t . I n a d d i t i o n , by a d d i n g a s many i n s t r u m e n t s a s n e c e s s a r y , t h e u s e r may o b t a i n a s d e t a i l e d a v i e w o f t h e model b e i n g e x p e r i m e n t e d on a s he s o d e s i r e s . The u s e o f modern c o m p u t e r s a l l o w s c a p t u r i n g d a t a s a m p l e s a t a l m o s t any s p e e d . The s a m p l i n g r a t e c o u l d be i n nano s e c o n d s f o r v e r y f a s t movements, o r a s s l o w a s m i n u t e s o r h o u r s f o r e x t r e m e l y s l o w m o v i n g s t r u c t u r e s . As an example o f a p o s s i b l e u s a g e f o r t h e p r o g r a m t h a t h a s b e e n d e s c r i b e d i n t h i s p a p e r , a c o m p a r i s o n o f t h e r e s u l t s f r o m two e x p e r i m e n t s , e a r t h q u a k e s i m u l a t i o n s i n t h i s c a s e , w i l l be made. B o t h e x p e r i m e n t s i n v o l v e t h e s t r u c t u r e d e s c r i b e d a b o v e . Suppose t h e r e s e a r c h e r w o u l d l i k e t o compare t h e b e h a v i o u r o f t h e l e f t c o l u m n o f t h e s t r u c t u r e d u r i n g b o t h e x p e r i m e n t s . F i g u r e s 5 t o 10 show r e a l d a t a a c q u i r e d d u r i n g t h e two e x p e r i m e n t s . F i g u r e s 5 t o 7 a r e f r o m t h e f i r s t e x p e r i m e n t a n d f i g u r e s 8 t o 10 a r e f r o m t h e s e c o n d one. F i g u r e s 5 and 8 a r e t h e d i s p l a c e m e n t o f t h e s h a k e t a b l e v e r s u s t i m e . F i g u r e s 6 and 9 a r e t h e d i s p l a c e m e n t o f t h e t o p o f t h e col u m n v e r s u s t i m e . F i g u r e s 7 and 10 a r e measurements f r o m a s t r a i n gage a t t a c h e d t o t h e co l u m n . The p o i n t t o be made i s t h a t i t i s v e r y d i f f i c u l t f r o m t h e s e g r a p h s t o r e l a t e t h e s h a p e o f t h e c o l u m n a t any i n s t a n t o f t i m e t o t h e a c t u a l movement o f t h e s h a k e t a b l e and t o t h e measurement o f t h e s t r a i n gage, and t h e n compare t h i s t o what i s h a p p e n i n g d u r i n g t h e s e c o n d e x p e r i m e n t . I t i s v e r y e a s y w i t h t h e u s e o f t h e s c r i p t f i l e d e v e l o p e d i n t h e example a b o v e t o d e s c r i b e two se g m e n t s , o n e f o r e a c h e x p e r i m e n t . The segment r e p r e s e n t s t h e c o l u m n d u r i n g t h e e x p e r i m e n t . The p r o g r a m w i l l a l l o w t h e u s e r t o s e e t h e a c t u a l movement o f t h e col u m n d u r i n g b o t h e x p e r i m e n t s t o g e t h e r w i t h a q u a l i t a t i v e v a l u e o f t h e s t r a i n g age. The s t r a i n g age c o u l d be d i s p l a y e d a s a s q u a r e w h i c h moves w i t h t h e column and c h a n g e s c o l o r a c c o r d i n g t o t h e v a l u e o f t h e s t r a i n g age. The f i n a l p i c t u r e on t h e s c r e e n a l l o w s t h e u s e r t o v i e w b o t h e x p e r i m e n t s a t t h e same t i m e , and t o be a b l e t o r e l a t e v a l u e s s u c h a s s t r a i n and d i s p l a c e m e n t . I n t h i s example o n l y t h r e e i n s t r u m e n t s a r e u s e d . I n t h e a c t u a l e x p e r i m e n t , t h i r t y two i n s t r u m e n t s were u s e d . I t s h o u l d be made c l e a r t h a t t h e r e i s no i n t e n t i o n i n t h i s p a p e r t o b e l i t t l e t h e u s e o f common g r a p h s . F o r a l l s t a g e s o f a n a l y s i s t h e g r a p h i s a f u n d a m e n t a l t o o l . To compare i n d e t a i l t h e measurements o f two i n s t r u m e n t s , i t w o u l d be e a s i e r t o l o o k a t t h e g r a p h s t h a n t o u s e a g r a p h i c a l r e p r e s e n t a t i o n i n t h e f o r m o f c o l o r o r movement. The g r a p h i c a l m o d e l i n t h i s p a p e r i s s u g g e s t e d a s an a d d i t i o n a l t o o l t o t h e r e s e a r c h e r . 54 F i g u r e 6 D i s p l a c e m e n t o f t o p o f colum n F i g u r e 7 S t r a i n gage a t t o p o f colu m n . 55 F i g u r e 8 Table displacement S u r p r i s i n g r e s u l t s may r e s u l t i n t h e u s e o f t h e p a c k a g e d e s c r i b e d i n t h i s p a p e r . A l t h o u g h i t i s i n a p r e l i m i n a r y s t a g e , a n d h a s n o t b e e n e x t e n s i v e l y u s e d f o r e x p e r i m e n t s , t h e r e was a r e s u l t d e t e c t e d by t h e p r o g r a m d u r i n g an e x p e r i m e n t t h a t was n o t n o t i c e d by t h e v i d e o p i c t u r e o r by t h e human e y e . The s t r u c t u r e , u s e d i n t h e example d e s c r i b e d i n t h i s p a p e r , was f o u n d , by u s e o f t h e p r o g r a m , t o h a v e b e e n b e n t d u r i n g a t e s t . T h i s r e s u l t i s o f no r e s e a r c h s i g n i f i c a n c e b u t i s b r o u g h t f o r t h f o r d e m o n s t r a t i n g t h e s o r t o f r e s u l t s t h a t c o u l d be o b t a i n e d by u s e o f g r a p h i c a l methods i n d i s p l a y i n g e x p e r i m e n t s . 57 BIBLIOGRAPHY 1 B.H M c Cormick, T.A D e f a n t i . Computer G r a p h i c s , V o l 21, No. 6, Nov 1987, s p e c i a l i s s u e . 2 AVS. Computer G r a p h i c s and a p p l i c a t i o n s , J u l y 1989 3 apE. D. D y e r , Computer g r a p h i c s and a p p l i c a t i o n s . J u l y 90. 4 PV Wave V e r s i o n 3 by P r e c i s i o n V i s u a l s , I n c . 5 IDEAS by S t r u c t u r a l Dynamic R e s e a r c h C o r p o r a t i o n . 6 GL, S i l i c o n G r a p h i c s I n c . 7 S. R. E l l i s , V i s i o n s o f V i s u a l i z a t i o n A i d s : D e s i g n , P h i l o s o p h y and O b s e r v a t i o n . S P I E , V o l 1083, 18-20 J a n 1989. 8. M. K. K a i s e r , P e r c e p t u a l I s s u e s i n S c i e n t i f i c V i s u a l i z a t i o n . S P I E , V o l 1083, 18-20 J a n 1989. 9. P. S a b e l l a , I C a r l b o m , An O b j e c t O r i e n t e d A p p r o a c h t o t h e S o l i d M o d e l i n g o f E m p i r i c a l D a t a . Computer G r a p h i c s and A p l l i c a t i o n s S e p t . 1989, V o l 9 No. 5. 10 C. Upson, T. F a u l h a b e r , D. Kamins, D. L a i d l a w , D. S c h l e g e l , J . Vroom, R. G u r w i t z , A. v a n Dam, The A p p l i c a t i o n V i s u a l i z a t i o n S y s t e m : A C o m p u t a t i o n a l E n v i r o n m e n t f o r S c i e n t i f i c V i s u a l i z a t i o n . 11 R. P a r s l o w . A New D i r e c t i o n f o r Computer G r a p h i c s . Computer B u l l e t i n , S e p t 1987, ( 2 2 - 3 1 ) . 12 K. P. F r e n k e l . The A r t and S c i e n c e o f V i s u a l i z i n g D a t a . C o m m u n i c a t i o n s o f t h e ACM, V o l 31, No. 2, F e b 1988. 13 E. D. H o a d l e y . I n v e s t i g a t i n g t h e E f f e c t s o f C o l o r . C o m m u n i c a t i o n s o f t h e ACM, V o l 33, No. 2, F e b 1990. 58 

Cite

Citation Scheme:

        

Citations by CSL (citeproc-js)

Usage Statistics

Share

Embed

Customize your widget with the following options, then copy and paste the code below into the HTML of your page to embed this item in your website.
                        
                            <div id="ubcOpenCollectionsWidgetDisplay">
                            <script id="ubcOpenCollectionsWidget"
                            src="{[{embed.src}]}"
                            data-item="{[{embed.item}]}"
                            data-collection="{[{embed.collection}]}"
                            data-metadata="{[{embed.showMetadata}]}"
                            data-width="{[{embed.width}]}"
                            async >
                            </script>
                            </div>
                        
                    
IIIF logo Our image viewer uses the IIIF 2.0 standard. To load this item in other compatible viewers, use this url:
https://iiif.library.ubc.ca/presentation/dsp.831.1-0051981/manifest

Comment

Related Items