! M S $ r e a l : 8 	 
 
 	 p r o g r a m   S T A R T 
 
 
 
 	 u s e   A V D e f         
 
 	 u s e   D F L I B 
 
 	 
 
 	 i n t e g e r ,   p a r a m e t e r : :   d i l = 2 0 , d l = 2 5 6 , d e l = 1 2 4 
 
 
 
             i n t e g e r ,   p a r a m e t e r : : n = ( d i l ) * 4 , k = n / 2 , n l = n / 2 , n p = n / 2 
 
 	     	 c o m m o n   P h 0 , P h 1 , P h 2 , P h 3 , P h 4 , P h a 0 T , o l e o l e 
 
 	 C o m m o n   P h N 1 , P h N 2 , P h N 3 , P h N 1 T 
 
 	 r e a l   z ( N * ( N - K + 1 ) + ( N - K + 1 ) * ( N - K + 2 ) / 2 + 1 ) 
 
           r e a l   r 1 ( N * ( N - K + 1 ) ) , z 1 ( N * ( N - K + 1 ) ) , y ( n + 1 ) , a 1 ( N * ( N + 1 ) ) , o l e o l e ( N * ( N + 1 ) ) 
 
           r e a l   o m ( ( N - K + 1 ) * ( N - K + 2 ) / 2 ) 
 
           r e a l   r e w ( d i l + 4 , 3 1 ) , w w ( d l , d i l + 4 ) , w w 1 ( d i l + 4 , d l ) 
 
 	   r e a l   A l e f t ( N * ( N + 1 ) ) , A r i g h t ( N * ( N + 1 ) )   , A M a t 1 ( n / 2 , n + 1 ) , A m a t 2 ( n / 2 , n + 1 )   
 
 	   d i m e n s i o n   i t p ( n ) 
 
 	 i n t e g e r   n u m 1 
 
 	 r e a l   x x ( - 5 : d i l + 4 ) 
 
 	 r e a l   e s s ( d i l ) , x , d s , e s d , e s s 1 ( n / 4 ) , e s s 2 ( n / 4 ) 
 
 	 r e a l   M m ( d e l , d l ) 
 
             r e a l   s i n a ( d l ) 
 
 	 	 r e a l   s u k , v n u 
 
 	 	 c h a r a c t e r   k e y 
 
 	 r e a l   P h a 0 T ( n / 4 , n / 4 ) 
 
 	 r e a l   P h 0 ( n / 4 , n / 4 ) , P h 1 ( n / 4 , n / 4 ) 
 
 	 r e a l   P h 2 ( n / 4 , n / 4 ) , P h 3 ( n / 4 , n / 4 ) , P h 4 ( n / 4 , n / 4 ) 
 
 	 r e a l   P h N 1 ( n / 4 , n / 4 ) , P h N 1 T ( n / 4 , n / 4 ) 
 
 	 r e a l   P h N 2 ( n / 4 , n / 4 ) , P h N 3 ( n / 4 , n / 4 ) , P h N N ( n / 4 , n / 4 ) 
 
 	 o p e n   ( 6 , f i l e = ' d i o r . t x t ' , s t a t u s = ' u n k n o w n ' ) 
 
 	 o p e n   ( 7 , f i l e = ' d i o r 1 . t x t ' , s t a t u s = ' u n k n o w n ' ) 
 
 	 	 o p e n   ( 8 , f i l e = ' d i o r 2 . t x t ' , s t a t u s = ' u n k n o w n ' ) 
 
 
 
   i t p = ( / ( i , i = 1 , n ) / ) 	 
 
     A M a t 1 = 0 . ;   A M a t 2 = 0 . ; 
 
 
 
   d o   i = 1 , n / 2 
 
   A M a t 1 ( i , i ) = 1 . 
 
   e n d d o 
 
     
 
 A M a t 2 = A m a t 1 
 
 
 
 A l e f t = 0 . 
 
 A r i g h t = 0 . 
 
 
 
 	     x = 0 . 
 
 	 e s d = 1 0 . 
 
 
 
 	 x x ( 0 ) = 0 . 
 
 	 d s = e s d / ( d i l - 1 ) 
 
 	 d o   i = 1 , d i l + 4 
 
 	 x x ( i ) = x x ( i - 1 ) + d s 
 
 	 e n d d o 
 
 	 i = - 1 
 
 	 d o   w h i l e   ( i > - 6 ) 
 
 	 x x ( i ) = x x ( i + 1 ) - d s 
 
 	 i = i - 1 
 
 	 e n d d o 
 
 	 d o   i = 0 , d i l - 2 
 
 	 i f   ( m o d ( i , 2 ) = = 0 . a n d . i / = 1 )   t h e n 
 
 	 e s s ( i + 1 ) = x x ( i ) + ( 1 . / 2 . - s q r t ( 3 . ) / 6 . ) * d s 
 
 	 e s s ( i + 2 ) = x x ( i ) + ( 1 . / 2 . + s q r t ( 3 . ) / 6 . ) * d s 
 
 	 e n d   i f   
 
 	 e n d d o 
 
 
 
 	 d o   j = 1 , n / 4 
 
 	 d o   i = 1 , n / 4 
 
 	 P h 0 ( i , j ) = p h i ( 0 , j - 1 , d i l - 1 , x x , e s s ( i ) ) 
 
 	 P h 1 ( i , j ) = p h i ( 1 , j - 1 , d i l - 1 , x x , e s s ( i ) ) 
 
 	 P h 2 ( i , j ) = p h i ( 2 , j - 1 , d i l - 1 , x x , e s s ( i ) ) 
 
 	 P h 3 ( i , j ) = p h i ( 3 , j - 1 , d i l - 1 , x x , e s s ( i ) ) 
 
 	 P h 4 ( i , j ) = p h i ( 4 , j - 1 , d i l - 1 , x x , e s s ( i ) ) 
 
 	 e n d d o 
 
 	 e n d d o 
 
 
 
 v n u = . 3 
 
 d o   j = 1 , n + 1 ;   d o   i = 1 , n / 2 
 
 A l e f t ( ( j - 1 ) * N / 2 + i ) = A M a t 1 ( i , j ) 
 
 A r i g h t ( ( j - 1 ) * N / 2 + i ) = A M a t 2 ( i , j ) 
 
   e n d d o 
 
   e n d d o 
 
 
 
 ! = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 
 
 ! - -                                           - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 	 	 	 	 = = = 
 
 o p e n ( 1 0 2 , f i l e = ' . . / B q . t x t ' , s t a t u s = ' u n k n o w n ' ) 	 	 	 	 	 	 	 	 	 	 	 
 
             d o   j = 1 , n   
 
 	     d o   i = 1 , n / 2 
 
 	 	 r e a d ( 1 0 2 , * ) A l e f t ( ( j - 1 ) * N / 2 + i ) 
 
 	 	 A r i g h t ( ( j - 1 ) * N / 2 + i )   =   A l e f t ( ( j - 1 ) * N / 2 + i ) 
 
 	     e n d d o 
 
 	     e n d d o 
 
 c l o s e ( 1 0 2 ) 
 
 
 
 ! - -                                                   .   L e f t   ~   z   =   0 ,     R i g h t   ~   z   =   c . 	 	 = = = 
 
 o p e n ( 1 0 3 , f i l e = ' . . / f 0 . t x t ' , s t a t u s = ' u n k n o w n ' ) 
 
 	     d o   i = 1 , n / 2 
 
 	 	 r e a d ( 1 0 3 , * ) A l e f t ( N * N / 2 + i ) 
 
 	     e n d d o 
 
 c l o s e ( 1 0 3 ) 
 
 
 
 o p e n ( 1 0 4 , f i l e = ' . . / f c . t x t ' , s t a t u s = ' u n k n o w n ' ) 
 
 	     d o   i = 1 , n / 2 
 
 	 	 r e a d ( 1 0 4 , * ) A r i g h t ( N * N / 2 + i ) 
 
 	     e n d d o 
 
 c l o s e ( 1 0 4 ) 
 
 ! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
 
 ! - -                     - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
 
 	 o p e n ( 1 0 5 , f i l e = ' . . / A . t x t ' , s t a t u s = ' u n k n o w n ' ) 
 
             d o   j = 1 , n   
 
 	     d o   i = 1 , n 
 
 	 	 r e a d ( 1 0 5 , * ) o l e o l e ( ( j - 1 ) * N + i ) 
 
 	     e n d d o 
 
 	     e n d d o 
 
 	 c l o s e ( 1 0 5 ) 
 
 
 
         ! - -                                    - - - - - - - - - - - - - - - - - - - - - - - - - 
 
 	 o p e n ( 1 0 6 , f i l e = ' . . / f . t x t ' , s t a t u s = ' u n k n o w n ' ) 
 
 	     d o   i = 1 , n 
 
 	 	 r e a d ( 1 0 6 , * ) o l e o l e ( N * N + i ) 
 
 	     e n d d o 
 
 	 c l o s e ( 1 0 6 ) 
 
         ! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
 
 ! = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 
 
 
 
 
 
 
 
 ! = = = = = = = = =                        = = = = = = = = = = = = = = = = = = = 
 
 ! - - - - - - - - - - - - - - - - - - - - - - - - - - - = = = = = = = = = = = = = = = = = = = = = 
 
 o p e n   ( 6 6 6 , f i l e = ' A l e f t . t x t ' , s t a t u s = ' u n k n o w n ' )     
 
 w r i t e   ( 6 6 6 , 1 0 0 1 ) A M a t 1 	 	 	 	 	 	       
 
 c l o s e ( 6 6 6 ) 	 	 	 	 	 	 	 	 	       
 
 	 	 	 	 	 	 	 	 	 	 	       
 
 o p e n   ( 6 6 7 , f i l e = ' A r i g h t . t x t ' , s t a t u s = ' u n k n o w n ' )   
 
 w r i t e   ( 6 6 7 , 1 0 0 1 ) A M a t 2 	 	 	 	 	 	       
 
 c l o s e ( 6 6 7 ) 	 	 	 	 	 	 	 	 	       
 
 	 	 	 	 	 	 	 	 	 	 	       
 
 1 0 0 1     F O R M A T ( 1 ( E 1 2 . 5 , 2 X ) ) 	 	 	 	 	       
 
 ! - - - - - - - - - - - - - - - - - - - - - - - - - - - = = = = = = = = = = = = = = = = = = = = 
 
 
 
 P h N 1 = 0 . ; P h N 2 = 0 . ; P h N 3 = 0 . 
 
 
 
 	 c a l l   A l t e r O b ( P h 0 , P h a 0 T , n / 4 ) 	 
 
 
 
 	 s u k = e s d / ( d l - 1 ) 
 
 	 d o   i = 0 , d l - 1 
 
 	 	 s i n a ( i + 1 ) = i * s u k 
 
 	 e n d d o 
 
 
 
             N 1 = ( N - K + 1 ) * N 
 
             M 1 = ( N - K + 1 ) * ( N - K + 2 ) / 2 
 
             N Z = N 1 + M 1 + 1 
 
             N Y = N + 1 
 
             N N = N * N Y 
 
             C A L L   D O ( N , K , X , H , N 1 , M 1 , N Z , N Y , N N , N L , N P ,   & 
 
           Z , R 1 , Z 1 , Y , A 1 , O M , A l e f t , A r i g h t , I T P ) 
 
     
 
     c l o s e ( 6 ) 
 
 
 
     o p e n ( 6 , f i l e = ' d i o r . t x t ' , s t a t u s = ' u n k n o w n ' ) 
 
 	 
 
 	 k k = d e l 
 
 	 d o   w h i l e   ( k k > 0 ) 
 
 r e a d ( 6 , * ) w w ( k k , 1 : n / 4 ) 
 
 	 k k = k k - 1 
 
 	 e n d d o 
 
 
 
 	 d o   l = 1 , d l 
 
 	 d o   k k = 1 , d e l 
 
 m m ( k k , l ) = 0 . 
 
 d o   i = 1 , n / 4 
 
 m m ( k k , l ) = m m ( k k , l ) + w w ( k k , i ) * p h i ( 0 , i - 1 , d i l - 1 , x x , s i n a ( l ) ) 
 
 	 e n d d o 
 
   	 e n d d o ; 	 	 e n d d o 
 
 
 
 ! 	   c a l l   f a g l S t a r t W a t c h ( M m ,   s t a t u s ) 
 
 
 
 ! 	 p r i n t   * ,   " S t a r t i n g   A r r a y   V i e w e r " 
 
 
 
 ! 	 c a l l   f a g l S h o w ( M m ,   s t a t u s ) 
 
 ! 	 	 k e y   =   G E T C H A R Q Q ( ) 
 
 ! 	 c a l l   f a g l E n d W a t c h ( M m ,   s t a t u s )                 
 
   
 
             E N D 
 
 	     S U B R O U T I N E   F O R W A R ( N , M , X , H , I P 1 , I P 2 , I P 3 , N A , A ) 
 
             r e a l ( 8 )   A ( N A ) , h , x 
 
 	     I P 1 = 1 ;   I P 2 = 1 ;       I P 3 = 1 
 
             
 
 	     H = 1 0 . / 3 0 0 . 
 
 
 
             I F ( A B S ( 1 0 . - X ) . L E . H / 2 . )   I P 3 = 0 
 
             R E T U R N 
 
             E N D 
 
 
 
             S U B R O U T I N E   R E S U L T ( N , N I , A ) 
 
             r e a l ( 8 )   A ( N ) 
 
             w r i t e   ( 6 , 1 ) a ( 2 : 1 1 ) 
 
       1     F O R M A T ( 1 0 ( E 1 2 . 5 , 2 X ) ) 
 
 
 
             R E T U R N 
 
             E N D 
 
   
 
 ! H E R E   M U S T   D E F I N E :   P h a 0 T ,   P h 4 ,   P h a 0 T ,   P h 2 ,   q f   -   r i g h t   s i d e   v e c t o r 
 
           
 
         S U B R O U T I N E   M A T R I X ( N N , X , N A , A ) 
 
 	 ! M S $ r e a l : 8 
 
 	 i n t e g e r ,   p a r a m e t e r : :   d i l = 2 0 , n = ( d i l ) * 4 
 
 	 c o m m o n   P h 0 , P h 1 , P h 2 , P h 3 , P h 4 , P h a 0 T , o l e o l e 
 
 	 C o m m o n   P h N 1 , P h N 2 , P h N 3 , P h N 1 T 
 
             r e a l   A ( N A ) 
 
 	 r e a l   h , x , v n _ s t , v n _ t s   ! c o e f     o f     P u a s s o n 
 
 	 r e a l   t m p 4 ( n / 4 , n / 4 ) 
 
 	 r e a l   q d z ( n / 4 ) , q q d z ( n / 4 ) , q f ( n / 4 ) 
 
 	 r e a l   d d ( 4 , 4 , n / 4 , n / 4 ) , d d 1 ( ( n / 4 ) * 4 , ( n / 4 ) * 4 ) 
 
 	 r e a l   P h a 0 T ( n / 4 , n / 4 ) , P h b 0 T ( n / 4 , n / 4 ) 
 
 	 r e a l   P h 0 ( n / 4 , n / 4 ) , P h 1 ( n / 4 , n / 4 ) 
 
 	 r e a l   P h 2 ( n / 4 , n / 4 ) , P h 3 ( n / 4 , n / 4 ) , P h 4 ( n / 4 , n / 4 ) 
 
 	 r e a l   P h N 1 ( n / 4 , n / 4 ) , P h N 1 T ( n / 4 , n / 4 ) 
 
 	 r e a l   P h N 2 ( n / 4 , n / 4 ) , P h N 3 ( n / 4 , n / 4 ) , o l e o l e ( N * ( N + 1 ) ) 
 
 	 r e a l   T e s t ( n / 4   *   n / 4 ) 
 
 ! = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 
 
 	 r e a l   E 1 ,   E 2 ,   G 1 2 ,   n i u 1 ,   n i u 2 ,   D 1 1 ,   D 1 2 ,   D 2 2 ,   D 6 6   ,   h h h 
 
 	 r e a l   a a a ,   b b b ,   q q q 
 
 
 
 ! 	 h h h   =   0 . 0 1 
 
 ! 	 E 1   =   4 . 7 6   *   1 0 0 0 0 
 
 ! 	 E 2   =   2 . 0 7   *   1 0 0 0 0 
 
 ! 	 G 1 2   =   0 . 5 3 1   *   1 0 0 0 0 
 
 ! 	 n i u 1   =   0 . 1 4 9 
 
 ! 	 n i u 2   =   0 . 0 6 4 7 
 
 
 
 ! 	 D 1 1   =   h h h   *   E 1 / ( 1 - n i u 1 * n i u 2 ) 
 
 ! 	 D 1 2   =   h h h   *   n i u 1   *   E 2 / ( 1 - n i u 1 * n i u 2 ) 
 
 ! 	 D 2 2   =   h h h   *   E 2 / ( 1 - n i u 1 * n i u 2 ) 
 
 ! 	 D 6 6   =   h h h   *   G 1 2 
 
 
 
 ! 	 a a a   =   - D 2 2 / D 1 1 
 
 ! 	 b b b   =   - 2 * ( D 1 2   +   2 * D 6 6 ) / D 1 1 
 
 
 
 ! 	 q q q   =   0 . 0 1 
 
 
 
 ! = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 
 
 
 
 ! 	 d d = 0 . ; d d 1 = 0 . 
 
 ! 	 a = 0 . 
 
 ! 	 d o   i = 1 , n / 4 
 
 ! 	 d d ( 1 , 2 , i , i ) = 1 . 
 
 ! 	 d d ( 3 , 4 , i , i ) = 1 . 
 
 ! 	 d d ( 2 , 3 , i , i ) = 1 . 
 
 ! 	 e n d d o 
 
 
 
 ! 	 d d ( 4 , 1 , : , : ) = a a a   *   m a t m u l ( P h a 0 T , P h 4 )   ! - m a t m u l ( P h a 0 T , P h 4 ) 
 
 ! 	 d d ( 4 , 3 , : , : ) = b b b   *   m a t m u l ( P h a 0 T , P h 2 )   ! - 2 . * m a t m u l ( P h a 0 T , P h 2 ) 
 
 
 
 
 
 ! 	 d o   j = 0 , 3 ; 	 d o   l = 0 , 3 
 
 ! 	 d o   m = 1 , n / 4 
 
 ! 	 d o   i = 1 , n / 4 
 
 ! 	 d d 1 ( j * ( n / 4 ) + m , l * ( n / 4 ) + i ) = d d ( j + 1 , l + 1 , m , i ) 
 
 ! 	 e n d d o ; 	 e n d d o 
 
 ! 	 e n d d o ; 	 e n d d o 
 
 
 
 ! 	 d o   j = 1 , ( n / 4 ) * 4 ; 	 d o   i = 1 , ( n / 4 ) * 4 
 
 ! 	 a ( ( j - 1 ) * ( n / 4 ) * 4 + i ) = d d 1 ( j , i ) 
 
 ! 	 e n d d o ; 	 	 	 	 e n d d o 
 
 
 
 
 
 ! - - - - - R i g h t   s i d e   - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
 
 	 
 
 ! 	 d o   i = 1 , n / 4 
 
 ! 	 q d z ( i ) = q q q / D 1 1   
 
 ! 	 e n d d o 
 
 	   
 
 ! 	 c a l l   m u l t m v ( n / 4 , P h a 0 T , q d z , q f ) 
 
 	 
 
 ! 	 d o   i = ( n / 4 ) * 3 + 1 , n 
 
 ! 	 a ( n * n + i ) = q f ( i - ( n / 4 ) * 3 ) 
 
 ! 	 e n d d o 
 
 
 
 a   =   o l e o l e 
 
 ! = = = = = = = = =                        = = = = = = = = = = = = = = = = = = = = 
 
 ! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - = = 
 
 o p e n   ( 6 6 8 , f i l e = ' A . t x t ' , s t a t u s = ' u n k n o w n ' ) 	 	 
 
 w r i t e   ( 6 6 8 , 1 0 0 2 ) A 	 	 	 	 	 	 	 	 
 
 c l o s e ( 6 6 8 ) 	 	 	 	 	 	 	 	 	 	 
 
 	 	 	 	 	 	 	 	 	 	 	 	 
 
 1 0 0 2     F O R M A T ( 1 ( E 1 2 . 5 , 2 X ) ) 	 	 	 	 	 	 
 
 ! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - = = 
 
 ! = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = 	 
 
 ! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
 
   1 1 1     F O R M A T ( 1 ( E 1 2 . 5 , 2 X ) )   
 
             R E T U R N 
 
 	   
 
 	     c o n t a i n s 
 
 	     s u b r o u t i n e   m u l t m v ( n u , a u , b , c ) 
 
 	 r e a l ( 8 )   a u ( n u , n u ) , c ( n u ) , b ( n u ) 
 
 	 i n t e g e r   i , j , k 
 
 	 
 
 	 d o   i = 1 , n u 
 
 	 	 c ( i ) = 0 . 
 
 	 	 d o   k u = 1 , n u 
 
 	 	 	 c ( i ) = c ( i ) + a u ( i , k u ) * b ( k u ) 
 
 	 	 e n d d o 
 
 	 e n d   d o 
 
 	 e n d   s u b r o u t i n e   m u l t m v 
 
 
 
             E N D   s u b r o u t i n e 
 
 
 
 ! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
 
 ! - - - - - - - - h o l d   t i g h t l y   b o r d e r s   - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -         
 
 	 r e a l ( 8 ) 	 f u n c t i o n   p h i ( j , i , n , x x , x ) 
 
 	 	 r e a l ( 8 )   x , x x ( - 5 : n + 5 ) 
 
 	 	 i n t e g e r   j , i , n , k 
 
 	 i f   ( j = = 0 )   t h e n 	 
 
 	 	 i f ( i = = 0 ) t h e n   
 
 	 p h i = 1 6 5 . / 4 . * s p l B 5 ( - 2 , n , x x , x ) - 3 3 . / 8 . * s p l B 5 ( - 1 , n , x x , x ) + s p l B 5 ( 0 , n , x x , x ) 
 
 	 	 e l s e   i f ( i = = 1 )   t h e n   
 
 	 p h i = s p l B 5 ( - 1 , n , x x , x ) - 2 6 . / 3 3 . * s p l B 5 ( 0 , n , x x , x ) + s p l B 5 ( 1 , n , x x , x ) 
 
 	 	 	 e l s e   i f ( i = = 2 )   t h e n 
 
 	 p h i = s p l B 5 ( - 2 , n , x x , x ) - 1 . / 3 3 . * s p l B 5 ( 0 , n , x x , x ) + s p l B 5 ( 2 , n , x x , x ) 
 
 	 	 	 	 e l s e   i f ( i = = n - 2 )   t h e n 
 
 	 p h i = s p l B 5 ( n + 2 , n , x x , x ) - 1 . / 3 3 . * s p l B 5 ( n , n , x x , x ) + s p l B 5 ( n - 2 , n , x x , x ) 
 
 	 	 	 	 	 e l s e   i f ( i = = n - 1 )   t h e n 
 
 	 p h i = s p l B 5 ( n + 1 , n , x x , x ) - 2 6 . / 3 3 . * s p l B 5 ( n , n , x x , x ) + s p l B 5 ( n - 1 , n , x x , x ) 
 
 	 	 	 	 	 	 e l s e i f   ( i = = n )   t h e n 	 
 
 	 p h i = 1 6 5 . / 4 . * s p l B 5 ( n + 2 , n , x x , x ) - 3 3 . / 8 . * s p l B 5 ( n + 1 , n , x x , x ) + s p l B 5 ( n , n , x x , x ) 
 
 	 	 	 	 	 	 	 e l s e 
 
 	 	 	 p h i = s p l B 5 ( i , n , x x , x ) 
 
 	 	 e n d i f 
 
 	 e l s e i f     ( j = = 1 ) t h e n 
 
 	 
 
 	 	 i f ( i = = 0 ) t h e n   
 
 	 p h i = 1 6 5 . / 4 . * s p l B 5 1 ( - 2 , n , x x , x ) - 3 3 . / 8 . * s p l B 5 1 ( - 1 , n , x x , x ) + s p l B 5 1 ( 0 , n , x x , x ) 
 
 	 	 e l s e   i f ( i = = 1 )   t h e n   
 
 	 p h i = s p l B 5 1 ( - 1 , n , x x , x ) - 2 6 . / 3 3 . * s p l B 5 1 ( 0 , n , x x , x ) + s p l B 5 1 ( 1 , n , x x , x ) 
 
 	 	 	 e l s e   i f ( i = = 2 )   t h e n 
 
 	 p h i = s p l B 5 1 ( - 2 , n , x x , x ) - 1 . / 3 3 . * s p l B 5 1 ( 0 , n , x x , x ) + s p l B 5 1 ( 2 , n , x x , x ) 
 
 	 	 	 	 e l s e   i f ( i = = n - 2 )   t h e n 
 
 	 p h i = s p l B 5 1 ( n + 2 , n , x x , x ) - 1 . / 3 3 . * s p l B 5 1 ( n , n , x x , x ) + s p l B 5 1 ( n - 2 , n , x x , x ) 
 
 	 	 	 	 	 e l s e   i f ( i = = n - 1 )   t h e n 
 
 	 p h i = s p l B 5 1 ( n + 1 , n , x x , x ) - 2 6 . / 3 3 . * s p l B 5 1 ( n , n , x x , x ) + s p l B 5 1 ( n - 1 , n , x x , x ) 
 
 	 	 	 	 	 	 e l s e i f   ( i = = n )   t h e n 	 
 
 	 p h i = 1 6 5 . / 4 . * s p l B 5 1 ( n + 2 , n , x x , x ) - 3 3 . / 8 . * s p l B 5 1 ( n + 1 , n , x x , x ) + s p l B 5 1 ( n , n , x x , x ) 
 
 	 	 	 	 	 	 	 e l s e 
 
 	 	 	 p h i = s p l B 5 1 ( i , n , x x , x ) 
 
 	 	 e n d i f 
 
 	 e l s e i f   ( j = = 2 ) t h e n 
 
 	 
 
 	 	 i f ( i = = 0 ) t h e n   
 
 	 p h i = 1 6 5 . / 4 . * s p l B 5 2 ( - 2 , n , x x , x ) - 3 3 . / 8 . * s p l B 5 2 ( - 1 , n , x x , x ) + s p l B 5 2 ( 0 , n , x x , x ) 
 
 	 	 e l s e   i f ( i = = 1 )   t h e n   
 
 	 p h i = s p l B 5 2 ( - 1 , n , x x , x ) - 2 6 . / 3 3 . * s p l B 5 2 ( 0 , n , x x , x ) + s p l B 5 2 ( 1 , n , x x , x ) 
 
 	 	 	 e l s e   i f ( i = = 2 )   t h e n 
 
 	 p h i = s p l B 5 2 ( - 2 , n , x x , x ) - 1 . / 3 3 . * s p l B 5 2 ( 0 , n , x x , x ) + s p l B 5 2 ( 2 , n , x x , x ) 
 
 	 	 	 	 e l s e   i f ( i = = n - 2 )   t h e n 
 
 	 p h i = s p l B 5 2 ( n + 2 , n , x x , x ) - 1 . / 3 3 . * s p l B 5 2 ( n , n , x x , x ) + s p l B 5 2 ( n - 2 , n , x x , x ) 
 
 	 	 	 	 	 e l s e   i f ( i = = n - 1 )   t h e n 
 
 	 p h i = s p l B 5 2 ( n + 1 , n , x x , x ) - 2 6 . / 3 3 . * s p l B 5 2 ( n , n , x x , x ) + s p l B 5 2 ( n - 1 , n , x x , x ) 
 
 	 	 	 	 	 	 e l s e i f   ( i = = n )   t h e n 	 
 
 	 p h i = 1 6 5 . / 4 . * s p l B 5 2 ( n + 2 , n , x x , x ) - 3 3 . / 8 . * s p l B 5 2 ( n + 1 , n , x x , x ) + s p l B 5 2 ( n , n , x x , x ) 
 
 	 	 	 	 	 	 	 e l s e 
 
 	 	 	 p h i = s p l B 5 2 ( i , n , x x , x ) 
 
 	 	 	 e n d i f 
 
 	 	 e l s e i f   ( j = = 3 ) t h e n 
 
 	 	 	 i f ( i = = 0 ) t h e n   
 
 	 p h i = 1 6 5 . / 4 . * s p l B 5 3 ( - 2 , n , x x , x ) - 3 3 . / 8 . * s p l B 5 3 ( - 1 , n , x x , x ) + s p l B 5 3 ( 0 , n , x x , x ) 
 
 	 	 e l s e   i f ( i = = 1 )   t h e n   
 
 	 p h i = s p l B 5 3 ( - 1 , n , x x , x ) - 2 6 . / 3 3 . * s p l B 5 3 ( 0 , n , x x , x ) + s p l B 5 3 ( 1 , n , x x , x ) 
 
 	 	 	 e l s e   i f ( i = = 2 )   t h e n 
 
 	 p h i = s p l B 5 3 ( - 2 , n , x x , x ) - 1 . / 3 3 . * s p l B 5 3 ( 0 , n , x x , x ) + s p l B 5 3 ( 2 , n , x x , x ) 
 
 	 	 	 	 e l s e   i f ( i = = n - 2 )   t h e n 
 
 	 p h i = s p l B 5 3 ( n + 2 , n , x x , x ) - 1 . / 3 3 . * s p l B 5 3 ( n , n , x x , x ) + s p l B 5 3 ( n - 2 , n , x x , x ) 
 
 	 	 	 	 	 e l s e   i f ( i = = n - 1 )   t h e n 
 
 	 p h i = s p l B 5 3 ( n + 1 , n , x x , x ) - 2 6 . / 3 3 . * s p l B 5 3 ( n , n , x x , x ) + s p l B 5 3 ( n - 1 , n , x x , x ) 
 
 	 	 	 	 	 	 e l s e i f   ( i = = n )   t h e n 	 
 
 	 p h i = 1 6 5 . / 4 . * s p l B 5 3 ( n + 2 , n , x x , x ) - 3 3 . / 8 . * s p l B 5 3 ( n + 1 , n , x x , x ) + s p l B 5 3 ( n , n , x x , x ) 
 
 	 	 	 	 	 	 	 e l s e 
 
 	 	 	 p h i = s p l B 5 3 ( i , n , x x , x ) 
 
 	 	 e n d i f 
 
 	 	 e l s e i f   ( j = = 4 ) t h e n 
 
 	 	 	 i f ( i = = 0 ) t h e n   
 
 	 p h i = 1 6 5 . / 4 . * s p l B 5 4 ( - 2 , n , x x , x ) - 3 3 . / 8 . * s p l B 5 4 ( - 1 , n , x x , x ) + s p l B 5 4 ( 0 , n , x x , x ) 
 
 	 	 e l s e   i f ( i = = 1 )   t h e n   
 
 	 p h i = s p l B 5 4 ( - 1 , n , x x , x ) - 2 6 . / 3 3 . * s p l B 5 4 ( 0 , n , x x , x ) + s p l B 5 4 ( 1 , n , x x , x ) 
 
 	 	 	 e l s e   i f ( i = = 2 )   t h e n 
 
 	 p h i = s p l B 5 4 ( - 2 , n , x x , x ) - 1 . / 3 3 . * s p l B 5 4 ( 0 , n , x x , x ) + s p l B 5 4 ( 2 , n , x x , x ) 
 
 	 	 	 	 e l s e   i f ( i = = n - 2 )   t h e n 
 
 	 p h i = s p l B 5 4 ( n + 2 , n , x x , x ) - 1 . / 3 3 . * s p l B 5 4 ( n , n , x x , x ) + s p l B 5 4 ( n - 2 , n , x x , x ) 
 
 	 	 	 	 	 e l s e   i f ( i = = n - 1 )   t h e n 
 
 	 p h i = s p l B 5 4 ( n + 1 , n , x x , x ) - 2 6 . / 3 3 . * s p l B 5 4 ( n , n , x x , x ) + s p l B 5 4 ( n - 1 , n , x x , x ) 
 
 	 	 	 	 	 	 e l s e i f   ( i = = n )   t h e n 	 
 
 	 p h i = 1 6 5 . / 4 . * s p l B 5 4 ( n + 2 , n , x x , x ) - 3 3 . / 8 . * s p l B 5 4 ( n + 1 , n , x x , x ) + s p l B 5 4 ( n , n , x x , x ) 
 
 	 	 	 	 	 	 	 e l s e 
 
 	 	 	 p h i = s p l B 5 4 ( i , n , x x , x ) 
 
 	 	 e n d i f 
 
 	 	 e l s e   
 
 	 	 s t o p 
 
 	 e n d i f 
 
 	 r e t u r n 
 
 	 e n d 
 
 ! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -   
 
 ! - - - - - - - - o n - h i n g e s   b o r d e r s - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 
 
 	 r e a l ( 8 ) 	 f u n c t i o n   p h i 2 ( j , i , n , x x , x ) 
 
 	 	 r e a l ( 8 )   x , x x ( - 5 : n + 5 ) 
 
 	 	 i n t e g e r   j , i , n , k 
 
 	 i f   ( j = = 0 )   t h e n 	 
 
 	 	 i f ( i = = 0 ) t h e n   
 
 	 p h i 2 = 1 6 5 . / 4 . * s p l B 5 ( - 2 , n , x x , x ) - 3 3 . / 8 . * s p l B 5 ( - 1 , n , x x , x ) + s p l B 5 ( 0 , n , x x , x ) 
 
 	 	 e l s e   i f ( i = = 1 )   t h e n   
 
 	 p h i 2 = s p l B 5 ( - 1 , n , x x , x ) - 2 6 . / 3 3 . * s p l B 5 ( 0 , n , x x , x ) + s p l B 5 ( 1 , n , x x , x ) 
 
 	 	 	 e l s e   i f ( i = = 2 )   t h e n 
 
 	 p h i 2 = s p l B 5 ( - 2 , n , x x , x ) - 1 . / 3 3 . * s p l B 5 ( 0 , n , x x , x ) + s p l B 5 ( 2 , n , x x , x ) 
 
 	 	 	 	 e l s e   i f ( i = = n - 2 )   t h e n 
 
 	 p h i 2 = - 1 . * s p l B 5 ( n + 2 , n , x x , x ) + s p l B 5 ( n - 2 , n , x x , x ) 
 
 	 	 	 	 	 e l s e   i f ( i = = n - 1 )   t h e n 
 
 	 p h i 2 = - 1 . * s p l B 5 ( n + 1 , n , x x , x ) + s p l B 5 ( n - 1 , n , x x , x ) 
 
 	 	 	 	 	 	 e l s e i f   ( i = = n )   t h e n 	 
 
 	 p h i 2 = 1 2 . * s p l B 5 ( n + 2 , n , x x , x ) - 3 . * s p l B 5 ( n + 1 , n , x x , x ) + s p l B 5 ( n , n , x x , x ) 
 
 	 	 	 	 	 	 	 e l s e 
 
 	 	 	 p h i 2 = s p l B 5 ( i , n , x x , x ) 
 
 	 	 e n d i f 
 
 	 e l s e i f     ( j = = 1 ) t h e n 
 
 	 
 
 	 	 i f ( i = = 0 ) t h e n   
 
 	 p h i 2 = 1 6 5 . / 4 . * s p l B 5 1 ( - 2 , n , x x , x ) - 3 3 . / 8 . * s p l B 5 1 ( - 1 , n , x x , x ) + s p l B 5 1 ( 0 , n , x x , x ) 
 
 	 	 e l s e   i f ( i = = 1 )   t h e n   
 
 	 p h i 2 = s p l B 5 1 ( - 1 , n , x x , x ) - 2 6 . / 3 3 . * s p l B 5 1 ( 0 , n , x x , x ) + s p l B 5 1 ( 1 , n , x x , x ) 
 
 	 	 	 e l s e   i f ( i = = 2 )   t h e n 
 
 	 p h i 2 = s p l B 5 1 ( - 2 , n , x x , x ) - 1 . / 3 3 . * s p l B 5 1 ( 0 , n , x x , x ) + s p l B 5 1 ( 2 , n , x x , x ) 
 
 	 	 	 	 e l s e   i f ( i = = n - 2 )   t h e n 
 
 	 p h i 2 = - 1 . * s p l B 5 1 ( n + 2 , n , x x , x ) + s p l B 5 1 ( n - 2 , n , x x , x ) 
 
 	 	 	 	 	 e l s e   i f ( i = = n - 1 )   t h e n 
 
 	 p h i 2 = - 1 . * s p l B 5 1 ( n + 1 , n , x x , x ) + s p l B 5 1 ( n - 1 , n , x x , x ) 
 
 	 	 	 	 	 	 e l s e i f   ( i = = n )   t h e n 	 
 
 	 p h i 2 = 1 2 . * s p l B 5 1 ( n + 2 , n , x x , x ) - 3 . * s p l B 5 1 ( n + 1 , n , x x , x ) + s p l B 5 1 ( n , n , x x , x ) 
 
 	 	 	 	 	 	 	 e l s e 
 
 	 	 	 p h i 2 = s p l B 5 1 ( i , n , x x , x ) 
 
 	 	 e n d i f 
 
 	 e l s e i f   ( j = = 2 ) t h e n 
 
 	 
 
 	 	 i f ( i = = 0 ) t h e n   
 
 	 p h i 2 = 1 6 5 . / 4 . * s p l B 5 2 ( - 2 , n , x x , x ) - 3 3 . / 8 . * s p l B 5 2 ( - 1 , n , x x , x ) + s p l B 5 2 ( 0 , n , x x , x ) 
 
 	 	 e l s e   i f ( i = = 1 )   t h e n   
 
 	 p h i 2 = s p l B 5 2 ( - 1 , n , x x , x ) - 2 6 . / 3 3 . * s p l B 5 2 ( 0 , n , x x , x ) + s p l B 5 2 ( 1 , n , x x , x ) 
 
 	 	 	 e l s e   i f ( i = = 2 )   t h e n 
 
 	 p h i 2 = s p l B 5 2 ( - 2 , n , x x , x ) - 1 . / 3 3 . * s p l B 5 2 ( 0 , n , x x , x ) + s p l B 5 2 ( 2 , n , x x , x ) 
 
 	 	 	 	 e l s e   i f ( i = = n - 2 )   t h e n 
 
 	 p h i 2 = - 1 . * s p l B 5 2 ( n + 2 , n , x x , x ) + s p l B 5 2 ( n - 2 , n , x x , x ) 
 
 	 	 	 	 	 e l s e   i f ( i = = n - 1 )   t h e n 
 
 	 p h i 2 = - 1 . * s p l B 5 2 ( n + 1 , n , x x , x ) + s p l B 5 2 ( n - 1 , n , x x , x ) 
 
 	 	 	 	 	 	 e l s e i f   ( i = = n )   t h e n 	 
 
 	 p h i 2 = 1 2 . * s p l B 5 2 ( n + 2 , n , x x , x ) - 3 . * s p l B 5 2 ( n + 1 , n , x x , x ) + s p l B 5 2 ( n , n , x x , x ) 
 
 	 	 	 	 	 	 	 e l s e 
 
 	 	 	 p h i 2 = s p l B 5 2 ( i , n , x x , x ) 
 
 	 	 	 e n d i f 
 
 	 	 e l s e i f   ( j = = 3 ) t h e n 
 
 	 	 	 i f ( i = = 0 ) t h e n   
 
 	 p h i 2 = 1 6 5 . / 4 . * s p l B 5 3 ( - 2 , n , x x , x ) - 3 3 . / 8 . * s p l B 5 3 ( - 1 , n , x x , x ) + s p l B 5 3 ( 0 , n , x x , x ) 
 
 	 	 e l s e   i f ( i = = 1 )   t h e n   
 
 	 p h i 2 = s p l B 5 3 ( - 1 , n , x x , x ) - 2 6 . / 3 3 . * s p l B 5 3 ( 0 , n , x x , x ) + s p l B 5 3 ( 1 , n , x x , x ) 
 
 	 	 	 e l s e   i f ( i = = 2 )   t h e n 
 
 	 p h i 2 = s p l B 5 3 ( - 2 , n , x x , x ) - 1 . / 3 3 . * s p l B 5 3 ( 0 , n , x x , x ) + s p l B 5 3 ( 2 , n , x x , x ) 
 
 	 	 	 	 e l s e   i f ( i = = n - 2 )   t h e n 
 
 	 p h i 2 = - 1 . * s p l B 5 3 ( n + 2 , n , x x , x ) + s p l B 5 3 ( n - 2 , n , x x , x ) 
 
 	 	 	 	 	 e l s e   i f ( i = = n - 1 )   t h e n 
 
 	 p h i 2 = - 1 . * s p l B 5 3 ( n + 1 , n , x x , x ) + s p l B 5 3 ( n - 1 , n , x x , x ) 
 
 	 	 	 	 	 	 e l s e i f   ( i = = n )   t h e n 	 
 
 	 p h i 2 = 1 2 . * s p l B 5 3 ( n + 2 , n , x x , x ) - 3 . * s p l B 5 3 ( n + 1 , n , x x , x ) + s p l B 5 3 ( n , n , x x , x ) 
 
 	 	 	 	 	 	 	 e l s e 
 
 	 	 	 p h i 2 = s p l B 5 3 ( i , n , x x , x ) 
 
 	 	 e n d i f 
 
 	 	 e l s e i f   ( j = = 4 ) t h e n 
 
 	 	 	 i f ( i = = 0 ) t h e n   
 
 	 p h i 2 = 1 6 5 . / 4 . * s p l B 5 4 ( - 2 , n , x x , x ) - 3 3 . / 8 . * s p l B 5 4 ( - 1 , n , x x , x ) + s p l B 5 4 ( 0 , n , x x , x ) 
 
 	 	 e l s e   i f ( i = = 1 )   t h e n   
 
 	 p h i 2 = s p l B 5 4 ( - 1 , n , x x , x ) - 2 6 . / 3 3 . * s p l B 5 4 ( 0 , n , x x , x ) + s p l B 5 4 ( 1 , n , x x , x ) 
 
 	 	 	 e l s e   i f ( i = = 2 )   t h e n 
 
 	 p h i 2 = s p l B 5 4 ( - 2 , n , x x , x ) - 1 . / 3 3 . * s p l B 5 4 ( 0 , n , x x , x ) + s p l B 5 4 ( 2 , n , x x , x ) 
 
 	 	 	 	 e l s e   i f ( i = = n - 2 )   t h e n 
 
 	 p h i 2 = - 1 . * s p l B 5 4 ( n + 2 , n , x x , x ) + s p l B 5 4 ( n - 2 , n , x x , x ) 
 
 	 	 	 	 	 e l s e   i f ( i = = n - 1 )   t h e n 
 
 	 p h i 2 = - 1 . * s p l B 5 4 ( n + 1 , n , x x , x ) + s p l B 5 4 ( n - 1 , n , x x , x ) 
 
 	 	 	 	 	 	 e l s e i f   ( i = = n )   t h e n 	 
 
 	 p h i 2 = 1 2 . * s p l B 5 4 ( n + 2 , n , x x , x ) - 3 . * s p l B 5 4 ( n + 1 , n , x x , x ) + s p l B 5 4 ( n , n , x x , x ) 
 
 	 	 	 	 	 	 	 e l s e 
 
 	 	 	 p h i 2 = s p l B 5 4 ( i , n , x x , x ) 
 
 	 	 e n d i f 
 
 	 	 e l s e   
 
 	 	 s t o p 
 
 	 e n d i f 
 
 	 r e t u r n 
 
 	 e n d 
 
 