- Timestamp:
- May 9, 2017 1:56:29 PM (6 years ago)
- Location:
- sans/Dev/trunk/NCNR_User_Procedures/Reduction/VSANS
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
sans/Dev/trunk/NCNR_User_Procedures/Reduction/VSANS/VC_DetectorBinning_Q.ipf
r1036 r1038 1342 1342 end 1343 1343 1344 1345 1344 1346 // for a given data folder, all detector binning types 1345 1347 // ("B", "FLTB", "MTB" etc) will be checked to see if the data is on the graph -
sans/Dev/trunk/NCNR_User_Procedures/Reduction/VSANS/V_Combine_1D.ipf
r1035 r1038 14 14 // of the data reduction protocol - and anything in work folders will be lost 15 15 // 16 17 18 //ksWorkFolderList 19 20 // String str,winStr="V_1D_Data" 21 // sprintf str,"(\"%s\",%d,\"%s\")",type,popNum,winStr 22 // 23 // Execute ("V_Back_IQ_Graph"+str) 24 // Execute ("V_Middle_IQ_Graph"+str) 25 // Execute ("V_Front_IQ_Graph"+str) 26 27 28 // draws the graph, but does not draw anything on it yet 29 // 30 // TODO: 31 // -- make the data folder list for the popup 32 // -- make the data folder popup do the work of plotting (test for failure) 33 // 34 // -- make a button to show the default table, and set up dependencies to link to the graph display 35 // -- have an "active" data set to trim, or make duplicates for all of the data sets 36 // 37 // -- button to convert the points to strings that can be used and written to data files? 38 // 39 // -- table is continually duplicated 40 // -- AutoPosition the windows next to each other 41 // -- (different)(not ugly) color for the control bar so it's distinguishable from the regular data plot 42 // -- "Done" button that kills the root:ToTrim folder (may need to kill the dependency first) 43 // 44 Proc V_CombineDataGraph() 45 46 DoWindow/F V_1D_Combine 47 if(V_flag==0) 48 Variable num,ii 49 String detStr 50 51 Display /W=(277,526,748,938)/N=V_1D_Combine/K=1 52 53 ControlBar 70 54 ModifyGraph cbRGB=(44000,44000,44000) 55 56 PopupMenu popup1,pos={15,5},size={90,20},title="Data Folder" 57 PopupMenu popup1,help={"data folder"} 58 PopupMenu popup1,value= GetAList(4),proc=V_DataFolderPlotPop 59 60 PopupMenu popup0,pos={200,5},size={70,20},title="Bin Type" 61 PopupMenu popup0,help={"binning type"} 62 PopupMenu popup0,value= ksBinTypeStr 63 // PopupMenu popup0,mode=1,proc=V_BinningModePopup 64 65 CheckBox check0,pos={18.00,36.00},size={57.00,16.00},proc=V_Plot1D_LogCheckProc,title="Log Axes" 66 CheckBox check0,value= 1 67 68 Button AllQ,pos={320,28},size={70,20},proc=V_AllQ_Plot_1D_ButtonProc,title="All Q" 69 Button AllQ,help={"Show the full q-range of the dataset"} 70 71 Legend/C/N=text0/J/X=72.00/Y=60.00 72 73 //trust that the table is present? No, but don't overwrite the data in the waves 74 // unless any one of the three doesn't exist 75 if(exists("PanelNameW") == 0 || exists("Beg_pts") == 0 || exists("End_pts") == 0) 76 Make/O/T/N=(ItemsInList(ksPanelBinTypeList)) PanelNameW 77 Make/O/D/N=(ItemsInList(ksPanelBinTypeList)) Beg_pts 78 Make/O/D/N=(ItemsInList(ksPanelBinTypeList)) End_pts 79 80 num = ItemsInList(ksPanelBinTypeList) 81 ii=0 82 do 83 detStr = StringFromList(ii, ksPanelBinTypeList) 84 Beg_pts[ii] = NumberByKey(detStr, ksBinTrimBegDefault,"=",";") 85 End_pts[ii] = NumberByKey(detStr, ksBinTrimEndDefault,"=",";") 86 PanelNameW[ii] = detStr 87 ii += 1 88 while(ii<num) 89 90 endif 91 92 Edit/K=0 root:PanelNameW,root:Beg_pts,root:End_pts 93 94 Make/O/D/N=1 trimUpdate 95 trimUpdate := V_DummyUpdate(Beg_pts, End_pts) 96 97 // PopupMenu ymodel,pos={150,5},size={71,20},title="y-axis" 98 // PopupMenu ymodel,help={"This popup selects how the y-axis will be linearized based on the chosen data"} 99 // PopupMenu ymodel,value= #"\"I;log(I);ln(I);1/I;I^a;Iq^a;I^a q^b;1/sqrt(I);ln(Iq);ln(Iq^2)\"" 100 // PopupMenu ymodel,mode=NumVarOrDefault("root:Packages:NIST:VSANS:Globals:Plot_1d:gYMode", 1 ),proc=V_YMode_PopMenuProc 101 // PopupMenu xmodel,pos={220,5},size={74,20},title="x-axis" 102 // PopupMenu xmodel,help={"This popup selects how the x-axis will be linearized given the chosen data"} 103 // PopupMenu xmodel,value= #"\"q;log(q);q^2;q^c\"" 104 // PopupMenu xmodel,mode=NumVarOrDefault("root:Packages:NIST:VSANS:Globals:Plot_1d:gXMode", 1 ),proc=V_XMode_PopMenuProc 105 //// Button Rescale,pos={281,5},size={70,20},proc=V_Rescale_Plot_1D_ButtonProc,title="Rescale" 106 //// Button Rescale,help={"Rescale the x and y-axes of the data"},disable=1 107 // 108 // SetVariable expa,pos={120,28},size={80,15},title="pow \"a\"" 109 // SetVariable expa,help={"This sets the exponent \"a\" for some y-axis formats. The value is ignored if the model does not use an adjustable exponent"} 110 // SetVariable expa,limits={-2,10,0},value= root:Packages:NIST:VSANS:Globals:Plot_1d:gExpA 111 // SetVariable expb,pos={120,46},size={80,15},title="pow \"b\"" 112 // SetVariable expb,help={"This sets the exponent \"b\" for some x-axis formats. The value is ignored if the model does not use an adjustable exponent"} 113 // SetVariable expb,limits={0,10,0},value= root:Packages:NIST:VSANS:Globals:Plot_1d:gExpB 114 // 115 // SetVariable expc,pos={220,28},size={80,15},title="pow \"c\"" 116 // SetVariable expc,help={"This sets the exponent \"c\" for some x-axis formats. The value is ignored if the model does not use \"c\" as an adjustable exponent"} 117 // SetVariable expc,limits={-10,10,0},value= root:Packages:NIST:VSANS:Globals:Plot_1d:gExpC 118 119 endif 120 121 122 End 123 124 Function V_DummyUpdate(Beg_pts, End_pts) 125 Wave Beg_pts,End_pts 126 127 // trim the data displayed 128 // do this by setting the iBin values to NaN, so it won't display 129 // won't hurt to set twice... 130 131 Wave/T panelStr = root:PanelNameW 132 Wave begW = root:Beg_pts 133 Wave endW = root:End_pts 134 135 SetDataFolder root:ToTrim 136 137 Variable num,ii 138 String str,detStr 139 num=numpnts(panelStr) 140 141 for(ii=0;ii<num;ii+=1) 142 detStr = panelStr[ii] 143 Wave/Z iw = $("iBin_qxqy_"+detStr+"_trim") 144 // Wave/Z iw = $("iBin_qxqy_"+detStr) 145 // Wave/Z ew = $("eBin_qxqy_"+detStr) 146 if(WaveExists(iw)) 147 148 // DeletePoints 0,nBeg, qw,iw,ew 149 iw[0,begW[ii]-1] = NaN 150 151 Variable npt 152 npt = numpnts(iw) 153 // DeletePoints npt-nEnd,nEnd, qw,iw,ew 154 iw[npt-endW[ii],npt-1] = NaN 155 156 endif 157 158 endfor 159 160 SetDataFolder root: 161 162 return(0) 163 End 164 165 166 Function V_DataFolderPlotPop(ctrlName,popNum,popStr) : PopupMenuControl 167 String ctrlName 168 Variable popNum // which item is currently selected (1-based) 169 String popStr // contents of current popup item as string 170 171 172 String str,winStr="V_1D_Combine",dataType 173 Variable binType,num,ii 174 ControlInfo popup0 175 binType = V_BinTypeStr2Num(S_Value) 176 177 //dataType now needs to be the full path to the folder 178 dataType = "root:"+popStr 179 180 sprintf str,"(\"%s\",%d,\"%s\")",dataType,binType,winStr 181 182 Execute ("V_Back_IQ_Graph"+str) 183 Execute ("V_Middle_IQ_Graph"+str) 184 Execute ("V_Front_IQ_Graph"+str) 185 186 ModifyGraph marker=8,opaque=1,msize=3 //make the traces open white circles 187 188 189 NewDataFolder/O root:ToTrim 190 191 //remove all of the "toTrim" data from the graph, if it's there 192 String type 193 194 SetDataFolder root:ToTrim 195 196 for(ii=0;ii<ItemsInList(ksPanelBinTypeList);ii+=1) 197 type = StringFromList(ii, ksPanelBinTypeList, ";") 198 CheckDisplayed/W=$winStr $("iBin_qxqy_"+type+"_trim") 199 if(V_flag==1) 200 RemoveFromGraph/W=$winStr $("iBin_qxqy_"+type+"_trim") 201 endif 202 endfor 203 204 SetDataFolder root: 205 206 // ClearIQIfDisplayed_AllFldr("B_trim",winStr) 207 // ClearIQIfDisplayed_AllFldr("ML_trim",winStr) 208 // ClearIQIfDisplayed_AllFldr("MR_trim",winStr) 209 // ClearIQIfDisplayed_AllFldr("MT_trim",winStr) 210 // ClearIQIfDisplayed_AllFldr("MB_trim",winStr) 211 // ClearIQIfDisplayed_AllFldr("FL_trim",winStr) 212 // ClearIQIfDisplayed_AllFldr("FR_trim",winStr) 213 // ClearIQIfDisplayed_AllFldr("FT_trim",winStr) 214 // ClearIQIfDisplayed_AllFldr("FB_trim",winStr) 215 // ClearIQIfDisplayed_AllFldr("MLR_trim",winStr) 216 // ClearIQIfDisplayed_AllFldr("MTB_trim",winStr) 217 // ClearIQIfDisplayed_AllFldr("FLR_trim",winStr) 218 // ClearIQIfDisplayed_AllFldr("FTB_trim",winStr) 219 // ClearIQIfDisplayed_AllFldr("MLRTB_trim",winStr) 220 // ClearIQIfDisplayed_AllFldr("FLRTB_trim",winStr) 221 222 //then kill the data folder, so it can be duplicated 223 224 // 225 // // rename all of the data in the new folder 226 SetDataFolder $dataType 227 String list = WaveList("*",";","") //must be in the correct data folder 228 SetDataFolder root: 229 // Print list 230 num = ItemsInList(list) 231 for(ii=0;ii<num;ii+=1) 232 str = StringFromList(ii,list) 233 Duplicate/O $(dataType+":"+str), $("root:ToTrim:"+str+"_trim") 234 endfor 235 // plot the linked data 236 sprintf str,"(\"%s\",%d,\"%s\")","root:ToTrim",binType,winStr 237 238 Execute ("V_Back_IQ_Graph_trim"+str) 239 Execute ("V_Middle_IQ_Graph_trim"+str) 240 Execute ("V_Front_IQ_Graph_trim"+str) 241 // and link the data to the table with a dependency 242 // 243 244 245 return(0) 246 End 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 //////////////// Below is unused -- it was started, but seems like the wrong approach, 280 //////////////// so I have abandoned it for now 281 282 16 283 17 284 //////////////// -
sans/Dev/trunk/NCNR_User_Procedures/Reduction/VSANS/V_DataPlotting.ipf
r1035 r1038 117 117 // TODO: 118 118 // x- "B" detector is currently skipped - Q is not yet calculated 119 String str,winStr="V_1D_Data" 120 sprintf str,"(\"%s\",%d,\"%s\")",workType,binType,winStr 119 String str,winStr="V_1D_Data",workPathStr 120 workPathStr = "root:Packages:NIST:VSANS:"+worktype 121 122 sprintf str,"(\"%s\",%d,\"%s\")",workPathStr,binType,winStr 121 123 122 124 Execute ("V_Back_IQ_Graph"+str) … … 397 399 // just rebin 398 400 // 399 // see V_CombineModePopup() in V_Combine_1D.ipf for a duplicate ver ison of this function401 // see V_CombineModePopup() in V_Combine_1D.ipf for a duplicate version of this function 400 402 // 401 403 Function V_BinningModePopup(ctrlName,popNum,popStr) : PopupMenuControl … … 408 410 V_QBinAllPanels(type,popNum) 409 411 410 String str,winStr="V_1D_Data" 411 sprintf str,"(\"%s\",%d,\"%s\")",type,popNum,winStr 412 String str,winStr="V_1D_Data",workTypeStr 413 workTypeStr = "root:Packages:NIST:VSANS:"+type 414 415 sprintf str,"(\"%s\",%d,\"%s\")",workTypeStr,popNum,winStr 412 416 413 417 Execute ("V_Back_IQ_Graph"+str) 414 418 Execute ("V_Middle_IQ_Graph"+str) 415 419 Execute ("V_Front_IQ_Graph"+str) 416 417 // Execute ("V_Back_IQ_Graph(\""+type+"\")") 418 // Execute ("V_Middle_IQ_Graph(\""+type+"\")") 419 // Execute ("V_Front_IQ_Graph(\""+type+"\")") 420 420 421 421 422 return(0) … … 447 448 // x- currently hard-wired == 1 448 449 // 449 // input "type" is the data type and defines the folder 450 // 451 Proc V_Middle_IQ_Graph(type,binType,winNameStr) 452 String type 450 // input "fullPathToFolder" is the data type and defines the folder, 451 // i.e. "root:Packages:NIST:VSANS:"+"SAM" 452 // 453 Proc V_Middle_IQ_Graph(fullPathToFolder,binType,winNameStr) 454 String fullPathToFolder 453 455 Variable binType 454 456 String winNameStr 455 457 456 458 // binType = V_GetBinningPopMode() 457 SetDataFolder $( "root:Packages:NIST:VSANS:"+type)459 SetDataFolder $(fullPathToFolder) 458 460 459 461 // clear EVERYTHING … … 474 476 ClearIQIfDisplayed_AllFldr("MR",winNameStr) 475 477 ClearIQIfDisplayed_AllFldr("MB",winNameStr) 476 SetDataFolder $( "root:Packages:NIST:VSANS:"+type)478 SetDataFolder $(fullPathToFolder) 477 479 CheckDisplayed/W=$winNameStr iBin_qxqy_ML 478 480 … … 515 517 516 518 517 SetDataFolder $( "root:Packages:NIST:VSANS:"+type)519 SetDataFolder $(fullPathToFolder) 518 520 CheckDisplayed/W=$winNameStr iBin_qxqy_MLR 519 521 … … 555 557 // ClearIQIfDisplayed_AllFldr("MB") 556 558 557 SetDataFolder $( "root:Packages:NIST:VSANS:"+type)559 SetDataFolder $(fullPathToFolder) 558 560 CheckDisplayed/W=$winNameStr iBin_qxqy_MLRTB 559 561 … … 590 592 // ClearIQIfDisplayed_AllFldr("MTB") 591 593 592 SetDataFolder $( "root:Packages:NIST:VSANS:"+type)594 SetDataFolder $(fullPathToFolder) 593 595 CheckDisplayed/W=$winNameStr iBin_qxqy_ML 594 596 … … 629 631 // x- error bars on the data 630 632 // 631 Proc V_Front_IQ_Graph( type,binType,winNameStr)632 String type633 Proc V_Front_IQ_Graph(fullPathToFolder,binType,winNameStr) 634 String fullPathToFolder 633 635 Variable binType 634 636 String winNameStr … … 636 638 637 639 // binType = V_GetBinningPopMode() 638 SetDataFolder $( "root:Packages:NIST:VSANS:"+type)640 SetDataFolder $(fullPathToFolder) 639 641 640 642 // clear EVERYTHING … … 660 662 ClearIQIfDisplayed_AllFldr("FB",winNameStr) 661 663 662 SetDataFolder $( "root:Packages:NIST:VSANS:"+type)664 SetDataFolder $(fullPathToFolder) 663 665 CheckDisplayed/W=$winNameStr iBin_qxqy_FL 664 666 … … 703 705 // ClearIQIfDisplayed_AllFldr("FB") 704 706 705 SetDataFolder $( "root:Packages:NIST:VSANS:"+type)707 SetDataFolder $(fullPathToFolder) 706 708 CheckDisplayed/W=$winNameStr iBin_qxqy_FLR 707 709 … … 745 747 // ClearIQIfDisplayed_AllFldr("FB") 746 748 747 SetDataFolder $( "root:Packages:NIST:VSANS:"+type)749 SetDataFolder $(fullPathToFolder) 748 750 CheckDisplayed/W=$winNameStr iBin_qxqy_FLRTB 749 751 … … 782 784 // ClearIQIfDisplayed_AllFldr("FTB") 783 785 784 SetDataFolder $( "root:Packages:NIST:VSANS:"+type)786 SetDataFolder $(fullPathToFolder) 785 787 CheckDisplayed/W=$winNameStr iBin_qxqy_FL 786 788 … … 822 824 // 823 825 ////////////to plot the back panel I(q) 824 Proc V_Back_IQ_Graph( type,binType,winNameStr)825 String type826 Proc V_Back_IQ_Graph(fullPathToFolder,binType,winNameStr) 827 String fullPathToFolder 826 828 Variable binType 827 829 String winNameStr … … 834 836 835 837 836 SetDataFolder $( "root:Packages:NIST:VSANS:"+type)838 SetDataFolder $(fullPathToFolder) 837 839 838 840 if(binType==1 || binType==2 || binType==3) 839 841 840 842 ClearIQIfDisplayed_AllFldr("B",winNameStr) 841 SetDataFolder $( "root:Packages:NIST:VSANS:"+type)843 SetDataFolder $(fullPathToFolder) 842 844 CheckDisplayed/W=$winNameStr iBin_qxqy_B 843 845 … … 845 847 AppendtoGraph/W=$winNameStr iBin_qxqy_B vs qBin_qxqy_B 846 848 ErrorBars/T=0 iBin_qxqy_B Y,wave=(:eBin_qxqy_B,:eBin_qxqy_B) 847 ModifyGraph/W=$winNameStr mode=4 848 // ModifyGraph/W=$winNameStr marker=19 849 ModifyGraph/W=$winNameStr mode(iBin_qxqy_B)=4 849 850 ModifyGraph/W=$winNameStr rgb(iBin_qxqy_B)=(1,52428,52428) 850 // ModifyGraph/W=$winNameStr msize=2 851 ModifyGraph/W=$winNameStr grid=1852 ModifyGraph/W=$winNameStr log=1853 ModifyGraph/W=$winNameStr m irror=2854 ModifyGraph/W=$winNameStr msize(iBin_qxqy_B)=3,textMarker(iBin_qxqy_B)={"B","default",1,0,5,0.00,0.00}851 ModifyGraph/W=$winNameStr grid=1 852 ModifyGraph/W=$winNameStr log=1 853 ModifyGraph/W=$winNameStr mirror=2 854 ModifyGraph/W=$winNameStr marker(iBin_qxqy_B)=19,msize(iBin_qxqy_B)=2 855 // ModifyGraph/W=$winNameStr msize(iBin_qxqy_B)=3,textMarker(iBin_qxqy_B)={"B","default",1,0,5,0.00,0.00} 855 856 856 857 endif 857 858 858 859 // ClearIQIfDisplayed_AllFldr("B") 859 // SetDataFolder $( "root:Packages:NIST:VSANS:"+type)860 // SetDataFolder $(fullPathToFolder) 860 861 // CheckDisplayed/W=V_1D_Data iBin_qxqy_B 861 862 // … … 882 883 if(V_flag==0) 883 884 AppendtoGraph/W=$winNameStr iBin_qxqy_B vs qBin_qxqy_B 884 ModifyGraph/W=$winNameStr mode =4885 ModifyGraph/W=$winNameStr marker =19885 ModifyGraph/W=$winNameStr mode(iBin_qxqy_B)=4 886 ModifyGraph/W=$winNameStr marker(iBin_qxqy_B)=19 886 887 ModifyGraph/W=$winNameStr rgb(iBin_qxqy_B)=(1,52428,52428) 887 ModifyGraph/W=$winNameStr msize =2888 ModifyGraph/W=$winNameStr msize(iBin_qxqy_B)=2 888 889 ModifyGraph/W=$winNameStr grid=1 889 890 ModifyGraph/W=$winNameStr log=1 … … 896 897 End 897 898 899 900 901 // type = the data folder 902 // binType = numerical index of the bin type (1->4) 903 // one;two;four;slit 904 // winNameStr = the name of the target window 905 // 906 ////////////to plot the back panel I(q) 907 Proc V_Back_IQ_Graph_trim(fullPathToFolder,binType,winNameStr) 908 String fullPathToFolder 909 Variable binType 910 String winNameStr 911 912 // SetDataFolder root:Packages:NIST:VSANS:VCALC:entry:instrument:detector_B 913 914 // Variable binType 915 916 // binType = V_GetBinningPopMode() 917 918 919 SetDataFolder $(fullPathToFolder) 920 921 if(binType==1 || binType==2 || binType==3) 922 923 ClearIQIfDisplayed_AllFldr("B_trim",winNameStr) 924 SetDataFolder $(fullPathToFolder) 925 CheckDisplayed/W=$winNameStr iBin_qxqy_B_trim 926 927 if(V_flag==0) 928 AppendtoGraph/W=$winNameStr iBin_qxqy_B_trim vs qBin_qxqy_B_trim 929 ErrorBars/T=0 iBin_qxqy_B_trim Y,wave=(:eBin_qxqy_B_trim,:eBin_qxqy_B_trim) 930 ModifyGraph/W=$winNameStr mode(iBin_qxqy_B_trim)=4 931 ModifyGraph/W=$winNameStr rgb(iBin_qxqy_B_trim)=(1,52428,52428) 932 ModifyGraph/W=$winNameStr grid=1 933 ModifyGraph/W=$winNameStr log=1 934 ModifyGraph/W=$winNameStr mirror=2 935 ModifyGraph/W=$winNameStr marker(iBin_qxqy_B_trim)=19,msize(iBin_qxqy_B_trim)=3 936 // ModifyGraph/W=$winNameStr msize(iBin_qxqy_B_trim)=3,textMarker(iBin_qxqy_B_trim)={"B","default",1,0,5,0.00,0.00} 937 938 endif 939 940 // ClearIQIfDisplayed_AllFldr("B_trim") 941 // SetDataFolder $(fullPathToFolder) 942 // CheckDisplayed/W=V_1D_Data iBin_qxqy_B_trim 943 // 944 // if(V_flag==0) 945 // AppendtoGraph/W=V_1D_Data iBin_qxqy_B_trim vs qBin_qxqy_B_trim 946 // ModifyGraph/W=V_1D_Data mode=4 947 // ModifyGraph/W=V_1D_Data marker=19 948 // ModifyGraph/W=V_1D_Data rgb(iBin_qxqy_B_trim)=(1,52428,52428) 949 // ModifyGraph/W=V_1D_Data msize=2 950 // ModifyGraph/W=V_1D_Data grid=1 951 // ModifyGraph/W=V_1D_Data log=1 952 // ModifyGraph/W=V_1D_Data mirror=2 953 // endif 954 955 endif 956 957 //nothing different here since there is ony a single detector to display, but for the future... 958 if(binType==4) 959 960 ClearIQIfDisplayed_AllFldr("B_trim",winNameStr) 961 SetDataFolder $("root:Packages:NIST:VSANS:"+type) 962 CheckDisplayed/W=$winNameStr iBin_qxqy_B_trim 963 964 if(V_flag==0) 965 AppendtoGraph/W=$winNameStr iBin_qxqy_B_trim vs qBin_qxqy_B_trim 966 ModifyGraph/W=$winNameStr mode(iBin_qxqy_B_trim)=4 967 ModifyGraph/W=$winNameStr marker(iBin_qxqy_B_trim)=19 968 ModifyGraph/W=$winNameStr rgb(iBin_qxqy_B_trim)=(1,52428,52428) 969 ModifyGraph/W=$winNameStr msize(iBin_qxqy_B_trim)=3 970 ModifyGraph/W=$winNameStr grid=1 971 ModifyGraph/W=$winNameStr log=1 972 ModifyGraph/W=$winNameStr mirror=2 973 endif 974 endif 975 976 977 SetDataFolder root: 978 End 979 980 981 // TODO 982 // x- need to set binType 983 // x- currently hard-wired == 1 984 // 985 // input "fullPathToFolder" is the data type and defines the folder, 986 // i.e. "root:Packages:NIST:VSANS:"+"SAM" 987 // 988 Proc V_Middle_IQ_Graph_trim(fullPathToFolder,binType,winNameStr) 989 String fullPathToFolder 990 Variable binType 991 String winNameStr 992 993 // binType = V_GetBinningPopMode() 994 SetDataFolder $(fullPathToFolder) 995 996 // clear EVERYTHING 997 // ClearIQIfDisplayed_AllFldr("MLRTB") 998 // ClearIQIfDisplayed_AllFldr("MLR") 999 // ClearIQIfDisplayed_AllFldr("MTB") //this returns to root: 1000 // ClearIQIfDisplayed_AllFldr("MT") 1001 // ClearIQIfDisplayed_AllFldr("ML") 1002 // ClearIQIfDisplayed_AllFldr("MR") 1003 // ClearIQIfDisplayed_AllFldr("MB") 1004 1005 if(binType==1) 1006 ClearIQIfDisplayed_AllFldr("MLRTB_trim",winNameStr) 1007 ClearIQIfDisplayed_AllFldr("MLR_trim",winNameStr) 1008 ClearIQIfDisplayed_AllFldr("MTB_trim",winNameStr) //this returns to root: 1009 ClearIQIfDisplayed_AllFldr("MT_trim",winNameStr) 1010 ClearIQIfDisplayed_AllFldr("ML_trim",winNameStr) 1011 ClearIQIfDisplayed_AllFldr("MR_trim",winNameStr) 1012 ClearIQIfDisplayed_AllFldr("MB_trim",winNameStr) 1013 SetDataFolder $(fullPathToFolder) 1014 CheckDisplayed/W=$winNameStr iBin_qxqy_ML_trim 1015 1016 if(V_flag==0) 1017 AppendtoGraph/W=$winNameStr iBin_qxqy_ML_trim vs qBin_qxqy_ML_trim 1018 AppendToGraph/W=$winNameStr iBin_qxqy_MR_trim vs qBin_qxqy_MR_trim 1019 AppendToGraph/W=$winNameStr iBin_qxqy_MT_trim vs qBin_qxqy_MT_trim 1020 AppendToGraph/W=$winNameStr iBin_qxqy_MB_trim vs qBin_qxqy_MB_trim 1021 ErrorBars/T=0 iBin_qxqy_ML_trim Y,wave=(:eBin_qxqy_ML_trim,:eBin_qxqy_ML_trim) 1022 ErrorBars/T=0 iBin_qxqy_MR_trim Y,wave=(:eBin_qxqy_MR_trim,:eBin_qxqy_MR_trim) 1023 ErrorBars/T=0 iBin_qxqy_MT_trim Y,wave=(:eBin_qxqy_MT_trim,:eBin_qxqy_MT_trim) 1024 ErrorBars/T=0 iBin_qxqy_MB_trim Y,wave=(:eBin_qxqy_MB_trim,:eBin_qxqy_MB_trim) 1025 1026 ModifyGraph/W=$winNameStr mode(iBin_qxqy_ML_trim)=4 1027 ModifyGraph/W=$winNameStr mode(iBin_qxqy_MR_trim)=4 1028 ModifyGraph/W=$winNameStr mode(iBin_qxqy_MT_trim)=4 1029 ModifyGraph/W=$winNameStr mode(iBin_qxqy_MB_trim)=4 1030 ModifyGraph/W=$winNameStr marker(iBin_qxqy_ML_trim)=19 1031 ModifyGraph/W=$winNameStr marker(iBin_qxqy_MR_trim)=19 1032 ModifyGraph/W=$winNameStr marker(iBin_qxqy_MT_trim)=19 1033 ModifyGraph/W=$winNameStr marker(iBin_qxqy_MB_trim)=19 1034 ModifyGraph/W=$winNameStr rgb(iBin_qxqy_ML_trim)=(65535,0,0),rgb(iBin_qxqy_MB_trim)=(1,16019,65535),rgb(iBin_qxqy_MR_trim)=(65535,0,0),rgb(iBin_qxqy_MT_trim)=(1,16019,65535) 1035 ModifyGraph/W=$winNameStr msize(iBin_qxqy_ML_trim)=3 1036 ModifyGraph/W=$winNameStr msize(iBin_qxqy_MR_trim)=3 1037 ModifyGraph/W=$winNameStr msize(iBin_qxqy_MT_trim)=3 1038 ModifyGraph/W=$winNameStr msize(iBin_qxqy_MB_trim)=3 1039 ModifyGraph/W=$winNameStr muloffset(iBin_qxqy_ML_trim)={0,4},muloffset(iBin_qxqy_MB_trim)={0,2},muloffset(iBin_qxqy_MR_trim)={0,8} 1040 ModifyGraph/W=$winNameStr grid=1 1041 ModifyGraph/W=$winNameStr log=1 1042 ModifyGraph/W=$winNameStr mirror=2 1043 endif 1044 endif 1045 1046 if(binType==2) 1047 // clear EVERYTHING 1048 ClearIQIfDisplayed_AllFldr("MLRTB_trim",winNameStr) 1049 ClearIQIfDisplayed_AllFldr("MLR_trim",winNameStr) 1050 ClearIQIfDisplayed_AllFldr("MTB_trim",winNameStr) //this returns to root: 1051 ClearIQIfDisplayed_AllFldr("MT_trim",winNameStr) 1052 ClearIQIfDisplayed_AllFldr("ML_trim",winNameStr) 1053 ClearIQIfDisplayed_AllFldr("MR_trim",winNameStr) 1054 ClearIQIfDisplayed_AllFldr("MB_trim",winNameStr) 1055 1056 // ClearIQIfDisplayed_AllFldr("MLRTB") 1057 // ClearIQIfDisplayed_AllFldr("MT") 1058 // ClearIQIfDisplayed_AllFldr("ML") 1059 // ClearIQIfDisplayed_AllFldr("MR") 1060 // ClearIQIfDisplayed_AllFldr("MB") 1061 1062 1063 SetDataFolder $(fullPathToFolder) 1064 CheckDisplayed/W=$winNameStr iBin_qxqy_MLR_trim 1065 1066 if(V_flag==0) 1067 AppendtoGraph/W=$winNameStr iBin_qxqy_MLR_trim vs qBin_qxqy_MLR_trim 1068 AppendToGraph/W=$winNameStr iBin_qxqy_MTB_trim vs qBin_qxqy_MTB_trim 1069 ErrorBars/T=0 iBin_qxqy_MLR_trim Y,wave=(:eBin_qxqy_MLR_trim,:eBin_qxqy_MLR_trim) 1070 ErrorBars/T=0 iBin_qxqy_MTB_trim Y,wave=(:eBin_qxqy_MTB_trim,:eBin_qxqy_MTB_trim) 1071 1072 ModifyGraph/W=$winNameStr mode(iBin_qxqy_MLR_trim)=4 1073 ModifyGraph/W=$winNameStr mode(iBin_qxqy_MTB_trim)=4 1074 ModifyGraph/W=$winNameStr marker(iBin_qxqy_MLR_trim)=19 1075 ModifyGraph/W=$winNameStr marker(iBin_qxqy_MTB_trim)=19 1076 ModifyGraph/W=$winNameStr rgb(iBin_qxqy_MLR_trim)=(65535,0,0),rgb(iBin_qxqy_MTB_trim)=(1,16019,65535) 1077 ModifyGraph/W=$winNameStr msize(iBin_qxqy_MLR_trim)=3 1078 ModifyGraph/W=$winNameStr msize(iBin_qxqy_MTB_trim)=3 1079 ModifyGraph/W=$winNameStr muloffset(iBin_qxqy_MLR_trim)={0,2} 1080 ModifyGraph/W=$winNameStr grid=1 1081 ModifyGraph/W=$winNameStr log=1 1082 ModifyGraph/W=$winNameStr mirror=2 1083 Label/W=$winNameStr left "Intensity (1/cm)" 1084 Label/W=$winNameStr bottom "Q (1/A)" 1085 endif 1086 1087 endif 1088 1089 if(binType==3) 1090 // clear EVERYTHING 1091 ClearIQIfDisplayed_AllFldr("MLRTB_trim",winNameStr) 1092 ClearIQIfDisplayed_AllFldr("MLR_trim",winNameStr) 1093 ClearIQIfDisplayed_AllFldr("MTB_trim",winNameStr) //this returns to root: 1094 ClearIQIfDisplayed_AllFldr("MT_trim",winNameStr) 1095 ClearIQIfDisplayed_AllFldr("ML_trim",winNameStr) 1096 ClearIQIfDisplayed_AllFldr("MR_trim",winNameStr) 1097 ClearIQIfDisplayed_AllFldr("MB_trim",winNameStr) 1098 1099 // ClearIQIfDisplayed_AllFldr("MLR") 1100 // ClearIQIfDisplayed_AllFldr("MTB") 1101 // ClearIQIfDisplayed_AllFldr("MT") 1102 // ClearIQIfDisplayed_AllFldr("ML") 1103 // ClearIQIfDisplayed_AllFldr("MR") 1104 // ClearIQIfDisplayed_AllFldr("MB") 1105 1106 SetDataFolder $(fullPathToFolder) 1107 CheckDisplayed/W=$winNameStr iBin_qxqy_MLRTB_trim 1108 1109 if(V_flag==0) 1110 AppendtoGraph/W=$winNameStr iBin_qxqy_MLRTB_trim vs qBin_qxqy_MLRTB_trim 1111 ErrorBars/T=0 iBin_qxqy_MLRTB_trim Y,wave=(:eBin_qxqy_MLRTB_trim,:eBin_qxqy_MLRTB_trim) 1112 1113 ModifyGraph/W=$winNameStr mode(iBin_qxqy_MLRTB_trim)=4 1114 ModifyGraph/W=$winNameStr marker(iBin_qxqy_MLRTB_trim)=19 1115 ModifyGraph/W=$winNameStr rgb(iBin_qxqy_MLRTB_trim)=(65535,0,0) 1116 ModifyGraph/W=$winNameStr msize(iBin_qxqy_MLRTB_trim)=3 1117 ModifyGraph/W=$winNameStr grid=1 1118 ModifyGraph/W=$winNameStr log=1 1119 ModifyGraph/W=$winNameStr mirror=2 1120 Label/W=$winNameStr left "Intensity (1/cm)" 1121 Label/W=$winNameStr bottom "Q (1/A)" 1122 endif 1123 1124 endif 1125 1126 if(binType==4) // slit aperture binning - MT, ML, MR, MB are averaged 1127 // clear EVERYTHING 1128 ClearIQIfDisplayed_AllFldr("MLRTB_trim",winNameStr) 1129 ClearIQIfDisplayed_AllFldr("MLR_trim",winNameStr) 1130 ClearIQIfDisplayed_AllFldr("MTB_trim",winNameStr) //this returns to root: 1131 ClearIQIfDisplayed_AllFldr("MT_trim",winNameStr) 1132 ClearIQIfDisplayed_AllFldr("ML_trim",winNameStr) 1133 ClearIQIfDisplayed_AllFldr("MR_trim",winNameStr) 1134 ClearIQIfDisplayed_AllFldr("MB_trim",winNameStr) 1135 1136 1137 // ClearIQIfDisplayed_AllFldr("MLRTB") 1138 // ClearIQIfDisplayed_AllFldr("MLR") 1139 // ClearIQIfDisplayed_AllFldr("MTB") 1140 1141 SetDataFolder $(fullPathToFolder) 1142 CheckDisplayed/W=$winNameStr iBin_qxqy_ML_trim 1143 1144 if(V_flag==0) 1145 AppendToGraph/W=$winNameStr iBin_qxqy_ML_trim vs qBin_qxqy_ML_trim 1146 AppendToGraph/W=$winNameStr iBin_qxqy_MR_trim vs qBin_qxqy_MR_trim 1147 AppendToGraph/W=$winNameStr iBin_qxqy_MT_trim vs qBin_qxqy_MT_trim 1148 AppendToGraph/W=$winNameStr iBin_qxqy_MB_trim vs qBin_qxqy_MB_trim 1149 ErrorBars/T=0 iBin_qxqy_ML_trim Y,wave=(:eBin_qxqy_ML_trim,:eBin_qxqy_ML_trim) 1150 ErrorBars/T=0 iBin_qxqy_MR_trim Y,wave=(:eBin_qxqy_MR_trim,:eBin_qxqy_MR_trim) 1151 ErrorBars/T=0 iBin_qxqy_MT_trim Y,wave=(:eBin_qxqy_MT_trim,:eBin_qxqy_MT_trim) 1152 ErrorBars/T=0 iBin_qxqy_MB_trim Y,wave=(:eBin_qxqy_MB_trim,:eBin_qxqy_MB_trim) 1153 1154 ModifyGraph/W=$winNameStr mode(iBin_qxqy_ML_trim)=4 1155 ModifyGraph/W=$winNameStr mode(iBin_qxqy_MR_trim)=4 1156 ModifyGraph/W=$winNameStr mode(iBin_qxqy_MT_trim)=4 1157 ModifyGraph/W=$winNameStr mode(iBin_qxqy_MB_trim)=4 1158 ModifyGraph/W=$winNameStr marker(iBin_qxqy_ML_trim)=19 1159 ModifyGraph/W=$winNameStr marker(iBin_qxqy_MR_trim)=19 1160 ModifyGraph/W=$winNameStr marker(iBin_qxqy_MT_trim)=19 1161 ModifyGraph/W=$winNameStr marker(iBin_qxqy_MB_trim)=19 1162 ModifyGraph/W=$winNameStr rgb(iBin_qxqy_ML_trim)=(65535,0,0),rgb(iBin_qxqy_MB_trim)=(1,16019,65535),rgb(iBin_qxqy_MR_trim)=(65535,0,0),rgb(iBin_qxqy_MT_trim)=(1,16019,65535) 1163 ModifyGraph/W=$winNameStr msize(iBin_qxqy_ML_trim)=3 1164 ModifyGraph/W=$winNameStr msize(iBin_qxqy_MR_trim)=3 1165 ModifyGraph/W=$winNameStr msize(iBin_qxqy_MT_trim)=3 1166 ModifyGraph/W=$winNameStr msize(iBin_qxqy_MB_trim)=3 1167 ModifyGraph/W=$winNameStr muloffset(iBin_qxqy_ML_trim)={0,4},muloffset(iBin_qxqy_MB_trim)={0,2},muloffset(iBin_qxqy_MR_trim)={0,8} 1168 ModifyGraph/W=$winNameStr grid=1 1169 ModifyGraph/W=$winNameStr log=1 1170 ModifyGraph/W=$winNameStr mirror=2 1171 endif 1172 1173 endif 1174 1175 SetDataFolder root: 1176 End 1177 1178 1179 1180 1181 // TODO 1182 // x- need to set binType 1183 // x- currently hard-wired == 1 1184 // x- error bars on the data 1185 // 1186 Proc V_Front_IQ_Graph_trim(fullPathToFolder,binType,winNameStr) 1187 String fullPathToFolder 1188 Variable binType 1189 String winNameStr 1190 1191 1192 // binType = V_GetBinningPopMode() 1193 SetDataFolder $(fullPathToFolder) 1194 1195 // clear EVERYTHING 1196 // ClearIQIfDisplayed_AllFldr("FLRTB") 1197 // 1198 // ClearIQIfDisplayed_AllFldr("FLR") 1199 // ClearIQIfDisplayed_AllFldr("FTB") 1200 // 1201 // ClearIQIfDisplayed_AllFldr("FT") 1202 // ClearIQIfDisplayed_AllFldr("FL") 1203 // ClearIQIfDisplayed_AllFldr("FR") 1204 // ClearIQIfDisplayed_AllFldr("FB") 1205 1206 if(binType==1) 1207 ClearIQIfDisplayed_AllFldr("FLRTB_trim",winNameStr) 1208 1209 ClearIQIfDisplayed_AllFldr("FLR_trim",winNameStr) 1210 ClearIQIfDisplayed_AllFldr("FTB_trim",winNameStr) 1211 1212 ClearIQIfDisplayed_AllFldr("FT_trim",winNameStr) 1213 ClearIQIfDisplayed_AllFldr("FL_trim",winNameStr) 1214 ClearIQIfDisplayed_AllFldr("FR_trim",winNameStr) 1215 ClearIQIfDisplayed_AllFldr("FB_trim",winNameStr) 1216 1217 SetDataFolder $(fullPathToFolder) 1218 CheckDisplayed/W=$winNameStr iBin_qxqy_FL_trim 1219 1220 if(V_flag==0) 1221 AppendtoGraph/W=$winNameStr iBin_qxqy_FL_trim vs qBin_qxqy_FL_trim 1222 AppendToGraph/W=$winNameStr iBin_qxqy_FR_trim vs qBin_qxqy_FR_trim 1223 AppendToGraph/W=$winNameStr iBin_qxqy_FT_trim vs qBin_qxqy_FT_trim 1224 AppendToGraph/W=$winNameStr iBin_qxqy_FB_trim vs qBin_qxqy_FB_trim 1225 ErrorBars/T=0 iBin_qxqy_FL_trim Y,wave=(:eBin_qxqy_FL_trim,:eBin_qxqy_FL_trim) 1226 ErrorBars/T=0 iBin_qxqy_FR_trim Y,wave=(:eBin_qxqy_FR_trim,:eBin_qxqy_FR_trim) 1227 ErrorBars/T=0 iBin_qxqy_FT_trim Y,wave=(:eBin_qxqy_FT_trim,:eBin_qxqy_FT_trim) 1228 ErrorBars/T=0 iBin_qxqy_FB_trim Y,wave=(:eBin_qxqy_FB_trim,:eBin_qxqy_FB_trim) 1229 1230 ModifyGraph/W=$winNameStr mode(iBin_qxqy_FL_trim)=4 1231 ModifyGraph/W=$winNameStr mode(iBin_qxqy_FR_trim)=4 1232 ModifyGraph/W=$winNameStr mode(iBin_qxqy_FT_trim)=4 1233 ModifyGraph/W=$winNameStr mode(iBin_qxqy_FB_trim)=4 1234 ModifyGraph/W=$winNameStr marker(iBin_qxqy_FL_trim)=19 1235 ModifyGraph/W=$winNameStr marker(iBin_qxqy_FR_trim)=19 1236 ModifyGraph/W=$winNameStr marker(iBin_qxqy_FT_trim)=19 1237 ModifyGraph/W=$winNameStr marker(iBin_qxqy_FB_trim)=19 1238 ModifyGraph/W=$winNameStr rgb(iBin_qxqy_FL_trim)=(39321,26208,1),rgb(iBin_qxqy_FB_trim)=(2,39321,1),rgb(iBin_qxqy_FR_trim)=(39321,26208,1),rgb(iBin_qxqy_FT_trim)=(2,39321,1) 1239 ModifyGraph/W=$winNameStr msize(iBin_qxqy_FL_trim)=3 1240 ModifyGraph/W=$winNameStr msize(iBin_qxqy_FR_trim)=3 1241 ModifyGraph/W=$winNameStr msize(iBin_qxqy_FT_trim)=3 1242 ModifyGraph/W=$winNameStr msize(iBin_qxqy_FB_trim)=3 1243 ModifyGraph/W=$winNameStr muloffset(iBin_qxqy_FL_trim)={0,4},muloffset(iBin_qxqy_FB_trim)={0,2},muloffset(iBin_qxqy_FR_trim)={0,8} 1244 ModifyGraph/W=$winNameStr grid=1 1245 ModifyGraph/W=$winNameStr log=1 1246 ModifyGraph/W=$winNameStr mirror=2 1247 Label/W=$winNameStr left "Intensity (1/cm)" 1248 Label/W=$winNameStr bottom "Q (1/A)" 1249 endif 1250 endif 1251 1252 if(binType==2) 1253 // clear EVERYTHING 1254 ClearIQIfDisplayed_AllFldr("FLRTB_trim",winNameStr) 1255 1256 ClearIQIfDisplayed_AllFldr("FLR_trim",winNameStr) 1257 ClearIQIfDisplayed_AllFldr("FTB_trim",winNameStr) 1258 1259 ClearIQIfDisplayed_AllFldr("FT_trim",winNameStr) 1260 ClearIQIfDisplayed_AllFldr("FL_trim",winNameStr) 1261 ClearIQIfDisplayed_AllFldr("FR_trim",winNameStr) 1262 ClearIQIfDisplayed_AllFldr("FB_trim",winNameStr) 1263 // ClearIQIfDisplayed_AllFldr("FLRTB") 1264 // ClearIQIfDisplayed_AllFldr("FT") 1265 // ClearIQIfDisplayed_AllFldr("FL") 1266 // ClearIQIfDisplayed_AllFldr("FR") 1267 // ClearIQIfDisplayed_AllFldr("FB") 1268 1269 SetDataFolder $(fullPathToFolder) 1270 CheckDisplayed/W=$winNameStr iBin_qxqy_FLR_trim 1271 1272 if(V_flag==0) 1273 AppendtoGraph/W=$winNameStr iBin_qxqy_FLR_trim vs qBin_qxqy_FLR_trim 1274 AppendToGraph/W=$winNameStr iBin_qxqy_FTB_trim vs qBin_qxqy_FTB_trim 1275 ErrorBars/T=0 iBin_qxqy_FLR_trim Y,wave=(:eBin_qxqy_FLR_trim,:eBin_qxqy_FLR_trim) 1276 ErrorBars/T=0 iBin_qxqy_FTB_trim Y,wave=(:eBin_qxqy_FTB_trim,:eBin_qxqy_FTB_trim) 1277 1278 ModifyGraph/W=$winNameStr mode(iBin_qxqy_FLR_trim)=4 1279 ModifyGraph/W=$winNameStr mode(iBin_qxqy_FTB_trim)=4 1280 ModifyGraph/W=$winNameStr marker(iBin_qxqy_FLR_trim)=19 1281 ModifyGraph/W=$winNameStr marker(iBin_qxqy_FTB_trim)=19 1282 ModifyGraph/W=$winNameStr rgb(iBin_qxqy_FLR_trim)=(39321,26208,1),rgb(iBin_qxqy_FTB_trim)=(2,39321,1) 1283 ModifyGraph/W=$winNameStr msize(iBin_qxqy_FLR_trim)=3 1284 ModifyGraph/W=$winNameStr msize(iBin_qxqy_FTB_trim)=3 1285 ModifyGraph/W=$winNameStr muloffset(iBin_qxqy_FLR_trim)={0,2} 1286 ModifyGraph/W=$winNameStr grid=1 1287 ModifyGraph/W=$winNameStr log=1 1288 ModifyGraph/W=$winNameStr mirror=2 1289 // Label/W=$winNameStr left "Intensity (1/cm)" 1290 // Label/W=$winNameStr bottom "Q (1/A)" 1291 endif 1292 1293 endif 1294 1295 if(binType==3) 1296 // clear EVERYTHING 1297 ClearIQIfDisplayed_AllFldr("FLRTB_trim",winNameStr) 1298 1299 ClearIQIfDisplayed_AllFldr("FLR_trim",winNameStr) 1300 ClearIQIfDisplayed_AllFldr("FTB_trim",winNameStr) 1301 1302 ClearIQIfDisplayed_AllFldr("FT_trim",winNameStr) 1303 ClearIQIfDisplayed_AllFldr("FL_trim",winNameStr) 1304 ClearIQIfDisplayed_AllFldr("FR_trim",winNameStr) 1305 ClearIQIfDisplayed_AllFldr("FB_trim",winNameStr) 1306 1307 // ClearIQIfDisplayed_AllFldr("FLR") 1308 // ClearIQIfDisplayed_AllFldr("FTB") 1309 // ClearIQIfDisplayed_AllFldr("FT") 1310 // ClearIQIfDisplayed_AllFldr("FL") 1311 // ClearIQIfDisplayed_AllFldr("FR") 1312 // ClearIQIfDisplayed_AllFldr("FB") 1313 1314 SetDataFolder $(fullPathToFolder) 1315 CheckDisplayed/W=$winNameStr iBin_qxqy_FLRTB_trim 1316 1317 if(V_flag==0) 1318 AppendtoGraph/W=$winNameStr iBin_qxqy_FLRTB_trim vs qBin_qxqy_FLRTB_trim 1319 ErrorBars/T=0 iBin_qxqy_FLRTB_trim Y,wave=(:eBin_qxqy_FLRTB_trim,:eBin_qxqy_FLRTB_trim) 1320 1321 ModifyGraph/W=$winNameStr mode(iBin_qxqy_FLRTB_trim)=4 1322 ModifyGraph/W=$winNameStr marker(iBin_qxqy_FLRTB_trim)=19 1323 ModifyGraph/W=$winNameStr rgb(iBin_qxqy_FLRTB_trim)=(39321,26208,1) 1324 ModifyGraph/W=$winNameStr msize(iBin_qxqy_FLRTB_trim)=3 1325 ModifyGraph/W=$winNameStr grid=1 1326 ModifyGraph/W=$winNameStr log=1 1327 ModifyGraph/W=$winNameStr mirror=2 1328 Label/W=$winNameStr left "Intensity (1/cm)" 1329 Label/W=$winNameStr bottom "Q (1/A)" 1330 endif 1331 1332 endif 1333 1334 if(binType==4) // slit aperture binning - MT, ML, MR, MB are averaged 1335 // clear EVERYTHING 1336 ClearIQIfDisplayed_AllFldr("FLRTB_trim",winNameStr) 1337 1338 ClearIQIfDisplayed_AllFldr("FLR_trim",winNameStr) 1339 ClearIQIfDisplayed_AllFldr("FTB_trim",winNameStr) 1340 1341 ClearIQIfDisplayed_AllFldr("FT_trim",winNameStr) 1342 ClearIQIfDisplayed_AllFldr("FL_trim",winNameStr) 1343 ClearIQIfDisplayed_AllFldr("FR_trim",winNameStr) 1344 ClearIQIfDisplayed_AllFldr("FB_trim",winNameStr) 1345 1346 1347 // ClearIQIfDisplayed_AllFldr("FLRTB") 1348 // ClearIQIfDisplayed_AllFldr("FLR") 1349 // ClearIQIfDisplayed_AllFldr("FTB") 1350 1351 SetDataFolder $(fullPathToFolder) 1352 CheckDisplayed/W=$winNameStr iBin_qxqy_FL_trim 1353 1354 if(V_flag==0) 1355 AppendtoGraph/W=$winNameStr iBin_qxqy_FL_trim vs qBin_qxqy_FL_trim 1356 AppendToGraph/W=$winNameStr iBin_qxqy_FR_trim vs qBin_qxqy_FR_trim 1357 AppendToGraph/W=$winNameStr iBin_qxqy_FT_trim vs qBin_qxqy_FT_trim 1358 AppendToGraph/W=$winNameStr iBin_qxqy_FB_trim vs qBin_qxqy_FB_trim 1359 ErrorBars/T=0 iBin_qxqy_FL_trim Y,wave=(:eBin_qxqy_FL_trim,:eBin_qxqy_FL_trim) 1360 ErrorBars/T=0 iBin_qxqy_FR_trim Y,wave=(:eBin_qxqy_FR_trim,:eBin_qxqy_FR_trim) 1361 ErrorBars/T=0 iBin_qxqy_FT_trim Y,wave=(:eBin_qxqy_FT_trim,:eBin_qxqy_FT_trim) 1362 ErrorBars/T=0 iBin_qxqy_FB_trim Y,wave=(:eBin_qxqy_FB_trim,:eBin_qxqy_FB_trim) 1363 1364 ModifyGraph/W=$winNameStr mode(iBin_qxqy_FL_trim)=4 1365 ModifyGraph/W=$winNameStr mode(iBin_qxqy_FR_trim)=4 1366 ModifyGraph/W=$winNameStr mode(iBin_qxqy_FT_trim)=4 1367 ModifyGraph/W=$winNameStr mode(iBin_qxqy_FB_trim)=4 1368 ModifyGraph/W=$winNameStr marker(iBin_qxqy_FL_trim)=19 1369 ModifyGraph/W=$winNameStr marker(iBin_qxqy_FR_trim)=19 1370 ModifyGraph/W=$winNameStr marker(iBin_qxqy_FT_trim)=19 1371 ModifyGraph/W=$winNameStr marker(iBin_qxqy_FB_trim)=19 1372 ModifyGraph/W=$winNameStr rgb(iBin_qxqy_FL_trim)=(39321,26208,1),rgb(iBin_qxqy_FB_trim)=(2,39321,1),rgb(iBin_qxqy_FR_trim)=(39321,26208,1),rgb(iBin_qxqy_FT_trim)=(2,39321,1) 1373 ModifyGraph/W=$winNameStr msize(iBin_qxqy_FL_trim)=3 1374 ModifyGraph/W=$winNameStr msize(iBin_qxqy_FR_trim)=3 1375 ModifyGraph/W=$winNameStr msize(iBin_qxqy_FT_trim)=3 1376 ModifyGraph/W=$winNameStr msize(iBin_qxqy_FB_trim)=3 1377 ModifyGraph/W=$winNameStr muloffset(iBin_qxqy_FL_trim)={0,4},muloffset(iBin_qxqy_FB_trim)={0,2},muloffset(iBin_qxqy_FR_trim)={0,8} 1378 ModifyGraph/W=$winNameStr grid=1 1379 ModifyGraph/W=$winNameStr log=1 1380 ModifyGraph/W=$winNameStr mirror=2 1381 endif 1382 1383 endif 1384 1385 SetDataFolder root: 1386 End 1387 -
sans/Dev/trunk/NCNR_User_Procedures/Reduction/VSANS/V_IQ_Utilities.ipf
r1037 r1038 35 35 36 36 Strconstant ksPanelBinTypeList = "B;FT;FB;FL;FR;MT;MB;ML;MR;FTB;FLR;MTB;MLR;FLRTB;MLRTB;" 37 37 Strconstant ksBinTrimBegDefault = "B=5;FT=6;FB=6;FL=6;FR=6;MT=6;MB=6;ML=6;MR=6;FTB=7;FLR=7;MTB=7;MLR=7;FLRTB=8;MLRTB=8;" 38 Strconstant ksBinTrimEndDefault = "B=10;FT=9;FB=9;FL=9;FR=9;MT=9;MB=9;ML=9;MR=9;FTB=8;FLR=8;MTB=8;MLR=8;FLRTB=7;MLRTB=7;" 39 40 41 ////////////////// 38 42 Strconstant ksBinTypeStr = "One;Two;Four;Slit Mode;" 39 43 Strconstant ksBinType1 = "B;FT;FB;FL;FR;MT;MB;ML;MR;" //these are the "active" extensions … … 41 45 Strconstant ksBinType3 = "B;FLRTB;MLRTB;" 42 46 Strconstant ksBinType4 = "B;FT;FB;FL;FR;MT;MB;ML;MR;" 43 44 47 /////////////////// 48 // 45 49 // NOTE 46 50 // this is the master conversion function … … 450 454 Wave/Z s_mr = eBin_qxqy_MR 451 455 Wave/Z s_b = eBin_qxqy_B 456 457 452 458 453 459 DeletePoints 0,nBeg, q_fb,q_ft,q_fl,q_fr,q_mb,q_mt,q_ml,q_mr,q_b … … 892 898 893 899 900 Macro V_Load_Data_ITX() 901 V_Load_itx("","",0,0) 902 end 903 894 904 // TODO 895 905 // -- fill in … … 990 1000 return(0) 991 1001 End 1002 1003 1004 // given strings of the number of points to remove, loop over the detectors 1005 Function V_Trim1DDataStr(folderStr,binType,nBegStr,nEndStr) 1006 String folderStr 1007 Variable binType 1008 String nBegStr,nEndStr 1009 1010 String detListStr 1011 if(binType == 1) 1012 detListStr = ksBinType1 1013 endif 1014 if(binType == 2) 1015 detListStr = ksBinType2 1016 endif 1017 if(binType == 3) 1018 detListStr = ksBinType3 1019 endif 1020 if(binType == 4) 1021 detListStr = ksBinType4 1022 endif 1023 if(strlen(detListStr)==0) 1024 return(0) 1025 endif 1026 1027 //use default values if null string passed in 1028 if(strlen(nBegStr)==0) 1029 nBegStr = ksBinTrimBegDefault 1030 nEndStr = ksBinTrimEndDefault 1031 endif 1032 1033 Variable num, ii,nBeg,nEnd 1034 String item,detstr 1035 1036 num = ItemsInList(detListStr) 1037 for(ii=0;ii<num;ii+=1) 1038 detStr = StringFromList(ii, detListStr) 1039 nBeg = NumberByKey(detStr, nBegStr,"=",";") 1040 nEnd = NumberByKey(detStr, nEndStr,"=",";") 1041 V_TrimOneSet(folderStr,detStr,nBeg,nEnd) 1042 endfor 1043 1044 return(0) 1045 End 1046 1047 // TODO 1048 // -- make this resolution-aware 1049 // 1050 Function V_TrimOneSet(folderStr,detStr,nBeg,nEnd) 1051 String folderStr,detStr 1052 Variable nBeg,nEnd 1053 1054 SetDataFolder $("root:Packages:NIST:VSANS:"+folderStr) 1055 1056 Printf "%d points removed from beginning, %d points from the end of %s \r",nbeg,nend,detStr 1057 1058 // TODO 1059 // for each binType block: 1060 // --declare the waves 1061 // --make a copy of the waves?? 1062 // //--Break out resolution wave into separate waves 1063 // --delete the beginning points from everything 1064 // --trim off the last nEnd points from everything 1065 // --DeletePoints num-nEnd,nEnd, qw,iw,sw 1066 // // --delete all points where the shadow is < 0.98 1067 ////--Put resolution contents back??? 1068 1069 Wave/Z qw = $("qBin_qxqy_"+detStr) 1070 Wave/Z iw = $("iBin_qxqy_"+detStr) 1071 Wave/Z ew = $("eBin_qxqy_"+detStr) 1072 1073 1074 DeletePoints 0,nBeg, qw,iw,ew 1075 1076 Variable npt 1077 npt = numpnts(qw) 1078 DeletePoints npt-nEnd,nEnd, qw,iw,ew 1079 1080 return(0) 1081 End -
sans/Dev/trunk/NCNR_User_Procedures/Reduction/VSANS/V_Protocol_Reduction.ipf
r1036 r1038 2436 2436 // 2437 2437 // TODO: 2438 // -- fill in all of the cases, default is only the "standard" I(q)2438 // -- fill in all of the cases, default is only the "standard" circular average I(q) 2439 2439 2440 2440 if(cmpstr(saveType,"Yes - Concatenate")==0) 2441 V_Trim1DData(activeType,binType,nBeg,nEnd) 2441 V_Trim1DDataStr(activeType,binType,"","") // TODO -- passing null strings uses default trimmings 2442 // V_Trim1DData(activeType,binType,nBeg,nEnd) 2442 2443 V_ConcatenateForSave(activeType,binType) // this removes q=0 point, concatenates, sorts 2443 2444 V_Write1DData(activeType,newFileName+"."+exten) //don't pass the full path, just the name
Note: See TracChangeset
for help on using the changeset viewer.