Ignore:
Timestamp:
Jun 5, 2015 1:26:01 PM (7 years ago)
Author:
srkline
Message:

more changes to the procedures and panel to allow fitting of each panel to determine the beam center.

File:
1 edited

Legend:

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

    r957 r958  
    55// -- adjust the guesses to some better starting conditions 
    66// -- multiple fit options with different things held 
    7 // -- when selecting the detector, set the x/y pixel sizes 
    8 // -- figure out how to re-plot the images when swapping between LR and TB panels 
     7// x- when selecting the detector, set the x/y pixel sizes 
     8// x- figure out how to re-plot the images when swapping between LR and TB panels 
    99// 
    1010 
     
    1616Window DetectorPanelFit() : Panel 
    1717        PauseUpdate; Silent 1           // building window... 
    18         NewPanel /W=(662,418,1586,1108)/N=PanelFit 
    19         ShowTools/A 
    2018 
    2119// plot the default model to be sure some data is present 
     
    2321                PlotBroadPeak_Pix2D() 
    2422        endif 
    25          
     23 
     24        NewPanel /W=(662,418,1586,1108)/N=PanelFit/K=1 
     25//      ShowTools/A 
     26                 
    2627        PopupMenu popup_0,pos={20,20},size={109,20},proc=SetDetPanelPopMenuProc,title="Detector Panel" 
    2728        PopupMenu popup_0,mode=1,popvalue="FL",value= #"\"FL;FR;FT;FB;MR;ML;MT;MB;B;\"" 
     
    4243        AppendImage curDispPanel 
    4344        ModifyImage curDispPanel ctab= {*,*,ColdWarm,0} 
    44         ModifyGraph width={Plan,1,bottom,left} 
     45//      ModifyGraph width={Plan,1,bottom,left} 
    4546        Label left "Y pixels" 
    4647        Label bottom "X pixels"  
     
    5253        AppendImage PeakPix2D_mat 
    5354        ModifyImage PeakPix2D_mat ctab= {*,*,ColdWarm,0} 
    54         ModifyGraph width={Plan,1,bottom,left} 
     55//      ModifyGraph width={Plan,1,bottom,left} 
    5556        Label left "Y pixels" 
    5657        Label bottom "X pixels"  
     
    104105        //     need to make it more generic, especially for RAW data 
    105106 
     107        Variable xDim,yDim 
    106108        Wave dispW=root:curDispPanel 
    107          
     109        Wave cw = root:coef_PeakPix2D 
     110 
     111        cw[7] = 4 
     112        cw[8] = 8 
     113         
     114        Wave xwave_PeakPix2D=root:xwave_PeakPix2D 
     115        Wave ywave_PeakPix2D=root:ywave_PeakPix2D 
     116        Wave zwave_PeakPix2D=root:zwave_PeakPix2D 
     117 
     118        //plot it in the subwindow with the proper aspect and positioning        
    108119        strswitch(str) 
    109120                case "FL": 
     121                        xDim=48 
     122                        yDim=256 
     123                        MoveSubWindow/W=PanelFit#DetData fnum=(20,80,180,600) 
     124                        MoveSubWindow/W=PanelFit#ModelData fnum=(200,80,360,600)                         
     125                        cw[7] = 8 
     126                        cw[8] = 4 
    110127                        wave newW = root:Packages:NIST:VSANS:VCALC:Front:det_FL 
    111128                        break 
    112129                case "FR": 
     130                        xDim=48 
     131                        yDim=256 
     132                        MoveSubWindow/W=PanelFit#DetData fnum=(20,80,180,600) 
     133                        MoveSubWindow/W=PanelFit#ModelData fnum=(200,80,360,600)         
     134                        cw[7] = 8 
     135                        cw[8] = 4                                                
    113136                        wave newW = root:Packages:NIST:VSANS:VCALC:Front:det_FR 
    114137                        break 
    115138                case "FT": 
     139                        xDim=128 
     140                        yDim=48 
     141                        MoveSubWindow/W=PanelFit#DetData fnum=(20,80,464,235) 
     142                        MoveSubWindow/W=PanelFit#ModelData fnum=(20,280,464,435) 
     143                        cw[7] = 4 
     144                        cw[8] = 8                        
    116145                        wave newW = root:Packages:NIST:VSANS:VCALC:Front:det_FT 
    117146                        break 
    118147                case "FB": 
     148                        xDim=128 
     149                        yDim=48 
     150                        MoveSubWindow/W=PanelFit#DetData fnum=(20,80,464,235) 
     151                        MoveSubWindow/W=PanelFit#ModelData fnum=(20,280,464,435) 
     152                        cw[7] = 4 
     153                        cw[8] = 8                        
    119154                        wave newW = root:Packages:NIST:VSANS:VCALC:Front:det_FB 
    120155                        break 
    121156                case "ML": 
     157                        xDim=48 
     158                        yDim=256 
     159                        MoveSubWindow/W=PanelFit#DetData fnum=(20,80,180,600) 
     160                        MoveSubWindow/W=PanelFit#ModelData fnum=(200,80,360,600)         
     161                        cw[7] = 8 
     162                        cw[8] = 4                                                
    122163                        wave newW = root:Packages:NIST:VSANS:VCALC:Middle:det_ML 
    123164                        break 
    124165                case "MR": 
     166                        xDim=48 
     167                        yDim=256 
     168                        MoveSubWindow/W=PanelFit#DetData fnum=(20,80,180,600) 
     169                        MoveSubWindow/W=PanelFit#ModelData fnum=(200,80,360,600)         
     170                        cw[7] = 8 
     171                        cw[8] = 4                                                
    125172                        wave newW = root:Packages:NIST:VSANS:VCALC:Middle:det_MR 
    126173                        break 
    127174                case "MT": 
     175                        xDim=128 
     176                        yDim=48 
     177                        MoveSubWindow/W=PanelFit#DetData fnum=(20,80,464,235) 
     178                        MoveSubWindow/W=PanelFit#ModelData fnum=(20,280,464,435) 
     179                        cw[7] = 4 
     180                        cw[8] = 8                        
    128181                        wave newW = root:Packages:NIST:VSANS:VCALC:Middle:det_MT 
    129182                        break 
    130183                case "MB": 
     184                        xDim=128 
     185                        yDim=48 
     186                        MoveSubWindow/W=PanelFit#DetData fnum=(20,80,464,235) 
     187                        MoveSubWindow/W=PanelFit#ModelData fnum=(20,280,464,435) 
     188                        cw[7] = 4 
     189                        cw[8] = 8                        
    131190                        wave newW = root:Packages:NIST:VSANS:VCALC:Middle:det_MB 
    132191                        break 
    133192                case "B": 
     193                 
    134194                        return(0)               //just exit 
    135195                        break                                            
     
    137197                        return(0)               //just exit 
    138198        endswitch 
    139          
     199 
     200// set the simulated detector data to be point-scaling for display and fitting, not q-scaling    
    140201        duplicate/O newW dispW 
    141202        SetScale/P x 0,1, dispW 
    142203        SetScale/P y 0,1, dispW  
    143204                 
    144         // then plot it in the subwindow with the proper aspect and positioning 
    145          
    146          
     205 
     206        // re-dimension the model calculation to be the proper dimensions        
     207        Redimension/N=(xDim*yDim) xwave_PeakPix2D, ywave_PeakPix2D,zwave_PeakPix2D       
     208        FillPixTriplet(xwave_PeakPix2D, ywave_PeakPix2D,zwave_PeakPix2D,xDim,yDim)       
     209        Make/O/D/N=(xDim,yDim) PeakPix2D_mat            // use the point scaling of the matrix (=pixels) 
     210        Duplicate/O $"PeakPix2D_mat",$"PeakPix2D_lin"           //keep a linear-scaled version of the data 
    147211         
    148212        return(0) 
Note: See TracChangeset for help on using the changeset viewer.