source: sans/Dev/trunk/NCNR_User_Procedures/Reduction/VSANS/Nexus_VSANS_Write.ipf @ 959

Last change on this file since 959 was 959, checked in by srkline, 7 years ago

updated the file defintions, again.

File size: 76.8 KB
Line 
1#pragma rtGlobals=3             // Use modern global access method and strict wave access.
2
3
4//
5// this is a test of the "new"V SANS file structure that is supposed to be
6// NeXus compliant. It doesn't have the NICE logs, but has everything that I
7// can think of here.
8//
9
10//
11//      To properly generate a Nexus file with attributes, using Pete Jemain's procedures:
12//
13//      Generating the "current" Igor macros:
14//      - From the outlines, make a copy of the outline, and export some of the selected
15//      columns to be able to:
16//      1) Make all of the waves and folders
17//      2) Add attributes (only) to the existing tree
18//      3) Fill the tree with simulation values
19//      (still don't know here how to not lose the "=VCALC_getWavelength" statements
20//      and similar assignments. these are not part of the outline)
21//
22//
23//
24//      Generate the data file:
25//      1) Set down the folder structure:               H_Setup_SANS_Structure()
26//      2) Write in the attributes:                             H_FillSANS_Attributes()
27//      3) Fill with simulated data:                    H_FillSANS_wSim()
28//
29//      There is now a SANS_file folder which contains everything, but is not "aware"
30//      of any of references that Pete's gateway needs.
31//
32//      4) Save the folder to HDF5:                             Save_VSANS_file()
33//      attributes are not saved, but the tree is correct
34//      5) Load back in to generate xref:               H_HDF5Gate_ReadTest()
35//      no attributes loaded, but HDF5___xref is generated
36//      6) From the loaded folder, save xref:   Save_HDF5___xref()
37//      save it to disk
38//      7) Copy the reference to SANS_file:             Copy_HDF5___xref()
39//      load it from disk, and copy it to the folder
40//      8) Save the folder using the gateway:   H_HDF5Gate_WriteVSANS()
41//      now, the Nexus file is saved with attributes
42//
43
44
45
46//
47// lays out the tree and fills with dummy values
48//
49Proc H_Setup_VSANS_Structure()
50       
51        Variable n=100
52        Variable tubes=48       
53
54NewDataFolder/O/S root:VSANS_file               
55        Make/O/T/N=1    file_name       = "VSANSTest.h5"
56        Make/O/T/N=1    file_time       = "2015-02-28T08:15:30-5:00"
57        Make/O/T/N=1    facility        = "NCNR"
58        Make/O/T/N=1    NeXus_version   = "Nexus 0.0"
59        Make/O/T/N=1    hdf_version     = "hdf5.x"
60        Make/O/T/N=1    file_history    = "history log"
61        NewDataFolder/O/S root:VSANS_file:entry1               
62                Make/O/T/N=1    title   = "title of entry1"
63                Make/O/D/N=1    experiment_identifier   = 684636
64                Make/O/T/N=1    experiment_description  = "description of expt"
65                Make/O/T/N=1    entry_identifier        = "S22-33"
66                Make/O/T/N=1    definition      = "NXsas"
67                Make/O/T/N=1    start_time      = "2015-02-28T08:15:30-5:00"
68                Make/O/T/N=1    end_time        = "2015-02-28T08:15:30-5:00"
69                Make/O/D/N=1    duration        = 300
70                Make/O/D/N=1    collection_time = 300
71                Make/O/T/N=1    run_cycle       = "S22-23"
72                Make/O/T/N=1    data_directory  = "[VSANS_VSANS]"
73                Make/O/T/N=1    program_name    = "runPoint={stuff}"
74                NewDataFolder/O/S root:VSANS_file:entry1:user           
75                        Make/O/T/N=1    name    = "Dr. Pi"
76                        Make/O/T/N=1    role    = "evil scientist"
77                        Make/O/T/N=1    affiliation     = "NIST"
78                        Make/O/T/N=1    address = "100 Bureau Drive"
79                        Make/O/T/N=1    telephoneNumber = "301-999-9999"
80                        Make/O/T/N=1    faxNumber       = "301-999-9999"
81                        Make/O/T/N=1    email   = "sans@nist"
82                        Make/O/I/N=1    facility_user_id        = 6937596
83                NewDataFolder/O/S root:VSANS_file:entry1:control               
84                        Make/O/T/N=1    mode    = "timer"
85                        Make/O/D/N=1    preset  = 555
86                        Make/O/D/N=1    integral        = 555
87                        Make/O/D/N=1    monitor_counts  = 666
88                        Make/O/D/N=1    monitor_preset  = 1e8
89                        //Make/O/T/N=1  type    = "monitor type"
90                        //Make/O/D/N=1  efficiency      = 0.01
91                        //Make/O/D/N=1  sampled_fraction        = 1
92                        Make/O/D/N=1    detector_counts = 100111222
93                        Make/O/D/N=1    detector_preset = 1e5
94                        Make/O/D/N=1    count_start     = 1
95                        Make/O/D/N=1    count_end       = 1
96                        Make/O/D/N=1    count_time      = 1
97                        Make/O/D/N=1    count_time_preset       = 1
98                //NewDataFolder/O/S root:VSANS_file:entry1:program_name //program_data 
99                        //Make/O/T/N=1  //data  = "program data"
100                        //Make/O/T/N=1  //description   = "acquisition"
101                        //Make/O/T/N=1  //file_name     = "NICE"
102                        //Make/O/T/N=1  //type  = "client"
103                NewDataFolder/O/S root:VSANS_file:entry1:sample         
104                        Make/O/T/N=1    description     = "My Sample"
105                        Make/O/D/N=1    group_id        = 12345
106                        //Make/O/T/N=1  //chemical_formula      = "C8H10N4O2"
107                        NewDataFolder/O/S root:VSANS_file:entry1:sample:temperature_1           
108                                Make/O/T/N=1    name    = "Sample temperature"
109                                Make/O/T/N=1    attached_to     = "block"
110                                Make/O/T/N=1    measurement     = "temperature"
111                                NewDataFolder/O/S root:VSANS_file:entry1:sample:temperature_1:value_log         
112                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
113                                        Make/O/D/N=(n)  nx_time = p
114                                        Make/O/D/N=(n)  value   = 2*p
115                        NewDataFolder/O/S root:VSANS_file:entry1:sample:temperature_2           
116                                Make/O/T/N=1    name    = "Sample temperature"
117                                Make/O/T/N=1    attached_to     = "block"
118                                Make/O/T/N=1    measurement     = "temperature"
119                                NewDataFolder/O/S root:VSANS_file:entry1:sample:temperature_2:value_log         
120                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
121                                        Make/O/D/N=(n)  nx_time = p
122                                        Make/O/D/N=(n)  value   = 3*p
123                        NewDataFolder/O/S root:VSANS_file:entry1:sample:electric_field         
124                                Make/O/T/N=1    name    = "electric meter"
125                                Make/O/T/N=1    attached_to     = "sample"
126                                Make/O/T/N=1    measurement     = "voltage"
127                                NewDataFolder/O/S root:VSANS_file:entry1:sample:electric_field:value_log               
128                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
129                                        Make/O/D/N=(n)  nx_time = 2*p
130                                        Make/O/D/N=(n)  value   = sin(p/10)
131                        NewDataFolder/O/S root:VSANS_file:entry1:sample:shear_field             
132                                Make/O/T/N=1    name    = "rheometer"
133                                Make/O/T/N=1    attached_to     = "sample"
134                                Make/O/T/N=1    measurement     = "stress"
135                                NewDataFolder/O/S root:VSANS_file:entry1:sample:shear_field:value_log           
136                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
137                                        Make/O/D/N=(n)  nx_time = p
138                                        Make/O/D/N=(n)  value   = cos(p/5)
139                        NewDataFolder/O/S root:VSANS_file:entry1:sample:pressure               
140                                Make/O/T/N=1    name    = "Sample pressure"
141                                Make/O/T/N=1    attached_to     = "pressure cell"
142                                Make/O/T/N=1    measurement     = "pressure"
143                                NewDataFolder/O/S root:VSANS_file:entry1:sample:pressure:value_log             
144                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
145                                        Make/O/D/N=(n)  nx_time = p
146                                        Make/O/D/N=(n)  value   = p/2
147                        NewDataFolder/O/S root:VSANS_file:entry1:sample:magnetic_field         
148                                Make/O/T/N=1    name    = "magnetic field (direction)"
149                                Make/O/T/N=1    attached_to     = "cryostat"
150                                Make/O/T/N=1    measurement     = "magnetic field"
151                                NewDataFolder/O/S root:VSANS_file:entry1:sample:magnetic_field:value_log               
152                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
153                                        Make/O/D/N=(n)  nx_time = p
154                                        Make/O/D/N=(n)  value   = 10*p
155                        SetDataFolder root:VSANS_file:entry1:sample             
156                        Make/O/D/N=1    changer_position        = 5
157                        Make/O/T/N=1    sample_holder_description       = "10CB"
158                        //Make/O/D/N=1  //mass  = 0.3
159                        //Make/O/D/N=1  //density       = 1.02
160                        //Make/O/D/N=1  //molecular_weight      = 194.19
161                        //Make/O/T/N=1  //description   = "My Sample"
162                        //Make/O/T/N=1  //preparation_date      = "2015-02-28T08:15:30-5:00"
163                        //Make/O/D/N=1  //volume_fraction       = 0.2
164                        //Make/O/D/N=1  //scattering_length_density     = 6.35e-6
165                        Make/O/D/N=1    thickness       = 0.1
166                        Make/O/D/N=1    rotation_angle  = 30
167                        Make/O/D/N=1    transmission    = 0.888
168                        Make/O/D/N=1    transmission_error      = 0.011
169                        //Make/O/D/N=1  //xs_incoh      = 5.5
170                        //Make/O/D/N=1  //xs_coh        = 22.2
171                        //Make/O/D/N=1  //xs_absorb     = 3.1
172                NewDataFolder/O/S root:VSANS_file:entry1:instrument             
173                        //Make/O/T/N=1  //location      = "NCNR"
174                        Make/O/T/N=1    name    = "NG3-VSANS"
175                        Make/O/T/N=1    type    = "VSANS"
176                        Make/O/T/N=1    local_contact   = "Steve Kline"
177                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:source             
178                                Make/O/T/N=1    name    = "NCNR"
179                                Make/O/T/N=1    type    = "Reactor Neutron Source"
180                                Make/O/T/N=1    probe   = "neutron"
181                                Make/O/D/N=1    power   = 20
182                                       
183                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:beam_monitor_norm           
184                                Make/O/D/N=1    data    = 1234567
185                                Make/O/T/N=1    type    = "monitor"
186                                Make/O/D/N=1    efficiency      = 0.01
187                                Make/O/D/N=1    nx_distance     = 16
188                                Make/O/D/N=1    saved_count     = 1e8
189                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:beam_monitor_low                   
190                                Make/O/D/N=1    data    = 1234567
191                                Make/O/T/N=1    type    = "monitor"
192                                Make/O/D/N=1    efficiency      = 0.001
193                                Make/O/D/N=1    nx_distance     = 16
194                                Make/O/D/N=1    saved_count     = 1e8
195                                       
196                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:monochromator               
197                                Make/O/D/N=1    wavelength      = 5.1
198                                Make/O/D/N=1    wavelength_spread       = 0.02
199                                Make/O/T/N=1    type    = "VS"
200                                NewDataFolder/O/S root:VSANS_file:entry1:instrument:monochromator:velocity_selector             
201                                        Make/O/T/N=1    status  = "in"
202                                        Make/O/D/N=1    rotation_speed  = 5100
203                                        Make/O/D/N=1    wavelength      = 6
204                                        Make/O/D/N=1    wavelength_spread       = 0.15
205                                        Make/O/D/N=1    vs_tilt = 3
206                                        Make/O/D/N=1    nx_distance     = 18.8
207                                                // table (wave)
208                                NewDataFolder/O/S root:VSANS_file:entry1:instrument:monochromator:crystal               
209                                        Make/O/T/N=1    status  = "in"
210                                        Make/O/D/N=1    nx_distance     = 1
211                                        Make/O/D/N=1    wavelength      = 5.1
212                                        Make/O/D/N=1    wavelength_spread       = 0.02
213                                        Make/O/D/N=1    rotation        = 1.1
214                                        Make/O/D/N=1    energy  = 1
215                                        Make/O/D/N=1    wavevector      = 1
216                                        Make/O/D/N=1    lattice_parameter       = 1
217                                        Make/O/D/N=3    reflection      = {1,2,3}
218                                        Make/O/D/N=1    horizontal_curvature    = 1
219                                        Make/O/D/N=1    vertical_curvature      = 1
220                                        Make/O/D/N=1    horizontal_aperture     = 1
221                                        Make/O/D/N=1    vertical_aperture       = 1
222                                NewDataFolder/O/S root:VSANS_file:entry1:instrument:monochromator:white_beam           
223                                        Make/O/T/N=1    status  = "in"
224                                        Make/O/D/N=1    wavelength      = 5.1
225                                        Make/O/D/N=1    wavelength_spread       = 0.8
226                                                // description_of_distribution 
227                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:chopper             
228                                Make/O/T/N=1    status  = "in"
229                                Make/O/T/N=1    type    = "single"
230                                Make/O/D/N=1    rotation_speed  = 12000
231                                Make/O/D/N=1    distance_from_source    = 400
232                                Make/O/D/N=1    distance_from_sample    = 1500
233                                Make/O/D/N=1    slits   = 2
234                                Make/O/D/N=1    angular_opening = 15
235                                Make/O/D/N=1    duty_cycle      = 0.25
236                                        // +?   
237                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:polarizer           
238                                Make/O/T/N=1    status  = "in"
239                                Make/O/T/N=1    type    = "supermirror"
240                                Make/O/T/N=1    composition     = "multilayer"
241                                Make/O/D/N=1    efficiency      = 0.95
242                                Make/O/T/N=1    status  = "in"
243                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:flipper             
244                                Make/O/T/N=1    status  = "on"
245                                Make/O/D/N=1    driving_current = 42
246                                Make/O/T/N=1    waveform        = "sine"
247                                Make/O/D/N=1    frequency       = 400
248                                Make/O/D/N=1    transmitted_power       = 0.99
249                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:polarizer_analyzer         
250                                Make/O/T/N=1    status  = "down"
251                                Make/O/D/N=1    guide_field_current_1   = 33
252                                Make/O/D/N=1    guide_field_current_2   = 32
253                                Make/O/D/N=1    solenoid_current        = 21
254                                Make/O/D/N=1    cell_index      = 1
255                                Make/O/T/N=(5)  cell_names      = {"Burgundy","Olaf","Jim","Bob","Joe"}
256                                Make/O/D/N=(5,2)        cell_parameters = 1
257                                       
258                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:attenuator         
259                                Make/O/D/N=1    nx_distance     = 1500
260                                Make/O/T/N=1    type    = "PMMA"
261                                Make/O/D/N=1    thickness       = 0
262                                Make/O/D/N=1    attenuator_transmission = 1
263                                Make/O/T/N=1    status  = "in"
264                                Make/O/T/N=1    atten_number    = "0101"
265                                Make/O/D/N=(10,10)      index   = 1
266                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:source_aperture             
267                                Make/O/T/N=1    material        = "Gd"
268                                Make/O/T/N=1    description     = "source aperture"
269                                Make/O/D/N=1    diameter        = 1.27
270                                Make/O/D/N=1    nx_distance     = 13.0
271                                NewDataFolder/O/S root:VSANS_file:entry1:instrument:source_aperture:shape                       
272                                        Make/O/D/N=(1,2)        size    = 1.27
273                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:sample_aperture             
274                                Make/O/T/N=1    material        = "Gd"
275                                Make/O/T/N=1    description     = "sample aperture"
276                                Make/O/D/N=1    diameter        = 1.27
277                                Make/O/D/N=1    nx_distance     = 10
278                                NewDataFolder/O/S root:VSANS_file:entry1:instrument:sample_aperture:shape                       
279                                        Make/O/D/N=(1,2)        size    = 1.27
280                        NewDataFolder/O/S  root:VSANS_file:entry1:instrument:collimator         
281                                NewDataFolder/O/S root:VSANS_file:entry1:instrument:collimator:geometry         
282                                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:collimator:geometry:shape           
283                                                Make/O/T/N=1    shape   = "box"
284                                                Make/O/D/N=1    size    = 11
285                                Make/O/I/N=1    nx_NumGuides    = 1
286                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:converging_pinholes         
287                                Make/O/T/N=1    status  = "in"
288                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:converging_slits           
289                                Make/O/T/N=1    status  = "in"
290                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:lenses             
291                                Make/O/T/N=1    status  = "in"
292                                Make/O/T/N=1    lens_geometry   = "concave_lens"
293                                Make/O/T/N=1    focus_type      = "point"
294                                Make/O/I/N=1    number_of_lenses        = 28
295                                Make/O/I/N=1    number_of_prisms        = 7
296                                Make/O/D/N=1    curvature       = 1
297                                Make/O/D/N=1    lens_distance   = 123
298                                Make/O/D/N=1    prism_distance  = 123
299                                Make/O/T/N=1    lens_material   = "MgF2"
300                                Make/O/T/N=1    prism_material  = "MgF2"
301                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:sample_table               
302                                Make/O/T/N=1    location        = "chamber"
303                                Make/O/D/N=1    offset_distance = 0
304                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:beam_stop           
305                                Make/O/T/N=1    status  = "out"
306                                Make/O/T/N=1    description     = "circular"
307                                Make/O/D/N=1    nx_distance     = 12.5
308                                Make/O/D/N=1    size    = 7.62
309                                Make/O/D/N=1    xPos    = 66.4
310                                Make/O/D/N=1    yPos    = 64.4
311                                Make/O/D/N=1    x_motor_position        = 0.15
312                                Make/O/D/N=1    y_motor_position        = 0.55
313                                       
314                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_B         
315                                Make/O/I/N=(320,320)    data    = trunc(abs(gnoise(p+q)))
316                                //Make/O/D/N=(320,320)  //data_error    = 0.01*abs(gnoise(p+q))
317                                Make/O/D/N=1    nx_distance     = 21.1
318                                Make/O/T/N=1    description     = "fancy model"
319                                Make/O/T/N=1    settings        = "just right"
320                                Make/O/D/N=1    dead_time       = 5e-6
321                                Make/O/D/N=1    x_pixel_size    = 5.08
322                                Make/O/D/N=1    y_pixel_size    = 5.08
323                                Make/O/D/N=1    beam_center_x   = 165.55
324                                Make/O/D/N=1    beam_center_y   = 162.33
325                                Make/O/T/N=1    type    = "??"
326                                //Make/O/D/N=1  //flatfield_applied     = 0
327                                //Make/O/D/N=1  //countrate_correction_applied  = 0
328                                Make/O/D/N=(320,320)    pixel_mask      = 0
329                                Make/O/I/N=1    integrated_count        = 100111222
330                                Make/O/D/N=1    lateral_offset  = 20
331                                Make/O/I/N=1    PixelNumX       = 320
332                                Make/O/I/N=1    PixelNumY       = 320
333                                Make/O/D/N=1    PixelFWHM       = 0.5
334                                Make/O/D/N=3    CALX    = {0.5,0.5,10000}
335                                Make/O/D/N=3    CALY    = {0.5,0.5,10000}
336                                Make/O/D/N=1    size    = 65
337                                Make/O/T/N=1    event_file_name ="something.hst"
338                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_MR                 
339                                Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
340                                //Make/O/D/N=(48,256)   //data_error    = 0.01*abs(gnoise(p+q))
341                                Make/O/D/N=1    nx_distance     = 13.1
342                                Make/O/T/N=1    description     = "fancy model"
343                                Make/O/T/N=1    settings        = "just right"
344                                Make/O/D/N=1    dead_time       = 5e-6
345                                Make/O/D/N=1    x_pixel_size    = 5.08
346                                Make/O/D/N=1    y_pixel_size    = 5.08
347                                Make/O/D/N=1    beam_center_x   = 65.55
348                                Make/O/D/N=1    beam_center_y   = 62.33
349                                Make/O/T/N=1    type    = "??"
350                                //Make/O/D/N=1  //flatfield_applied     = 0
351                                //Make/O/D/N=1  //countrate_correction_applied  = 0
352                                Make/O/D/N=(48,256)     pixel_mask      = 0
353                                Make/O/I/N=1    integrated_count        = 100111222
354                                Make/O/D/N=1    lateral_offset  = 20
355                                Make/O/D/N=1    separation      = 150
356                                Make/O/I/N=1    PixelNumX       = 48
357                                Make/O/I/N=1    PixelNumY       = 256
358                                Make/O/D/N=1    PixelFWHM       = 0.5
359                                Make/O/D/N=1    size    = 65
360                                Make/O/T/N=1    event_file_name ="something.hst"
361                                Make/O/T/N=1    tube_orientation        = "vertical"
362                                Make/O/I/N=1    number_of_tubes = 48
363                                Make/O/I/N=(tubes)      tube_index      = p
364                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
365                                Make/O/D/N=1    tube_width      = 8
366                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_ML                 
367                                Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
368                                //Make/O/D/N=(48,256)   //data_error    = 0.01*abs(gnoise(p+q))
369                                Make/O/D/N=1    nx_distance     = 13.1
370                                Make/O/T/N=1    description     = "fancy model"
371                                Make/O/T/N=1    settings        = "just right"
372                                Make/O/D/N=1    dead_time       = 5e-6
373                                Make/O/D/N=1    x_pixel_size    = 5.08
374                                Make/O/D/N=1    y_pixel_size    = 5.08
375                                Make/O/D/N=1    beam_center_x   = 65.55
376                                Make/O/D/N=1    beam_center_y   = 62.33
377                                Make/O/T/N=1    type    = "??"
378                                //Make/O/D/N=1  //flatfield_applied     = 0
379                                //Make/O/D/N=1  //countrate_correction_applied  = 0
380                                Make/O/D/N=(48,256)     pixel_mask      = 0
381                                Make/O/I/N=1    integrated_count        = 100111222
382                                Make/O/D/N=1    lateral_offset  = 20
383                                Make/O/D/N=1    separation      = 150
384                                Make/O/I/N=1    PixelNumX       = 48
385                                Make/O/I/N=1    PixelNumY       = 256
386                                Make/O/D/N=1    PixelFWHM       = 0.5
387                                Make/O/D/N=1    size    = 65
388                                Make/O/T/N=1    event_file_name ="something.hst"
389                                Make/O/T/N=1    tube_orientation        = "vertical"
390                                Make/O/I/N=1    number_of_tubes = 48
391                                Make/O/I/N=(tubes)      tube_index      = p
392                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
393                                Make/O/D/N=1    tube_width      = 8
394                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_MT         
395                                Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
396                                //Make/O/D/N=(128,48)   //data_error    = 0.01*abs(gnoise(p+q))
397                                Make/O/D/N=1    nx_distance     = 13.4
398                                Make/O/T/N=1    description     = "fancy model"
399                                Make/O/T/N=1    settings        = "just right"
400                                Make/O/D/N=1    dead_time       = 5e-6
401                                Make/O/D/N=1    x_pixel_size    = 5.08
402                                Make/O/D/N=1    y_pixel_size    = 5.08
403                                Make/O/D/N=1    beam_center_x   = 65.55
404                                Make/O/D/N=1    beam_center_y   = 62.33
405                                Make/O/T/N=1    type    = "??"
406                                //Make/O/D/N=1  //flatfield_applied     = 0
407                                //Make/O/D/N=1  //countrate_correction_applied  = 0
408                                Make/O/D/N=(128,48)     pixel_mask      = 0
409                                Make/O/I/N=1    integrated_count        = 100111222
410                                Make/O/D/N=1    lateral_offset  = 20
411                                Make/O/D/N=1    sdd_offset      = 30
412                                Make/O/D/N=1    separation      = 150
413                                Make/O/I/N=1    PixelNumX       = 128
414                                Make/O/I/N=1    PixelNumY       = 48
415                                Make/O/D/N=1    PixelFWHM       = 0.5
416                                Make/O/D/N=1    size    = 65
417                                Make/O/T/N=1    event_file_name ="something.hst"
418                                Make/O/T/N=1    tube_orientation        = "horizontal"
419                                Make/O/I/N=1    number_of_tubes = 48
420                                Make/O/I/N=(tubes)      tube_index      = p
421                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
422                                Make/O/D/N=1    tube_width      = 8
423                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_MB         
424                                Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
425                                //Make/O/D/N=(128,48)   //data_error    = 0.01*abs(gnoise(p+q))
426                                Make/O/D/N=1    nx_distance     = 13.4
427                                Make/O/T/N=1    description     = "fancy model"
428                                Make/O/T/N=1    settings        = "just right"
429                                Make/O/D/N=1    dead_time       = 5e-6
430                                Make/O/D/N=1    x_pixel_size    = 5.08
431                                Make/O/D/N=1    y_pixel_size    = 5.08
432                                Make/O/D/N=1    beam_center_x   = 65.55
433                                Make/O/D/N=1    beam_center_y   = 62.33
434                                Make/O/T/N=1    type    = "??"
435                                //Make/O/D/N=1  //flatfield_applied     = 0
436                                //Make/O/D/N=1  //countrate_correction_applied  = 0
437                                Make/O/D/N=(128,48)     pixel_mask      = 0
438                                Make/O/I/N=1    integrated_count        = 100111222
439                                Make/O/D/N=1    lateral_offset  = 20
440                                Make/O/D/N=1    sdd_offset      = 30
441                                Make/O/D/N=1    separation      = 150
442                                Make/O/I/N=1    PixelNumX       = 128
443                                Make/O/I/N=1    PixelNumY       = 48
444                                Make/O/D/N=1    PixelFWHM       = 0.5
445                                Make/O/D/N=1    size    = 65
446                                Make/O/T/N=1    event_file_name ="something.hst"
447                                Make/O/T/N=1    tube_orientation        = "horizontal"
448                                Make/O/I/N=1    number_of_tubes = 48
449                                Make/O/I/N=(tubes)      tube_index      = p
450                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
451                                Make/O/D/N=1    tube_width      = 8
452                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_FR                 
453                                Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
454                                //Make/O/D/N=(48,256)   //data_error    = 0.01*abs(gnoise(p+q))
455                                Make/O/D/N=1    nx_distance     = 2.1
456                                Make/O/T/N=1    description     = "fancy model"
457                                Make/O/T/N=1    settings        = "just right"
458                                Make/O/D/N=1    dead_time       = 5e-6
459                                Make/O/D/N=1    x_pixel_size    = 5.08
460                                Make/O/D/N=1    y_pixel_size    = 5.08
461                                Make/O/D/N=1    beam_center_x   = 65.55
462                                Make/O/D/N=1    beam_center_y   = 62.33
463                                Make/O/T/N=1    type    = "??"
464                                //Make/O/D/N=1  //flatfield_applied     = 0
465                                //Make/O/D/N=1  //countrate_correction_applied  = 0
466                                Make/O/D/N=(48,256)     pixel_mask      = 0
467                                Make/O/I/N=1    integrated_count        = 100111222
468                                Make/O/D/N=1    lateral_offset  = 20
469                                Make/O/D/N=1    separation      = 150
470                                Make/O/I/N=1    PixelNumX       = 48
471                                Make/O/I/N=1    PixelNumY       = 256
472                                Make/O/D/N=1    PixelFWHM       = 0.5
473                                Make/O/D/N=1    size    = 65
474                                Make/O/T/N=1    event_file_name ="something.hst"
475                                Make/O/T/N=1    tube_orientation        = "vertical"
476                                Make/O/I/N=1    number_of_tubes = 48
477                                Make/O/I/N=(tubes)      tube_index      = p
478                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
479                                Make/O/D/N=1    tube_width      = 8
480                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_FL                 
481                                Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
482                                //Make/O/D/N=(48,256)   //data_error    = 0.01*abs(gnoise(p+q))
483                                Make/O/D/N=1    nx_distance     = 2.1
484                                Make/O/T/N=1    description     = "fancy model"
485                                Make/O/T/N=1    settings        = "just right"
486                                Make/O/D/N=1    dead_time       = 5e-6
487                                Make/O/D/N=1    x_pixel_size    = 5.08
488                                Make/O/D/N=1    y_pixel_size    = 5.08
489                                Make/O/D/N=1    beam_center_x   = 65.55
490                                Make/O/D/N=1    beam_center_y   = 62.33
491                                Make/O/T/N=1    type    = "??"
492                                //Make/O/D/N=1  //flatfield_applied     = 0
493                                //Make/O/D/N=1  //countrate_correction_applied  = 0
494                                Make/O/D/N=(48,256)     pixel_mask      = 0
495                                Make/O/I/N=1    integrated_count        = 100111222
496                                Make/O/D/N=1    lateral_offset  = 20
497                                Make/O/D/N=1    separation      = 150
498                                Make/O/I/N=1    PixelNumX       = 48
499                                Make/O/I/N=1    PixelNumY       = 256
500                                Make/O/D/N=1    PixelFWHM       = 0.5
501                                Make/O/D/N=1    size    = 65
502                                Make/O/T/N=1    event_file_name ="something.hst"
503                                Make/O/T/N=1    tube_orientation        = "vertical"
504                                Make/O/I/N=1    number_of_tubes = 48
505                                Make/O/I/N=(tubes)      tube_index      = p
506                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
507                                Make/O/D/N=1    tube_width      = 8
508                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_FT         
509                                Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
510                                //Make/O/D/N=(128,48)   //data_error    = 0.01*abs(gnoise(p+q))
511                                Make/O/D/N=1    nx_distance     = 2.1
512                                Make/O/T/N=1    description     = "fancy model"
513                                Make/O/T/N=1    settings        = "just right"
514                                Make/O/D/N=1    dead_time       = 5e-6
515                                Make/O/D/N=1    x_pixel_size    = 5.08
516                                Make/O/D/N=1    y_pixel_size    = 5.08
517                                Make/O/D/N=1    beam_center_x   = 65.55
518                                Make/O/D/N=1    beam_center_y   = 62.33
519                                Make/O/T/N=1    type    = "??"
520                                //Make/O/D/N=1  //flatfield_applied     = 0
521                                //Make/O/D/N=1  //countrate_correction_applied  = 0
522                                Make/O/D/N=(128,48)     pixel_mask      = 0
523                                Make/O/I/N=1    integrated_count        = 100111222
524                                Make/O/D/N=1    lateral_offset  = 20
525                                Make/O/D/N=1    sdd_offset      = 30
526                                Make/O/D/N=1    separation      = 150
527                                Make/O/I/N=1    PixelNumX       = 128
528                                Make/O/I/N=1    PixelNumY       = 48
529                                Make/O/D/N=1    PixelFWHM       = 0.5
530                                Make/O/D/N=1    size    = 65
531                                Make/O/T/N=1    event_file_name ="something.hst"
532                                Make/O/T/N=1    tube_orientation        = "horizontal"
533                                Make/O/I/N=1    number_of_tubes = 48
534                                Make/O/I/N=(tubes)      tube_index      = p
535                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
536                                Make/O/D/N=1    tube_width      = 8
537                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_FB         
538                                Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
539                                //Make/O/D/N=(128,48)   //data_error    = 0.01*abs(gnoise(p+q))
540                                Make/O/D/N=1    nx_distance     = 2.1
541                                Make/O/T/N=1    description     = "fancy model"
542                                Make/O/T/N=1    settings        = "just right"
543                                Make/O/D/N=1    dead_time       = 5e-6
544                                Make/O/D/N=1    x_pixel_size    = 5.08
545                                Make/O/D/N=1    y_pixel_size    = 5.08
546                                Make/O/D/N=1    beam_center_x   = 65.55
547                                Make/O/D/N=1    beam_center_y   = 62.33
548                                Make/O/T/N=1    type    = "??"
549                                //Make/O/D/N=1  //flatfield_applied     = 0
550                                //Make/O/D/N=1  //countrate_correction_applied  = 0
551                                Make/O/D/N=(128,48)     pixel_mask      = 0
552                                Make/O/I/N=1    integrated_count        = 100111222
553                                Make/O/D/N=1    lateral_offset  = 20
554                                Make/O/D/N=1    sdd_offset      = 30
555                                Make/O/D/N=1    separation      = 150
556                                Make/O/I/N=1    PixelNumX       = 128
557                                Make/O/I/N=1    PixelNumY       = 48
558                                Make/O/D/N=1    PixelFWHM       = 0.5
559                                Make/O/D/N=1    size    = 65
560                                Make/O/T/N=1    event_file_name ="something.hst"
561                                Make/O/T/N=1    tube_orientation        = "horizontal"
562                                Make/O/I/N=1    number_of_tubes = 48
563                                Make/O/I/N=(tubes)      tube_index      = p
564                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
565                                Make/O/D/N=1    tube_width      = 8
566                                       
567                                       
568                NewDataFolder/O/S root:VSANS_file:entry1:data_B         
569                        Make/O/I/N=(320,320)    data    = trunc(abs(gnoise(p+q)))
570                        //Make/O/D/N=(320,320)  //error = 0.01*abs(gnoise(p+q))
571                        Make/O/D/N=2    variables       = {320,320}
572                        Make/O/I/N=(320,320)    data_image      = p
573                NewDataFolder/O/S root:VSANS_file:entry1:data_MR               
574                        Make/O/i/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
575                        //Make/O/D/N=(48,256)   //error = 0.01*abs(gnoise(p+q))
576                        Make/O/D/N=2    variables       = {48,256}
577                        Make/O/I/N=(48,256)     data_image      = p
578                NewDataFolder/O/S root:VSANS_file:entry1:data_ML               
579                        Make/O/i/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
580                        //Make/O/D/N=(48,256)   //error = 0.01*abs(gnoise(p+q))
581                        Make/O/D/N=2    variables       = {48,256}
582                        Make/O/I/N=(48,256)     data_image      = p
583                NewDataFolder/O/S root:VSANS_file:entry1:data_MT               
584                        Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
585                        //Make/O/D/N=(128,48)   //error = 0.01*abs(gnoise(p+q))
586                        Make/O/D/N=2    variables       = {128,48}
587                        Make/O/I/N=(128,48)     data_image      = p
588                NewDataFolder/O/S root:VSANS_file:entry1:data_MB               
589                        Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
590                        //Make/O/D/N=(128,48)   //error = 0.01*abs(gnoise(p+q))
591                        Make/O/D/N=2    variables       = {128,48}
592                        Make/O/I/N=(128,48)     data_image      = p
593                NewDataFolder/O/S root:VSANS_file:entry1:data_FR               
594                        Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
595                        //Make/O/D/N=(48,256)   //error = 0.01*abs(gnoise(p+q))
596                        Make/O/D/N=2    variables       = {48,256}
597                        Make/O/I/N=(48,256)     data_image      = p
598                NewDataFolder/O/S root:VSANS_file:entry1:data_FL               
599                        Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
600                        //Make/O/D/N=(48,256)   //error = 0.01*abs(gnoise(p+q))
601                        Make/O/D/N=2    variables       = {48,256}
602                        Make/O/I/N=(48,256)     data_image      = p
603                NewDataFolder/O/S root:VSANS_file:entry1:data_FT               
604                        Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
605                        //Make/O/D/N=(128,48)   //error = 0.01*abs(gnoise(p+q))
606                        Make/O/D/N=2    variables       = {128,48}
607                        Make/O/I/N=(128,48)     data_image      = p
608                NewDataFolder/O/S root:VSANS_file:entry1:data_FB               
609                        Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
610                        //Make/O/D/N=(128,48)   //error = 0.01*abs(gnoise(p+q))
611                        Make/O/D/N=2    variables       = {128,48}
612                        Make/O/I/N=(128,48)     data_image      = p
613                               
614                NewDataFolder/O/S root:VSANS_file:entry1:reduction             
615                        Make/O/T/N=1    intent  = "SCATTER"
616                        Make/O/T/N=1    transmission_file_name  = "SANSFile_TRN.h5"
617                        Make/O/T/N=1    empty_beam_file_name    = "SANSFile_EB.h5"
618                        Make/O/T/N=1    background_file_name    = "SANSFile_BKG.h5"
619                        Make/O/T/N=1    empty_file_name = "SANSFile_EMP.h5"
620                        Make/O/T/N=1    sensitivity_file_name   = "SANSFile_DIV.h5"
621                        Make/O/T/N=1    mask_file_name  = "SANSFile_MASK.h5"
622                        Make/O/T/N=1    sans_log_file_name      = "SANSFile_log.txt"
623                        Make/O/D/N=1    whole_trans     = 0.888
624                        Make/O/D/N=1    whole_trans_error       = 0.008
625                        Make/O/D/N=1    box_count       = 23232
626                        Make/O/D/N=1    box_count_error = 22
627                        Make/O/I/N=4    box_coordinates = {50,80,45,75}
628                        Make/O/T/N=1    comments        = "extra data comments"
629                        Make/O/D/N=4    absolute_scaling        = {1,1,1e5,1}
630                        NewDataFolder/O/S root:VSANS_file:entry1:reduction:pol_sans                     
631                                Make/O/T/N=1    pol_sans_purpose        = "name from the list"
632                                Make/O/T/N=1    cell_name       = "Burgundy"
633                                Make/O/D/N=(5)  cell_parameters = {1,2,3,4,5}
634                                               
635        NewDataFolder/O/S root:VSANS_file:DAS_Logs             
636                        //...multiple entries and levels... to add     
637                        //this will be enormous
638
639
640
641
642        SetDataFolder root:
643       
644End
645
646// writes in the attributes
647Proc H_Fill_VSANS_Attributes()
648
649SetDataFolder  root:VSANS_file         
650        Make/O/N=0 Igor___folder_attributes     
651        Note/K Igor___folder_attributes, "producer=IgorPro\rNX_class=NXroot"
652        //      file_name               
653        //      file_time               
654        //      facility               
655        //      NeXus_version           
656        //      hdf_version             
657        //      file_history           
658        SetDataFolder root:VSANS_file:entry1           
659                Make/O/N=0 Igor___folder_attributes     
660                Note/K Igor___folder_attributes, "NX_class=NXentry"
661                //      title           
662                //      experiment_identifier           
663                //      experiment_description         
664                //      entry_identifier               
665                //      definition             
666                //      start_time             
667                //      end_time               
668                //      duration               
669                Note/K duration, "units=s"
670                //      collection_time         
671                Note/K collection_time, "units=s"
672                //      run_cycle               
673                //      data_directory         
674                //      program_name           
675                SetDataFolder root:VSANS_file:entry1:user               
676                        Make/O/N=0 Igor___folder_attributes     
677                        Note/K Igor___folder_attributes, "NX_class=NXuser"
678                        //      name           
679                        //      role           
680                        //      affiliation             
681                        //      address         
682                        //      telephoneNumber         
683                        //      faxNumber               
684                        //      email           
685                        //      facility_user_id               
686                SetDataFolder root:VSANS_file:entry1:control           
687                        Make/O/N=0 Igor___folder_attributes     
688                        Note/K Igor___folder_attributes, "NX_class=NXmonitor"
689                        //      mode           
690                        //      preset         
691                        //      integral               
692                        //      monitor_counts         
693                        //      monitor_preset         
694                        ////    type           
695                        ////    efficiency             
696                        ////    sampled_fraction               
697                        //      detector_counts         
698                        //      detector_preset         
699                        //      count_start             
700                        Note/K count_start, "units=s"
701                        //      count_end               
702                        Note/K count_end, "units=s"
703                        //      count_time             
704                        Note/K count_time, "units=s"
705                        //      count_time_preset               
706                        Note/K count_time_preset, "units=s"
707                //SetDataFolder root:VSANS_file:entry1:program_name     //program_data         
708                        ////    //data         
709                        ////    //description           
710                        ////    //file_name             
711                        ////    //type         
712                SetDataFolder root:VSANS_file:entry1:sample             
713                        Make/O/N=0 Igor___folder_attributes     
714                        Note/K Igor___folder_attributes, "NX_class=NXsample"
715                        //      description             
716                        //      group_id               
717                        ////    //chemical_formula             
718                        SetDataFolder root:VSANS_file:entry1:sample:temperature_1               
719                                Make/O/N=0 Igor___folder_attributes     
720                                Note/K Igor___folder_attributes, "NX_class=NXsensor"
721                                //      name           
722                                //      attached_to             
723                                //      measurement             
724                                SetDataFolder root:VSANS_file:entry1:sample:temperature_1:value_log             
725                                        Make/O/N=0 Igor___folder_attributes     
726                                        Note/K Igor___folder_attributes, "NX_class=NXlog"
727                                        //      start           
728                                        //      nx_time         
729                                        Note/K nx_time, "units=s"
730                                        //      value           
731                                        Note/K value, "units=C"
732                        SetDataFolder root:VSANS_file:entry1:sample:temperature_2               
733                                Make/O/N=0 Igor___folder_attributes     
734                                Note/K Igor___folder_attributes, "NX_class=NXsensor"
735                                //      name           
736                                //      attached_to             
737                                //      measurement             
738                                SetDataFolder root:VSANS_file:entry1:sample:temperature_2:value_log             
739                                        Make/O/N=0 Igor___folder_attributes     
740                                        Note/K Igor___folder_attributes, "NX_class=NXlog"
741                                        //      start           
742                                        //      nx_time         
743                                        Note/K nx_time, "units=s"
744                                        //      value           
745                                        Note/K value, "units=C"
746                        SetDataFolder root:VSANS_file:entry1:sample:electric_field             
747                                Make/O/N=0 Igor___folder_attributes     
748                                Note/K Igor___folder_attributes, "NX_class=NXsensor"
749                                //      name           
750                                //      attached_to             
751                                //      measurement             
752                                SetDataFolder root:VSANS_file:entry1:sample:electric_field:value_log           
753                                        Make/O/N=0 Igor___folder_attributes     
754                                        Note/K Igor___folder_attributes, "NX_class=NXlog"
755                                        //      start           
756                                        //      nx_time         
757                                        Note/K nx_time, "units=s"
758                                        //      value           
759                                        Note/K value, "units=V"
760                        SetDataFolder root:VSANS_file:entry1:sample:shear_field         
761                                Make/O/N=0 Igor___folder_attributes     
762                                Note/K Igor___folder_attributes, "NX_class=NXsensor"
763                                //      name           
764                                //      attached_to             
765                                //      measurement             
766                                SetDataFolder root:VSANS_file:entry1:sample:shear_field:value_log               
767                                        Make/O/N=0 Igor___folder_attributes     
768                                        Note/K Igor___folder_attributes, "NX_class=NXlog"
769                                        //      start           
770                                        //      nx_time         
771                                        Note/K nx_time, "units=s"
772                                        //      value           
773                                        Note/K value, "units=Pa s"
774                        SetDataFolder root:VSANS_file:entry1:sample:pressure           
775                                Make/O/N=0 Igor___folder_attributes     
776                                Note/K Igor___folder_attributes, "NX_class=NXsensor"
777                                //      name           
778                                //      attached_to             
779                                //      measurement             
780                                SetDataFolder root:VSANS_file:entry1:sample:pressure:value_log         
781                                        Make/O/N=0 Igor___folder_attributes     
782                                        Note/K Igor___folder_attributes, "NX_class=NXlog"
783                                        //      start           
784                                        //      nx_time         
785                                        Note/K nx_time, "units=s"
786                                        //      value           
787                                        Note/K value, "units=psi"
788                        SetDataFolder root:VSANS_file:entry1:sample:magnetic_field             
789                                Make/O/N=0 Igor___folder_attributes     
790                                Note/K Igor___folder_attributes, "NX_class=NXsensor"
791                                //      name           
792                                //      attached_to             
793                                //      measurement             
794                                SetDataFolder root:VSANS_file:entry1:sample:magnetic_field:value_log           
795                                        Make/O/N=0 Igor___folder_attributes     
796                                        Note/K Igor___folder_attributes, "NX_class=NXlog"
797                                        //      start           
798                                        //      nx_time         
799                                        Note/K nx_time, "units=s"
800                                        //      value           
801                                        Note/K value, "units=T"
802                        SetDataFolder root:VSANS_file:entry1:sample                     
803                        //      changer_position               
804                        //      sample_holder_description               
805                        ////    //mass         
806                        //Note/K mass, "units=g"
807                        ////    //density               
808                        //Note/K density, "units=g ml-1"
809                        ////    //molecular_weight             
810                        //Note/K molecular_weight, "units=g mol-1"
811                        ////    //description           
812                        ////    //preparation_date             
813                        ////    //volume_fraction               
814                        ////    //scattering_length_density             
815                        //Note/K scattering_length_density, "units=A-2"
816                        //      thickness               
817                                Note/K thickness, "units=cm"
818                        //      rotation_angle         
819                                Note/K rotation_angle, "units=degrees"
820                        //      transmission           
821                        //      transmission_error             
822                        ////    //xs_incoh             
823                        //Note/K xs_incoh, "units=cm-1"
824                        ////    //xs_coh               
825                        //Note/K xs_coh, "units=cm-1"
826                        ////    //xs_absorb             
827                        //Note/K xs_absorb, "units=cm-1"
828                SetDataFolder root:VSANS_file:entry1:instrument         
829                        Make/O/N=0 Igor___folder_attributes     
830                        Note/K Igor___folder_attributes, "NX_class=NXinstrument"
831                        ////    //location             
832                        //      name           
833                        //      type           
834                        //      local_contact           
835                        SetDataFolder root:VSANS_file:entry1:instrument:source         
836                                Make/O/N=0 Igor___folder_attributes     
837                                Note/K Igor___folder_attributes, "NX_class=NXsource"
838                                //      name           
839                                //      type           
840                                //      probe           
841                                //      power           
842                                Note/K power, "units=MW"
843                                               
844                        SetDataFolder root:VSANS_file:entry1:instrument:beam_monitor_norm               
845                                Make/O/N=0 Igor___folder_attributes     
846                                Note/K Igor___folder_attributes, "NX_class=NXmonitor"
847                                //      data           
848                                //      type           
849                                //      efficiency             
850                                //      nx_distance             
851                                Note/K nx_distance, "units=m"
852                                //      saved_count             
853                        SetDataFolder root:VSANS_file:entry1:instrument:beam_monitor_low               
854                                Make/O/N=0 Igor___folder_attributes     
855                                Note/K Igor___folder_attributes, "NX_class=NXmonitor"
856                                //      data           
857                                //      type           
858                                //      efficiency             
859                                //      nx_distance             
860                                Note/K nx_distance, "units=m"
861                                //      saved_count             
862                                               
863                        SetDataFolder root:VSANS_file:entry1:instrument:monochromator           
864                                Make/O/N=0 Igor___folder_attributes     
865                                Note/K Igor___folder_attributes, "NX_class=NXmonochromator"
866                                //      wavelength             
867                                Note/K wavelength, "units=A"
868                                //      wavelength_spread               
869                                //      type           
870                                SetDataFolder root:VSANS_file:entry1:instrument:monochromator:velocity_selector         
871                                        Make/O/N=0 Igor___folder_attributes     
872                                        Note/K Igor___folder_attributes, "NX_class=NXvelocity_selector"
873                                        //      status         
874                                        //      rotation_speed         
875                                        Note/K rotation_speed, "units=RPM"
876                                        //      wavelength             
877                                        Note/K wavelength, "units=A"
878                                        //      wavelength_spread               
879                                        //      vs_tilt         
880                                        Note/K vs_tilt, "units=degrees"
881                                        //      nx_distance             
882                                        Note/K nx_distance, "units=m"
883                                                // table (wave)         
884                                SetDataFolder root:VSANS_file:entry1:instrument:monochromator:crystal           
885                                        Make/O/N=0 Igor___folder_attributes     
886                                        Note/K Igor___folder_attributes, "NX_class=NXcrystal"
887                                        //      status         
888                                        //      nx_distance             
889                                        Note/K nx_distance, "units=m"
890                                        //      wavelength             
891                                        Note/K wavelength, "units=A"
892                                        //      wavelength_spread               
893                                        //      rotation               
894                                        Note/K rotation, "units=degrees"
895                                        //      energy         
896                                        Note/K energy, "units=mV"
897                                        //      wavevector             
898                                        Note/K wavevector, "units=A-1"
899                                        //      lattice_parameter               
900                                        //      reflection             
901                                        //      horizontal_curvature           
902                                        //      vertical_curvature             
903                                        //      horizontal_aperture             
904                                        //      vertical_aperture               
905                                SetDataFolder root:VSANS_file:entry1:instrument:monochromator:white_beam                       
906                                        //      status         
907                                        //      wavelength             
908                                        Note/K wavelength, "units=A"
909                                        //      wavelength_spread               
910                                                // description_of_distribution         
911                        SetDataFolder root:VSANS_file:entry1:instrument:chopper         
912                                Make/O/N=0 Igor___folder_attributes     
913                                Note/K Igor___folder_attributes, "NX_class=NXdisk_chopper"
914                                //      status         
915                                //      type           
916                                //      rotation_speed         
917                                Note/K rotation_speed, "units=RPM"
918                                //      distance_from_source           
919                                Note/K distance_from_source, "units=m"
920                                //      distance_from_sample           
921                                Note/K distance_from_sample, "units=m"
922                                //      slits           
923                                //      angular_opening         
924                                Note/K angular_opening, "units=degrees"
925                                //      duty_cycle             
926                                        // +?           
927                        SetDataFolder root:VSANS_file:entry1:instrument:polarizer                       
928                                //      status         
929                                //      type           
930                                //      composition             
931                                //      efficiency             
932                                //      status         
933                        SetDataFolder root:VSANS_file:entry1:instrument:flipper                 
934                                //      status         
935                                //      driving_current         
936                                Note/K driving_current, "units=A"
937                                //      waveform               
938                                //      frequency               
939                                Note/K frequency, "units=Hz"
940                                //      transmitted_power               
941                        SetDataFolder root:VSANS_file:entry1:instrument:polarizer_analyzer                     
942                                //      status         
943                                //      guide_field_current_1           
944                                Note/K guide_field_current_1, "units=A"
945                                //      guide_field_current_2           
946                                Note/K guide_field_current_2, "units=A"
947                                //      solenoid_current               
948                                Note/K solenoid_current, "units=A"
949                                //      cell_index             
950                                //      cell_names             
951                                //      cell_parameters         
952                                               
953                        SetDataFolder root:VSANS_file:entry1:instrument:attenuator             
954                                Make/O/N=0 Igor___folder_attributes     
955                                Note/K Igor___folder_attributes, "NX_class=NXattenuator"
956                                //      nx_distance             
957                                Note/K nx_distance, "units=m"
958                                //      type           
959                                //      thickness               
960                                Note/K thickness, "units=cm"
961                                //      attenuator_transmission         
962                                //      status         
963                                //      atten_number           
964                                //      index           
965                        SetDataFolder root:VSANS_file:entry1:instrument:source_aperture         
966                                Make/O/N=0 Igor___folder_attributes     
967                                Note/K Igor___folder_attributes, "NX_class=NXaperture"
968                                //      material               
969                                //      description             
970                                //      diameter               
971                                Note/K diameter, "units=cm"
972                                //      nx_distance             
973                                Note/K nx_distance, "units=m"
974                                SetDataFolder root:VSANS_file:entry1:instrument:source_aperture:shape                   
975                                        Make/O/N=0 Igor___folder_attributes     
976                                        Note/K Igor___folder_attributes, "NX_class=NXshape"
977                                        //      size           
978                                        Note/K size, "units=cm"
979                        SetDataFolder root:VSANS_file:entry1:instrument:sample_aperture         
980                                Make/O/N=0 Igor___folder_attributes     
981                                Note/K Igor___folder_attributes, "NX_class=NXaperture"
982                                //      material               
983                                //      description             
984                                //      diameter               
985                                Note/K diameter, "units=cm"
986                                //      nx_distance             
987                                Note/K nx_distance, "units=m"
988                                SetDataFolder root:VSANS_file:entry1:instrument:sample_aperture:shape                   
989                                        Make/O/N=0 Igor___folder_attributes     
990                                        Note/K Igor___folder_attributes, "NX_class=NXshape"
991                                        //      size           
992                                        Note/K size, "units=cm"
993                        SetDataFolder root:VSANS_file:entry1:instrument:collimator                     
994                                SetDataFolder root:VSANS_file:entry1:instrument:collimator:geometry                     
995                                        SetDataFolder root:VSANS_file:entry1:instrument:collimator:geometry:shape                       
996                                                //      shape           
997                                                //      size           
998                                                Note/K size, "units=m"
999                                //      nx_NumGuides           
1000                        SetDataFolder root:VSANS_file:entry1:instrument:converging_pinholes                     
1001                                //      status         
1002                        SetDataFolder root:VSANS_file:entry1:instrument:converging_slits                       
1003                                //      status         
1004                        SetDataFolder root:VSANS_file:entry1:instrument:lenses         
1005                                Make/O/N=0 Igor___folder_attributes     
1006                                Note/K Igor___folder_attributes, "NX_class=NXxraylens"
1007                                //      status         
1008                                //      lens_geometry           
1009                                //      focus_type             
1010                                //      number_of_lenses               
1011                                //      number_of_prisms               
1012                                //      curvature               
1013                                //      lens_distance           
1014                                Note/K lens_distance, "units=m"
1015                                //      prism_distance         
1016                                Note/K prism_distance, "units=m"
1017                                //      lens_material           
1018                                //      prism_material         
1019                        SetDataFolder root:VSANS_file:entry1:instrument:sample_table                   
1020                                //      location               
1021                                //      offset_distance         
1022                                Note/K offset_distance, "units=m"
1023                        SetDataFolder root:VSANS_file:entry1:instrument:beam_stop               
1024                                Make/O/N=0 Igor___folder_attributes     
1025                                Note/K Igor___folder_attributes, "NX_class=NXbeam_stop"
1026                                //      status         
1027                                //      description             
1028                                //      nx_distance             
1029                                Note/K nx_distance, "units=m"
1030                                //      size           
1031                                Note/K size, "units=cm"
1032                                //      xPos           
1033                                //      yPos           
1034                                //      x_motor_position               
1035                                Note/K x_motor_position, "units=cm"
1036                                //      y_motor_position               
1037                                Note/K y_motor_position, "units=cm"
1038                                               
1039                        SetDataFolder root:VSANS_file:entry1:instrument:detector_B             
1040                                Make/O/N=0 Igor___folder_attributes     
1041                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1042                                //      data           
1043                                ////    //data_error           
1044                                //      nx_distance             
1045                                Note/K nx_distance, "units=m"
1046                                //      description             
1047                                //      settings               
1048                                //      dead_time               
1049                                Note/K dead_time, "units=s"
1050                                //      x_pixel_size           
1051                                Note/K x_pixel_size, "units=cm"
1052                                //      y_pixel_size           
1053                                Note/K y_pixel_size, "units=cm"
1054                                //      beam_center_x           
1055                                //      beam_center_y           
1056                                //      type           
1057                                ////    //flatfield_applied             
1058                                ////    //countrate_correction_applied         
1059                                //      pixel_mask             
1060                                //      integrated_count               
1061                                //      lateral_offset         
1062                                Note/K lateral_offset, "units=cm"
1063                                //      PixelNumX               
1064                                //      PixelNumY               
1065                                //      PixelFWHM               
1066                                //      CALX           
1067                                //      CALY           
1068                                //      size           
1069                                Note/K size, "units=cm"
1070                                //      event_file_name         
1071                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MR                     
1072                                Make/O/N=0 Igor___folder_attributes     
1073                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1074                                //      data           
1075                                ////    //data_error           
1076                                //      nx_distance             
1077                                Note/K nx_distance, "units=m"
1078                                //      description             
1079                                //      settings               
1080                                //      dead_time               
1081                                Note/K dead_time, "units=s"
1082                                //      x_pixel_size           
1083                                Note/K x_pixel_size, "units=cm"
1084                                //      y_pixel_size           
1085                                Note/K y_pixel_size, "units=cm"
1086                                //      beam_center_x           
1087                                //      beam_center_y           
1088                                //      type           
1089                                ////    //flatfield_applied             
1090                                ////    //countrate_correction_applied         
1091                                //      pixel_mask             
1092                                //      integrated_count               
1093                                //      lateral_offset         
1094                                Note/K lateral_offset, "units=cm"
1095                                //      separation             
1096                                Note/K separation, "units=cm"
1097                                //      PixelNumX               
1098                                //      PixelNumY               
1099                                //      PixelFWHM               
1100                                //      size           
1101                                Note/K size, "units=cm"
1102                                //      event_file_name         
1103                                //      tube_orientation               
1104                                //      number_of_tubes         
1105                                //      tube_index             
1106                                //      spatial_calibration             
1107                                //      tube_width             
1108                                Note/K tube_width, "units=cm"
1109                        SetDataFolder root:VSANS_file:entry1:instrument:detector_ML             
1110                                Make/O/N=0 Igor___folder_attributes     
1111                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1112                                //      data           
1113                                ////    //data_error           
1114                                //      nx_distance             
1115                                Note/K nx_distance, "units=m"
1116                                //      description             
1117                                //      settings               
1118                                //      dead_time               
1119                                Note/K dead_time, "units=s"
1120                                //      x_pixel_size           
1121                                Note/K x_pixel_size, "units=cm"
1122                                //      y_pixel_size           
1123                                Note/K y_pixel_size, "units=cm"
1124                                //      beam_center_x           
1125                                //      beam_center_y           
1126                                //      type           
1127                                ////    //flatfield_applied             
1128                                ////    //countrate_correction_applied         
1129                                //      pixel_mask             
1130                                //      integrated_count               
1131                                //      lateral_offset         
1132                                Note/K lateral_offset, "units=cm"
1133                                //      separation             
1134                                Note/K separation, "units=cm"
1135                                //      PixelNumX               
1136                                //      PixelNumY               
1137                                //      PixelFWHM               
1138                                //      size           
1139                                Note/K size, "units=cm"
1140                                //      event_file_name         
1141                                //      tube_orientation               
1142                                //      number_of_tubes         
1143                                //      tube_index             
1144                                //      spatial_calibration             
1145                                //      tube_width             
1146                                Note/K tube_width, "units=cm"
1147                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MT             
1148                                Make/O/N=0 Igor___folder_attributes     
1149                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1150                                //      data           
1151                                ////    //data_error           
1152                                //      nx_distance             
1153                                Note/K nx_distance, "units=m"
1154                                //      description             
1155                                //      settings               
1156                                //      dead_time               
1157                                Note/K dead_time, "units=s"
1158                                //      x_pixel_size           
1159                                Note/K x_pixel_size, "units=cm"
1160                                //      y_pixel_size           
1161                                Note/K y_pixel_size, "units=cm"
1162                                //      beam_center_x           
1163                                //      beam_center_y           
1164                                //      type           
1165                                ////    //flatfield_applied             
1166                                ////    //countrate_correction_applied         
1167                                //      pixel_mask             
1168                                //      integrated_count               
1169                                //      lateral_offset         
1170                                Note/K lateral_offset, "units=cm"
1171                                //      sdd_offset             
1172                                Note/K sdd_offset, "units=cm"
1173                                //      separation             
1174                                Note/K separation, "units=cm"
1175                                //      PixelNumX               
1176                                //      PixelNumY               
1177                                //      PixelFWHM               
1178                                //      size           
1179                                Note/K size, "units=cm"
1180                                //      event_file_name         
1181                                //      tube_orientation               
1182                                //      number_of_tubes         
1183                                //      tube_index             
1184                                //      spatial_calibration             
1185                                //      tube_width             
1186                                Note/K tube_width, "units=cm"
1187                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MB             
1188                                Make/O/N=0 Igor___folder_attributes     
1189                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1190                                //      data           
1191                                ////    //data_error           
1192                                //      nx_distance             
1193                                Note/K nx_distance, "units=m"
1194                                //      description             
1195                                //      settings               
1196                                //      dead_time               
1197                                Note/K dead_time, "units=s"
1198                                //      x_pixel_size           
1199                                Note/K x_pixel_size, "units=cm"
1200                                //      y_pixel_size           
1201                                Note/K y_pixel_size, "units=cm"
1202                                //      beam_center_x           
1203                                //      beam_center_y           
1204                                //      type           
1205                                ////    //flatfield_applied             
1206                                ////    //countrate_correction_applied         
1207                                //      pixel_mask             
1208                                //      integrated_count               
1209                                //      lateral_offset         
1210                                Note/K lateral_offset, "units=cm"
1211                                //      sdd_offset             
1212                                Note/K sdd_offset, "units=cm"
1213                                //      separation             
1214                                Note/K separation, "units=cm"
1215                                //      PixelNumX               
1216                                //      PixelNumY               
1217                                //      PixelFWHM               
1218                                //      size           
1219                                Note/K size, "units=cm"
1220                                //      event_file_name         
1221                                //      tube_orientation               
1222                                //      number_of_tubes         
1223                                //      tube_index             
1224                                //      spatial_calibration             
1225                                //      tube_width             
1226                                Note/K tube_width, "units=cm"
1227                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FR                     
1228                                Make/O/N=0 Igor___folder_attributes     
1229                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1230                                //      data           
1231                                ////    //data_error           
1232                                //      nx_distance             
1233                                Note/K nx_distance, "units=m"
1234                                //      description             
1235                                //      settings               
1236                                //      dead_time               
1237                                Note/K dead_time, "units=s"
1238                                //      x_pixel_size           
1239                                Note/K x_pixel_size, "units=cm"
1240                                //      y_pixel_size           
1241                                Note/K y_pixel_size, "units=cm"
1242                                //      beam_center_x           
1243                                //      beam_center_y           
1244                                //      type           
1245                                ////    //flatfield_applied             
1246                                ////    //countrate_correction_applied         
1247                                //      pixel_mask             
1248                                //      integrated_count               
1249                                //      lateral_offset         
1250                                Note/K lateral_offset, "units=cm"
1251                                //      separation             
1252                                Note/K separation, "units=cm"
1253                                //      PixelNumX               
1254                                //      PixelNumY               
1255                                //      PixelFWHM               
1256                                //      size           
1257                                Note/K size, "units=cm"
1258                                //      event_file_name         
1259                                //      tube_orientation               
1260                                //      number_of_tubes         
1261                                //      tube_index             
1262                                //      spatial_calibration             
1263                                //      tube_width             
1264                                Note/K tube_width, "units=cm"
1265                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FL             
1266                                Make/O/N=0 Igor___folder_attributes     
1267                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1268                                //      data           
1269                                ////    //data_error           
1270                                //      nx_distance             
1271                                Note/K nx_distance, "units=m"
1272                                //      description             
1273                                //      settings               
1274                                //      dead_time               
1275                                Note/K dead_time, "units=s"
1276                                //      x_pixel_size           
1277                                Note/K x_pixel_size, "units=cm"
1278                                //      y_pixel_size           
1279                                Note/K y_pixel_size, "units=cm"
1280                                //      beam_center_x           
1281                                //      beam_center_y           
1282                                //      type           
1283                                ////    //flatfield_applied             
1284                                ////    //countrate_correction_applied         
1285                                //      pixel_mask             
1286                                //      integrated_count               
1287                                //      lateral_offset         
1288                                Note/K lateral_offset, "units=cm"
1289                                //      separation             
1290                                Note/K separation, "units=cm"
1291                                //      PixelNumX               
1292                                //      PixelNumY               
1293                                //      PixelFWHM               
1294                                //      size           
1295                                Note/K size, "units=cm"
1296                                //      event_file_name         
1297                                //      tube_orientation               
1298                                //      number_of_tubes         
1299                                //      tube_index             
1300                                //      spatial_calibration             
1301                                //      tube_width             
1302                                Note/K tube_width, "units=cm"
1303                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FT             
1304                                Make/O/N=0 Igor___folder_attributes     
1305                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1306                                //      data           
1307                                ////    //data_error           
1308                                //      nx_distance             
1309                                Note/K nx_distance, "units=m"
1310                                //      description             
1311                                //      settings               
1312                                //      dead_time               
1313                                Note/K dead_time, "units=s"
1314                                //      x_pixel_size           
1315                                Note/K x_pixel_size, "units=cm"
1316                                //      y_pixel_size           
1317                                Note/K y_pixel_size, "units=cm"
1318                                //      beam_center_x           
1319                                //      beam_center_y           
1320                                //      type           
1321                                ////    //flatfield_applied             
1322                                ////    //countrate_correction_applied         
1323                                //      pixel_mask             
1324                                //      integrated_count               
1325                                //      lateral_offset         
1326                                Note/K lateral_offset, "units=cm"
1327                                //      sdd_offset             
1328                                Note/K sdd_offset, "units=cm"
1329                                //      separation             
1330                                Note/K separation, "units=cm"
1331                                //      PixelNumX               
1332                                //      PixelNumY               
1333                                //      PixelFWHM               
1334                                //      size           
1335                                Note/K size, "units=cm"
1336                                //      event_file_name         
1337                                //      tube_orientation               
1338                                //      number_of_tubes         
1339                                //      tube_index             
1340                                //      spatial_calibration             
1341                                //      tube_width             
1342                                Note/K tube_width, "units=cm"
1343                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FB             
1344                                Make/O/N=0 Igor___folder_attributes     
1345                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1346                                //      data           
1347                                ////    //data_error           
1348                                //      nx_distance             
1349                                Note/K nx_distance, "units=m"
1350                                //      description             
1351                                //      settings               
1352                                //      dead_time               
1353                                Note/K dead_time, "units=s"
1354                                //      x_pixel_size           
1355                                Note/K x_pixel_size, "units=cm"
1356                                //      y_pixel_size           
1357                                Note/K y_pixel_size, "units=cm"
1358                                //      beam_center_x           
1359                                //      beam_center_y           
1360                                //      type           
1361                                ////    //flatfield_applied             
1362                                ////    //countrate_correction_applied         
1363                                //      pixel_mask             
1364                                //      integrated_count               
1365                                //      lateral_offset         
1366                                Note/K lateral_offset, "units=cm"
1367                                //      sdd_offset             
1368                                Note/K sdd_offset, "units=cm"
1369                                //      separation             
1370                                Note/K separation, "units=cm"
1371                                //      PixelNumX               
1372                                //      PixelNumY               
1373                                //      PixelFWHM               
1374                                //      size           
1375                                Note/K size, "units=cm"
1376                                //      event_file_name         
1377                                //      tube_orientation               
1378                                //      number_of_tubes         
1379                                //      tube_index             
1380                                //      spatial_calibration             
1381                                //      tube_width             
1382                                Note/K tube_width, "units=cm"
1383                                               
1384                                               
1385                SetDataFolder root:VSANS_file:entry1:data_B             
1386                        Make/O/N=0 Igor___folder_attributes     
1387                        Note/K Igor___folder_attributes, "NX_class=NXdata"
1388                        //      data           
1389                        ////    //error         
1390                        //      variables               
1391                        //      data_image             
1392                SetDataFolder root:VSANS_file:entry1:data_MR           
1393                        Make/O/N=0 Igor___folder_attributes     
1394                        Note/K Igor___folder_attributes, "NX_class=NXdata"
1395                        //      data           
1396                        ////    //error         
1397                        //      variables               
1398                        //      data_image             
1399                SetDataFolder root:VSANS_file:entry1:data_ML           
1400                        Make/O/N=0 Igor___folder_attributes     
1401                        Note/K Igor___folder_attributes, "NX_class=NXdata"
1402                        //      data           
1403                        ////    //error         
1404                        //      variables               
1405                        //      data_image             
1406                SetDataFolder root:VSANS_file:entry1:data_MT           
1407                        Make/O/N=0 Igor___folder_attributes     
1408                        Note/K Igor___folder_attributes, "NX_class=NXdata"
1409                        //      data           
1410                        ////    //error         
1411                        //      variables               
1412                        //      data_image             
1413                SetDataFolder root:VSANS_file:entry1:data_MB           
1414                        Make/O/N=0 Igor___folder_attributes     
1415                        Note/K Igor___folder_attributes, "NX_class=NXdata"
1416                        //      data           
1417                        ////    //error         
1418                        //      variables               
1419                        //      data_image             
1420                SetDataFolder root:VSANS_file:entry1:data_FR           
1421                        Make/O/N=0 Igor___folder_attributes     
1422                        Note/K Igor___folder_attributes, "NX_class=NXdata"
1423                        //      data           
1424                        ////    //error         
1425                        //      variables               
1426                        //      data_image             
1427                SetDataFolder root:VSANS_file:entry1:data_FL           
1428                        Make/O/N=0 Igor___folder_attributes     
1429                        Note/K Igor___folder_attributes, "NX_class=NXdata"
1430                        //      data           
1431                        ////    //error         
1432                        //      variables               
1433                        //      data_image             
1434                SetDataFolder root:VSANS_file:entry1:data_FT           
1435                        Make/O/N=0 Igor___folder_attributes     
1436                        Note/K Igor___folder_attributes, "NX_class=NXdata"
1437                        //      data           
1438                        ////    //error         
1439                        //      variables               
1440                        //      data_image             
1441                SetDataFolder root:VSANS_file:entry1:data_FB           
1442                        Make/O/N=0 Igor___folder_attributes     
1443                        Note/K Igor___folder_attributes, "NX_class=NXdata"
1444                        //      data           
1445                        ////    //error         
1446                        //      variables               
1447                        //      data_image             
1448                                       
1449                SetDataFolder root:VSANS_file:entry1:reduction                 
1450                        //      intent         
1451                        //      transmission_file_name         
1452                        //      empty_beam_file_name           
1453                        //      background_file_name           
1454                        //      empty_file_name         
1455                        //      sensitivity_file_name           
1456                        //      mask_file_name         
1457                        //      sans_log_file_name             
1458                        //      whole_trans             
1459                        //      whole_trans_error               
1460                        //      box_count               
1461                        //      box_count_error         
1462                        //      box_coordinates         
1463                        //      comments               
1464                        //      absolute_scaling               
1465                        SetDataFolder root:VSANS_file:entry1:reduction:pol_sans                         
1466                                //      pol_sans_purpose               
1467                                //      cell_name               
1468                                //      cell_parameters         
1469                                                       
1470        SetDataFolder root:VSANS_file:DAS_Logs         
1471                Make/O/N=0 Igor___folder_attributes     
1472                Note/K Igor___folder_attributes, "NX_class=NXlog"
1473                        //...multiple entries and levels... to add             
1474                        //this will be enormous         
1475
1476       
1477
1478
1479        SetDataFolder root:     
1480
1481End
1482
1483// overwrites the dummy values as needed with VCALC information
1484//
1485//
1486//
1487// TODO
1488// issues here with the potential for Nexus to have data as INTEGER
1489// where I'd rather have the data here in Igor be DP, so there are no
1490// conversion/assignment issues
1491//
1492// simuation data from VCALC = DP, but I need to assign to an Integer wave...
1493// - sometimes this works, sometimes not...
1494// may need to Redimension/I
1495//
1496/// break this up into several smaller procedures as this is a VERY lengthy task to do
1497
1498        // TODO
1499// set the "accessible" copies of the data (these are really to be links in the file!)
1500
1501Proc H_Fill_VSANS_wSim()
1502
1503
1504SetDataFolder  root:VSANS_file         
1505                file_name       = "VSANSTest.h5"
1506                file_time       = "2015-02-28T08:15:30-5:00"
1507                facility        = "NCNR"
1508                NeXus_version   = "Nexus 0.0"
1509                hdf_version     = "hdf5.x"
1510                file_history    = "history log"
1511        SetDataFolder root:VSANS_file:entry1           
1512                        title   = "title of entry1"
1513                        experiment_identifier   = 684636
1514                        experiment_description  = "description of expt"
1515                        entry_identifier        = "S22-33"
1516                        definition      = "NXsas"
1517                        start_time      = "2015-02-28T08:15:30-5:00"
1518                        end_time        = "2015-02-28T08:15:30-5:00"
1519                        duration        = 300
1520                        collection_time = 300
1521                        run_cycle       = "S22-23"
1522                        data_directory  = "[VSANS_VSANS]"
1523                        program_name    = "runPoint={stuff}"
1524                SetDataFolder root:VSANS_file:entry1:user               
1525                                name    = "Dr. Pi"
1526                                role    = "evil scientist"
1527                                affiliation     = "NIST"
1528                                address = "100 Bureau Drive"
1529                                telephoneNumber = "301-999-9999"
1530                                faxNumber       = "301-999-9999"
1531                                email   = "sans@nist"
1532                                facility_user_id        = 6937596
1533                SetDataFolder root:VSANS_file:entry1:control           
1534                                mode    = "timer"
1535                                preset  = 555
1536                                integral        = 555
1537                                monitor_counts  = 666
1538                                monitor_preset  = 1e8
1539                        //WAVE/T        type    = "monitor type"
1540                        //WAVE  efficiency      = 0.01
1541                        //WAVE  sampled_fraction        = 1
1542                                detector_counts = 100111222
1543                                detector_preset = 1e5
1544                                count_start     = 1
1545                                count_end       = 1
1546                                count_time      = 1
1547                                count_time_preset       = 1
1548                //SetDataFolder root:VSANS_file:entry1:program_name     //program_data 
1549                        //WAVE/T        //data  = "program data"
1550                        //WAVE/T        //description   = "acquisition"
1551                        //WAVE/T        //file_name     = "NICE"
1552                        //WAVE/T        //type  = "client"
1553                SetDataFolder root:VSANS_file:entry1:sample             
1554                                description     = "My Sample"
1555                                group_id        = 12345
1556                        //WAVE/T        //chemical_formula      = "C8H10N4O2"
1557                        SetDataFolder root:VSANS_file:entry1:sample:temperature_1               
1558                                        name    = "Sample temperature"
1559                                        attached_to     = "block"
1560                                        measurement     = "temperature"
1561                                SetDataFolder root:VSANS_file:entry1:sample:temperature_1:value_log             
1562                                                start   = "2015-02-28T08:15:30-5:00"
1563                                                nx_time = p
1564                                                value   = 2*p
1565                        SetDataFolder root:VSANS_file:entry1:sample:temperature_2               
1566                                        name    = "Sample temperature"
1567                                        attached_to     = "block"
1568                                        measurement     = "temperature"
1569                                SetDataFolder root:VSANS_file:entry1:sample:temperature_2:value_log             
1570                                                start   = "2015-02-28T08:15:30-5:00"
1571                                                nx_time = p
1572                                                value   = 3*p
1573                        SetDataFolder root:VSANS_file:entry1:sample:electric_field             
1574                                        name    = "electric meter"
1575                                        attached_to     = "sample"
1576                                        measurement     = "voltage"
1577                                SetDataFolder root:VSANS_file:entry1:sample:electric_field:value_log           
1578                                                start   = "2015-02-28T08:15:30-5:00"
1579                                                nx_time = 2*p
1580                                                value   = sin(p/10)
1581                        SetDataFolder root:VSANS_file:entry1:sample:shear_field         
1582                                        name    = "rheometer"
1583                                        attached_to     = "sample"
1584                                        measurement     = "stress"
1585                                SetDataFolder root:VSANS_file:entry1:sample:shear_field:value_log               
1586                                                start   = "2015-02-28T08:15:30-5:00"
1587                                                nx_time = p
1588                                                value   = cos(p/5)
1589                        SetDataFolder root:VSANS_file:entry1:sample:pressure           
1590                                        name    = "Sample pressure"
1591                                        attached_to     = "pressure cell"
1592                                        measurement     = "pressure"
1593                                SetDataFolder root:VSANS_file:entry1:sample:pressure:value_log         
1594                                                start   = "2015-02-28T08:15:30-5:00"
1595                                                nx_time = p
1596                                                value   = p/2
1597                        SetDataFolder root:VSANS_file:entry1:sample:magnetic_field             
1598                                        name    = "magnetic field (direction)"
1599                                        attached_to     = "cryostat"
1600                                        measurement     = "magnetic field"
1601                                SetDataFolder root:VSANS_file:entry1:sample:magnetic_field:value_log           
1602                                                start   = "2015-02-28T08:15:30-5:00"
1603                                                nx_time = p
1604                                                value   = 10*p
1605                        SetDataFolder root:VSANS_file:entry1:sample             
1606                                changer_position        = 5
1607                                sample_holder_description       = "10CB"
1608                        //WAVE  //mass  = 0.3
1609                        //WAVE  //density       = 1.02
1610                        //WAVE  //molecular_weight      = 194.19
1611                        //WAVE/T        //description   = "My Sample"
1612                        //WAVE/T        //preparation_date      = "2015-02-28T08:15:30-5:00"
1613                        //WAVE  //volume_fraction       = 0.2
1614                        //WAVE  //scattering_length_density     = 6.35e-6
1615                                thickness       = 0.1
1616                                rotation_angle  = 30
1617                                transmission    = 0.888
1618                                transmission_error      = 0.011
1619                        //WAVE  //xs_incoh      = 5.5
1620                        //WAVE  //xs_coh        = 22.2
1621                        //WAVE  //xs_absorb     = 3.1
1622                SetDataFolder root:VSANS_file:entry1:instrument         
1623                        //WAVE/T        //location      = "NCNR"
1624                                name    = "NG3-VSANS"
1625                                type    = "VSANS"
1626                                local_contact   = "Steve Kline"
1627                        SetDataFolder root:VSANS_file:entry1:instrument:source         
1628                                        name    = "NCNR"
1629                                        type    = "Reactor Neutron Source"
1630                                        probe   = "neutron"
1631                                        power   = 20
1632                                       
1633                        SetDataFolder root:VSANS_file:entry1:instrument:beam_monitor_norm               
1634                                        data    = 1234567
1635                                        type    = "monitor"
1636                                        efficiency      = 0.01
1637                                        nx_distance     = 16
1638                                        saved_count     = 1e8
1639                        SetDataFolder root:VSANS_file:entry1:instrument:beam_monitor_low               
1640                                        data    = 1234567
1641                                        type    = "monitor"
1642                                        efficiency      = 0.001
1643                                        nx_distance     = 16
1644                                        saved_count     = 1e8
1645                                       
1646                        SetDataFolder root:VSANS_file:entry1:instrument:monochromator           
1647                                        wavelength      = 5.1
1648                                        wavelength_spread       = 0.02
1649                                        type    = "VS"
1650                                SetDataFolder root:VSANS_file:entry1:instrument:monochromator:velocity_selector         
1651                                                status  = "in"
1652                                                rotation_speed  = 5100
1653                                                wavelength      = 6
1654                                                wavelength_spread       = 0.15
1655                                                vs_tilt = 3
1656                                                nx_distance     = 18.8
1657                                                // table (wave)
1658                                SetDataFolder root:VSANS_file:entry1:instrument:monochromator:crystal           
1659                                                status  = "in"
1660                                                nx_distance     = 1
1661                                                wavelength      = 5.1
1662                                                wavelength_spread       = 0.02
1663                                                rotation        = 1.1
1664                                                energy  = 1
1665                                                wavevector      = 1
1666                                                lattice_parameter       = 1
1667                                                reflection      = {1,2,3}
1668                                                horizontal_curvature    = 1
1669                                                vertical_curvature      = 1
1670                                                horizontal_aperture     = 1
1671                                                vertical_aperture       = 1
1672                                SetDataFolder root:VSANS_file:entry1:instrument:monochromator:white_beam               
1673                                                status  = "in"
1674                                                wavelength      = 5.1
1675                                                wavelength_spread       = 0.8
1676                                                // description_of_distribution 
1677                        SetDataFolder root:VSANS_file:entry1:instrument:chopper         
1678                                        status  = "in"
1679                                        type    = "single"
1680                                        rotation_speed  = 12000
1681                                        distance_from_source    = 400
1682                                        distance_from_sample    = 1500
1683                                        slits   = 2
1684                                        angular_opening = 15
1685                                        duty_cycle      = 0.25
1686                                        // +?   
1687                        SetDataFolder root:VSANS_file:entry1:instrument:polarizer               
1688                                        status  = "in"
1689                                        type    = "supermirror"
1690                                        composition     = "multilayer"
1691                                        efficiency      = 0.95
1692                                        status  = "in"
1693                        SetDataFolder root:VSANS_file:entry1:instrument:flipper         
1694                                        status  = "on"
1695                                        driving_current = 42
1696                                        waveform        = "sine"
1697                                        frequency       = 400
1698                                        transmitted_power       = 0.99
1699                        SetDataFolder root:VSANS_file:entry1:instrument:polarizer_analyzer             
1700                                        status  = "down"
1701                                        guide_field_current_1   = 33
1702                                        guide_field_current_2   = 32
1703                                        solenoid_current        = 21
1704                                        cell_index      = 1
1705                                        cell_names      = {"Burgundy","Olaf","Jim","Bob","Joe"}
1706                                        cell_parameters = 1
1707                                       
1708                        SetDataFolder root:VSANS_file:entry1:instrument:attenuator             
1709                                        nx_distance     = 1500
1710                                        type    = "PMMA"
1711                                        thickness       = 0
1712                                        attenuator_transmission = 1
1713                                        status  = "in"
1714                                        atten_number    = "0101"
1715                                        index   = 1
1716                        SetDataFolder root:VSANS_file:entry1:instrument:source_aperture         
1717                                        material        = "Gd"
1718                                        description     = "source aperture"
1719                                        diameter        = 1.27
1720                                        nx_distance     = 13.0
1721                                SetDataFolder root:VSANS_file:entry1:instrument:source_aperture:shape                   
1722                                                size    = 1.27
1723                        SetDataFolder root:VSANS_file:entry1:instrument:sample_aperture         
1724                                        material        = "Gd"
1725                                        description     = "sample aperture"
1726                                        diameter        = 1.27
1727                                        nx_distance     = 10
1728                                SetDataFolder root:VSANS_file:entry1:instrument:sample_aperture:shape                   
1729                                                size    = 1.27
1730                        SetDataFolder root:VSANS_file:entry1:instrument:collimator             
1731                                SetDataFolder root:VSANS_file:entry1:instrument:collimator:geometry             
1732                                        SetDataFolder root:VSANS_file:entry1:instrument:collimator:geometry:shape               
1733                                                        shape   = "box"
1734                                                        size    = 11
1735                                        nx_NumGuides    = 1
1736                        SetDataFolder root:VSANS_file:entry1:instrument:converging_pinholes             
1737                                        status  = "in"
1738                        SetDataFolder root:VSANS_file:entry1:instrument:converging_slits               
1739                                        status  = "in"
1740                        SetDataFolder root:VSANS_file:entry1:instrument:lenses         
1741                                        status  = "in"
1742                                        lens_geometry   = "concave_lens"
1743                                        focus_type      = "point"
1744                                        number_of_lenses        = 28
1745                                        number_of_prisms        = 7
1746                                        curvature       = 1
1747                                        lens_distance   = 123
1748                                        prism_distance  = 123
1749                                        lens_material   = "MgF2"
1750                                        prism_material  = "MgF2"
1751                        SetDataFolder root:VSANS_file:entry1:instrument:sample_table           
1752                                        location        = "chamber"
1753                                        offset_distance = 0
1754                        SetDataFolder root:VSANS_file:entry1:instrument:beam_stop               
1755                                        status  = "out"
1756                                        description     = "circular"
1757                                        nx_distance     = 12.5
1758                                        size    = 7.62
1759                                        xPos    = 66.4
1760                                        yPos    = 64.4
1761                                        x_motor_position        = 0.15
1762                                        y_motor_position        = 0.55
1763                                       
1764                        SetDataFolder root:VSANS_file:entry1:instrument:detector_B             
1765                                        data    = trunc(abs(gnoise(p+q)))
1766                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1767                                        nx_distance     = 21.1
1768                                        description     = "fancy model"
1769                                        settings        = "just right"
1770                                        dead_time       = 5e-6
1771                                        x_pixel_size    = 5.08
1772                                        y_pixel_size    = 5.08
1773                                        beam_center_x   = 165.55
1774                                        beam_center_y   = 162.33
1775                                        type    = "??"
1776                                //WAVE  //flatfield_applied     = 0
1777                                //WAVE  //countrate_correction_applied  = 0
1778                                        pixel_mask      = 0
1779                                        integrated_count        = 100111222
1780                                        lateral_offset  = 20
1781                                        PixelNumX       = 320
1782                                        PixelNumY       = 320
1783                                        PixelFWHM       = 0.5
1784                                        CALX    = {0.5,0.5,10000}
1785                                        CALY    = {0.5,0.5,10000}
1786                                        size    = 65
1787                                        event_file_name ="something.hst"
1788                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MR                     
1789                                        data    = trunc(abs(gnoise(p+q)))
1790                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1791                                        nx_distance     = 13.1
1792                                        description     = "fancy model"
1793                                        settings        = "just right"
1794                                        dead_time       = 5e-6
1795                                        x_pixel_size    = 5.08
1796                                        y_pixel_size    = 5.08
1797                                        beam_center_x   = 65.55
1798                                        beam_center_y   = 62.33
1799                                        type    = "??"
1800                                //WAVE  //flatfield_applied     = 0
1801                                //WAVE  //countrate_correction_applied  = 0
1802                                        pixel_mask      = 0
1803                                        integrated_count        = 100111222
1804                                        lateral_offset  = 20
1805                                        separation      = 150
1806                                        PixelNumX       = 48
1807                                        PixelNumY       = 256
1808                                        PixelFWHM       = 0.5
1809                                        size    = 65
1810                                        event_file_name ="something.hst"
1811                                        tube_orientation        = "vertical"
1812                                        number_of_tubes = 48
1813                                        tube_index      = p
1814                                        spatial_calibration     = 1
1815                                        tube_width      = 8
1816                        SetDataFolder root:VSANS_file:entry1:instrument:detector_ML             
1817                                        data    = trunc(abs(gnoise(p+q)))
1818                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1819                                        nx_distance     = 13.1
1820                                        description     = "fancy model"
1821                                        settings        = "just right"
1822                                        dead_time       = 5e-6
1823                                        x_pixel_size    = 5.08
1824                                        y_pixel_size    = 5.08
1825                                        beam_center_x   = 65.55
1826                                        beam_center_y   = 62.33
1827                                        type    = "??"
1828                                //WAVE  //flatfield_applied     = 0
1829                                //WAVE  //countrate_correction_applied  = 0
1830                                        pixel_mask      = 0
1831                                        integrated_count        = 100111222
1832                                        lateral_offset  = 20
1833                                        separation      = 150
1834                                        PixelNumX       = 48
1835                                        PixelNumY       = 256
1836                                        PixelFWHM       = 0.5
1837                                        size    = 65
1838                                        event_file_name ="something.hst"
1839                                        tube_orientation        = "vertical"
1840                                        number_of_tubes = 48
1841                                        tube_index      = p
1842                                        spatial_calibration     = 1
1843                                        tube_width      = 8
1844                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MT             
1845                                        data    = trunc(abs(gnoise(p+q)))
1846                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1847                                        nx_distance     = 13.4
1848                                        description     = "fancy model"
1849                                        settings        = "just right"
1850                                        dead_time       = 5e-6
1851                                        x_pixel_size    = 5.08
1852                                        y_pixel_size    = 5.08
1853                                        beam_center_x   = 65.55
1854                                        beam_center_y   = 62.33
1855                                        type    = "??"
1856                                //WAVE  //flatfield_applied     = 0
1857                                //WAVE  //countrate_correction_applied  = 0
1858                                        pixel_mask      = 0
1859                                        integrated_count        = 100111222
1860                                        lateral_offset  = 20
1861                                        sdd_offset      = 30
1862                                        separation      = 150
1863                                        PixelNumX       = 128
1864                                        PixelNumY       = 48
1865                                        PixelFWHM       = 0.5
1866                                        size    = 65
1867                                        event_file_name ="something.hst"
1868                                        tube_orientation        = "horizontal"
1869                                        number_of_tubes = 48
1870                                        tube_index      = p
1871                                        spatial_calibration     = 1
1872                                        tube_width      = 8
1873                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MB             
1874                                        data    = trunc(abs(gnoise(p+q)))
1875                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1876                                        nx_distance     = 13.4
1877                                        description     = "fancy model"
1878                                        settings        = "just right"
1879                                        dead_time       = 5e-6
1880                                        x_pixel_size    = 5.08
1881                                        y_pixel_size    = 5.08
1882                                        beam_center_x   = 65.55
1883                                        beam_center_y   = 62.33
1884                                        type    = "??"
1885                                //WAVE  //flatfield_applied     = 0
1886                                //WAVE  //countrate_correction_applied  = 0
1887                                        pixel_mask      = 0
1888                                        integrated_count        = 100111222
1889                                        lateral_offset  = 20
1890                                        sdd_offset      = 30
1891                                        separation      = 150
1892                                        PixelNumX       = 128
1893                                        PixelNumY       = 48
1894                                        PixelFWHM       = 0.5
1895                                        size    = 65
1896                                        event_file_name ="something.hst"
1897                                        tube_orientation        = "horizontal"
1898                                        number_of_tubes = 48
1899                                        tube_index      = p
1900                                        spatial_calibration     = 1
1901                                        tube_width      = 8
1902                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FR                     
1903                                        data    = trunc(abs(gnoise(p+q)))
1904                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1905                                        nx_distance     = 2.1
1906                                        description     = "fancy model"
1907                                        settings        = "just right"
1908                                        dead_time       = 5e-6
1909                                        x_pixel_size    = 5.08
1910                                        y_pixel_size    = 5.08
1911                                        beam_center_x   = 65.55
1912                                        beam_center_y   = 62.33
1913                                        type    = "??"
1914                                //WAVE  //flatfield_applied     = 0
1915                                //WAVE  //countrate_correction_applied  = 0
1916                                        pixel_mask      = 0
1917                                        integrated_count        = 100111222
1918                                        lateral_offset  = 20
1919                                        separation      = 150
1920                                        PixelNumX       = 48
1921                                        PixelNumY       = 256
1922                                        PixelFWHM       = 0.5
1923                                        size    = 65
1924                                        event_file_name ="something.hst"
1925                                        tube_orientation        = "vertical"
1926                                        number_of_tubes = 48
1927                                        tube_index      = p
1928                                        spatial_calibration     = 1
1929                                        tube_width      = 8
1930                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FL             
1931                                        data    = trunc(abs(gnoise(p+q)))
1932                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1933                                        nx_distance     = 2.1
1934                                        description     = "fancy model"
1935                                        settings        = "just right"
1936                                        dead_time       = 5e-6
1937                                        x_pixel_size    = 5.08
1938                                        y_pixel_size    = 5.08
1939                                        beam_center_x   = 65.55
1940                                        beam_center_y   = 62.33
1941                                        type    = "??"
1942                                //WAVE  //flatfield_applied     = 0
1943                                //WAVE  //countrate_correction_applied  = 0
1944                                        pixel_mask      = 0
1945                                        integrated_count        = 100111222
1946                                        lateral_offset  = 20
1947                                        separation      = 150
1948                                        PixelNumX       = 48
1949                                        PixelNumY       = 256
1950                                        PixelFWHM       = 0.5
1951                                        size    = 65
1952                                        event_file_name ="something.hst"
1953                                        tube_orientation        = "vertical"
1954                                        number_of_tubes = 48
1955                                        tube_index      = p
1956                                        spatial_calibration     = 1
1957                                        tube_width      = 8
1958                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FT             
1959                                        data    = trunc(abs(gnoise(p+q)))
1960                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1961                                        nx_distance     = 2.1
1962                                        description     = "fancy model"
1963                                        settings        = "just right"
1964                                        dead_time       = 5e-6
1965                                        x_pixel_size    = 5.08
1966                                        y_pixel_size    = 5.08
1967                                        beam_center_x   = 65.55
1968                                        beam_center_y   = 62.33
1969                                        type    = "??"
1970                                //WAVE  //flatfield_applied     = 0
1971                                //WAVE  //countrate_correction_applied  = 0
1972                                        pixel_mask      = 0
1973                                        integrated_count        = 100111222
1974                                        lateral_offset  = 20
1975                                        sdd_offset      = 30
1976                                        separation      = 150
1977                                        PixelNumX       = 128
1978                                        PixelNumY       = 48
1979                                        PixelFWHM       = 0.5
1980                                        size    = 65
1981                                        event_file_name ="something.hst"
1982                                        tube_orientation        = "horizontal"
1983                                        number_of_tubes = 48
1984                                        tube_index      = p
1985                                        spatial_calibration     = 1
1986                                        tube_width      = 8
1987                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FB             
1988                                        data    = trunc(abs(gnoise(p+q)))
1989                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1990                                        nx_distance     = 2.1
1991                                        description     = "fancy model"
1992                                        settings        = "just right"
1993                                        dead_time       = 5e-6
1994                                        x_pixel_size    = 5.08
1995                                        y_pixel_size    = 5.08
1996                                        beam_center_x   = 65.55
1997                                        beam_center_y   = 62.33
1998                                        type    = "??"
1999                                //WAVE  //flatfield_applied     = 0
2000                                //WAVE  //countrate_correction_applied  = 0
2001                                        pixel_mask      = 0
2002                                        integrated_count        = 100111222
2003                                        lateral_offset  = 20
2004                                        sdd_offset      = 30
2005                                        separation      = 150
2006                                        PixelNumX       = 128
2007                                        PixelNumY       = 48
2008                                        PixelFWHM       = 0.5
2009                                        size    = 65
2010                                        event_file_name ="something.hst"
2011                                        tube_orientation        = "horizontal"
2012                                        number_of_tubes = 48
2013                                        tube_index      = p
2014                                        spatial_calibration     = 1
2015                                        tube_width      = 8
2016                                       
2017                                       
2018                SetDataFolder root:VSANS_file:entry1:data_B             
2019                                data    = trunc(abs(gnoise(p+q)))
2020                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2021                                variables       = {320,320}
2022                                data_image      = p
2023                SetDataFolder root:VSANS_file:entry1:data_MR           
2024                                data    = trunc(abs(gnoise(p+q)))
2025                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2026                                variables       = {48,256}
2027                                data_image      = p
2028                SetDataFolder root:VSANS_file:entry1:data_ML           
2029                                data    = trunc(abs(gnoise(p+q)))
2030                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2031                                variables       = {48,256}
2032                                data_image      = p
2033                SetDataFolder root:VSANS_file:entry1:data_MT           
2034                                data    = trunc(abs(gnoise(p+q)))
2035                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2036                                variables       = {128,48}
2037                                data_image      = p
2038                SetDataFolder root:VSANS_file:entry1:data_MB           
2039                                data    = trunc(abs(gnoise(p+q)))
2040                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2041                                variables       = {128,48}
2042                                data_image      = p
2043                SetDataFolder root:VSANS_file:entry1:data_FR           
2044                                data    = trunc(abs(gnoise(p+q)))
2045                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2046                                variables       = {48,256}
2047                                data_image      = p
2048                SetDataFolder root:VSANS_file:entry1:data_FL           
2049                                data    = trunc(abs(gnoise(p+q)))
2050                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2051                                variables       = {48,256}
2052                                data_image      = p
2053                SetDataFolder root:VSANS_file:entry1:data_FT           
2054                                data    = trunc(abs(gnoise(p+q)))
2055                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2056                                variables       = {128,48}
2057                                data_image      = p
2058                SetDataFolder root:VSANS_file:entry1:data_FB           
2059                                data    = trunc(abs(gnoise(p+q)))
2060                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2061                                variables       = {128,48}
2062                                data_image      = p
2063                               
2064                SetDataFolder root:VSANS_file:entry1:reduction         
2065                                intent  = "SCATTER"
2066                                transmission_file_name  = "SANSFile_TRN.h5"
2067                                empty_beam_file_name    = "SANSFile_EB.h5"
2068                                background_file_name    = "SANSFile_BKG.h5"
2069                                empty_file_name = "SANSFile_EMP.h5"
2070                                sensitivity_file_name   = "SANSFile_DIV.h5"
2071                                mask_file_name  = "SANSFile_MASK.h5"
2072                                sans_log_file_name      = "SANSFile_log.txt"
2073                                whole_trans     = 0.888
2074                                whole_trans_error       = 0.008
2075                                box_count       = 23232
2076                                box_count_error = 22
2077                                box_coordinates = {50,80,45,75}
2078                                comments        = "extra data comments"
2079                                absolute_scaling        = {1,1,1e5,1}
2080                        SetDataFolder root:VSANS_file:entry1:reduction:pol_sans                 
2081                                        pol_sans_purpose        = "name from the list"
2082                                        cell_name       = "Burgundy"
2083                                        cell_parameters = {1,2,3,4,5}
2084                                               
2085        SetDataFolder root:VSANS_file:DAS_Logs         
2086                        //...multiple entries and levels... to add     
2087                        //this will be enormous
2088
2089
2090
2091
2092
2093
2094
2095///// DO NOT DELETE WHAT IS BELOW THIS LINE  /////////////
2096
2097///////////////////////////
2098//
2099// these are all of the VCALC changes to the simulated files. ADD to these as needed, making these changes to the
2100// folder structure after the "default" values have been re-filled in the waves (to make sure something is really there)
2101//
2102////////////////////////
2103                               
2104                        SetDataFolder root:VSANS_file:entry1:instrument         
2105                                SetDataFolder root:VSANS_file:entry1:instrument:monochromator           
2106                                        wavelength      = VCALC_getWavelength()
2107                                        SetDataFolder root:VSANS_file:entry1:instrument:monochromator:velocity_selector         
2108                                                wavelength      = VCALC_getWavelength()
2109                                                //      table (wave)   
2110                                        SetDataFolder root:VSANS_file:entry1:instrument:monochromator:crystal           
2111                                                wavelength      = VCALC_getWavelength()
2112                                               
2113                                        SetDataFolder root:VSANS_file:entry1:instrument:monochromator:white_beam               
2114                                                wavelength      = VCALC_getWavelength()
2115                                                //      description_of_distribution
2116                                       
2117
2118                                       
2119                        SetDataFolder root:VSANS_file:entry1:instrument:detector_B             
2120                                data    = root:Packages:NIST:VSANS:VCALC:Back:det_B
2121                                nx_distance     = VCALC_getSDD("B")
2122
2123                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MR                     
2124                                data    = root:Packages:NIST:VSANS:VCALC:Middle:det_MR
2125                                nx_distance     = VCALC_getSDD("MR")
2126                                separation      = VCALC_getPanelSeparation("MR")
2127                                spatial_calibration[0][] = 1.072
2128                                spatial_calibration[1][] = -4.0e-5
2129                               
2130                        SetDataFolder root:VSANS_file:entry1:instrument:detector_ML             
2131                                data    = root:Packages:NIST:VSANS:VCALC:Middle:det_ML
2132                                nx_distance     = VCALC_getSDD("ML")
2133                                separation = VCALC_getPanelSeparation("ML")
2134                                spatial_calibration[0][] = 1.072
2135                                spatial_calibration[1][] = -4.0e-5
2136
2137                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MT             
2138                                data    = root:Packages:NIST:VSANS:VCALC:Middle:det_MT
2139                                nx_distance     = VCALC_getSDD("MT")
2140                                sdd_offset = VCALC_getTopBottomSDDOffset("MT")
2141                                separation = VCALC_getPanelSeparation("MT")
2142                                spatial_calibration[0][] = 1.072
2143                                spatial_calibration[1][] = -4.0e-5
2144
2145                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MB             
2146                                data    = root:Packages:NIST:VSANS:VCALC:Middle:det_MB
2147                                nx_distance     = VCALC_getSDD("MB")
2148                                sdd_offset = VCALC_getTopBottomSDDOffset("MB")
2149                                separation = VCALC_getPanelSeparation("MB")
2150                                spatial_calibration[0][] = 1.072
2151                                spatial_calibration[1][] = -4.0e-5
2152
2153                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FR                     
2154                                data    = root:Packages:NIST:VSANS:VCALC:Front:det_FR
2155                                nx_distance     = VCALC_getSDD("FR")
2156                                separation = VCALC_getPanelSeparation("FR")
2157                                spatial_calibration[0][] = 1.072
2158                                spatial_calibration[1][] = -4.0e-5
2159
2160                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FL             
2161                                data    = root:Packages:NIST:VSANS:VCALC:Front:det_FL
2162                                nx_distance     = VCALC_getSDD("FL")
2163                                separation = VCALC_getPanelSeparation("FL")
2164                                spatial_calibration[0][] = 1.072
2165                                spatial_calibration[1][] = -4.0e-5
2166
2167                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FT             
2168                                data    = root:Packages:NIST:VSANS:VCALC:Front:det_FT
2169                                nx_distance     = VCALC_getSDD("FT")
2170                                sdd_offset = VCALC_getTopBottomSDDOffset("FT")
2171                                separation = VCALC_getPanelSeparation("FT")
2172                                spatial_calibration[0][] = 1.072
2173                                spatial_calibration[1][] = -4.0e-5
2174
2175                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FB             
2176                                data    = root:Packages:NIST:VSANS:VCALC:Front:det_FB
2177                                nx_distance     = VCALC_getSDD("FB")
2178                                sdd_offset = VCALC_getTopBottomSDDOffset("FB")
2179                                separation = VCALC_getPanelSeparation("FB")
2180                                spatial_calibration[0][] = 1.072
2181                                spatial_calibration[1][] = -4.0e-5
2182
2183                                       
2184// SRK -set the top level copies of the data                                   
2185                SetDataFolder root:VSANS_file:entry1:data_B     
2186                        data    = root:Packages:NIST:VSANS:VCALC:Back:det_B
2187
2188                SetDataFolder root:VSANS_file:entry1:data_MR   
2189                        data    = root:Packages:NIST:VSANS:VCALC:Middle:det_MR
2190                       
2191                SetDataFolder root:VSANS_file:entry1:data_ML   
2192                        data    = root:Packages:NIST:VSANS:VCALC:Middle:det_ML
2193                       
2194                SetDataFolder root:VSANS_file:entry1:data_MT   
2195                        data    = root:Packages:NIST:VSANS:VCALC:Middle:det_MT
2196                        data    = (data ==   2147483647) ? 0 : data             //the NaN "mask" in the sim data shows up as an ugly integer
2197                       
2198                SetDataFolder root:VSANS_file:entry1:data_MB   
2199                        data    = root:Packages:NIST:VSANS:VCALC:Middle:det_MB
2200                        data    = (data ==   2147483647) ? 0 : data             //the NaN "mask" in the sim data shows up as an ugly integer
2201                       
2202                SetDataFolder root:VSANS_file:entry1:data_FR   
2203                        data    = root:Packages:NIST:VSANS:VCALC:Front:det_FR
2204                       
2205                SetDataFolder root:VSANS_file:entry1:data_FL   
2206                        data    = root:Packages:NIST:VSANS:VCALC:Front:det_FL
2207                       
2208                SetDataFolder root:VSANS_file:entry1:data_FT   
2209                        data    = root:Packages:NIST:VSANS:VCALC:Front:det_FT
2210                        data    = (data ==   2147483647) ? 0 : data             //the NaN "mask" in the sim data shows up as an ugly integer
2211                       
2212                SetDataFolder root:VSANS_file:entry1:data_FB   
2213                        data    = root:Packages:NIST:VSANS:VCALC:Front:det_FB
2214                        data    = (data ==   2147483647) ? 0 : data             //the NaN "mask" in the sim data shows up as an ugly integer
2215                       
2216                               
2217//              SetDataFolder root:VSANS_file:entry1:reduction         
2218//                      intent  = "SCATTER"
2219//                      transmission_file_name  = "SANSFile_TRN.h5"
2220//                      empty_beam_file_name    = "SANSFile_EB.h5"
2221//                      background_file_name    = "SANSFile_BKG.h5"
2222//                      empty_file_name = "SANSFile_EMP.h5"
2223//                      sensitivity_file_name   = "SANSFile_DIV.h5"
2224//                      mask_file_name  = "SANSFile_MASK.h5"
2225//                      sans_log_file_name      = "SANSFile_log.txt"
2226//                      whole_trans     = 0.888
2227//                      whole_trans_error       = 0.008
2228//                      box_count       = 23232
2229//                      box_count_error = 22
2230//                      box_coordinates = {50,80,45,75}
2231//                      comments        = "extra data comments"
2232//                      absolute_scaling        = {1,1,1e5,1}
2233//                      SetDataFolder root:VSANS_file:entry1:reduction:pol_sans                 
2234//                              pol_sans_purpose        = "name from the list"
2235//                              cell_name       = "Burgundy"
2236//                              cell_parameters = {1,2,3,4,5}
2237                                       
2238
2239        SetDataFolder root:
2240
2241End
2242
2243
2244////////////// fake DIV file tests
2245
2246//
2247//      Make/O/T/N=1    file_name       = "VSANS_DIV_test.h5"
2248//
2249// simple generation of a fake div file. for sans, nothing other than the creation date was written to the
2250// file header. nothing more is needed (possibly)
2251//
2252// TODO -- I want to re-visit the propagation of errors in the DIV file. No errors are ever calculated/saved
2253//   during the generation of the file, but there's no reason it couldn't. the idea is that the plex
2254//   is counted so long that the errors are insignificant compared to the data errors, but that may not
2255//   always be the case. A bit of math may prove this. or not. Plus, the situation for VSANS may be different.
2256//
2257Proc H_Setup_VSANS_DIV_Structure()
2258       
2259        NewDataFolder/O/S root:VSANS_DIV_file           
2260
2261        NewDataFolder/O/S root:VSANS_DIV_file:entry1           
2262                Make/O/T/N=1    title   = "title of entry1"
2263                Make/O/T/N=1    start_date      = "2015-02-28T08:15:30-5:00"
2264                NewDataFolder/O/S root:VSANS_DIV_file:entry1:instrument         
2265                        Make/O/T/N=1    name    = "NGB30mSANS"
2266                NewDataFolder/O/S root:VSANS_DIV_file:entry1:data_B             
2267                        Make/O/I/N=(320,320)    data    = trunc(abs(gnoise(p+q)))
2268                        Make/O/D/N=(320,320)    error   = 0.01*abs(gnoise(p+q))
2269                NewDataFolder/O/S root:VSANS_DIV_file:entry1:data_MR           
2270                        Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
2271                        Make/O/D/N=(48,256)     error   = 0.01*abs(gnoise(p+q))
2272                NewDataFolder/O/S root:VSANS_DIV_file:entry1:data_ML           
2273                        Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
2274                        Make/O/D/N=(48,256)     error   = 0.01*abs(gnoise(p+q))
2275                NewDataFolder/O/S root:VSANS_DIV_file:entry1:data_MT           
2276                        Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
2277                        Make/O/D/N=(128,48)     error   = 0.01*abs(gnoise(p+q))
2278                NewDataFolder/O/S root:VSANS_DIV_file:entry1:data_MB           
2279                        Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
2280                        Make/O/D/N=(128,48)     error   = 0.01*abs(gnoise(p+q))
2281                NewDataFolder/O/S root:VSANS_DIV_file:entry1:data_FR           
2282                        Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
2283                        Make/O/D/N=(48,256)     error   = 0.01*abs(gnoise(p+q))
2284                NewDataFolder/O/S root:VSANS_DIV_file:entry1:data_FL           
2285                        Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
2286                        Make/O/D/N=(48,256)     error   = 0.01*abs(gnoise(p+q))
2287                NewDataFolder/O/S root:VSANS_DIV_file:entry1:data_FT           
2288                        Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
2289                        Make/O/D/N=(128,48)     error   = 0.01*abs(gnoise(p+q))
2290                NewDataFolder/O/S root:VSANS_DIV_file:entry1:data_FB           
2291                        Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
2292                        Make/O/D/N=(128,48)     error   = 0.01*abs(gnoise(p+q))
2293                       
2294        SetDataFolder root:
2295
2296End
Note: See TracBrowser for help on using the repository browser.