Ignore:
Timestamp:
Feb 19, 2016 4:37:30 PM (7 years ago)
Author:
srkline
Message:

more changes, filling in functionality of the initial data correction

File:
1 edited

Legend:

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

    r969 r981  
    5555// 
    5656 
    57  
    58 Macro Load_Nexus_V_Template() 
     57Menu "VSANS" 
     58        SubMenu "Nexus File Testing" 
     59                "Fill_Nexus_V_Template" 
     60                "Save_Nexus_V_Template" 
     61                "Load_Nexus_V_Template" 
     62                "-" 
     63                "IgorOnly_Setup_VSANS_Struct" 
     64                "IgorOnly_Save_VSANS_Nexus" 
     65                "IgorOnly_Setup_SANS_Struct" 
     66                "IgorOnly_Save_SANS_Struct" 
     67                "Setup_VSANS_DIV_Struct" 
     68                "Save_VSANS_DIV_Nexus" 
     69        End 
     70End 
     71 
     72 
     73Proc Load_Nexus_V_Template() 
    5974        H_HDF5Gate_Read_Raw("") 
    6075        String tmpStr=root:file_name  //SRK - so I can get the file name that was loaded 
     
    6681 
    6782 
    68 Macro Fill_Nexus_V_Template() 
     83Proc Fill_Nexus_V_Template() 
    6984        H_Fill_VSANS_Template_wSim() 
    7085End 
    7186 
    7287 
    73 Macro Save_Nexus_V_Template() 
     88Proc Save_Nexus_V_Template() 
    7489        H_HDF5Gate_Write_Raw("root:V_Nexus_Template:","") 
    7590End 
     
    94109 
    95110 
    96 Macro IgorOnly_Setup_VSANS_Struct() 
     111Proc IgorOnly_Setup_VSANS_Struct() 
    97112 
    98113        // lays out the tree and fills with dummy values 
     
    107122End 
    108123 
    109 Macro IgorOnly_Save_VSANS_Nexus(fileName) 
     124Proc IgorOnly_Save_VSANS_Nexus(fileName) 
    110125        String fileName="Test_VSANS_file" 
    111126 
     
    135150 
    136151 
    137 Macro IgorOnly_Setup_SANS_Struct() 
     152Proc IgorOnly_Setup_SANS_Struct() 
    138153 
    139154        // lays out the tree and fills with dummy values 
     
    148163End 
    149164 
    150 Macro IgorOnly_Save_SANS_Nexus(fileName) 
     165Proc IgorOnly_Save_SANS_Nexus(fileName) 
    151166        String fileName="Test_SANS_file" 
    152167         
     
    176191 
    177192 
     193 
    178194// TODO 
    179195// currently, there are no dummy fill values or attributes for the fake DIV file 
    180196// 
    181 Macro Setup_VSANS_DIV_Struct() 
     197Proc Setup_VSANS_DIV_Struct() 
    182198 
    183199        // lays out the tree and fills with dummy values 
     
    192208End 
    193209 
    194 Macro Save_VSANS_DIV_Nexus(fileName) 
     210Proc Save_VSANS_DIV_Nexus(fileName) 
    195211        String fileName="Test_VSANS_DIV_file" 
    196212 
     
    216232        H_HDF5Gate_Read_Raw(fileName+".h5") 
    217233         
     234End 
     235 
     236////////////// fake DIV file tests 
     237// 
     238// 
     239//      Make/O/T/N=1    file_name       = "VSANS_DIV_test.h5" 
     240// 
     241// simple generation of a fake div file. for sans, nothing other than the creation date was written to the  
     242// file header. nothing more is needed (possibly) 
     243// 
     244// TODO -- I want to re-visit the propagation of errors in the DIV file. No errors are ever calculated/saved  
     245//   during the generation of the file, but there's no reason it couldn't. the idea is that the plex 
     246//   is counted so long that the errors are insignificant compared to the data errors, but that may not 
     247//   always be the case. A bit of math may prove this. or not. Plus, the situation for VSANS may be different. 
     248// 
     249// 
     250// TODO -- make the number of pixels GLOBAL 
     251// TODO -- there will be lots of work to do to develop the procedures necessary to actually generate the  
     252//      9 data sets to become the DIV file contents. More complexity here than for the simple SANS case. 
     253// 
     254Proc H_Setup_VSANS_DIV_Structure() 
     255         
     256        NewDataFolder/O/S root:VSANS_DIV_file            
     257 
     258        NewDataFolder/O/S root:VSANS_DIV_file:entry      
     259                Make/O/T/N=1    title   = "This is a fake DIV file for VSANS" 
     260                Make/O/T/N=1    start_date      = "2015-02-28T08:15:30-5:00" 
     261                NewDataFolder/O/S root:VSANS_DIV_file:entry:instrument           
     262                        Make/O/T/N=1    name    = "NG3_VSANS" 
     263                NewDataFolder/O/S root:VSANS_DIV_file:entry:instrument:detector_B        
     264                        Make/O/D/N=(320,320)    data    = abs(gnoise(10)) 
     265                        Make/O/D/N=(320,320)    linear_data_error       = 0.01*abs(gnoise(10)) 
     266                NewDataFolder/O/S root:VSANS_DIV_file:entry:instrument:detector_MR               
     267                        Make/O/D/N=(48,128)     data    = abs(gnoise(10)) 
     268                        Make/O/D/N=(48,128)     linear_data_error       = 0.01*abs(gnoise(10)) 
     269                NewDataFolder/O/S root:VSANS_DIV_file:entry:instrument:detector_ML               
     270                        Make/O/D/N=(48,128)     data    = abs(gnoise(10)) 
     271                        Make/O/D/N=(48,128)     linear_data_error       = 0.01*abs(gnoise(10)) 
     272                NewDataFolder/O/S root:VSANS_DIV_file:entry:instrument:detector_MT               
     273                        Make/O/D/N=(128,48)     data    = abs(gnoise(10)) 
     274                        Make/O/D/N=(128,48)     linear_data_error       = 0.01*abs(gnoise(10)) 
     275                NewDataFolder/O/S root:VSANS_DIV_file:entry:instrument:detector_MB               
     276                        Make/O/D/N=(128,48)     data    = abs(gnoise(10)) 
     277                        Make/O/D/N=(128,48)     linear_data_error       = 0.01*abs(gnoise(10)) 
     278                NewDataFolder/O/S root:VSANS_DIV_file:entry:instrument:detector_FR               
     279                        Make/O/D/N=(48,128)     data    = abs(gnoise(10)) 
     280                        Make/O/D/N=(48,128)     linear_data_error       = 0.01*abs(gnoise(10)) 
     281                NewDataFolder/O/S root:VSANS_DIV_file:entry:instrument:detector_FL               
     282                        Make/O/D/N=(48,128)     data    = abs(gnoise(10)) 
     283                        Make/O/D/N=(48,128)     linear_data_error       = 0.01*abs(gnoise(10)) 
     284                NewDataFolder/O/S root:VSANS_DIV_file:entry:instrument:detector_FT               
     285                        Make/O/D/N=(128,48)     data    = abs(gnoise(10)) 
     286                        Make/O/D/N=(128,48)     linear_data_error       = 0.01*abs(gnoise(10)) 
     287                NewDataFolder/O/S root:VSANS_DIV_file:entry:instrument:detector_FB               
     288                        Make/O/D/N=(128,48)     data    = abs(gnoise(10)) 
     289                        Make/O/D/N=(128,48)     linear_data_error       = 0.01*abs(gnoise(10)) 
     290                         
     291        SetDataFolder root: 
     292 
    218293End 
    219294 
Note: See TracChangeset for help on using the changeset viewer.