Ignore:
Timestamp:
Oct 18, 2019 1:08:35 PM (3 years ago)
Author:
srkline
Message:

Updated help file for VSANS. Graphics were not PNG.

Removed HFIR SANS package since if requires XML XOP - no longer supported.

Improved quality of graphics export for Analysis reports.

Added more support for super_white_beam mode on VSANS

Corrected printf bug (Igor 8) when printing out % sign

Added utilities for patching wavelength and monochromator type on VSANS since the type is still not written out correctly by NICE, and super_white_beam is not yet defined in NICE

Adjusted panel dimensions for the temperature sensor display on VSANS (needed onWindows)

Location:
sans/Dev/trunk/NCNR_User_Procedures/Analysis
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • sans/Dev/trunk/NCNR_User_Procedures/Analysis/Packages/Wrapper_v40.ipf

    r1001 r1222  
    345345                        // make the necessary waves if they don't exist already 
    346346                        if(exists("Hold_"+suffix) == 0) 
    347                                 Make/O/D/N=(num) $("epsilon_"+suffix),$("Hold_"+suffix) 
    348                                 Make/O/T/N=(num) $("LoLim_"+suffix),$("HiLim_"+suffix) 
    349                                 Wave eps = $("epsilon_"+suffix) 
    350                                 Wave coef=$popStr 
    351                                 if(eps[0] == 0)         //if eps already if filled, don't change it 
    352                                         eps = abs(coef*1e-4) + 1e-10                    //default eps is proportional to the coefficients 
    353                                 endif 
    354                         endif 
     347                                Make/O/D/N=(num) $("Hold_"+suffix) 
     348                        endif 
     349                        if(exists("epsilon_"+suffix) == 0) 
     350                                Make/O/D/N=(num) $("epsilon_"+suffix) 
     351                        endif 
     352                        if(exists("LoLim_"+suffix) == 0) 
     353                                Make/O/T/N=(num) $("LoLim_"+suffix) 
     354                        endif 
     355                        if(exists("HiLim_"+suffix) == 0) 
     356                                Make/O/T/N=(num) $("HiLim_"+suffix) 
     357                        endif 
     358                                                 
     359                        Wave eps = $("epsilon_"+suffix) 
     360                        Wave coef=$popStr 
     361                        if(eps[0] == 0)         //if eps already if filled, don't change it 
     362                                eps = abs(coef*1e-4) + 1e-10                    //default eps is proportional to the coefficients 
     363                        endif 
     364                         
    355365                        // default epsilon values, sometimes needed for the fit 
    356366                         
     
    11691179         
    11701180        // insert graphs 
     1181        // extra flag "2" (Igor >=7.00) is 2x screen resolution 
    11711182        if(WaveExists(dataXw)) 
    11721183//              Notebook $nb picture={$topGraph(0, 0, 400, 300), -5, 1}, text="\r" 
    1173                 Notebook $nb scaling={50, 50}, picture={$topGraph(0, 0, 800, 600), -5, 1}, text="\r" 
     1184                Notebook $nb scaling={50, 50}, picture={$topGraph(0, 0, 800, 600), -5, 1,2}, text="\r" 
    11741185        // 
    11751186        else            //must be 2D Gizmo 
    11761187                Execute "ExportGizmo Clip"                      //this ALWAYS is a PICT or BMP. Gizmo windows are different... 
    11771188                LoadPict/Q/O "Clipboard",tmp_Gizmo 
    1178                 Notebook $nb picture={tmp_Gizmo(0, 0, 800, 600), 0, 1}, text="\r" 
     1189                Notebook $nb picture={tmp_Gizmo(0, 0, 800, 600), 0, 1,2}, text="\r" 
    11791190        endif 
    11801191         
     
    12111222///             SavePICT /E=-5/O/P=home /I/W=(0,0,3,3) as pictStr 
    12121223                if(WaveExists(dataXw)) 
    1213                         SavePICT /E=-5/O/P=home/WIN=$topGraph /W=(0,0,800,600) as pictStr 
     1224                        SavePICT /E=-5/O/B=144/P=home/WIN=$topGraph /W=(0,0,800,600) as pictStr 
    12141225                else 
    12151226                        Execute "ExportGizmo /P=home as \""+pictStr+"\""                //this won't be of very high quality 
  • sans/Dev/trunk/NCNR_User_Procedures/Analysis/VSANS/V_SWB_Beaucage.ipf

    r1220 r1222  
    278278        // define limits based on lo/mean, hi/mean of the wavelength distribution 
    279279        // using the empirical definition, "middle" of the peaks 
    280         loLim = 3.37/5.3 
    281         upLim = 20/5.3 
     280        loLim = 3.37/kSuperWhiteBeam_Mean 
     281        upLim = 20/kSuperWhiteBeam_Mean 
    282282         
    283283        inten = V_IntegrOneLevelSWB_mid(w,loLim,upLim,x) 
     
    285285// why do I need this? Is this because this is defined as the mean of the distribution 
    286286//  and is needed to normalize the integral? verify this on paper.       
    287         inten *= 5.3 
     287        inten *= kSuperWhiteBeam_Mean 
    288288 
    289289// normalize the integral        
    290         inten /= 30955          // "middle"  of peaks 
     290        inten /= kSuperWhiteBeam_Normalization          // "middle"  of peaks 
    291291 
    292292// additional normalization??? 
     
    321321//      FUNCREF SANSModel_proto func = $funcStr 
    322322 
    323         val = V_SuperWhiteBeamDist_mid(dum*5.3)*OneLevelX(cw,qq/dum) 
     323        val = V_SuperWhiteBeamDist_mid(dum*kSuperWhiteBeam_Mean)*OneLevelX(cw,qq/dum) 
    324324         
    325325        return (val) 
     
    350350        // define limits based on lo/mean, hi/mean of the wavelength distribution 
    351351        // using the empirical definition, "middle" of the peaks 
    352         loLim = 3.37/5.3 
    353         upLim = 20/5.3 
     352        loLim = 3.37/kSuperWhiteBeam_Mean 
     353        upLim = 20/kSuperWhiteBeam_Mean 
    354354         
    355355        inten = V_IntegrTwoLevelSWB_mid(w,loLim,upLim,x) 
     
    357357// why do I need this? Is this because this is defined as the mean of the distribution 
    358358//  and is needed to normalize the integral? verify this on paper.       
    359         inten *= 5.3 
     359        inten *= kSuperWhiteBeam_Mean 
    360360 
    361361// normalize the integral        
    362         inten /= 30955          // "middle"  of peaks 
     362        inten /= kSuperWhiteBeam_Normalization          // "middle"  of peaks 
    363363 
    364364// additional normalization??? 
     
    393393//      FUNCREF SANSModel_proto func = $funcStr 
    394394 
    395         val = V_SuperWhiteBeamDist_mid(dum*5.3)*TwoLevelX(cw,qq/dum) 
     395        val = V_SuperWhiteBeamDist_mid(dum*kSuperWhiteBeam_Mean)*TwoLevelX(cw,qq/dum) 
    396396         
    397397        return (val) 
     
    422422        // define limits based on lo/mean, hi/mean of the wavelength distribution 
    423423        // using the empirical definition, "middle" of the peaks 
    424         loLim = 3.37/5.3 
    425         upLim = 20/5.3 
     424        loLim = 3.37/kSuperWhiteBeam_Mean 
     425        upLim = 20/kSuperWhiteBeam_Mean 
    426426         
    427427        inten = V_IntegrThreeLevelSWB_mid(w,loLim,upLim,x) 
     
    429429// why do I need this? Is this because this is defined as the mean of the distribution 
    430430//  and is needed to normalize the integral? verify this on paper.       
    431         inten *= 5.3 
     431        inten *= kSuperWhiteBeam_Mean 
    432432 
    433433// normalize the integral        
    434         inten /= 30955          // "middle"  of peaks 
     434        inten /= kSuperWhiteBeam_Normalization          // "middle"  of peaks 
    435435 
    436436// additional normalization??? 
     
    465465//      FUNCREF SANSModel_proto func = $funcStr 
    466466 
    467         val = V_SuperWhiteBeamDist_mid(dum*5.3)*ThreeLevelX(cw,qq/dum) 
     467        val = V_SuperWhiteBeamDist_mid(dum*kSuperWhiteBeam_Mean)*ThreeLevelX(cw,qq/dum) 
    468468         
    469469        return (val) 
     
    496496        // define limits based on lo/mean, hi/mean of the wavelength distribution 
    497497        // using the empirical definition, "middle" of the peaks 
    498         loLim = 3.37/5.3 
    499         upLim = 20/5.3 
     498        loLim = 3.37/kSuperWhiteBeam_Mean 
     499        upLim = 20/kSuperWhiteBeam_Mean 
    500500         
    501501        inten = V_IntegrFourLevelSWB_mid(w,loLim,upLim,x) 
     
    503503// why do I need this? Is this because this is defined as the mean of the distribution 
    504504//  and is needed to normalize the integral? verify this on paper.       
    505         inten *= 5.3 
     505        inten *= kSuperWhiteBeam_Mean 
    506506 
    507507// normalize the integral        
    508         inten /= 30955          // "middle"  of peaks 
     508        inten /= kSuperWhiteBeam_Normalization          // "middle"  of peaks 
    509509 
    510510// additional normalization??? 
     
    539539//      FUNCREF SANSModel_proto func = $funcStr 
    540540 
    541         val = V_SuperWhiteBeamDist_mid(dum*5.3)*FourLevelX(cw,qq/dum) 
     541        val = V_SuperWhiteBeamDist_mid(dum*kSuperWhiteBeam_Mean)*FourLevelX(cw,qq/dum) 
    542542         
    543543        return (val) 
  • sans/Dev/trunk/NCNR_User_Procedures/Analysis/VSANS/V_SWB_BroadPeak.ipf

    r1209 r1222  
    124124        // define limits based on lo/mean, hi/mean of the wavelength distribution 
    125125        // using the empirical definition, "middle" of the peaks 
    126         loLim = 3.37/5.3 
    127         upLim = 20/5.3 
     126        loLim = 3.37/kSuperWhiteBeam_Mean 
     127        upLim = 20/kSuperWhiteBeam_Mean 
    128128         
    129129        inten = V_IntegrBroadPeakSWB_mid(w,loLim,upLim,x) 
     
    133133// why do I need this? Is this because this is defined as the mean of the distribution 
    134134//  and is needed to normalize the integral? verify this on paper.       
    135         inten *= 5.3 
     135        inten *= kSuperWhiteBeam_Mean 
    136136 
    137137// normalize the integral        
    138         inten /= 30955          // "middle"  of peaks 
     138        inten /= kSuperWhiteBeam_Normalization          // "middle"  of peaks 
    139139 
    140140        inten -= w[6] 
     
    176176//      FUNCREF SANSModel_proto func = $funcStr 
    177177 
    178         val = V_SuperWhiteBeamDist_mid(dum*5.3)*BroadPeakX(cw,qq/dum) 
     178        val = V_SuperWhiteBeamDist_mid(dum*kSuperWhiteBeam_Mean)*BroadPeakX(cw,qq/dum) 
    179179         
    180180        return (val) 
  • sans/Dev/trunk/NCNR_User_Procedures/Analysis/VSANS/V_SWB_GaussSpheres.ipf

    r1209 r1222  
    121121        // define limits based on lo/mean, hi/mean of the wavelength distribution 
    122122        // using the empirical definition, "middle" of the peaks 
    123         loLim = 3.37/5.3 
    124         upLim = 20/5.3 
     123        loLim = 3.37/kSuperWhiteBeam_Mean 
     124        upLim = 20/kSuperWhiteBeam_Mean 
    125125         
    126126        inten = V_IntegrGaussSphereSWB_mid(w,loLim,upLim,xx) 
     
    128128// why do I need this? Is this because this is defined as the mean of the distribution 
    129129//  and is needed to normalize the integral? verify this on paper.       
    130         inten *= 5.3 
     130        inten *= kSuperWhiteBeam_Mean 
    131131 
    132132// normalize the integral        
    133         inten /= 30955          // "middle"  of peaks 
     133        inten /= kSuperWhiteBeam_Normalization          // "middle"  of peaks 
    134134 
    135135        inten -= w[5] 
     
    169169//      FUNCREF SANSModel_proto func = $funcStr 
    170170 
    171         val = V_SuperWhiteBeamDist_mid(dum*5.3)*GaussSpheresX(cw,qq/dum) 
     171        val = V_SuperWhiteBeamDist_mid(dum*kSuperWhiteBeam_Mean)*GaussSpheresX(cw,qq/dum) 
    172172         
    173173        return (val) 
  • sans/Dev/trunk/NCNR_User_Procedures/Analysis/VSANS/V_WB_Beaucage.ipf

    r1099 r1222  
    278278        // define limits based on lo/mean, hi/mean of the wavelength distribution 
    279279        // using the empirical definition, "middle" of the peaks 
    280         loLim = 3.37/5.3 
    281         upLim = 8.37/5.3 
     280        loLim = 3.37/kWhiteBeam_Mean 
     281        upLim = 8.37/kWhiteBeam_Mean 
    282282         
    283283        inten = V_IntegrOneLevelWB_mid(w,loLim,upLim,x) 
     
    285285// why do I need this? Is this because this is defined as the mean of the distribution 
    286286//  and is needed to normalize the integral? verify this on paper.       
    287         inten *= 5.3 
     287        inten *= kWhiteBeam_Mean 
    288288 
    289289// normalize the integral        
    290         inten /= 19933          // "middle"  of peaks 
     290        inten /= kWhiteBeam_Normalization               // "middle"  of peaks 
    291291 
    292292// additional normalization??? 
     
    321321//      FUNCREF SANSModel_proto func = $funcStr 
    322322 
    323         val = V_WhiteBeamDist_mid(dum*5.3)*OneLevelX(cw,qq/dum) 
     323        val = V_WhiteBeamDist_mid(dum*kWhiteBeam_Mean)*OneLevelX(cw,qq/dum) 
    324324         
    325325        return (val) 
     
    350350        // define limits based on lo/mean, hi/mean of the wavelength distribution 
    351351        // using the empirical definition, "middle" of the peaks 
    352         loLim = 3.37/5.3 
    353         upLim = 8.37/5.3 
     352        loLim = 3.37/kWhiteBeam_Mean 
     353        upLim = 8.37/kWhiteBeam_Mean 
    354354         
    355355        inten = V_IntegrTwoLevelWB_mid(w,loLim,upLim,x) 
     
    357357// why do I need this? Is this because this is defined as the mean of the distribution 
    358358//  and is needed to normalize the integral? verify this on paper.       
    359         inten *= 5.3 
     359        inten *= kWhiteBeam_Mean 
    360360 
    361361// normalize the integral        
    362         inten /= 19933          // "middle"  of peaks 
     362        inten /= kWhiteBeam_Normalization               // "middle"  of peaks 
    363363 
    364364// additional normalization??? 
     
    393393//      FUNCREF SANSModel_proto func = $funcStr 
    394394 
    395         val = V_WhiteBeamDist_mid(dum*5.3)*TwoLevelX(cw,qq/dum) 
     395        val = V_WhiteBeamDist_mid(dum*kWhiteBeam_Mean)*TwoLevelX(cw,qq/dum) 
    396396         
    397397        return (val) 
     
    422422        // define limits based on lo/mean, hi/mean of the wavelength distribution 
    423423        // using the empirical definition, "middle" of the peaks 
    424         loLim = 3.37/5.3 
    425         upLim = 8.37/5.3 
     424        loLim = 3.37/kWhiteBeam_Mean 
     425        upLim = 8.37/kWhiteBeam_Mean 
    426426         
    427427        inten = V_IntegrThreeLevelWB_mid(w,loLim,upLim,x) 
     
    429429// why do I need this? Is this because this is defined as the mean of the distribution 
    430430//  and is needed to normalize the integral? verify this on paper.       
    431         inten *= 5.3 
     431        inten *= kWhiteBeam_Mean 
    432432 
    433433// normalize the integral        
    434         inten /= 19933          // "middle"  of peaks 
     434        inten /= kWhiteBeam_Normalization               // "middle"  of peaks 
    435435 
    436436// additional normalization??? 
     
    465465//      FUNCREF SANSModel_proto func = $funcStr 
    466466 
    467         val = V_WhiteBeamDist_mid(dum*5.3)*ThreeLevelX(cw,qq/dum) 
     467        val = V_WhiteBeamDist_mid(dum*kWhiteBeam_Mean)*ThreeLevelX(cw,qq/dum) 
    468468         
    469469        return (val) 
     
    496496        // define limits based on lo/mean, hi/mean of the wavelength distribution 
    497497        // using the empirical definition, "middle" of the peaks 
    498         loLim = 3.37/5.3 
    499         upLim = 8.37/5.3 
     498        loLim = 3.37/kWhiteBeam_Mean 
     499        upLim = 8.37/kWhiteBeam_Mean 
    500500         
    501501        inten = V_IntegrFourLevelWB_mid(w,loLim,upLim,x) 
     
    503503// why do I need this? Is this because this is defined as the mean of the distribution 
    504504//  and is needed to normalize the integral? verify this on paper.       
    505         inten *= 5.3 
     505        inten *= kWhiteBeam_Mean 
    506506 
    507507// normalize the integral        
    508         inten /= 19933          // "middle"  of peaks 
     508        inten /= kWhiteBeam_Normalization               // "middle"  of peaks 
    509509 
    510510// additional normalization??? 
     
    539539//      FUNCREF SANSModel_proto func = $funcStr 
    540540 
    541         val = V_WhiteBeamDist_mid(dum*5.3)*FourLevelX(cw,qq/dum) 
     541        val = V_WhiteBeamDist_mid(dum*kWhiteBeam_Mean)*FourLevelX(cw,qq/dum) 
    542542         
    543543        return (val) 
  • sans/Dev/trunk/NCNR_User_Procedures/Analysis/VSANS/V_WB_BroadPeak.ipf

    r1099 r1222  
    121121        // define limits based on lo/mean, hi/mean of the wavelength distribution 
    122122        // using the empirical definition, "middle" of the peaks 
    123         loLim = 3.37/5.3 
    124         upLim = 8.37/5.3 
     123        loLim = 3.37/kWhiteBeam_Mean 
     124        upLim = 8.37/kWhiteBeam_Mean 
    125125         
    126126        inten = V_IntegrBroadPeakWB_mid(w,loLim,upLim,x) 
     
    128128// why do I need this? Is this because this is defined as the mean of the distribution 
    129129//  and is needed to normalize the integral? verify this on paper.       
    130         inten *= 5.3 
     130        inten *= kWhiteBeam_Mean 
    131131 
    132132// normalize the integral        
    133         inten /= 19933          // "middle"  of peaks 
     133        inten /= kWhiteBeam_Normalization               // "middle"  of peaks 
    134134 
    135135// additional normalization??? 
     
    164164//      FUNCREF SANSModel_proto func = $funcStr 
    165165 
    166         val = V_WhiteBeamDist_mid(dum*5.3)*BroadPeakX(cw,qq/dum) 
     166        val = V_WhiteBeamDist_mid(dum*kWhiteBeam_Mean)*BroadPeakX(cw,qq/dum) 
    167167         
    168168        return (val) 
  • sans/Dev/trunk/NCNR_User_Procedures/Analysis/VSANS/V_WB_GaussSpheres.ipf

    r1209 r1222  
    121121        // define limits based on lo/mean, hi/mean of the wavelength distribution 
    122122        // using the empirical definition, "middle" of the peaks 
    123         loLim = 3.37/5.3 
    124         upLim = 8.37/5.3 
     123        loLim = 3.37/kWhiteBeam_Mean 
     124        upLim = 8.37/kWhiteBeam_Mean 
    125125         
    126126        inten = V_IntegrGaussSphereWB_mid(w,loLim,upLim,xx) 
     
    128128// why do I need this? Is this because this is defined as the mean of the distribution 
    129129//  and is needed to normalize the integral? verify this on paper.       
    130         inten *= 5.3 
     130        inten *= kWhiteBeam_Mean 
    131131 
    132132// normalize the integral        
    133         inten /= 19933          // "middle"  of peaks 
     133        inten /= kWhiteBeam_Normalization               // "middle"  of peaks 
    134134 
    135135        inten -= w[5] 
     
    167167//      FUNCREF SANSModel_proto func = $funcStr 
    168168 
    169         val = V_WhiteBeamDist_mid(dum*5.3)*GaussSpheresX(cw,qq/dum) 
     169        val = V_WhiteBeamDist_mid(dum*kWhiteBeam_Mean)*GaussSpheresX(cw,qq/dum) 
    170170         
    171171        return (val) 
Note: See TracChangeset for help on using the changeset viewer.