tipping model
TRANSCRIPT
-
8/14/2019 tipping model
1/16
G B T M e m o 1 2 4
T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C
D o n W e l l s L e e K i n g
M a r c h 2 1 , 1 9 9 5
A b s t r a c t
T h e n i t e e l e m e n t m o d e l o f t h e G B T t i p p i n g s t r u c t u r e h a s b e e n t r a n s l a t e d i n t o e x e c u t a b l e c o d e
e x p r e s s e d i n t h e C l a n g u a g e , s o t h a t i t c a n b e u s e d b y t h e c o n t r o l s o f t w a r e m o d u l e s f o r t h e p o i n t i n g ,
f o c u s - t r a c k i n g , q u a d r a n t d e t e c t o r , a c t i v e - s u r f a c e a n d l a s e r - r a n g e n d e r s u b s y s t e m s o f t h e G B T . W e g i v e
a d e s c r i p t i o n o f t h i s C - c o d e v e r s i o n o f t h e t i p p i n g s t r u c t u r e m o d e l a n d t w o e x a m p l e s o f i t s a p p l i c a t i o n
t o p r a c t i c a l p r o b l e m s .
1 F r o m N A S T R A N - o u t p u t t o C - c o d e
T h e G B T s t r u c t u r e w a s d e s i g n e d f o r C R S I
1
b y L o r a l u s i n g t h e \ N I S A I I "
2
n i t e - e l e m e n t m o d e l l i n g p a c k a g e .
T h e n a l v e r s i o n o f t h e t i p p i n g - s t r u c t u r e w a s m o d e l \ 9 5 B " ( 2 8 O c t o b e r 1 9 9 3 ) . T h e d e s i g n w a s c o n r m e d
b y C R S I u s i n g t h e \ A N S Y S "
3
m o d e l l i n g s o f t w a r e , a d i e r e n t p a c k a g e f r o m t h e o n e u s e d b y L o r a l . N R A O
v e r i e d t h e m o d e l u s i n g y e t a n o t h e r p a c k a g e , \ M S C / N A S T R A N " .
4
T h e N A S T R A N l i n e - p r i n t e r - l i s t i n g l e
p r o d u c e d b y N R A O ' s e x e c u t i o n o f m o d e l 9 5 B w a s p a r s e d b y a p r o g r a m c o d e d i n t h e A W K l a n g u a g e i n o r d e r
t o e x t r a c t t h e r e s u l t s f o r t h e n o d e s o f t h e s t r u c t u r e a n d r e f o r m a t t h e m i n t o s o u r c e c o d e i n t h e C l a n g u a g e
( s e e A p p e n d i x C , p . 1 5 ) .
N R A O ' s v e r s i o n o f t h e m o d e l c u r r e n t l y c o n t a i n s o n l y t h e n o d e s o n t h e r i g h t - h a n d - s i d e o f t h e G B T . N o d e s
w h i c h w e r e n o t i n t h e G B T ' s p l a n e o f s y m m e t r y w e r e d u p l i c a t e d b y t h e A W K p r o g r a m , a n d n e g a t i v e n o d e -
I D s w e r e a s s i g n e d . T h e s i g n s o f c o m p o n e n t s o f t h e t r a n s l a t i o n a l a n d r o t a t i o n a l d i s p l a c e m e n t s f o r t h e s e
d u p l i c a t e d n o d e s w e r e i p p e d i n a c c o r d a n c e w i t h a p p r o p r i a t e s y m m e t r y r u l e s ( f o r e x a m p l e , s e e t h e v a l u e s
f o r n o d e s 7 6 8 0 1 2 o n p a g e 1 6 ) . T h e f u l l s y m m e t r i c m o d e l h a s a t o t a l o f 5 5 7 7 n o d e s , o f w h i c h 4 0 % a r e t h e
a c t i v e s u r f a c e a c t u a t o r n o d e s .
T h e 2 2 0 9 a c t i v e s u r f a c e a c t u a t o r s a r e n o d e - I D s 7 0 0 0 0 1 t h r o u g h 7 6 8 0 1 2 . T h e s e I D n u m b e r s a r e c o m p o s e d o f
7 0 0 0 0 0 p l u s a n a n g l e p a r t a n d a h o o p p a r t ; e . g . , n o d e - 7 6 8 0 1 2 i s 6 8 0 d e g r e e s f r o m t h e p l a n e o f s y m m e t r y
( p o s i t i v e a n g l e s a r e c l o c k w i s e a s s e e n w h e n l o o k i n g d o w n f r o m t h e + Z a x i s ) a n d i s i n h o o p n u m b e r 1 2 o f t h e
s t r u c t u r e . T h i s h o o p - a n d - a n g l e n o t a t i o n i s e q u i v a l e n t t o t h e n o t a t i o n u s e d t o s p e c i f y a c t u a t o r s i n t h e a c t i v e
s u r f a c e c o n t r o l s y s t e m a n d i n t h e l a s e r r a n g e n d e r s y s t e m ; e . g . , t h e r e t r o r e e c t o r n a m e d \ Z G 1 2 + 6 8 0 " i n
P a r 9 4 ] i s t h e n o d e w i t h I D \ 7 6 8 0 1 2 " i n t h i s m o d e l .
T h e u n d i s p l a c e d Z c o o r d i n a t e s o f t h i s m o d e l i n c l u d e t h e 1 9 0 0 i n c h h e i g h t o f t h e e l e v a t i o n a x l e a b o v e t h e
t o p o f t h e a z i m u t h t r a c k . I . e . , t o g e t c o o r d i n a t e s i n t h e e l e v a t i o n c o o r d i n a t e s y s t e m ( X
e
Y
e
Z
e
) a s d e n e d
i n K i n 9 4 ] , 1 9 0 0 . 0 i n c h e s s h o u l d b e s u b t r a c t e d f r o m n o d e _ i - > g r i d 2 ] , t h e u n d i s p l a c e d Z v a l u e , w h i c h i s
r e t u r n e d b y t h e f u n c t i o n g e t _ n o d e _ d a t a ( )
1
C O M S A T R S I , f o r m e r l y R S i .
2
f r o m E n g i n e e r i n g M e c h a n i c s R e s e a r c h C o r p o r a t i o n .
3
f r o m S w a n s o n A n a l y s i s S y s t e m s , I n c .
4
\ N A S T R A N " i s a r e g i s t e r e d t r a d e m a r k o f t h e N a t i o n a l A e r o n a u t i c s a n d S p a c e A d m i n i s t r a t i o n N A S A ] ; M S C / N A S T R A N
i s a n e n h a n c e d , p r o p r i e t a r y v e r s i o n d e v e l o p e d a n d m a i n t a i n e d b y T h e M a c N e a l - S c h w e n d l e r C o r p o r a t i o n .
1
-
8/14/2019 tipping model
2/16
2 P a g e T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C G B T M e m o 1 2 4
2 S o f t w a r e t o r e t r i e v e t h e m o d e l r e s u l t s
F u n c t i o n g e t _ n o d e _ d a t a ( ) ( s e e A p p e n d i x A . 1 , p . 9 ) r e t r i e v e s v a l u e s f r o m t h e t a b l e o f n o d e s ( A p p e n d i x C ,
p . 1 5 ) . I t t a k e s t h e e l e v a t i o n a n g l e a s a n a r g u m e n t a n d r e t u r n s t h e u n d i s p l a c e d \ g r i d " c o o r d i n a t e s , t h e
d i s p l a c e m e n t s ( t o b e a d d e d t o t h e \ g r i d " v a l u e s ) a n d t h e r o t a t i o n s . T h e d i s p l a c e m e n t s a n d r o t a t i o n s a r e
c o m p u t e d b y f o r m i n g a w e i g h t e d s u m o f t h e v a l u e s f o r t h e z e n i t h a n d h o r i z o n g r a v i t a t i o n a l d e e c t i o n c a s e s .
F u n c t i o n g e t _ i n d e x ( ) ( s e e A p p e n d i x A . 2 , p . 1 1 ) s e a r c h e s t h e t a b l e o f n o d e s t o n d t h e t a b l e i n d e x f o r a
s p e c i e d n o d e - I D . T h e i n d i c i e s a r e c a c h e d s o t h a t r e p e a t e d c a l l s f o r t h e s a m e n o d e - I D s a r e f a s t e r .
3 A p p l i c a t i o n s
T h i s s t r u c t u r a l m o d e l i s e x p e c t e d t o b e u s e d f o r t h e f o l l o w i n g p u r p o s e s :
B F P , G r a v i t y P o i n t i n g T e r m D e e c t i o n s o f t h e n o d e s w h i c h m o d e l t h e a c t i v e s u r f a c e a c t u a t o r s w i l l b e
t t e d t o d e r i v e p a r a m e t e r s o f t h e \ b e s t - t t i n g p a r a b o l o i d " B F P ] a s a f u n c t i o n o f e l e v a t i o n . T h e B F P
w i l l b e t h e p r i m a r y c o m p o n e n t o f t h e \ c o m m a n d e d s u r f a c e " i n t h e o p e n - l o o p a c t i v e s u r f a c e m o d u l e .
A l s o , t h e t i l t p a r a m e t e r o f t h e B F P w i l l b e t h e a p r i o r i e s t i m a t e o f t h e g r a v i t a t i o n a l d e e c t i o n t e r m s
o f t h e \ t r a d i t i o n a l " p o i n t i n g c o r r e c t i o n m o d u l e .
A c t i v e S u r f a c e T h e o p e n - l o o p a c t i v e s u r f a c e c o n t r o l f o r \ P h a s e - 2 " o f t h e G B T p r o j e c t w i l l c o n s i s t o f
d r i v i n g t h e a c t u a t o r s w i t h t h e d i e r e n c e b e t w e e n t h e s t r u c t u r a l m o d e l a n d t h e B F P , p r o j e c t e d t o l o c a l
s u r f a c e n o r m a l .
F o c u s T r a c k i n g T h e f o c u s t r a c k i n g s u b s y s t e m w i l l d e p e n d o n t h e s t r u c t u r a l m o d e l t o c o m p u t e
d i s p l a c e m e n t s o f t h e p r i m e f o c u s a n d G r e g o r i a n o p t i c s r e l a t i v e t o t h e p r i m e f o c a l p o i n t o f t h e B F P
( w h i c h i t s e l f d e p e n d s o n t h e s t r u c t u r a l m o d e l ) .
R a n g e n d e r C o n t r o l & A n a l y s i s T h e l a s e r - r a n g e n d e r s u b s y s t e m w i l l u s e t h e s t r u c t u r a l m o d e l t o
c o m p u t e t h e d i s p l a c e d l o c a t i o n s o f r e t r o r e e c t o r s f o r a c q u i s i t i o n a n d t r a c k i n g p u r p o s e s . T h e
d i s p l a c e m e n t s w i l l a l s o b e u s e d a s c o r r e c t i o n s i n t t i n g o f r a n g e m e a s u r e m e n t s t o d e r i v e d e s i r e d
p a r a m e t e r s ( s u c h a s t h e o r i e n t a t i o n o f t h e d i s t o r t e d b a c k u p s t r u c t u r e ) . T i l t s o f n o d e s w i l l b e i m p o r t a n t
w h e n r a n g e n d e r s a r e a t t a c h e d t o t h e n o d e s , o r w h e n r e t r o r e e c t o r s a r e a t t a c h e d t o b r a c k e t s w h i c h
a r e a t t a c h e d t o n o d e s ( t h e e n d s o f t h e b r a c k e t s a r e d i s p l a c e d b y t h e t i l t s ) .
Q u a d r a n t D e t e c t o r T h e a p r i o r i e s t i m a t e o f t h e \ e x p e c t e d t r a c k " o f t h e q u a d r a n t d e t e c t o r w i l l b e
c o m p u t e d u s i n g d i s p l a c e m e n t s a n d t i l t s f r o m t h e s t r u c t u r a l m o d e l .
I n t h e r e m a i n d e r o f t h i s s e c t i o n , w e p r o v i d e t w o n u m e r i c a l e x a m p l e s o f t h e a p p l i c a t i o n o f t h e s t r u c t u r a l
m o d e l t o p a r t i c u l a r c a s e s .
3 . 1 T i p p i n g - s t r u c t u r e N o d e s R e f e r r e d t o G r o u n d C o o r d i n a t e s
I n t h i s e x a m p l e , w e w i l l c a l c u l a t e t h e g r o u n d - b a s e d c o o r d i n a t e s o f t h e h o m e - p o i n t o f t h e p r i m e f o c u s b o x
( n o d e 5 0 0 0 0 ) f o r e l e v a t i o n 5
, a z i m u t h 1 3 5
( s o u t h e a s t ) .
5
g e t _ n o d e _ d a t a ( ) w i l l c a l c u l a t e t h e d i s p l a c e m e n t s
u s i n g n u m b e r s e x t r a c t e d f r o m t h e t a b l e ( s e e n o d e 5 0 0 0 0 i n A p p e n d i x C ) i n t h e e x p r e s s i o n ,
6
2
4
x
y
z
3
5
=
2
4
0 0 0 0 0 0 0 0 0 0
4 4 9 1 4 9 7 8 0 3
3 4 5 7 0 0 3 8 2 1
3
5
s i n 5
s i n 4 4
c o s 5
c o s 4 4
( 1 )
=
2
4
0 0 0 0 0
5 4 3 6 7
2 2 0 5 9
3
5
( 2 )
5
T h e e x a m p l e i n t h i s s e c t i o n i s a d a p t e d f r o m a n u m e r i c a l e x a m p l e i n a n u n p u b l i s h e d m e m o P a r 9 5 ] b y D a v e P a r k e r .
6
S e e E q . 1 3 o n p . 1 0 ; n o d e 5 0 0 0 0 i s o n e o f t h e n o d e s w h i c h w i l l b e a d j u s t e d t o h a v e a r i g g i n g a n g l e o f 4 4
-
8/14/2019 tipping model
3/16
G B T M e m o 1 2 4 T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C P a g e 3
g e t _ n o d e _ d a t a ( ) w i l l a l s o e x t r a c t t h e u n d i s p l a c e d ( \ g r i d " ) c o o r d i n a t e s ( X
g
Y
g
Z
g
) o f n o d e 5 0 0 0 0 f r o m t h e
t a b l e ; d e e c t e d c o o r d i n a t e s o f n o d e 5 0 0 0 0 i n t h e e l e v a t i o n c o o r d i n a t e s y s t e m K i n 9 4 , K M 9 3 ] c a n t h e n b e
c o m p u t e d w i t h t h e e x p r e s s i o n
2
4
X
e
( E )
Y
e
( E )
Z
e
( E )
3
5
=
2
4
X
g
Y
g
Z
g
1 9 0 0 0
3
5
+
2
4
x
( E )
y
( E )
z
( E )
3
5
( 3 )
=
2
4
0 0 0
2 1 5 9 0 2
4 4 5 9 0 6 1 9 0 0 0
3
5
+
2
4
0 0
5 4 3 6 7
2 2 0 5 9
3
5
( 4 )
=
2
4
0 0
2 1 5 3 5 8
+ 2 5 6 1 2 7
3
5
( 5 )
T h e s e c o o r d i n a t e s c a n b e t r a n s f o r m e d f r o m t h e e l e v a t i o n c o o r d i n a t e s y s t e m t o t h e a l i d a d e c o o r d i n a t e
s y s t e m K i n 9 4 , K M 9 3 ] b y m u l t i p l y i n g b y a r o t a t i o n m a t r i x
7
a n d a d d i n g 1 9 0 0 . 0 t o t h e Z a x i s :
2
4
X
a
Y
a
Z
a
3
5
=
2
4
1 0 0
0 s i n E c o s E
0 c o s E s i n E
3
5
2
4
X
e
Y
e
Z
e
3
5
+
2
4
0
0
1 9 0 0
3
5
( 6 )
=
2
4
1 0 0
0 0 0 8 7 2 0 9 9 6 2
0 0 9 9 6 2 0 0 8 7 2
3
5
2
4
0 0
2 1 5 3 5 8
+ 2 5 6 1 2 7
3
5
+
2
4
0
0
1 9 0 0 0
3
5
( 7 )
=
2
4
0
2 3 6 3 7 4
4 2 6 8 7 4
3
5
( 8 )
T h e s e a l i d a d e c o o r d i n a t e s c a n t h e n b e t r a n s f o r m e d t o \ b a s e " c o o r d i n a t e s
8
w i t h t h e e x p r e s s i o n
2
4
X
Y
Z
3
5
=
2
4
c o s A s i n A 0
s i n A c o s A 0
0 0 1
3
5
2
4
X
a
Y
a
Z
a
3
5
( 1 0 )
=
2
4
0 7 0 7 + 0 7 0 7 0
0 7 0 7 0 7 0 7 0
0 0 1
3
5
2
4
0
2 3 6 3 7 4
4 2 6 8 7 4
3
5
( 1 1 )
=
2
4
+ 1 6 7 1 1 6
1 6 7 1 1 6
+ 4 2 6 8 7 4
3
5
( 1 2 )
w h e r e A i s t h e a s t r o n o m i c a l a z i m u t h , 1 3 5
i n o u r e x a m p l e .
T h e r e a r e t h r e e c o r r e c t i o n s w h i c h s h o u l d b e i n c l u d e d i n a p r o d u c t i o n v e r s i o n o f t h e a b o v e c a l c u l a t i o n s :
E l e v a t i o n A x l e C o l l i m a t i o n E r r o r T h e a s - b u i l t e l e v a t i o n a x l e w i l l n o t b e o r t h o g o n a l t o t h e a z i m u t h
a x i s . T h e c o r r e c t i o n f o r t h i s p r o b l e m w i l l a p p e a r a s a n a d d i t i o n a l r o t a t i o n m a t r i x i n t h e t r a n s f o r m a t i o n
f r o m e l e v a t i o n c o o r d i n a t e s t o a l i d a d e c o o r d i n a t e s ; t h e c o l l i m a t i o n a n g l e f o r t h e m a t r i x w i l l b e o b t a i n e d
f r o m t h e \ t r a d i t i o n a l " p o i n t i n g e r r o r m o d e l .
7
T h e r o t a t i o n m a t r i x o f E q . 6 h a s b e e n m o d i e d f r o m t h e v e r s i o n i n K i n 9 4 , K M 9 3 ] i n o r d e r t o a c c o m o d a t e t h e i n i t i a l
c o n d i t i o n E = 9 0
f o r t h e s t r u c t u r e g r i d c o o r d i n a t e s .
8
K i n 9 4 , K M 9 3 ] d e n e s t h e s e c o o r d i n a t e s : A
e
( A z i m u t h e n c o d e r v a l u e ) i s m e a s u r e d c o u n t e r - c l o c k w i s e f r o m Y
a
( d u e S o u t h )
i . e . , w h e n A
e
= 0
X
a
p o i n t s W e s t , Y
a
p o i n t s S o u t h . T h e c o n v e n t i o n a l a z i m u t h , a s u s e d i n t h e n u m e r i c a l e x a m p l e a b o v e , i s
r e l a t e d t o A
e
b y
A = 1 8 0
A
e
( 9 )
I n t h e \ b a s e " c o o r d i n a t e s y s t e m + X i s E a s t , + Y i s N o r t h a n d + Z i s u p , w i t h t h e o r i g i n a t t h e p i n t l e b e a r i n g .
-
8/14/2019 tipping model
4/16
4 P a g e T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C G B T M e m o 1 2 4
T a b l e 1 : U p p e r - f e e d a r m d i e r e n t i a l d e e c t i o n s
G r e g . F e e d ( 4 0 7 0 0 ) S u b r e e c t o r ( 5 0 0 0 5 ) D i e r e n c e s
E
y
z
t
x
y
z
t
x
L t
s ! f
t
f ! s
F
y
F
z
( d ) ( i n ) ( i n ) ( r a d ) ( i n ) ( i n ) ( r a d ) ( i n ) ( r a d ) ( r a d ) ( r a d ) ( i n ) ( i n )
0 4 . 8 2 . 5 - 0 . 0 0 2 1 6 . 2 2 . 9 - 0 . 0 0 1 7 0 . 1 1 1 - 0 . 0 0 2 4 0 . 0 0 0 6 0 . 0 0 0 2 - 0 . 3 5 1 - 0 . 1 9 0
5 4 . 5 2 . 2 - 0 . 0 0 2 0 5 . 7 2 . 6 - 0 . 0 0 1 7 0 . 0 9 0 - 0 . 0 0 2 2 0 . 0 0 0 6 0 . 0 0 0 2 - 0 . 3 0 5 - 0 . 1 5 8
1 0 4 . 1 1 . 9 - 0 . 0 0 1 8 5 . 2 2 . 2 - 0 . 0 0 1 5 0 . 0 7 0 - 0 . 0 0 2 0 0 . 0 0 0 5 0 . 0 0 0 2 - 0 . 2 6 0 - 0 . 1 2 8
1 5 3 . 6 1 . 6 - 0 . 0 0 1 6 4 . 6 1 . 9 - 0 . 0 0 1 4 0 . 0 5 3 - 0 . 0 0 1 8 0 . 0 0 0 4 0 . 0 0 0 2 - 0 . 2 1 6 - 0 . 1 0 1
2 0 3 . 1 1 . 3 - 0 . 0 0 1 4 4 . 0 1 . 6 - 0 . 0 0 1 2 0 . 0 3 7 - 0 . 0 0 1 5 0 . 0 0 0 3 0 . 0 0 0 1 - 0 . 1 7 4 - 0 . 0 7 6
2 5 2 . 5 1 . 0 - 0 . 0 0 1 1 3 . 2 1 . 2 - 0 . 0 0 1 0 0 . 0 2 5 - 0 . 0 0 1 3 0 . 0 0 0 2 0 . 0 0 0 1 - 0 . 1 3 3 - 0 . 0 5 4
3 0 1 . 9 0 . 7 - 0 . 0 0 0 9 2 . 4 0 . 9 - 0 . 0 0 0 8 0 . 0 1 4 - 0 . 0 0 1 0 0 . 0 0 0 2 0 . 0 0 0 1 - 0 . 0 9 5 - 0 . 0 3 5
3 5 1 . 2 0 . 5 - 0 . 0 0 0 6 1 . 6 0 . 6 - 0 . 0 0 0 5 0 . 0 0 7 - 0 . 0 0 0 6 0 . 0 0 0 1 0 . 0 0 0 1 - 0 . 0 5 8 - 0 . 0 2 0
4 0 0 . 6 0 . 2 - 0 . 0 0 0 3 0 . 7 0 . 2 - 0 . 0 0 0 2 0 . 0 0 2 - 0 . 0 0 0 3 0 . 0 0 0 0 0 . 0 0 0 0 - 0 . 0 2 5 - 0 . 0 0 7
4 5 - 0 . 1 - 0 . 0 0 . 0 0 0 1 - 0 . 2 - 0 . 1 0 . 0 0 0 1 - 0 . 0 0 0 0 . 0 0 0 1 - 0 . 0 0 0 0 - 0 . 0 0 0 0 0 . 0 0 6 0 . 0 0 2
5 0 - 0 . 9 - 0 . 3 0 . 0 0 0 4 - 1 . 1 - 0 . 3 0 . 0 0 0 4 0 . 0 0 0 0 . 0 0 0 5 - 0 . 0 0 0 1 - 0 . 0 0 0 0 0 . 0 3 4 0 . 0 0 7
5 5 - 1 . 6 - 0 . 5 0 . 0 0 0 8 - 2 . 1 - 0 . 6 0 . 0 0 0 7 0 . 0 0 4 0 . 0 0 0 8 - 0 . 0 0 0 1 - 0 . 0 0 0 1 0 . 0 5 8 0 . 0 0 9
6 0 - 2 . 4 - 0 . 7 0 . 0 0 1 1 - 3 . 1 - 0 . 9 0 . 0 0 1 1 0 . 0 1 0 0 . 0 0 1 2 - 0 . 0 0 0 1 - 0 . 0 0 0 1 0 . 0 7 9 0 . 0 0 7
6 5 - 3 . 1 - 0 . 9 0 . 0 0 1 5 - 4 . 1 - 1 . 1 0 . 0 0 1 5 0 . 0 1 9 0 . 0 0 1 6 - 0 . 0 0 0 2 - 0 . 0 0 0 1 0 . 0 9 6 0 . 0 0 2
7 0 - 3 . 9 - 1 . 1 0 . 0 0 1 9 - 5 . 1 - 1 . 3 0 . 0 0 1 9 0 . 0 3 1 0 . 0 0 2 0 - 0 . 0 0 0 2 - 0 . 0 0 0 2 0 . 1 0 9 - 0 . 0 0 7
7 5 - 4 . 6 - 1 . 2 0 . 0 0 2 2 - 6 . 1 - 1 . 5 0 . 0 0 2 3 0 . 0 4 5 0 . 0 0 2 5 - 0 . 0 0 0 2 - 0 . 0 0 0 2 0 . 1 1 9 - 0 . 0 1 9
8 0 - 5 . 4 - 1 . 3 0 . 0 0 2 6 - 7 . 1 - 1 . 6 0 . 0 0 2 7 0 . 0 6 1 0 . 0 0 2 9 - 0 . 0 0 0 2 - 0 . 0 0 0 3 0 . 1 2 5 - 0 . 0 3 5
8 5 - 6 . 1 - 1 . 4 0 . 0 0 3 0 - 8 . 0 - 1 . 7 0 . 0 0 3 1 0 . 0 8 0 0 . 0 0 3 3 - 0 . 0 0 0 2 - 0 . 0 0 0 3 0 . 1 2 6 - 0 . 0 5 4
9 0 - 6 . 8 - 1 . 5 0 . 0 0 3 3 - 8 . 9 - 1 . 8 0 . 0 0 3 5 0 . 1 0 1 0 . 0 0 3 6 - 0 . 0 0 0 2 - 0 . 0 0 0 3 0 . 1 2 4 - 0 . 0 7 6
A z i m u t h / E l e v a t i o n N o n - i n t e r s e c t i o n E r r o r T h e a s - b u i l t e l e v a t i o n a x i s w i l l n o t i n t e r s e c t t h e a z i m u t h
a x i s . T h i s c o r r e c t i o n w i l l a p p e a r a s a n o n - z e r o Y - a x i s e l e m e n t i n t h e 0 0 1 9 0 0 0 ] v e c t o r w h i c h i s a d d e d
t o t r a n s f o r m f r o m e l e v a t i o n c o o r d i n a t e s t o a l i d a d e c o o r d i n a t e s .
E n c o d e r Z e r o - p o i n t s T h e e l e v a t i o n E i n t h e a b o v e e x p r e s s i o n s i s n o t s i m p l y t h e r a w e l e v a t i o n e n c o d e r
r e a d i n g : a z e r o - p o i n t c o r r e c t i o n m u s t b e a p p l i e d . L i k e w i s e , a z e r o - p o i n t c o r r e c t i o n m u s t b e a p p l i e d t o
t h e r a w a z i m u t h e n c o d e r r e a d i n g A
e
. T h e s e z e r o - p o i n t t e r m s w i l l b e o b t a i n e d f r o m t h e \ t r a d i t i o n a l "
p o i n t i n g c o r r e c t i o n m o d e l .
3 . 2 D i e r e n t i a l D i s p l a c e m e n t s o f t h e U p p e r F e e d a r m
T h i s s e c t i o n p r e s e n t s c a l c u l a t i o n s o f c e r t a i n d i s t o r t i o n s o f t h e u p p e r p a r t o f t h e f e e d a r m a s a f u n c t i o n o f
e l e v a t i o n . T h e r e s u l t s a r e i n t e r e s t i n g i n t h e i r o w n r i g h t , b u t t h e r e a l p u r p o s e h e r e i s t u t o r i a l : t h e p r o g r a m
w h i c h c o m p u t e s t h e s e r e s u l t s d e m o n s t r a t e s h o w t o u s e t h e s t r u c t u r a l m o d e l f u n c t i o n s , a n d t h e p r o b l e m p o s e d
d e m o n s t r a t e s t h e u s e f u l n e s s o f t h e s t r u c t u r a l m o d e l f o r c o n t r o l o f t h e o p t i c s ( t h e f o c u s - t r a c k i n g p r o b l e m ) .
W e w i s h t o c o m p u t e d i e r e n t i a l m o t i o n s o f t h e s u b r e e c t o r a n d t h e G r e g o r i a n f e e d h o r n . T h e s u b r e e c t o r
m i r r o r a n d b a c k u p f r a m e a r e r e p r e s e n t e d i n t h e m o d e l b y n o d e I D s 5 0 0 0 4 , 5 0 0 0 5 , 5 0 0 1 0 , 5 0 0 4 0 a n d 5 0 1 4 0 ;
i n p a r t i c u l a r , n o d e 5 0 0 0 5 r e p r e s e n t s a p o i n t i n t h e c e n t e r o f t h e s u b r e e c t o r m i r r o r . T h e G r e g o r i a n f e e d i s
n o d e 4 0 7 0 0 . T a b l e 1 p r e s e n t s t h e d i s p l a c e m e n t s
x
a n d
y
a n d t i l t t
x
o f n o d e s 4 0 7 0 0 a n d 5 0 0 0 5 a s a f u n c t i o n
o f e l e v a t i o n .
9
T h e d i s p l a c e m e n t s o f t h e s e n o d e s a r e p l o t t e d i n F i g u r e 1 .
T h e r e s u l t s s h o w n i n T a b l e 1 w e r e p r o d u c e d b y t h e p r o g r a m s h o w n i n T a b l e 2 .
1 0
T h e r s t 1 2 l i n e s o f
9
D i s p l a c e m e n t
x
a n d t i l t s t
y
a n d t
z
a r e n o t s h o w n i n T a b l e 1 b e c a u s e t h e y a r e a l w a y s z e r o f o r t h e s e n o d e s , w h i c h a r e i n
t h e m e r i d i o n a l p l a n e , t h e p l a n e o f s y m m e t r y o f t h e G B T .
1 0
A t s e v e r a l p o i n t s i n t h i s p r o g r a m , t h e r e a r e e x p r e s s i o n s s i m i l a r t o t h i s o n e : \ ( d o u b l e ) g r e g f e e d . g r i d i ] " . T h e p u r p o s e
o f t h e ( d o u b l e ) i n s u c h e x p r e s s i o n s i s t o e n s u r e t h a t t h e f l o a t v a l u e s f r o m s t r u c t n o d e d a t a w i l l b e c a s t i n t o d o u b l e p r e c i s i o n
i n o r d e r t o a v o i d t r u n c a t i o n e r r o r s i n c a l c u l a t i o n s .
-
8/14/2019 tipping model
5/16
G B T M e m o 1 2 4 T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C P a g e 5
T a b l e 2 : P r o g r a m w h i c h c o m p u t e s T a b l e 1
/ * T h i s p r o g r a m , t i p p i n g _ m o d e l _ t a b _ u f d d . c , c o m p u t e s t h e ' u f d d '
u p p e r _ f e e d a r m _ d i f f e r e n t i a l _ d e f l e c t i o n ] t a b l e o f t h e
t i p p i n g _ m o d e l . t e x G B T m e m o . D . W e l l s , N R A O - C V , 1 / 2 5 - 3 / 2 1 / 9 5 * /
# i n c l u d e < s t d l i b . h >
# i n c l u d e < m a t h . h >
# i n c l u d e " s t r u c t u r a l _ m o d e l . h "
m a i n ( ) {
s t r u c t n o d e _ d a t a g r e g _ f e e d , s u b r _ v r t x ;
d o u b l e e l e v a t i o n , s f 3 ] , s f 4 4 3 ] , l s f 4 4 , t s f 4 4 , s f s u m , d l s f , d t h e t a ,
d e l t a _ t s f , d e l t a _ t f s , s t i l t , c t i l t , r o t a t e 3 ] 3 ] , s f 4 4 p 3 ] , d e l t a _ f 3 ] ;
i n t g r e g _ i n d , s u b r _ i n d , i , j ;
c h a r f o r m 2 0 0 ] ;
g r e g _ i n d = g e t _ i n d e x ( 4 0 7 0 0 ) ; / * G r e g o r i a n - f e e d n o d e * /
s u b r _ i n d = g e t _ i n d e x ( 5 0 0 0 5 ) ; / * S u b r e f l e c t o r " V e r t e x " n o d e * /
e l e v a t i o n = 4 4 . 0 ;
i f ( g e t _ n o d e _ d a t a ( g r e g _ i n d , e l e v a t i o n , & g r e g _ f e e d ) ) e x i t ( E X I T _ F A I L U R E ) ;
i f ( g e t _ n o d e _ d a t a ( s u b r _ i n d , e l e v a t i o n , & s u b r _ v r t x ) ) e x i t ( E X I T _ F A I L U R E ) ;
f o r ( i = 0 , s f s u m = 0 . 0 ; i < 3 ; i + + ) {
s f 4 4 i ] = ( ( d o u b l e ) g r e g _ f e e d . g r i d i ] + g r e g _ f e e d . a t _ e l e v . d e l t a i ] )
- ( ( d o u b l e ) s u b r _ v r t x . g r i d i ] + s u b r _ v r t x . a t _ e l e v . d e l t a i ] ) ;
s f s u m + = ( s f 4 4 i ] * s f 4 4 i ] ) ;
}
l s f 4 4 = s q r t ( s f s u m ) ; / * s u b r e f l - - > f e e d d i s t a n c e @ 4 4 d * /
t s f 4 4 = a t a n 2 ( s f 4 4 2 ] , s f 4 4 1 ] ) ; / * s u b r e f l - - > f e e d a n g l e @ 4 4 d * /
f o r ( e l e v a t i o n = 0 . 0 ; e l e v a t i o n < = 9 0 . 1 ; e l e v a t i o n + = 5 . 0 ) {
i f ( g e t _ n o d e _ d a t a ( g r e g _ i n d , e l e v a t i o n , & g r e g _ f e e d ) ) e x i t ( E X I T _ F A I L U R E ) ;
i f ( g e t _ n o d e _ d a t a ( s u b r _ i n d , e l e v a t i o n , & s u b r _ v r t x ) ) e x i t ( E X I T _ F A I L U R E ) ;
f o r ( i = 0 , s f s u m = 0 . 0 ; i < 3 ; i + + ) {
s f i ] = ( ( d o u b l e ) g r e g _ f e e d . g r i d i ] + g r e g _ f e e d . a t _ e l e v . d e l t a i ] )
- ( ( d o u b l e ) s u b r _ v r t x . g r i d i ] + s u b r _ v r t x . a t _ e l e v . d e l t a i ] ) ;
s f s u m + = ( s f i ] * s f i ] ) ;
}
d l s f = ( s q r t ( s f s u m ) - l s f 4 4 ) ; / * c h a n g e i n s u b r e f l - - > f e e d d i s t a n c e * /
d t h e t a = ( a t a n 2 ( s f 2 ] , s f 1 ] ) - t s f 4 4 ) ; / * c h a n g e i n a n g l e o f l i n e * /
d e l t a _ t s f = s u b r _ v r t x . a t _ e l e v . t i l t 0 ] - d t h e t a ; / * e x t r a s u b r * /
d e l t a _ t f s = g r e g _ f e e d . a t _ e l e v . t i l t 0 ] - d t h e t a ; / * e x t r a f e e d * /
c t i l t = c o s ( s u b r _ v r t x . a t _ e l e v . t i l t 0 ] ) ; / * r o t a t i o n a b o u t X - a x i s * /
s t i l t = s i n ( s u b r _ v r t x . a t _ e l e v . t i l t 0 ] ) ;
r o t a t e 0 ] 0 ] = 1 . 0 ; r o t a t e 0 ] 1 ] = 0 . 0 ; r o t a t e 0 ] 2 ] = 0 . 0 ;
r o t a t e 1 ] 0 ] = 0 . 0 ; r o t a t e 1 ] 1 ] = c t i l t ; r o t a t e 1 ] 2 ] = - s t i l t ;
r o t a t e 2 ] 0 ] = 0 . 0 ; r o t a t e 2 ] 1 ] = s t i l t ; r o t a t e 2 ] 2 ] = c t i l t ;
f o r ( i = 0 ; i < 3 ; i + + ) {
f o r ( j = 0 , s f 4 4 p i ] = 0 . 0 ; j < 3 ; j + + )
s f 4 4 p i ] + = s f 4 4 j ] * r o t a t e i ] j ] ;
d e l t a _ f i ] =
( ( d o u b l e ) g r e g _ f e e d . g r i d i ] + g r e g _ f e e d . a t _ e l e v . d e l t a i ] )
- ( ( d o u b l e ) s u b r _ v r t x . g r i d i ] + s u b r _ v r t x . a t _ e l e v . d e l t a i ]
+ s f 4 4 p i ] ) ;
}
s t r c p y ( f o r m , " % 2 . 0 l f & % 4 . 1 f & % 4 . 1 f & % 7 . 4 f & % 4 . 1 f & % 4 . 1 f & % 7 . 4 f " ) ;
s t r c a t ( f o r m , " & % 5 . 3 l f & % 7 . 4 l f & % 7 . 4 l f & % 7 . 4 l f & % 5 . 3 l f & % 5 . 3 l f \ \ \ \ \ n " ) ;
p r i n t f ( f o r m , e l e v a t i o n , g r e g _ f e e d . a t _ e l e v . d e l t a 1 ] ,
g r e g _ f e e d . a t _ e l e v . d e l t a 2 ] , g r e g _ f e e d . a t _ e l e v . t i l t 0 ] ,
s u b r _ v r t x . a t _ e l e v . d e l t a 1 ] , s u b r _ v r t x . a t _ e l e v . d e l t a 2 ] ,
s u b r _ v r t x . a t _ e l e v . t i l t 0 ] , d l s f , d t h e t a , d e l t a _ t s f , d e l t a _ t f s ,
d e l t a _ f 1 ] , d e l t a _ f 2 ] ) ;
}
e x i t ( E X I T _ S U C C E S S ) ;
}
-
8/14/2019 tipping model
6/16
6 P a g e T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C G B T M e m o 1 2 4
2 0
1 5
1 0
0 5
0 0
0 5
1 0
1 5
2 0
2 5
3 0
1 0 0 8 0 6 0 4 0 2 0
0 0 2 0 4 0 6 0 8 0
z
( i n )
y
( i n )
0
9 0
G r e g . F e e d
y
z
S u b r e e c t o r
y
z
F i g u r e 1 : T w o t r a j e c t o r i e s a s a f u n c t i o n o f E l e v a t i o n
e x e c u t a b l e c o d e i n t h i s p r o g r a m d e m o n s t r a t e h o w t o u s e f u n c t i o n s g e t _ i n d e x ( ) a n d g e t _ n o d e _ d a t a ( ) t o
o b t a i n i n f o r m a t i o n a b o u t t h e g e o m e t r y o f t h e G B T i n o r d e r t o p e r f o r m s i m p l e g e o m e t r i c c a l c u l a t i o n s o n t h e
d e s i g n ( r i g g i n g - a n g l e ) g e o m e t r y , s u c h a s t h e l e n g t h ( l s f 4 4 ) a n d p o s i t i o n a n g l e ( t s f 4 4 ) o f t h e l i n e c o n n e c t i n g
t w o n o d e s . T h e f o r - l o o p o n v a r i a b l e e l e v a t i o n i l l u s t r a t e s h o w t o u t i l i z e n o d e d i s p l a c e m e n t s a n d t i l t s a s a
f u n c t i o n o f e l e v a t i o n . T h r e e s e t s o f r e s u l t s a r e s h o w n i n t h e t a b l e :
C h a n g e o f N o d e - t o - N o d e L i n e - o f - S i g h t T h e l i n e c o n n e c t i n g n o d e s 4 0 7 0 0 a n d 5 0 0 0 5 c h a n g e s l e n g t h
a n d o r i e n t a t i o n a s a f u n c t i o n o f e l e v a t i o n . L i s t h e d i e r e n c e b e t w e e n t h e l e n g t h a t t h e s p e c i e d
e l e v a t i o n a n d t h e l e n g t h ( l s f 4 4 ) a t t h e r i g g i n g a n g l e ; i t i s p l o t t e d i n F i g u r e 2 . i s t h e d i e r e n c e
b e t w e e n t h e p o s i t i o n a n g l e o f t h e l i n e - o f - s i g h t a t t h e s p e c i e d e l e v a t i o n a n d t h e p o s i t i o n a n g l e ( t s f 4 4 )
a t t h e r i g g i n g a n g l e ; t h e p r i n c i p a l e e c t r e p r e s e n t e d i n i s t h e g r o s s b e n d i n g o f t h e e n t i r e f e e d a r m .
i s p l o t t e d i n F i g u r e 3 .
\ E x c e s s R o t a t i o n " o f t h e N o d e s t
s ! f
i s t h e e x c e s s r o t a t i o n o f t h e s u b r e e c t o r r e l a t i v e t o t h e r o t a t i o n
o f t h e l i n e o f s i g h t f r o m t h e s u b r e e c t o r t o t h e G r e g o r i a n f e e d ; s e e F i g u r e 3 . I t i s s i m p l y ( t
x
)
( i . e . 0 0 0 0 6 a t E = 0
i s ( 0 0 0 1 7 ) ( 0 0 0 2 4 ) , s e e t h e e x p r e s s i o n f o r d e l t a _ t s f i n T a b l e 2 ) . f
f ! s
i s t h e s a m e d i e r e n c e f o r t h e G r e g o r i a n f e e d h o r n .
D i s p l a c e m e n t o f S e c o n d F o c a l P o i n t R e l a t i v e t o F e e d h o r n I f a r i g i d r o d i s a t t a c h e d t o t h e
s u b r e e c t o r n o d e , r e p r e s e n t i n g t h e s e c o n d f o c a l p o i n t o f t h e e l l i p s o i d a l m i r r o r , t h e t i p o f t h i s r o d
m o v e s a s a f u n c t i o n o f e l e v a t i o n . T h e s u b r e e c t o r n o d e i s d i s p l a c e d a s a f u n c t i o n o f e l e v a t i o n , w h i c h
d i s p l a c e s t h e b a s e o f t h e r o d , a n d i t a l s o t i l t s , w h i c h m o v e s t h e t i p o f t h e r o d r e l a t i v e t o i t s b a s e .
T h e a l g o r i t h m s h o w n h e r e u s e s t h e n o d e t i l t t o c o n s t r u c t a r o t a t i o n m a t r i x w h i c h i s m u l t i p l i e d b y t h e
v e c t o r s f 4 4 ] , r e p r e s e n t i n g t h e u n d i s p l a c e d o r i e n t a t i o n o f t h e r o d . T h e t i l t e d r o d i s v e c t o r s f 4 4 p ]
w h i c h i s a d d e d t o t h e d i s p l a c e d p o s i t i o n o f n o d e 5 0 0 0 5 i n o r d e r t o g e t t h e p o s i t i o n o f t h e t i p o f t h e r o d .
V e c t o r d e l t a _ f ] i s t h e p o s i t i o n d i e r e n c e b e t w e e n t h a t t i p o f t h e r o d a n d t h e d i s p l a c e d p o s i t i o n o f
n o d e 4 0 7 0 0 , t h e G r e g o r i a n f e e d ; i t a p p e a r s i n t h e t a b l e a s F
y
a n d F
z
1 1
a n d i s p l o t t e d i n F i g u r e 4 .
C o r r e c t i o n o f t h i s p o s i t i o n d i e r e n c e w i l l b e p a r t o f t h e f o c u s t r a c k i n g a l g o r i t h m o f t h e G B T .
1 2
W e o e r t h e f o l l o w i n g c o m m e n t s a n d c o n j e c t u r e s a b o u t t h e r e s u l t s i n T a b l e 1 :
E l e v e n o f t h e t w e l v e t a b u l a t e d q u a n t i t i e s c h a n g e s i g n b e t w e e n t h e l i n e s f o r 4 0
a n d 4 5
. T h i s i s b e c a u s e
o f t h e 4 4
r i g g i n g a n g l e .
1 1
F
x
i s a l w a y s z e r o i n t h e p l a n e o f s y m m e t r y .
1 2
T h e d i e r e n c e b e t w e e n t h e r s t f o c a l p o i n t o f t h e e l l i p s o i d a n d t h e p r i m e f o c a l p o i n t o f t h e b e s t - t t i n g p a r a b o l o i d B F P ] a s
a f u n c t i o n o f e l e v a t i o n w i l l t h e d o m i n a n t t e r m o f t h e f o c u s t r a c k i n g a l g o r i t h m ( m a g n i t u d e a b o u t 2 0 l a r g e r t h a n t h e F
y
F
z
v a l u e s i n T a b l e 1 a n d F i g u r e 4 ) : t h e d i s p l a c e m e n t o f t h e r s t f o c u s i s n o t o n l y l a r g e r b u t a l s o h a s a d i s p r o p o r t i o n a t e e e c t o n
t h e i m a g i n g a n d g a i n c o m p a r e d t o t h e d i e r e n t i a l d i s t o r t i o n o f t h e f e e d a r m b e c a u s e t h e r s t f o c u s d i s p l a c e m e n t i s m a g n i e d
a t t h e s e c o n d f o c u s b y t h e e l l i p s o i d .
-
8/14/2019 tipping model
7/16
G B T M e m o 1 2 4 T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C P a g e 7
0 0 0
0 0 2
0 0 4
0 0 6
0 0 8
0 1 0
0 1 2
0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0
L
( i n )
E l e v a t i o n
F i g u r e 2 : C h a n g e o f d i s t a n c e b e t w e e n n o d e s 4 0 7 0 0 a n d 5 0 0 0 5
0 0 0 3
0 0 0 2
0 0 0 1
0 0 0 0
0 0 0 1
0 0 0 2
0 0 0 3
0 0 0 4
0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 8 0 9 0
t i l t s
( r a d )
E l e v a t i o n
G r e g . F e e d t
x
S u b r e e c t o r t
x
t
s ! f
t
f ! s
F i g u r e 3 : F i v e t i l t s a s a f u n c t i o n o f E l e v a t i o n
-
8/14/2019 tipping model
8/16
8 P a g e T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C G B T M e m o 1 2 4
0 2 0
0 1 8
0 1 6
0 1 4
0 1 2
0 1 0
0 0 8
0 0 6
0 0 4
0 0 2
0 0 0
0 0 2
0 4 0 0 3 5 0 3 0 0 2 5 0 2 0 0 1 5 0 1 0 0 0 5
0 0 0 0 0 5 0 1 0 0 1 5
F
z
( i n )
F
y
( i n )
0
9 0
F i g u r e 4 : F
y
F
z
t r a j e c t o r y a s a f u n c t i o n o f E l e v a t i o n
T h e d i s p l a c e m e n t s a n d t i l t s o f t h e G r e g o r i a n f e e d a n d s u b r e e c t o r a r e s i m i l a r ( s e e F i g u r e s 1 a n d 3 ) .
T h i s s h o w s t h e g r o s s d e e c t i o n o f t h e u p p e r p a r t o f t h e f e e d a r m a s a f u n c t i o n o f e l e v a t i o n , a n d t h e
a s s o c i a t e d r o t a t i o n ( b e n d i n g ) . T h e t r a j e c t o r y o f t h e s u b r e e c t o r i s l o n g e r ( s e e F i g u r e 1 ) b e c a u s e i t i s
f u r t h e r o u t o n t h e f e e d a r m . T h e
y
c o m p o n e n t s a r e l a r g e a t s m a l l e l e v a t i o n s ; t h e v a l u e s a r e p o s i t i v e
b e c a u s e w h e n t h e f e e d a r m i s n e a r l y h o r i z o n t a l , t h e + Y d i r e c t i o n o f t h e t i p p i n g c o o r d i n a t e s y s t e m i s
n e a r l y p a r a l l e l t o t h e g r a v i t y v e c t o r .
t
s ! f
i s c o n s i s t e n t w i t h F
y
( a s w e w o u l d e x p e c t ) : t h e d i s t a n c e b e t w e e n n o d e s 4 0 7 0 0 a n d 5 0 0 0 5 i s
a b o u t 6 0 0 i n c h e s , s o t h e 0 . 6 m i l l i r a d i a n e x c e s s r o t a t i o n o f t h e s u b r e e c t o r a t E = 0
i m p l i e s a l a t e r a l
m o t i o n o f t h e s e c o n d f o c a l p o i n t o f t h e e l l i p s o i d r e l a t i v e t o t h e G r e g o r i a n f e e d h o r n o f a b o u t 0 . 3 6 i n c h e s
( c o m p a r e d t o F
y
= 0 3 5 ) . T h e s i g n o f F
y
i s n e g a t i v e b e c a u s e t h e s u b r e e c t o r s a g s d o w n w a r d ,
a w a y f r o m t h e f e e d a r m , i n t h e + Y d i r e c t i o n , a n d F
y
i s c o m p u t e d a s t h e G r e g o r i a n f e e d m i n u s t h e
f o c a l p o i n t ( s e e t h e f o r m u l a f o r d e l t a _ f ] i n T a b l e 2 ) .
t
f ! s
i s t h e e x c e s s r o t a t i o n o f t h e G r e g o r i a n f e e d h o r n r e l a t i v e t o t h e l i n e o f s i g h t f r o m t h e f e e d h o r n
t o t h e c e n t e r o f t h e s u b r e e c t o r . T h e r o t a t i o n i s p o s i t i v e f o r l o w e l e v a t i o n s b e c a u s e t h e f e e d r o o m s a g s
d o w n w a r d ( - Z d i r e c t i o n ) a t h i g h e l e v a t i o n s , w h i c h i s a n e g a t i v e r o t a t i o n a b o u t t h e X a x i s ( r i g h t - h a n d
r u l e ) . T h e d i s t a n c e b e t w e e n n o d e s 4 0 7 0 0 a n d 5 0 0 0 5 i s a b o u t 6 0 0 i n c h e s , a n d s o t h e 0 . 2 m i l l i r a d i a n
m i s a l i g n m e n t f o r E = 0
i m p l i e s a l a t e r a l s h i f t o f t h e p o w e r p a t t e r n o f t h e h o r n o n t h e s u b r e e c t o r b y
a b o u t 0 . 1 2 i n c h ( a b o u t 3 m m ) . T h i s w i l l p r o d u c e a v e r y s l i g h t c h a n g e o f t h e s p i l l o v e r .
4 T h r e e l i m i t a t i o n s o f t h e t i p p i n g - s t r u c t u r e m o d e l
U s e r s o f t h e s e f u n c t i o n s s h o u l d b e a w a r e t h a t t h e a s - b u i l t u n d i s p l a c e d X Y Z c o o r d i n a t e s o f n o d e s w i l l b e
d i e r e n t f r o m t h e v a l u e s r e t u r n e d b y f u n c t i o n g e t _ n o d e _ d a t a ( ) i n t h e a r r a y * n o d e _ i . g r i d ] , f o r s e v e r a l
r e a s o n s :
C o n s t r u c t i o n T o l e r a n c e s C R S I w i l l a s s e m b l e t h e s t r u c t u r e w i t h a c c u r a c y n o b e t t e r t h a n 3 m m .
T e m p e r a t u r e V a r i a t i o n s T e m p e r a t u r e c h a n g e s d u r i n g a s s e m b l y a n d d u r i n g o p e r a t i o n w i l l c a u s e
s u b s t a n t i a l c h a n g e s f r o m t h e a s - d e s i g n e d c o o r d i n a t e s : t h e e x p a n s i o n c o e c i e n t o f s t e e l i s a b o u t 1 0
5
p e r
C , w h i c h , f o r a 1 0 0 m e t e r s t r u c t u r e , i m p l i e s d i s p l a c e m e n t s o f a b o u t 1 m m p e r
C
-
8/14/2019 tipping model
9/16
G B T M e m o 1 2 4 T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C P a g e 9
E l e v a t o r A s s y m e t r y N R A O ' s c u r r e n t N A S T R A N m o d e l i s s y m m e t r i c { t h e l e f t h a l f i s a m i r r o r i m a g e
o f t h e r i g h t h a l f . T h i s i s s l i g h t l y i n c o r r e c t , b e c a u s e o f t h e e l e v a t o r o n t h e r i g h t h a l f . T h e m a s s o f
t h e e l e v a t o r h a s b e e n i n c l u d e d i n t h e m o d e l , a n d s o t h e m e a n d e e c t i o n o f t h e s t r u c t u r e h a s b e e n
m o d e l l e d . H o w e v e r , t h e a s s y m e t r y o f t h e m a s s d i s t r i b u t i o n w i l l c a u s e a s m a l l r o t a t i o n a l d e e c t i o n o f
t h e f e e d a r m . W e s h o u l d r e p l a c e t h e p r e s e n t m o d e l w i t h t h e a s s y m e t r i c v e r s i o n e v e n t u a l l y , s o t h a t t h e
f o c u s - t r a c k i n g s u b s y s t e m w i l l p r o p e r l y c o m p e n s a t e f o r t h i s d e e c t i o n b y r o t a t i n g t h e o p t i c a l a x i s o f
t h e G r e g o r i a n e l l i p s o i d a b o u t i t s Z - a x i s .
5 A v a i l a b i l i t y
T h e c o m p l e t e p a c k a g e o f c o d e a n d d a t a f o r t h e s t r u c t u r a l m o d e l i s a v a i l a b l e a t t h e U R L
f t p : / / f i t s . c v . n r a o . e d u / p u b / g b t _ t i p p i n g . t a r . g z
T h i s c o m p r e s s e d \ t a r " l e i s 3 5 5 k i l o b y t e s i n l e n g t h . U s e \ g u n z i p " t o d e c o m p r e s s i t , t h e n \ t a r " t o u n p a c k
i t a n d t h e n d o c o m m a n d \ m a k e " i n t h e d i r e c t o r y . I n a d d i t i o n t o t h e t h r e e p i e c e s o f c o d e l i s t e d i n t h e
a p p e n d i c e s o f t h i s d o c u m e n t , t h e t a r - l e c o n t a i n s a M a k e l e a n d t w o t e s t c a s e s f o r c o m p i l i n g a n d t e s t i n g
t h e c o d e . I t a l s o c o n t a i n s a c o p y o f t h i s G B T m e m o i n P o s t s c r i p t , p l u s a 3 3 0 k i l o b y t e P o s t s c i p t l e w h i c h
p r i n t s a c o n v e n i e n t l i s t i n g o f t h e n o d e c o o r d i n a t e s o f t h e t i p p i n g s t r u c t u r e .
R e f e r e n c e s
K i n 9 4 ] L e e K i n g . G B T c o o r d i n a t e s y s t e m s . L i m i t e d - d i s t r i b u t i o n m e m o , J a n u a r y 1 9 9 4 .
K M 9 3 ] L e e K i n g a n d G r e g M o r r i s . F o c i a r r a n g e m e n t a n d c o o r d i n a t e s y s t e m s f o r t h e G B T . G B T D r a w i n g
C 3 5 1 0 2 M 0 8 1 , N R A O , D e c e m b e r 1 9 9 3 . T h e r s t s h e e t o f t h i s s e t o f v e d r a w i n g s s c h e m a t i c a l l y
d e n e s s i x d i e r e n t c o o r d i n a t e s y s t e m s t o b e u s e d i n t h e G B T p r o j e c t . S h e e t s 2 - 5 d e n e t h e
a l g e b r a i c r e l a t i o n s h i p s b e t w e e n t h e s e c o o r d i n a t e s y s t e m s .
P a r 9 4 ] D a v i d H . P a r k e r . G B T A c t u a t o r / r e t r o r e e c t o r / p a n e l S p r e a d s h e e t . G B T M e m o 1 1 4 , N a t i o n a l
R a d i o A s t r o n o m y O b s e r v a t o r y , S e p t e m b e r 1 9 9 4 . T h i s m e m o d e s c r i b e s a Q u a t t r o P r o s p r e a d s h e e t
w h i c h h a s b e e n b u i l t f r o m t h e a c t u a t o r a n d p a n e l i n f o r m a t i o n o n d r a w i n g s 1 2 5 2 0 / 2 ( 1 1 / 1 3 / 9 2 ) a n d
1 2 1 0 1 0 / 7 / A ( 1 1 / 1 2 / 9 3 ) .
P a r 9 5 ] D a v i d P a r k e r . F E A m o d e l . L i m i t e d - d i s t r i b u t i o n m e m o . T h i s m e m o d i s c u s s e s d e t a i l s o f t h e
c o o r d i n a t e c o n v e n t i o n s u s e d i n t h e N A S T R A N m o d e l o f t h e t i p p i n g s t r u c t u r e , a n d i n c l u d e s a
n u m e r i c a l e x a m p l e o f r e p r e s e n t i n g a n o d e o f t h e s t r u c t u r e i n t h e g r o u n d - r e f e r e n c e d c o o r d i n a t e
s y s t e m . , J a n u a r y 1 9 9 5 .
A T h e C - f u n c t i o n s
T h e s e f u n c t i o n s a r e i n t w o l e s , g e t _ n o d e _ d a t a . c a n d g e t _ i n d e x . c
A . 1 F u n c t i o n t o r e t r i e v e d a t a f o r n o d e s
T h e t e x t r e p r o d u c e d b e l o w i s t h e l e g e t _ n o d e _ d a t a . c , w h i c h c o n t a i n s t h e A N S I - C c o d e f o r f e t c h i n g
v a l u e s f r o m t h e s t r u c t u r a l m o d e l . N o t e t h a t t h i s m o d u l e d e p e n d s o n i n c l u d e - l e s t r u c t u r a l _ m o d e l . h
( s e e A p p e n d i x B ) a n d t h a t i t a l s o r e f e r e n c e s t h e t a b l e o f n o d e s ( A p p e n d i x C ) i n a m a n n e r w h i c h c a u s e s t h a t
s t r u c t u r e d e n i t i o n t o b e l i n k e d a s a s t a t i c e n t i t y k n o w n t o t h i s f u n c t i o n .
-
8/14/2019 tipping model
10/16
1 0 P a g e T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C G B T M e m o 1 2 4
T h e g r a v i t a t i o n a l d e f o r m a t i o n s a s a f u n c t i o n o f e l e v a t i o n a r e c o m p u t e d i n t h e f o r - l o o p n e a r t h e e n d o f
f u n c t i o n g e t _ n o d e _ d a t a ( ) . T h e d i s p l a c e m e n t s n o d e _ i - > a t _ e l e v . d e l t a ] a r e c o m p u t e d a s a w e i g h t e d
s u m o f v a l u e s f r o m t h e m o d e l ; t h i s s u m c a n b e r e p r e s e n t e d a s t h e v e c t o r - m a t r i x p r o d u c t
1 3
2
4
x
( E )
y
( E )
z
( E )
3
5
=
2
4
x z
x y
y z
y y
z z
z y
3
5
s i n E s i n E
r
c o s E c o s E
r
( 1 3 )
w h e r e
x
( E )
y
( E ) a n d
z
( E ) a r e t h e d e f o r m a t i o n s f r o m t h e r i g i d b o d y n o m i n a l c o o r d i n a t e s a t t h e
r i g g i n g a n g l e ,
i j
a r e t h e d e f o r m a t i o n s c o m p u t e d b y N A S T R A N f o r t h e i d i r e c t i o n f o r a g r a v i t y f o r c e i n t h e
j d i r e c t i o n , E i s t h e e l e v a t i o n a n d E
r
i s t h e r i g g i n g a n g l e .
T h e l o g i c i n t h i s f u n c t i o n s u p p o r t s t w o d i e r e n t r i g g i n g a n g l e s , c a l l e d b i r d b a t h ( 6 6
) a n d s u r f _ r i g ( 4 4
)
T h e G B T s t r u c t u r e w i l l b e a s s e m b l e d i n t h e \ b i r d b a t h " o r i e n t a t i o n , w h i c h t h e r e f o r e i s t h e d e f a u l t r i g g i n g
a n g l e , b u t t h e s u r f a c e a n d o p t i c s n o d e s w i l l b e a d j u s t e d t o t h e c o r r e c t c o o r d i n a t e s ( w i t h i n a t o l e r a n c e , o f
c o u r s e ) f o r r i g g i n g a n g l e 4 4
. T h e I D s o f t h e n o d e s w h i c h w i l l b e a d j u s t e d a r e s p e c i e d i n t h e i f - s t a t e m e n t
b e l o w . T h e r e i s a p o s s i b i l i t y t h a t t h e f e e d a r m w i l l b e a s s e m b l e d a t s o m e o t h e r a n g l e , n o t 6 6
; i f t h a t h a p p e n s
w e w i l l i n t r o d u c e t h e t h i r d r i g g i n g a n g l e i n t o t h e l o g i c o f t h i s f u n c t i o n .
/ * F u n c t i o n g e t _ n o d e _ d a t a ( ) f o r m s a w e i g h t e d s u m o f t h e z e n i t h a n d
h o r i z o n c a s e s o f t h e G B T s t r u c t u r a l m o d e l , i n o r d e r t o c o m p u t e t h e
t r a n s l a t i o n a n d r o t a t i o n o f a s p e c i f i e d n o d e f o r a s p e c i f i e d
e l e v a t i o n . T h e c o m p u t a t i o n a c c o u n t s f o r t h e " r i g g i n g a n g l e " ,
i n c l u d i n g t h e f a c t t h a t d i f f e r e n t p a r t s o f t h e G B T w i l l b e b u i l t
w i t h d i f f e r e n t r i g g i n g a n g l e s . T h e n o d e i s s p e c i f i e d a s t h e i n d e x
i n t h e m o d e l t a b l e . S u c h i n d i c i e s c a n b e o b t a i n e d f o r a s p e c i f i e d
n o d e _ i d b y c a l l i n g f u n c t i o n g e t _ i n d e x ( ) .
D o n W e l l s < d w e l l s @ n r a o . e d u > , N R A O - C V , M a r 9 4 - M a r 9 5 . * /
# i n c l u d e " s t r u c t u r a l _ m o d e l . h "
# i n c l u d e < m a t h . h >
i n t g e t _ n o d e _ d a t a ( i n t i , / * t i p p i n g _ m o d e l ] i n d e x t o g e t * /
d o u b l e e l e v , / * e l e v a t i o n ( d e g ) * /
s t r u c t n o d e _ d a t a * n o d e _ i ) / * r e s u l t s r e t u r n e d i n a s t r u c t * /
{
e x t e r n s t r u c t m o d e l _ n o d e G B T _ T I P P I N G ;
s t r u c t m o d e l _ n o d e * t i p p i n g _ m o d e l = & G B T _ T I P P I N G ;
c o n s t d o u b l e
d t r = 0 . 0 1 7 4 5 3 2 9 3 ,
b i r d b a t h = ( 6 6 . 0 * d t r ) , / * b a c k u p s t r u c t u r e r i g g i n g _ a n g l e * /
s u r f _ r i g = ( 4 4 . 0 * d t r ) , / * s u r f a c e a c t u a t o r r i g g i n g _ a n g l e * /
s i n _ b i r d b a t h = s i n ( b i r d b a t h ) ,
c o s _ b i r d b a t h = c o s ( b i r d b a t h ) ,
s i n _ s u r f _ r i g = s i n ( s u r f _ r i g ) ,
c o s _ s u r f _ r i g = c o s ( s u r f _ r i g ) ;
d o u b l e s i n _ e l e v , c o s _ e l e v , s i n _ r i g , c o s _ r i g ;
i n t l , s t a t u s , a b s _ n o d e _ i d ;
s i n _ e l e v = s i n ( e l e v * d t r ) ;
c o s _ e l e v = c o s ( e l e v * d t r ) ;
i f ( ( i > = 0 ) & & ( i < = t i p p i n g _ m o d e l 0 ] . n o d e _ i d ) ) { / * l e g a l i n d e x ? * /
n o d e _ i - > n o d e _ i d = t i p p i n g _ m o d e l i ] . n o d e _ i d ; / * y e s * /
/ * g e t t h e s i n e a n d c o s i n e o f t h e a p p r o p r i a t e r i g g i n g _ a n g l e : * /
1 3
T h i s n o t a t i o n i s a d a p t e d f r o m D a v e P a r k e r ' s m e m o P a r 9 5 ] .
-
8/14/2019 tipping model
11/16
G B T M e m o 1 2 4 T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C P a g e 1 1
a b s _ n o d e _ i d = ( n o d e _ i - > n o d e _ i d < 0 )
? - ( n o d e _ i - > n o d e _ i d ) : n o d e _ i - > n o d e _ i d ;
i f ( ( ( a b s _ n o d e _ i d > = 7 0 0 0 0 1 ) & & ( a b s _ n o d e _ i d < = 7 6 8 0 1 2 ) ) / * s u r f a c e * /
| | ( a b s _ n o d e _ i d = = 4 0 7 0 0 ) / * p l u s G r e g o r i a n F e e d n o d e * /
| | ( a b s _ n o d e _ i d = = 5 0 0 0 0 ) / * a n d P r i m e F o c u s f e e d b o x * /
| | ( a b s _ n o d e _ i d = = 5 0 0 0 5 ) ) { / * a n d t h e S u b r e f l e c t o r " v e r t e x " . * /
s i n _ r i g = s i n _ s u r f _ r i g ; / * r i g g i n g f o r s u r f a c e ( a c t u a t o r ) n o d e s * /
c o s _ r i g = c o s _ s u r f _ r i g ; / * p l u s o p t i c s n o d e s * /
} e l s e {
s i n _ r i g = s i n _ b i r d b a t h ; / * r i g g i n g f o r o t h e r n o d e s * /
c o s _ r i g = c o s _ b i r d b a t h ;
}
/ * f o r m t h e w e i g h t e d s u m o f t h e z e n i t h a n d h o r i z o n m o d e l s : * /
f o r ( l = 0 ; l < 3 ; l + + ) {
n o d e _ i - > g r i d l ] = t i p p i n g _ m o d e l i ] . g r i d l ] ;
n o d e _ i - > a t _ e l e v . d e l t a l ] =
( s i n _ e l e v - s i n _ r i g ) * t i p p i n g _ m o d e l i ] . z e n i t h . d e l t a l ]
+ ( c o s _ e l e v - c o s _ r i g ) * t i p p i n g _ m o d e l i ] . h o r i z o n . d e l t a l ] ;
n o d e _ i - > a t _ e l e v . t i l t l ] =
( s i n _ e l e v - s i n _ r i g ) * t i p p i n g _ m o d e l i ] . z e n i t h . t i l t l ]
+ ( c o s _ e l e v - c o s _ r i g ) * t i p p i n g _ m o d e l i ] . h o r i z o n . t i l t l ] ;
s t a t u s = 0 ;
}
} e l s e {
s t a t u s = 1 3 ; / * r e t u r n b a d s t a t u s o n i l l e g a l r e q u e s t e d i n d e x * /
}
r e t u r n ( s t a t u s ) ;
}
A . 2 F u n c t i o n t o s e a r c h f o r i n d i c i e s o f n o d e - I D s
/ * F u n c t i o n g e t _ i n d e x ( ) s e a r c h e s t h e G B T s t r u c t u r a l m o d e l t a b l e t o
f i n d t h e i n d e x ( s u b s c r i p t ) f o r t h e d a t a i n t h e a r r a y o f s t r u c t
t i p p i n g _ m o d e l ] f o r a s p e c i f i e d n o d e _ i d . I t c a c h e s t h e i n d e x i n a
h a s h t a b l e t o s p e e d u p s u b s e q u e n t c a l l s f o r t h e s a m e n o d e _ i d . I n
m a n y p r a c t i c a l c a s e s , w i t h o n l y a f e w r e l e v a n t n o d e s , g e t _ i n d e x ( )
c a n b e e x e c u t e d o n c e f o r e a c h n o d e o f i n t e r e s t , a n d t h e i n d i c i e s
s a v e d a n d u s e d r e p e a t e d l y t o c a l l g e t _ n o d e _ d a t a ( ) f o r v a r i o u s
e l e v a t i o n s . D . W e l l s < d w e l l s @ n r a o . e d u > , N R A O - C V , M a r 9 4 - J a n 9 5 . * /
# i n c l u d e " s t r u c t u r a l _ m o d e l . h "
# i n c l u d e < m a t h . h >
/ * D e f i n e t h e h a s h t a b l e a s a s t a t i c a r r a y . D i m e n s i o n H A S H _ M s h o u l d b e
a p r i m e n u m b e r w h i c h i s a t l e a s t 1 0 p e r c e n t g r e a t e r t h a n t h e n u m b e r
o f n o d e s i n t h e m o d e l , t i p p i n g _ m o d e l 0 ] . n o d e _ i d ( w h i c h i s c u r r e n t l y
5 5 7 7 ) . * /
# d e f i n e H A S H _ M 7 9 9 3
s t a t i c s t r u c t h a s h _ n o d e {
i n t n o d e _ i d ;
i n t m o d e l _ i n d e x ;
} ;
s t a t i c s t r u c t h a s h _ n o d e h a s h _ t a b l e H A S H _ M + 1 ] ;
s t a t i c i n t h a s h _ i n i t = 0 , h a s h _ c o u n t , c h a i n _ c o u n t , m a x _ c h a i n ;
-
8/14/2019 tipping model
12/16
1 2 P a g e T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C G B T M e m o 1 2 4
i n t g e t _ i n d e x ( i n t n o d e _ i d )
{
i n t i , k , k _ s t e p , i n d e x , h a s h _ c h a i n ;
u n s i g n e d i n t u _ n o d e _ i d ;
e x t e r n s t r u c t m o d e l _ n o d e G B T _ T I P P I N G ;
s t r u c t m o d e l _ n o d e * t i p p i n g _ m o d e l = & G B T _ T I P P I N G ;
i f ( h a s h _ i n i t = = 0 ) {
f o r ( i = 0 ; i < = H A S H _ M ; i + + )
h a s h _ t a b l e i ] . n o d e _ i d = h a s h _ t a b l e i ] . m o d e l _ i n d e x = 0 ;
h a s h _ c o u n t = c h a i n _ c o u n t = m a x _ c h a i n = 0 ;
h a s h _ i n i t = 1 ;
}
u _ n o d e _ i d = ( n o d e _ i d < 0 ) ? ( 1 0 0 0 0 0 0 - n o d e _ i d ) : n o d e _ i d ;
k = ( i n t ) h a s h 1 ( u _ n o d e _ i d , H A S H _ M ) ;
k _ s t e p = i n d e x = 0 ;
f o r ( h a s h _ c h a i n = 0 ; ; h a s h _ c h a i n + + ) {
/ * i s t h i s n o d e _ i d i n t h e h a s h t a b l e ? * /
i f ( h a s h _ t a b l e k ] . n o d e _ i d = = n o d e _ i d ) {
/ * f o u n d i t ! r e t u r n v a l u e : * /
i n d e x = h a s h _ t a b l e k ] . m o d e l _ i n d e x ;
b r e a k ;
}
/ * h a s s e a r c h r e a c h e d a n e m p t y n o d e ? * /
i f ( h a s h _ t a b l e k ] . n o d e _ i d = = 0 ) {
/ * t a b l e n o d e i s e m p t y , d o e s t h i s n o d e _ i d e v e n e x i s t ? * /
f o r ( i = 1 ; i < = t i p p i n g _ m o d e l 0 ] . n o d e _ i d ; i + + ) {
i f ( t i p p i n g _ m o d e l i ] . n o d e _ i d = = n o d e _ i d ) {
/ * n o d e _ i d d o e s e x i s t ; i n s t a l l i t i n t h i s t a b l e n o d e : * /
i n d e x = i ;
h a s h _ t a b l e k ] . n o d e _ i d = n o d e _ i d ;
h a s h _ t a b l e k ] . m o d e l _ i n d e x = i n d e x ;
c h a i n _ c o u n t + = h a s h _ c h a i n ;
i f ( h a s h _ c h a i n > m a x _ c h a i n ) m a x _ c h a i n = h a s h _ c h a i n ;
/ * c h e c k w h e t h e r h a s h _ t a b l e i s t o o f u l l : * /
h a s h _ c o u n t + + ;
i f ( h a s h _ c o u n t > ( i n t ) ( 0 . 9 * H A S H _ M ) ) {
p r i n t f ( " h a s h _ c o u n t = % d > n i n e t y p e r c e n t o f % d . A B O R T . \ n " ,
h a s h _ c o u n t , H A S H _ M ) ;
e x i t ( H A S H _ M ) ;
}
b r e a k ;
}
}
/ * i f n o d e _ i d d o e s n ' t e x i s t , w i l l r e t u r n z e r o * /
b r e a k ;
} e l s e {
/ * s t e p a r o u n d h a s h t a b l e : * /
i f ( k _ s t e p = = 0 ) k _ s t e p = ( i n t ) h a s h 2 ( u _ n o d e _ i d , H A S H _ M ) ;
k = ( k + k _ s t e p ) % H A S H _ M ;
}
}
r e t u r n ( i n d e x ) ;
}
/ * T h e f i r s t h a s h f u n c t i o n h e r e i s u s e d f o r i n i t i a l p r o b e s i n t o t h e
h a s h t a b l e . T h e o r i g i n a l v e r s i o n o f t h i s f u n c t i o n w a s b a s e d o n
f u n c t i o n h a s h ( ) o n p . 2 3 3 o f S e d g e w i c k , " A l g o r i t h m s i n C "
-
8/14/2019 tipping model
13/16
G B T M e m o 1 2 4 T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C P a g e 1 3
( A d d i s o n - W e s l e y 1 9 9 0 , I S B N = 0 - 2 0 1 - 5 1 4 2 5 - 7 , L O C = Q A 7 6 . 7 3 . C 1 5 S 4 3 ) . T h e
c u r r e n t v e r s i o n i s a D o n W e l l s i d e a ( m u l t i p l y e a c h b y t e b y a
d i f f e r e n t p r i m e n u m b e r ) . * /
u n s i g n e d i n t h a s h 1 ( u n s i g n e d i n t k , / * i n p u t k e y v a l u e t o b e h a s h e d * /
u n s i g n e d i n t m ) / * h a s h t a b l e s i z e * /
{
/ * i n t i ; * /
u n s i g n e d i n t h ;
u n i o n {
u n s i g n e d i n t k p ;
c h a r k c 4 ] ;
} u ;
/ * c o n s t i n t m u l t i p l i e r = 6 4 ; * /
u . k p = k ; / * k c ] n o w c o n t a i n s 4 b y t e s o f i n p u t k * /
/ * h = 0 ; - - - t h e a l g o r i t h m f r o m S e d g e w i c k * /
/ * f o r ( i = 0 ; i < 4 ; i + + ) * /
/ * h = ( m u l t i p l i e r * k + u . k c i ] ) % m ; * /
h = ( u . k c 0 ] * 7 1
+ u . k c 1 ] * 1 1 3
+ u . k c 2 ] * 1 7 3
+ u . k c 3 ] * 2 2 9 ) % m ;
r e t u r n ( h ) ;
}
/ * T h e s e c o n d h a s h f u n c t i o n i s u s e d t o c a l c u l a t e t h e s t e p s i z e f o r
l i n e a r p r o b i n g w h e n w e h a v e c o l l i s i o n s i n t h e h a s h t a b l e , i . e . i t
i s u s e d f o r " d o u b l e h a s h i n g " . O r i g i n a l l y t h i s w a s t h e f i r s t h 2 ( )
f u n c t i o n o n p . 2 4 0 o f S e d g e w i c k , b u t n o w i t i s l i k e h a s h 1 ( ) , b u t
w i t h d i f f e r e n t p r i m e s i n t h e f o r m u l a . * /
u n s i g n e d i n t h a s h 2 ( u n s i g n e d i n t k , / * i n p u t k e y t o b e h a s h e d * /
u n s i g n e d i n t m ) / * h a s h t a b l e s i z e * /
{
u n s i g n e d i n t h ;
u n i o n {
u n s i g n e d i n t k p ;
c h a r k c 4 ] ;
} u ;
u . k p = k ; / * k c ] n o w c o n t a i n s 4 b y t e s o f i n p u t k * /
/ * h = ( m - 2 ) - k % ( m - 2 ) ; - - - t h e o r i g i n a l S e d g e w i c k c o d e * /
h = ( u . k c 0 ] * 7 3
+ u . k c 1 ] * 1 2 7
+ u . k c 2 ] * 1 7 9
+ u . k c 3 ] * 2 3 3 ) % m ;
r e t u r n ( h ) ;
}
/ * F u n c t i o n g e t _ h a s h _ c h a i n ( ) i s u s e d t o r e t r i e v e i n t e r n a l s t a t i s t i c s
m a i n t a i n e d i n s t a t i c m e m o r y b y t h e h a s h - t a b l e - b u i l d i n g a l g o r i t h m o f
-
8/14/2019 tipping model
14/16
1 4 P a g e T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C G B T M e m o 1 2 4
g e t _ i n d e x ( ) . * /
v o i d g e t _ h a s h _ c h a i n ( i n t * h a s h _ s i z e , / * s i z e o f h a s h t a b l e * /
i n t * h a s h _ t o t a l , / * n u m b e r o f e n t r i e s * /
i n t * c h a i n _ t o t a l , / * n u m b e r o f l i n e a r s e a r c h s t e p s * /
i n t * c h a i n _ m a x , / * l o n g e s t l i n e a r s e a r c h * /
d o u b l e * c h a i n _ a v g ) / * a v e r a g e l i n e a r s e a r c h * /
{
* h a s h _ s i z e = H A S H _ M ;
* h a s h _ t o t a l = h a s h _ c o u n t ;
* c h a i n _ t o t a l = c h a i n _ c o u n t ;
* c h a i n _ m a x = m a x _ c h a i n ;
* c h a i n _ a v g = ( ( d o u b l e ) c h a i n _ c o u n t / ( d o u b l e ) h a s h _ c o u n t ) ;
}
B T h e \ i n c l u d e " l e
T h e t e x t r e p r o d u c e d b e l o w i s t h e l e s t r u c t u r a l _ m o d e l . h , w h i c h c o n t a i n s d e n i t i o n s f o r t h e d a t a s t r u c t u r e s ,
p l u s t h e A N S I - C p r o t o t y p e s f o r t h e f u n c t i o n s .
/ * T h e i n c l u d e f o r t h e G B T s t r u c t u r a l m o d e l f u n c t i o n s a n d d a t a t a b l e .
N o t e u s e o f ' f l o a t ' r a t h e r t h a n ' d o u b l e ' i n t h e s e d e c l a r a t i o n s i n
o r d e r t o s a v e s p a c e .
D o n W e l l s , N R A O - C V , 3 / 1 8 / 9 4 , 5 / 1 9 , 1 2 / 1 6 , 1 / 2 6 / 9 5 . * /
s t r u c t d i s p l a c e m e n t {
f l o a t d e l t a 3 ] ; / * d i s p l a c e m e n t s i n X Y Z ( i n c h e s ) * /
f l o a t t i l t 3 ] ; / * r o t a t i o n s a b o u t X Y Z ( r a d i a n s ) * /
} ;
s t r u c t n o d e _ d a t a { / * s t r u c t r e t u r n e d b y g e t _ n o d e _ d a t a ( ) * /
i n t n o d e _ i d ; / * n o d e _ i d r e t u r n e d b y g e t _ n o d e _ d a t a ( ) * /
d o u b l e e l e v a t i o n ; / * e l e v a t i o n f o r n o d e _ d a t a ( d e g r e e s ) * /
f l o a t g r i d 3 ] ; / * u n d i s p l a c e d X Y Z o f n o d e _ i d ( i n c h e s ) * /
s t r u c t d i s p l a c e m e n t a t _ e l e v ; / * d i s p l a c e m e n t & t i l t a t e l e v a t i o n * /
} ;
s t r u c t m o d e l _ n o d e { / * t h e m o d e l i s a n a r r a y o f t h i s s t r u c t * /
i n t n o d e _ i d ; / * n o d e i d c o d e * /
f l o a t g r i d 3 ] ; / * X Y Z o f u n d i s p l a c e d n o d e ( i n c h e s ) * /
s t r u c t d i s p l a c e m e n t z e n i t h ;
s t r u c t d i s p l a c e m e n t h o r i z o n ;
} ;
# d e f i n e G B T _ T I P P I N G s t a t i c _ g b t _ t i p p i n g
/ * - = - = - = - = - = - = - = - = - = - = - f u n c t i o n p r o t o t y p e s : - = - = - = - = - = - = - = - = - = - = - = - = - * /
i n t g e t _ n o d e _ d a t a ( i n t i , / * t i p p i n g _ m o d e l ] i n d e x t o g e t * /
d o u b l e e l e v , / * e l e v a t i o n ( d e g ) * /
s t r u c t n o d e _ d a t a * n o d e _ i ) / * r e s u l t s r e t u r n e d i n a s t r u c t * /
;
i n t g e t _ i n d e x ( i n t n o d e _ i d )
;
u n s i g n e d i n t h a s h 1 ( u n s i g n e d i n t k , / * i n p u t k e y v a l u e t o b e h a s h e d * /
u n s i g n e d i n t m ) / * h a s h t a b l e s i z e * /
-
8/14/2019 tipping model
15/16
G B T M e m o 1 2 4 T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C P a g e 1 5
;
u n s i g n e d i n t h a s h 2 ( u n s i g n e d i n t k , / * i n p u t k e y t o b e h a s h e d * /
u n s i g n e d i n t m ) / * h a s h t a b l e s i z e * /
;
v o i d g e t _ h a s h _ c h a i n ( i n t * h a s h _ s i z e , / * s i z e o f h a s h t a b l e * /
i n t * h a s h _ t o t a l , / * n u m b e r o f e n t r i e s * /
i n t * c h a i n _ t o t a l , / * n u m b e r o f l i n e a r s e a r c h s t e p s * /
i n t * c h a i n _ m a x , / * l o n g e s t l i n e a r s e a r c h * /
d o u b l e * c h a i n _ a v g ) / * a v e r a g e l i n e a r s e a r c h * /
;
C T h e t a b l e o f n o d e s
I n t h i s s e c t i o n , w e r e p r o d u c e t h e d a t a f o r s e l e c t e d n o d e s f r o m t h e l e g b t _ t i p p i n g . c , w h o s e 1 . 1 m e g a b y t e s
o f t e x t c o n t a i n s t h e s t r u c t u r a l m o d e l i n f o r m a t i o n f o r t h e 5 7 4 4 n o d e s o f t h e t i p p i n g s t r u c t u r e . R e a d e r s w i l l
n o t i c e t h a t t h e i n f o r m a t i o n f o r t h e l e f t - h a l f n o d e s ( w i t h n e g a t i v e n o d e - I D s ) h a s b e e n c o m p u t e d f r o m t h e
r i g h t - h a l f n o d e s , a n d t h e y m a y w o n d e r w h y m e m o r y s p a c e i s b e i n g u s e d f o r r e d u n d a n t n u m b e r s . T h e r e a s o n
i s t h a t w e w i l l e v e n t u a l l y s u b s t i t u t e a n a s s y m e t r i c m o d e l f o r t h i s s y m m e t r i c o n e ( s e e S e c t . 4 ) , a n d w e p r e f e r
n o t t o h a v e t o r e v i s e t h e s o f t w a r e a t t h a t t i m e . S e v e r a l o f t h e n o d e s i n t h e t a b l e h a v e s p e c i a l s i g n i c a n c e :
N o d e - I D S i g n i c a n c e
4 0 7 0 0 G r e g o r i a n F e e d
5 0 0 0 0 P r i m e F o c u s B o x
5 0 0 0 5 S u b r e e c t o r V e r t e x
1 4
7 0 0 0 0 1 r s t a c t u a t o r
7 6 8 0 1 2 l a s t a c t u a t o r
T w o o f t h e s e v e n o d e s h a v e a s p e c i a l p r o p e r t y : t h e E u c l i d e a n d i s t a n c e b e t w e e n n o d e s 4 0 7 0 0 a n d 5 0 0 0 0 i s
4 3 3 . 0 8 i n c h e s , w h i c h i s e x a c t l y 1 1 . 0 0 0 m e t e r s ( t h e d e s i g n f o c a l l e n g t h o f t h e e l l i p s o i d a l s u b r e e c t o r ) .
T h e c o m p i l e d c o d e f o r t h i s t a b l e i s a b o u t 3 6 8 k i l o b y t e s ; t h i s i s a l s o t h e a m o u n t o f m e m o r y w h i c h i s n e e d e d
f o r t h e t a b l e a t e x e c u t i o n t i m e . ( E a c h n o d e i s r e p r e s e n t e d a s 1 6 4 - b y t e o b j e c t s , t h e r e f o r e 5 7 4 4 n o d e s
w i l l n e e d 3 6 7 6 1 6 b y t e s . ) T h e r e a d e r w i l l s e e t h a t e a c h n o d e i s r e p r e s e n t e d i n t h i s t a b l e b y t h r e e l i n e s o f
t e x t . T h e s i x t e e n n u m b e r s a p p e a r i n g i n t h e t h r e e l i n e s a r e g r o u p e d b y n e s t e d b r a c k e t s . T h e s e g r o u p i n g s
c o r r e s p o n d t o t h e e l e m e n t s o f C - s t r u c t s m o d e l _ n o d e ( w h i c h u s e s s t r u c t d i s p l a c e m e n t ) , a s d e n e d i n l e
s t r u c t u r a l _ m o d e l . h ( A p p e n d i x B ) . D i s t a n c e s a r e i n i n c h e s , a n g l e s i n r a d i a n s . T h e r o t a t i o n c o n v e n t i o n f o r
t h e a n g l e s i s \ r i g h t - h a n d - r u l e " : i f t h e t h u m b o f t h e r i g h t h a n d p o i n t s i n t h e p l u s - X d i r e c t i o n , t h e n g e r s c u r l
i n t h e p l u s - r o t a t i o n s e n s e o f t h e r s t r o t a t i o n n u m b e r ( r o t a t i o n a b o u t t h e X - a x i s ) .
# i n c l u d e " s t r u c t u r a l _ m o d e l . h "
c h a r G B T _ T I P P I N G _ T E X T ] =
" M O D 9 5 . D A T G R A V I T Y L O A D S ( Z E N / H O R ) O C T O B E R 2 8 , 1 9 9 3 M S C / N A S T R A N 4 / 1 5 / 9 3 " ;
/ * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * /
/ * 0 0 1 0 D A T A 2 / L K I N G / M O D E L 9 5 D I R E C T O R Y * /
/ * 0 0 1 2 S O R T E D B U L K D A T A E C H O * /
/ * 3 4 4 4 Z E N I T H G R A V I T Y ( - 1 Z G R A V I T Y : 3 8 6 . 0 0 I N / S E C ^ 2 ) S U B C A S E 1 * /
/ * 6 9 3 1 H O R I Z O N G R A V I T Y ( + 1 Y G R A V I T Y : 3 8 6 . 0 0 I N / S E C ^ 2 ) S U B C A S E 3 * /
/ * - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - * /
1 4
T h i s n o d e , w h i c h i s r e f e r r e d t o a s t h e \ v e r t e x " o f t h e s u b r e e c t o r , i s a s s o c i a t e d w i t h t h e c e n t e r o f t h e o - a x i s s u b r e e c t o r ,
n o t w i t h t h e t r u e v e r t e x o f t h e f u l l e l l i p s o i d .
-
8/14/2019 tipping model
16/16
1 6 P a g e T h e G B T T i p p i n g - S t r u c t u r e M o d e l i n C G B T M e m o 1 2 4
s t r u c t m o d e l _ n o d e G B T _ T I P P I N G ] = {
{ 5 7 4 4 , / * n u m b e r o f n o d e s * /
{ 0 . 0 , 0 . 0 , 0 . 0 } , { { 0 . 0 , 0 . 0 , 0 . 0 } , { 0 . 0 , 0 . 0 , 0 . 0 } } , { { 0 . 0 , 0 . 0 , 0 . 0 } , { 0 . 0 , 0 . 0 , 0 . 0 } } } ,
{ 1 0 0 0 , { 0 . 0 0 , 0 . 0 0 , 1 9 0 0 . 0 0 } ,
{ { 0 . 0 0 0 0 , 0 . 0 3 8 7 , - 0 . 7 5 7 3 } , { 0 . 0 0 0 2 1 , 0 . 0 0 0 0 0 , 0 . 0 0 0 0 0 } } ,
{ { 0 . 0 0 0 0 , 0 . 6 5 8 3 , - 0 . 0 5 6 1 } , { - 0 . 0 0 0 6 0 , 0 . 0 0 0 0 0 , 0 . 0 0 0 0 0 } } } ,
{ 1 2 0 0 , { 4 6 3 . 8 9 , 0 . 0 0 , 1 9 0 0 . 0 0 } ,
{ { - 0 . 1 4 9 8 , - 0 . 0 7 9 3 , - 0 . 5 6 3 5 } , { 0 . 0 0 0 3 5 , - 0 . 0 0 0 3 3 , - 0 . 0 0 0 1 3 } } ,
{ { - 0 . 0 4 1 7 , 0 . 6 1 6 2 , 0 . 0 2 6 1 } , { - 0 . 0 0 0 8 1 , - 0 . 0 0 0 2 0 , 0 . 0 0 0 0 3 } } } ,
{ - 1 2 0 0 , { - 4 6 3 . 8 9 , 0 . 0 0 , 1 9 0 0 . 0 0 } ,
{ { 0 . 1 4 9 8 , - 0 . 0 7 9 3 , - 0 . 5 6 3 5 } , { 0 . 0 0 0 3 5 , 0 . 0 0 0 3 3 , 0 . 0 0 0 1 3 } } ,
{ { 0 . 0 4 1 7 , 0 . 6 1 6 2 , 0 . 0 2 6 1 } , { - 0 . 0 0 0 8 1 , 0 . 0 0 0 2 0 , - 0 . 0 0 0 0 3 } } } ,
{ 4 0 7 0 0 , { 0 . 0 0 , - 2 2 0 1 . 0 6 , 4 0 2 8 . 0 3 } ,
{ { 0 . 0 0 0 0 , - 3 . 7 8 8 8 , - 3 . 3 6 7 9 } , { 0 . 0 0 1 4 8 , 0 . 0 0 0 0 0 , 0 . 0 0 0 0 0 } } ,
{ { 0 . 0 0 0 0 , 7 . 8 6 1 8 , 0 . 6 2 7 0 } , { - 0 . 0 0 3 9 9 , 0 . 0 0 0 0 0 , 0 . 0 0 0 0 0 } } } ,
{ 5 0 0 0 0 , { 0 . 0 0 , - 2 1 5 9 . 0 2 , 4 4 5 9 . 0 6 } ,
{ { 0 . 0 0 0 0 , - 4 . 4 9 1 4 , - 3 . 4 5 7 0 } , { 0 . 0 0 0 3 7 , 0 . 0 0 0 0 0 , 0 . 0 0 0 0 0 } } ,
{ { 0 . 0 0 0 0 , 9 . 7 8 0 3 , 0 . 3 8 2 1 } , { - 0 . 0 0 3 3 2 , 0 . 0 0 0 0 0 , 0 . 0 0 0 0 0 } } } ,
{ 5 0 0 0 5 , { 0 . 0 0 , - 2 3 2 7 . 9 6 , 4 6 0 8 . 7 1 } ,
{ { 0 . 0 0 0 0 , - 4 . 6 9 2 3 , - 3 . 8 2 8 0 } , { 0 . 0 0 0 6 5 , 0 . 0 0 0 0 0 , 0 . 0 0 0 0 0 } } ,
{ { 0 . 0 0 0 0 , 1 0 . 4 4 5 7 , 0 . 9 4 1 6 } , { - 0 . 0 0 4 5 4 , 0 . 0 0 0 0 0 , 0 . 0 0 0 0 0 } } } ,
{ 7 0 0 0 0 1 , { 0 . 0 0 , - 2 0 0 2 . 1 7 , 2 0 9 9 . 4 5 } ,
{ { 0 . 0 0 0 0 , - 0 . 0 0 5 8 , - 1 . 3 3 0 8 } , { 0 . 0 0 0 1 4 , 0 . 0 0 0 0 0 , 0 . 0 0 0 0 0 } } ,
{ { 0 . 0 0 0 0 , 0 . 8 3 4 6 , 0 . 9 2 1 0 } , { - 0 . 0 0 0 8 5 , 0 . 0 0 0 0 0 , 0 . 0 0 0 0 0 } } } ,
{ { 0 . 0 3 9 6 , 0 . 8 8 2 5 , 0 . 8 1 9 2 } , { - 0 . 0 0 1 0 9 , 0 . 0 0 0 0 9 , - 0 . 0 0 0 0 8 } } } ,
{ 7 6 8 0 1 1 , { 1 0 7 3 . 1 3 , - 1 7 4 3 . 4 0 , 2 2 3 1 . 3 1 } ,
{ { 0 . 0 6 1 5 , - 0 . 0 3 2 7 , - 1 . 2 5 9 2 } , { 0 . 0 0 0 8 8 , 0 . 0 0 0 1 8 , - 0 . 0 0 0 2 8 } } ,
{ { - 0 . 0 2 0 7 , 0 . 8 4 5 8 , 0 . 8 1 6 3 } , { - 0 . 0 0 1 1 5 , - 0 . 0 0 0 3 5 , 0 . 0 0 0 6 1 } } } ,
{ - 7 6 8 0 1 1 , { - 1 0 7 3 . 1 3 , - 1 7 4 3 . 4 0 , 2 2 3 1 . 3 1 } ,
{ { - 0 . 0 6 1 5 , - 0 . 0 3 2 7 , - 1 . 2 5 9 2 } , { 0 . 0 0 0 8 8 , - 0 . 0 0 0 1 8 , 0 . 0 0 0 2 8 } } ,
{ { 0 . 0 2 0 7 , 0 . 8 4 5 8 , 0 . 8 1 6 3 } , { - 0 . 0 0 1 1 5 , 0 . 0 0 0 3 5 , - 0 . 0 0 0 6 1 } } } ,
{ 7 6 8 0 1 2 , { 1 1 6 2 . 5 0 , - 1 7 0 7 . 2 9 , 2 2 5 6 . 9 4 } ,
{ { 0 . 0 5 4 9 , - 0 . 0 1 1 6 , - 1 . 2 6 6 0 } , { 0 . 0 0 0 9 4 , 0 . 0 0 0 0 6 , 0 . 0 0 0 0 6 } } ,
{ { - 0 . 0 3 1 3 , 0 . 8 5 0 8 , 0 . 8 0 9 5 } , { - 0 . 0 0 0 8 7 , - 0 . 0 0 0 1 0 , - 0 . 0 0 0 0 6 } } } ,
{ - 7 6 8 0 1 2 , { - 1 1 6 2 . 5 0 , - 1 7 0 7 . 2 9 , 2 2 5 6 . 9 4 } ,
{ { - 0 . 0 5 4 9 , - 0 . 0 1 1 6 , - 1 . 2 6 6 0 } , { 0 . 0 0 0 9 4 , - 0 . 0 0 0 0 6 , - 0 . 0 0 0 0 6 } } ,
{ { 0 . 0 3 1 3 , 0 . 8 5 0 8 , 0 . 8 0 9 5 } , { - 0 . 0 0 0 8 7 , 0 . 0 0 0 1 0 , 0 . 0 0 0 0 6 } } } } ;