FPFYUV COMMENTS
*-- Author :  R. Henderson
      SUBROUTINE FPFYUV(ID1,ID2,ID3,ISM,PCHI,CHISQ,NDF,SOL,EXYSXY)
**: FPFYUV.......SM. Bug fix. Protect against small Chisq for PROB.                                           
**----------------------------------------------------------------------                                      
**: FPFYUV 30205 SM. Add diagnostic histogram                                                                 
**----------------------------------------------------------------------                                      
*                                                                                                             
C                                                                                                             
C                                                                                                             
C------------------------------------------------------------------                                           
C                                                                                                             
C---  THIS ROUTINE PERFORMS A LEAST SQUARES FIT TO A STRAIGHT                                                 
C---  LINE FOR POINTS AT POSITIONS Z(I) MEASURED IN THE Y U V COORDINATE                                      
C---  FRAMES WHERE U COORDINATES ARE AT ANGLE THETA(2) AND V ARE AT                                           
C---  ANGLE THETA(3) TO Y. THETA IS ASSUMED TO BE MEASURED IN THE                                             
C---  CLOCKWISE DIRECTION.                                                                                    
C                                                                                                             
C---  INPUT  :                                                                                                
C                                                                                                             
C---  Y - POINTS FOR FITTING;  4 FROM Y COORDS, 4 FROM U, 4 FROM V.                                           
C---  RESOL - RESOLUTION ON EACH DIGITIZING (IN PRINCIPLE PER WIRE)                                           
C---  ZPLAN(36) - Z COORDINATE OF EACH PLANAR WIRE SET                                                        
C                                                                                                             
C---  OUTPUT  :                                                                                               
C                                                                                                             
C---  PCHI PROBABILITY FROM CHISQUARE                                                                         
C---  SOL(4) X0 Y0 DX/DZ DY/DZ                                                                                
C---  EXYSXY(4,4) COVARIANCE MATRIX TO SOL                                                                    
C                                                                                                             
C------------------------------------------------------------------                                           
C---                                                                                                          
*KEEP,FPPRAM.                                                                                                 
C                                                                                                             
C---  MAXSEG is maximum number of segments per supermodule                                                    
C---  MAXCON is maximum number of amibiguous segments associatable with                                       
C---         one segment                                                                                      
C---  LIMSTO is maximum number of 2 cluster planes intersections to be                                        
C---         stored per supermodule                                                                           
C---  MSEGLM is maximum number of clusters that can be found before                                           
C---         connectivity considered                                                                          
C---  MAXCLU is maximum number of clusters that can be found after                                            
C---         forming non-connected set    MUST BE 50 IF RUN WITH OLD RCW                                      
C---         (cluster = 3/4 digits found in a straight line in one                                            
C---          4-wire orientation)                                                                             
C                                                                                                             
C---                                                                                                          
*KEND.                                                                                                        
C---                                                                                                          
*KEEP,FPLSEG.                                                                                                 
C---                                                                                                          
C---                                                                                                          
*KEND.                                                                                                        
C---                                                                                                          
*KEEP,FPLGEO.                                                                                                 
C---                                                                                                          
C---                                                                                                          
*KEND.                                                                                                        
C---                                                                                                          
*KEEP,FPCLUS.                                                                                                 
C---                                                                                                          
*KEND.                                                                                                        
C---                                                                                                          
*KEEP,FPH1WRK.                                                                                                
C--    *KEEP,FPCSEG.                                                                                          
C---                                                                                                          
C---                                                                                                          
C--    *KEEP,FPDIGI.                                                                                          
C---                                                                                                          
C--    *KEEP,FPDGI.                                                                                           
C---                                                                                                          
C--    *KEEP,FPSTID.                                                                                          
C---                                                                                                          
C--    *interface to real data                                                                                
C---.                                                                                                         
*KEND.                                                                                                        
C---                                                                                                          
C---                                                                                                          
C---                                                                                                          
C      DATA THETA/ 0.0 , - 1.0471976 , 1.0471976/                                                             
C---                                                                                                          
C                                                                                                             
C---   INITIALIZATION PER SUPERMODULE                                                                         
C                                                                                                             
C                                                                                                             
C---  SET FOUND PLANAR SEGMENT COUNTER TO ZERO FOR FIRST SUPERMODULE                                          
C                                                                                                             
C                                                                                                             
C---  ROTATE THETA SO THETA(1) = 0.0                                                                          
C                                                                                                             
C                                                                                                             
C---  HBOOK MONITOR PLOT                                                                                      
C                                                                                                             
C      CALL HBOOK1(10008,'PROB$',50,0.0,1.0,0.0)                                                              
C                                                                                                             
C---  SETUP GEOMETRICAL CONSTANTS                                                                             
C                                                                                                             
C                                                                                                             
C---  SETUP Z ARRAY APPROPRIATE TO CURRENT SM                                                                 
C                                                                                                             
C                                                                                                             
C---  CENTRE OF PLANES                                                                                        
C                                                                                                             
C                                                                                                             
C---  FIND Y U V FOR THE CURRENT SEGMENT                                                                      
C                                                                                                             
C---  FIND OFSETS SUCH THAT Y ARRAY IS ON ORDER YUV                                                           
C                                                                                                             
C---                                                                                                          
C---                                                                                                          
C---                                                                                                          
C                                                                                                             
C---  Unpack segment Y values identifiers                                                                     
C                                                                                                             
C                                                                                                             
C---  SET WEIGHT MATRIX                                                                                       
C                                                                                                             
C                                                                                                             
C---  COUNT NUMBER OF DIGITIZINGS CONTRIBUTING                                                                
C                                                                                                             
C                                                                                                             
C---  ZERO SUMS                                                                                               
C                                                                                                             
C                                                                                                             
C---  LOOP OVER Z POSITIONS TO FORM SUMS                                                                      
C                                                                                                             
C---                                                                                                          
C---                                                                                                          
C                                                                                                             
C---  SCALE TERMS 2,3 BY COS2T                                                                                
C                                                                                                             
C                                                                                                             
C---  NOW FORM MTRIXA                                                                                         
C                                                                                                             
C---                                                                                                          
C---                                                                                                          
C---                                                                                                          
C                                                                                                             
C---  NOW CALCULATE ERROR MATRIX FOR XY,SLOPE XY                                                              
C                                                                                                             
C---                                                                                                          
      CALL DINV(4,EXYSXY,4,WORK,IFAIL)                                                                 
C---                                                                                                          
C                                                                                                             
C---  CALCULATE VECTOR B                                                                                      
C                                                                                                             
C                                                                                                             
C---  NOW SOLVE FOR X,Y,SX,SY                                                                                 
C                                                                                                             
C                                                                                                             
C---  PUT ZERO BACK TO Z=0                                                                                    
C                                                                                                             
C--                                                                                                           
      CALL FPPPTZ(EXYSXY,-ZMEAN)
C                                                                                                             
C---   NOW CALCULATE RESULTANT Y U V                                                                          
C                                                                                                             
C                                                                                                             
C---  CALCULATE CHISQUARE                                                                                     
C                                                                                                             
C                                                                                                             
C---                                                                                                          
C                                                                                                             
*     Fix for v. small Chisq...                                                                               
C                                                                                                             
C---  PLSEG ARRAY FILLED HERE                                                                                 
C                                                                                                             
            CALL ERRLOG(213,'W:FPFYUV: Max segments exceeded')                                         
C                                                                                                             
C---  INCREMENT FOUND SEGMENT COUNTER                                                                         
C                                                                                                             
*     IF(PCHI .GT. 0.0001)THEN                                                                                
C                                                                                                             
C---  Store away digitization pointers for found segment                                                      
C                                                                                                             
C                                                                                                             
C---                                                                                                          
C                                                                                                             
C---  PREPARE OUTPUT BANKS                                                                                    
C                                                                                                             
C                                                                                                             
C---  ROTATE BACK FROM THETA(1) = 0.0 TO X Y FRAME                                                            
C                                                                                                             
C                                                                                                             
C---  Store segments information for FPSGRF                                                                   
C                                                                                                             
C---                                                                                                          
*