Ignore:
Timestamp:
Aug 29, 2017 12:55:04 PM (5 years ago)
Author:
srkline
Message:

many changes to the VCALC code and a few changes to the main code to get the units consistent, and centimeters everywhere possible. The real space distance array and the non-linear calibrations are still defined and calculated in mm. This can hopefully be changed in the future. Some constants in the data file will need to be updated to cm, such as the T/B setback, which has been confirmed to be 41.0 cm

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sans/Dev/trunk/NCNR_User_Procedures/Reduction/VSANS/V_DetectorCorrections.ipf

    r1061 r1062  
    155155 
    156156// kPanelTouchingGap is in mm    
    157         gap = kPanelTouchingGap/10              //cm 
     157        gap = kPanelTouchingGap 
    158158         
    159159        if(cmpstr(orientation,"vertical")==0) 
     
    165165                if(cmpstr(fname,"VCALC")== 0 ) 
    166166                        offset = VCALC_getPanelSeparation(detStr) 
    167                         offset /= 2                     // units of mm 
     167                        offset *= 10                    // convert to units of mm 
     168                        offset /= 2                     // 1/2 the total separation 
     169                        if(cmpstr("L",detStr[1]) == 0) 
     170                                offset *= -1            //negative value for L 
     171                        endif 
    168172                else 
    169173                        //normal case 
    170                 offset = V_getDet_LateralOffset(fname,detStr) 
    171                 offset *= 10 //convert cm to mm 
     174                        offset = V_getDet_LateralOffset(fname,detStr) 
     175                        offset *= 10 //convert cm to mm 
    172176                endif 
    173177                 
    174178        // calculation is in mm, not cm 
     179        // offset will be a negative value for the L panel, and positive for the R panel 
    175180                if(kBCTR_CM) 
    176181                        if(cmpstr("L",detStr[1]) == 0) 
    177                                 data_realDistX[][] = -offset - (dimX - p)*tube_width                    // TODO should this be dimX-1-p = 47-p? 
     182                                data_realDistX[][] = offset - (dimX - p)*tube_width                     // TODO should this be dimX-1-p = 47-p? 
     183//                              data_realDistX[][] = -offset - (dimX - p)*tube_width                    // TODO should this be dimX-1-p = 47-p? 
    178184                        else 
    179185                                data_realDistX[][] += offset + gap + tube_width                 //add to the Right det, not recalculate 
     
    189195                if(cmpstr(fname,"VCALC")== 0 ) 
    190196                        offset = VCALC_getPanelSeparation(detStr) 
    191                         offset /= 2                     // units of mm 
     197                        offset *= 10                    // convert to units of mm 
     198                        offset /= 2                     // 1/2 the total separation 
     199                        if(cmpstr("B",detStr[1]) == 0) 
     200                                offset *= -1    // negative value for Bottom det 
     201                        endif 
    192202                else 
    193203                        //normal case 
     
    200210                                data_realDistY[][] += offset + gap + tube_width                  
    201211                        else 
    202                                 data_realDistY[][] = -offset - (dimY - q)*tube_width    // TODO should this be dimY-1-q = 47-q? 
     212                                data_realDistY[][] = offset - (dimY - q)*tube_width     // TODO should this be dimY-1-q = 47-q? 
    203213                        endif 
    204214                endif 
Note: See TracChangeset for help on using the changeset viewer.