source: sans/Dev/trunk/NCNR_User_Procedures/Reduction/VSANS/V_NexusFromIgor.ipf @ 963

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

Updated the display of the "beam center finder" to better display the panels with an appropriate aspect ratio for the pixels.

Made the number of pixels (x,y) on each of the panels as globals, plus access functions. Large panels were coded for 256, but will likely be 128 pixels in reality. Make global for easy changes. Made sure that exsting functions used the global and were not hard-wired.

File size: 108.9 KB
Line 
1#pragma rtGlobals=3             // Use modern global access method and strict wave access.
2
3
4//////////////////////////////
5//////////////////////////////
6//
7// THIS IS DEPRICATED -- LOAD A NEXUS FILE INSTEAD AS A TEMPLATE
8//
9// AUG 2015
10//
11//////////////////////////////
12//////////////////////////////
13
14// TODO -- of the many issues (which may all be superceded by the JS file,
15// the detector dimensions (nPix) are incorrrect, and are better set as globals.
16
17
18//
19// this is a test of the "new" VSANS file structure that is supposed to be
20// NeXus compliant. It doesn't have the NICE logs, but has everything that I
21// can think of here.
22//
23
24//
25//      To properly generate a Nexus file with attributes, using Pete Jemain's procedures:
26//
27//      Generating the "current" Igor macros:
28//      - From the outlines, make a copy of the outline, and export some of the selected
29//      columns to be able to:
30//      1) Make all of the waves and folders
31//      2) Add attributes (only) to the existing tree
32//      3) Fill the tree with simulation values
33//      (still don't know here how to not lose the "=VCALC_getWavelength" statements
34//      and similar assignments. these are not part of the outline)
35//
36//
37//
38//      Generate the data file:
39//      1) Set down the folder structure:               H_Setup_SANS_Structure()
40//      2) Write in the attributes:                             H_FillSANS_Attributes()
41//      3) Fill with simulated data:                    H_FillSANS_wSim()
42//
43//      There is now a SANS_file folder which contains everything, but is not "aware"
44//      of any of references that Pete's gateway needs.
45//
46//      4) Save the folder to HDF5:                             Save_VSANS_file()
47//      attributes are not saved, but the tree is correct
48//      5) Load back in to generate xref:               H_HDF5Gate_ReadTest()
49//      no attributes loaded, but HDF5___xref is generated
50//      6) From the loaded folder, save xref:   Save_HDF5___xref()
51//      save it to disk
52//      7) Copy the reference to SANS_file:             Copy_HDF5___xref()
53//      load it from disk, and copy it to the folder
54//      8) Save the folder using the gateway:   H_HDF5Gate_WriteVSANS()
55//      now, the Nexus file is saved with attributes
56//
57
58
59
60//
61// lays out the tree and fills with dummy values
62//
63Proc H_Setup_VSANS_Structure()
64       
65        Variable n=100
66        Variable tubes=48       
67
68NewDataFolder/O/S root:VSANS_file               
69        Make/O/T/N=1    file_name       = "VSANSTest.h5"
70        Make/O/T/N=1    file_time       = "2015-02-28T08:15:30-5:00"
71        Make/O/T/N=1    facility        = "NCNR"
72        Make/O/T/N=1    NeXus_version   = "Nexus 0.0"
73        Make/O/T/N=1    hdf_version     = "hdf5.x"
74        Make/O/T/N=1    file_history    = "history log"
75        NewDataFolder/O/S root:VSANS_file:entry1               
76                Make/O/T/N=1    title   = "title of entry1"
77                Make/O/D/N=1    experiment_identifier   = 684636
78                Make/O/T/N=1    experiment_description  = "description of expt"
79                Make/O/T/N=1    entry_identifier        = "S22-33"
80                Make/O/T/N=1    definition      = "NXsas"
81                Make/O/T/N=1    start_time      = "2015-02-28T08:15:30-5:00"
82                Make/O/T/N=1    end_time        = "2015-02-28T08:15:30-5:00"
83                Make/O/D/N=1    duration        = 300
84                Make/O/D/N=1    collection_time = 300
85                Make/O/T/N=1    run_cycle       = "S22-23"
86                Make/O/T/N=1    data_directory  = "[VSANS_VSANS]"
87                Make/O/T/N=1    program_name    = "runPoint={stuff}"
88                NewDataFolder/O/S root:VSANS_file:entry1:user           
89                        Make/O/T/N=1    name    = "Dr. Pi"
90                        Make/O/T/N=1    role    = "evil scientist"
91                        Make/O/T/N=1    affiliation     = "NIST"
92                        Make/O/T/N=1    address = "100 Bureau Drive"
93                        Make/O/T/N=1    telephoneNumber = "301-999-9999"
94                        Make/O/T/N=1    faxNumber       = "301-999-9999"
95                        Make/O/T/N=1    email   = "sans@nist"
96                        Make/O/I/N=1    facility_user_id        = 6937596
97                NewDataFolder/O/S root:VSANS_file:entry1:control               
98                        Make/O/T/N=1    mode    = "timer"
99                        Make/O/D/N=1    preset  = 555
100                        Make/O/D/N=1    integral        = 555
101                        Make/O/D/N=1    monitor_counts  = 666
102                        Make/O/D/N=1    monitor_preset  = 1e8
103                        //Make/O/T/N=1  type    = "monitor type"
104                        //Make/O/D/N=1  efficiency      = 0.01
105                        //Make/O/D/N=1  sampled_fraction        = 1
106                        Make/O/D/N=1    detector_counts = 100111222
107                        Make/O/D/N=1    detector_preset = 1e5
108                        Make/O/D/N=1    count_start     = 1
109                        Make/O/D/N=1    count_end       = 1
110                        Make/O/D/N=1    count_time      = 1
111                        Make/O/D/N=1    count_time_preset       = 1
112                //NewDataFolder/O/S root:VSANS_file:entry1:program_name //program_data 
113                        //Make/O/T/N=1  //data  = "program data"
114                        //Make/O/T/N=1  //description   = "acquisition"
115                        //Make/O/T/N=1  //file_name     = "NICE"
116                        //Make/O/T/N=1  //type  = "client"
117                NewDataFolder/O/S root:VSANS_file:entry1:sample         
118                        Make/O/T/N=1    description     = "My Sample"
119                        Make/O/D/N=1    group_id        = 12345
120                        //Make/O/T/N=1  //chemical_formula      = "C8H10N4O2"
121                        NewDataFolder/O/S root:VSANS_file:entry1:sample:temperature_1           
122                                Make/O/T/N=1    name    = "Sample temperature"
123                                Make/O/T/N=1    attached_to     = "block"
124                                Make/O/T/N=1    measurement     = "temperature"
125                                NewDataFolder/O/S root:VSANS_file:entry1:sample:temperature_1:value_log         
126                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
127                                        Make/O/D/N=(n)  nx_time = p
128                                        Make/O/D/N=(n)  value   = 2*p
129                        NewDataFolder/O/S root:VSANS_file:entry1:sample:temperature_2           
130                                Make/O/T/N=1    name    = "Sample temperature"
131                                Make/O/T/N=1    attached_to     = "block"
132                                Make/O/T/N=1    measurement     = "temperature"
133                                NewDataFolder/O/S root:VSANS_file:entry1:sample:temperature_2:value_log         
134                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
135                                        Make/O/D/N=(n)  nx_time = p
136                                        Make/O/D/N=(n)  value   = 3*p
137                        NewDataFolder/O/S root:VSANS_file:entry1:sample:electric_field         
138                                Make/O/T/N=1    name    = "electric meter"
139                                Make/O/T/N=1    attached_to     = "sample"
140                                Make/O/T/N=1    measurement     = "voltage"
141                                NewDataFolder/O/S root:VSANS_file:entry1:sample:electric_field:value_log               
142                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
143                                        Make/O/D/N=(n)  nx_time = 2*p
144                                        Make/O/D/N=(n)  value   = sin(p/10)
145                        NewDataFolder/O/S root:VSANS_file:entry1:sample:shear_field             
146                                Make/O/T/N=1    name    = "rheometer"
147                                Make/O/T/N=1    attached_to     = "sample"
148                                Make/O/T/N=1    measurement     = "stress"
149                                NewDataFolder/O/S root:VSANS_file:entry1:sample:shear_field:value_log           
150                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
151                                        Make/O/D/N=(n)  nx_time = p
152                                        Make/O/D/N=(n)  value   = cos(p/5)
153                        NewDataFolder/O/S root:VSANS_file:entry1:sample:pressure               
154                                Make/O/T/N=1    name    = "Sample pressure"
155                                Make/O/T/N=1    attached_to     = "pressure cell"
156                                Make/O/T/N=1    measurement     = "pressure"
157                                NewDataFolder/O/S root:VSANS_file:entry1:sample:pressure:value_log             
158                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
159                                        Make/O/D/N=(n)  nx_time = p
160                                        Make/O/D/N=(n)  value   = p/2
161                        NewDataFolder/O/S root:VSANS_file:entry1:sample:magnetic_field         
162                                Make/O/T/N=1    name    = "magnetic field (direction)"
163                                Make/O/T/N=1    attached_to     = "cryostat"
164                                Make/O/T/N=1    measurement     = "magnetic field"
165                                NewDataFolder/O/S root:VSANS_file:entry1:sample:magnetic_field:value_log               
166                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
167                                        Make/O/D/N=(n)  nx_time = p
168                                        Make/O/D/N=(n)  value   = 10*p
169                        SetDataFolder root:VSANS_file:entry1:sample             
170                        Make/O/D/N=1    changer_position        = 5
171                        Make/O/T/N=1    sample_holder_description       = "10CB"
172                        //Make/O/D/N=1  //mass  = 0.3
173                        //Make/O/D/N=1  //density       = 1.02
174                        //Make/O/D/N=1  //molecular_weight      = 194.19
175                        //Make/O/T/N=1  //description   = "My Sample"
176                        //Make/O/T/N=1  //preparation_date      = "2015-02-28T08:15:30-5:00"
177                        //Make/O/D/N=1  //volume_fraction       = 0.2
178                        //Make/O/D/N=1  //scattering_length_density     = 6.35e-6
179                        Make/O/D/N=1    thickness       = 0.1
180                        Make/O/D/N=1    rotation_angle  = 30
181                        Make/O/D/N=1    transmission    = 0.888
182                        Make/O/D/N=1    transmission_error      = 0.011
183                        //Make/O/D/N=1  //xs_incoh      = 5.5
184                        //Make/O/D/N=1  //xs_coh        = 22.2
185                        //Make/O/D/N=1  //xs_absorb     = 3.1
186                NewDataFolder/O/S root:VSANS_file:entry1:instrument             
187                        //Make/O/T/N=1  //location      = "NCNR"
188                        Make/O/T/N=1    name    = "NG3-VSANS"
189                        Make/O/T/N=1    type    = "VSANS"
190                        Make/O/T/N=1    local_contact   = "Steve Kline"
191                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:source             
192                                Make/O/T/N=1    name    = "NCNR"
193                                Make/O/T/N=1    type    = "Reactor Neutron Source"
194                                Make/O/T/N=1    probe   = "neutron"
195                                Make/O/D/N=1    power   = 20
196                                       
197                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:beam_monitor_norm           
198                                Make/O/D/N=1    data    = 1234567
199                                Make/O/T/N=1    type    = "monitor"
200                                Make/O/D/N=1    efficiency      = 0.01
201                                Make/O/D/N=1    nx_distance     = 16
202                                Make/O/D/N=1    saved_count     = 1e8
203                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:beam_monitor_low                   
204                                Make/O/D/N=1    data    = 1234567
205                                Make/O/T/N=1    type    = "monitor"
206                                Make/O/D/N=1    efficiency      = 0.001
207                                Make/O/D/N=1    nx_distance     = 16
208                                Make/O/D/N=1    saved_count     = 1e8
209                                       
210                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:monochromator               
211                                Make/O/D/N=1    wavelength      = 5.1
212                                Make/O/D/N=1    wavelength_spread       = 0.02
213                                Make/O/T/N=1    type    = "VS"
214                                NewDataFolder/O/S root:VSANS_file:entry1:instrument:monochromator:velocity_selector             
215                                        Make/O/T/N=1    status  = "in"
216                                        Make/O/D/N=1    rotation_speed  = 5100
217                                        Make/O/D/N=1    wavelength      = 6
218                                        Make/O/D/N=1    wavelength_spread       = 0.15
219                                        Make/O/D/N=1    vs_tilt = 3
220                                        Make/O/D/N=1    nx_distance     = 18.8
221                                                // table (wave)
222                                NewDataFolder/O/S root:VSANS_file:entry1:instrument:monochromator:crystal               
223                                        Make/O/T/N=1    status  = "in"
224                                        Make/O/D/N=1    nx_distance     = 1
225                                        Make/O/D/N=1    wavelength      = 5.1
226                                        Make/O/D/N=1    wavelength_spread       = 0.02
227                                        Make/O/D/N=1    rotation        = 1.1
228                                        Make/O/D/N=1    energy  = 1
229                                        Make/O/D/N=1    wavevector      = 1
230                                        Make/O/D/N=1    lattice_parameter       = 1
231                                        Make/O/D/N=3    reflection      = {1,2,3}
232                                        Make/O/D/N=1    horizontal_curvature    = 1
233                                        Make/O/D/N=1    vertical_curvature      = 1
234                                        Make/O/D/N=1    horizontal_aperture     = 1
235                                        Make/O/D/N=1    vertical_aperture       = 1
236                                NewDataFolder/O/S root:VSANS_file:entry1:instrument:monochromator:white_beam           
237                                        Make/O/T/N=1    status  = "in"
238                                        Make/O/D/N=1    wavelength      = 5.1
239                                        Make/O/D/N=1    wavelength_spread       = 0.8
240                                                // description_of_distribution 
241                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:chopper             
242                                Make/O/T/N=1    status  = "in"
243                                Make/O/T/N=1    type    = "single"
244                                Make/O/D/N=1    rotation_speed  = 12000
245                                Make/O/D/N=1    distance_from_source    = 400
246                                Make/O/D/N=1    distance_from_sample    = 1500
247                                Make/O/D/N=1    slits   = 2
248                                Make/O/D/N=1    angular_opening = 15
249                                Make/O/D/N=1    duty_cycle      = 0.25
250                                        // +?   
251                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:polarizer           
252                                Make/O/T/N=1    status  = "in"
253                                Make/O/T/N=1    type    = "supermirror"
254                                Make/O/T/N=1    composition     = "multilayer"
255                                Make/O/D/N=1    efficiency      = 0.95
256                                Make/O/T/N=1    status  = "in"
257                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:flipper             
258                                Make/O/T/N=1    status  = "on"
259                                Make/O/D/N=1    driving_current = 42
260                                Make/O/T/N=1    waveform        = "sine"
261                                Make/O/D/N=1    frequency       = 400
262                                Make/O/D/N=1    transmitted_power       = 0.99
263                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:polarizer_analyzer         
264                                Make/O/T/N=1    status  = "down"
265                                Make/O/D/N=1    guide_field_current_1   = 33
266                                Make/O/D/N=1    guide_field_current_2   = 32
267                                Make/O/D/N=1    solenoid_current        = 21
268                                Make/O/D/N=1    cell_index      = 1
269                                Make/O/T/N=(5)  cell_names      = {"Burgundy","Olaf","Jim","Bob","Joe"}
270                                Make/O/D/N=(5,2)        cell_parameters = 1
271                                       
272                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:attenuator         
273                                Make/O/D/N=1    nx_distance     = 1500
274                                Make/O/T/N=1    type    = "PMMA"
275                                Make/O/D/N=1    thickness       = 0
276                                Make/O/D/N=1    attenuator_transmission = 1
277                                Make/O/T/N=1    status  = "in"
278                                Make/O/T/N=1    atten_number    = "0101"
279                                Make/O/D/N=(10,10)      index   = 1
280                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:source_aperture             
281                                Make/O/T/N=1    material        = "Gd"
282                                Make/O/T/N=1    description     = "source aperture"
283                                Make/O/D/N=1    diameter        = 1.27
284                                Make/O/D/N=1    nx_distance     = 13.0
285                                NewDataFolder/O/S root:VSANS_file:entry1:instrument:source_aperture:shape                       
286                                        Make/O/D/N=(1,2)        size    = 1.27
287                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:sample_aperture             
288                                Make/O/T/N=1    material        = "Gd"
289                                Make/O/T/N=1    description     = "sample aperture"
290                                Make/O/D/N=1    diameter        = 1.27
291                                Make/O/D/N=1    nx_distance     = 10
292                                NewDataFolder/O/S root:VSANS_file:entry1:instrument:sample_aperture:shape                       
293                                        Make/O/D/N=(1,2)        size    = 1.27
294                        NewDataFolder/O/S  root:VSANS_file:entry1:instrument:collimator         
295                                NewDataFolder/O/S root:VSANS_file:entry1:instrument:collimator:geometry         
296                                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:collimator:geometry:shape           
297                                                Make/O/T/N=1    shape   = "box"
298                                                Make/O/D/N=1    size    = 11
299                                Make/O/I/N=1    nx_NumGuides    = 1
300                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:converging_pinholes         
301                                Make/O/T/N=1    status  = "in"
302                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:converging_slits           
303                                Make/O/T/N=1    status  = "in"
304                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:lenses             
305                                Make/O/T/N=1    status  = "in"
306                                Make/O/T/N=1    lens_geometry   = "concave_lens"
307                                Make/O/T/N=1    focus_type      = "point"
308                                Make/O/I/N=1    number_of_lenses        = 28
309                                Make/O/I/N=1    number_of_prisms        = 7
310                                Make/O/D/N=1    curvature       = 1
311                                Make/O/D/N=1    lens_distance   = 123
312                                Make/O/D/N=1    prism_distance  = 123
313                                Make/O/T/N=1    lens_material   = "MgF2"
314                                Make/O/T/N=1    prism_material  = "MgF2"
315                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:sample_table               
316                                Make/O/T/N=1    location        = "chamber"
317                                Make/O/D/N=1    offset_distance = 0
318                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:beam_stop           
319                                Make/O/T/N=1    status  = "out"
320                                Make/O/T/N=1    description     = "circular"
321                                Make/O/D/N=1    nx_distance     = 12.5
322                                Make/O/D/N=1    size    = 7.62
323                                Make/O/D/N=1    xPos    = 66.4
324                                Make/O/D/N=1    yPos    = 64.4
325                                Make/O/D/N=1    x_motor_position        = 0.15
326                                Make/O/D/N=1    y_motor_position        = 0.55
327                                       
328                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_B         
329                                Make/O/I/N=(320,320)    data    = trunc(abs(gnoise(p+q)))
330                                //Make/O/D/N=(320,320)  //data_error    = 0.01*abs(gnoise(p+q))
331                                Make/O/D/N=1    nx_distance     = 21.1
332                                Make/O/T/N=1    description     = "fancy model"
333                                Make/O/T/N=1    settings        = "just right"
334                                Make/O/D/N=1    dead_time       = 5e-6
335                                Make/O/D/N=1    x_pixel_size    = 5.08
336                                Make/O/D/N=1    y_pixel_size    = 5.08
337                                Make/O/D/N=1    beam_center_x   = 165.55
338                                Make/O/D/N=1    beam_center_y   = 162.33
339                                Make/O/T/N=1    type    = "??"
340                                //Make/O/D/N=1  //flatfield_applied     = 0
341                                //Make/O/D/N=1  //countrate_correction_applied  = 0
342                                Make/O/D/N=(320,320)    pixel_mask      = 0
343                                Make/O/I/N=1    integrated_count        = 100111222
344                                Make/O/D/N=1    lateral_offset  = 20
345                                Make/O/I/N=1    PixelNumX       = 320
346                                Make/O/I/N=1    PixelNumY       = 320
347                                Make/O/D/N=1    PixelFWHM       = 0.5
348                                Make/O/D/N=3    CALX    = {0.5,0.5,10000}
349                                Make/O/D/N=3    CALY    = {0.5,0.5,10000}
350                                Make/O/D/N=1    size    = 65
351                                Make/O/T/N=1    event_file_name ="something.hst"
352                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_MR                 
353                                Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
354                                //Make/O/D/N=(48,256)   //data_error    = 0.01*abs(gnoise(p+q))
355                                Make/O/D/N=1    nx_distance     = 13.1
356                                Make/O/T/N=1    description     = "fancy model"
357                                Make/O/T/N=1    settings        = "just right"
358                                Make/O/D/N=1    dead_time       = 5e-6
359                                Make/O/D/N=1    x_pixel_size    = 5.08
360                                Make/O/D/N=1    y_pixel_size    = 5.08
361                                Make/O/D/N=1    beam_center_x   = 65.55
362                                Make/O/D/N=1    beam_center_y   = 62.33
363                                Make/O/T/N=1    type    = "??"
364                                //Make/O/D/N=1  //flatfield_applied     = 0
365                                //Make/O/D/N=1  //countrate_correction_applied  = 0
366                                Make/O/D/N=(48,256)     pixel_mask      = 0
367                                Make/O/I/N=1    integrated_count        = 100111222
368                                Make/O/D/N=1    lateral_offset  = 20
369                                Make/O/D/N=1    separation      = 150
370                                Make/O/I/N=1    PixelNumX       = 48
371                                Make/O/I/N=1    PixelNumY       = 256
372                                Make/O/D/N=1    PixelFWHM       = 0.5
373                                Make/O/D/N=1    size    = 65
374                                Make/O/T/N=1    event_file_name ="something.hst"
375                                Make/O/T/N=1    tube_orientation        = "vertical"
376                                Make/O/I/N=1    number_of_tubes = 48
377                                Make/O/I/N=(tubes)      tube_index      = p
378                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
379                                Make/O/D/N=1    tube_width      = 8
380                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_ML                 
381                                Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
382                                //Make/O/D/N=(48,256)   //data_error    = 0.01*abs(gnoise(p+q))
383                                Make/O/D/N=1    nx_distance     = 13.1
384                                Make/O/T/N=1    description     = "fancy model"
385                                Make/O/T/N=1    settings        = "just right"
386                                Make/O/D/N=1    dead_time       = 5e-6
387                                Make/O/D/N=1    x_pixel_size    = 5.08
388                                Make/O/D/N=1    y_pixel_size    = 5.08
389                                Make/O/D/N=1    beam_center_x   = 65.55
390                                Make/O/D/N=1    beam_center_y   = 62.33
391                                Make/O/T/N=1    type    = "??"
392                                //Make/O/D/N=1  //flatfield_applied     = 0
393                                //Make/O/D/N=1  //countrate_correction_applied  = 0
394                                Make/O/D/N=(48,256)     pixel_mask      = 0
395                                Make/O/I/N=1    integrated_count        = 100111222
396                                Make/O/D/N=1    lateral_offset  = 20
397                                Make/O/D/N=1    separation      = 150
398                                Make/O/I/N=1    PixelNumX       = 48
399                                Make/O/I/N=1    PixelNumY       = 256
400                                Make/O/D/N=1    PixelFWHM       = 0.5
401                                Make/O/D/N=1    size    = 65
402                                Make/O/T/N=1    event_file_name ="something.hst"
403                                Make/O/T/N=1    tube_orientation        = "vertical"
404                                Make/O/I/N=1    number_of_tubes = 48
405                                Make/O/I/N=(tubes)      tube_index      = p
406                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
407                                Make/O/D/N=1    tube_width      = 8
408                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_MT         
409                                Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
410                                //Make/O/D/N=(128,48)   //data_error    = 0.01*abs(gnoise(p+q))
411                                Make/O/D/N=1    nx_distance     = 13.4
412                                Make/O/T/N=1    description     = "fancy model"
413                                Make/O/T/N=1    settings        = "just right"
414                                Make/O/D/N=1    dead_time       = 5e-6
415                                Make/O/D/N=1    x_pixel_size    = 5.08
416                                Make/O/D/N=1    y_pixel_size    = 5.08
417                                Make/O/D/N=1    beam_center_x   = 65.55
418                                Make/O/D/N=1    beam_center_y   = 62.33
419                                Make/O/T/N=1    type    = "??"
420                                //Make/O/D/N=1  //flatfield_applied     = 0
421                                //Make/O/D/N=1  //countrate_correction_applied  = 0
422                                Make/O/D/N=(128,48)     pixel_mask      = 0
423                                Make/O/I/N=1    integrated_count        = 100111222
424                                Make/O/D/N=1    lateral_offset  = 20
425                                Make/O/D/N=1    sdd_offset      = 30
426                                Make/O/D/N=1    separation      = 150
427                                Make/O/I/N=1    PixelNumX       = 128
428                                Make/O/I/N=1    PixelNumY       = 48
429                                Make/O/D/N=1    PixelFWHM       = 0.5
430                                Make/O/D/N=1    size    = 65
431                                Make/O/T/N=1    event_file_name ="something.hst"
432                                Make/O/T/N=1    tube_orientation        = "horizontal"
433                                Make/O/I/N=1    number_of_tubes = 48
434                                Make/O/I/N=(tubes)      tube_index      = p
435                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
436                                Make/O/D/N=1    tube_width      = 8
437                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_MB         
438                                Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
439                                //Make/O/D/N=(128,48)   //data_error    = 0.01*abs(gnoise(p+q))
440                                Make/O/D/N=1    nx_distance     = 13.4
441                                Make/O/T/N=1    description     = "fancy model"
442                                Make/O/T/N=1    settings        = "just right"
443                                Make/O/D/N=1    dead_time       = 5e-6
444                                Make/O/D/N=1    x_pixel_size    = 5.08
445                                Make/O/D/N=1    y_pixel_size    = 5.08
446                                Make/O/D/N=1    beam_center_x   = 65.55
447                                Make/O/D/N=1    beam_center_y   = 62.33
448                                Make/O/T/N=1    type    = "??"
449                                //Make/O/D/N=1  //flatfield_applied     = 0
450                                //Make/O/D/N=1  //countrate_correction_applied  = 0
451                                Make/O/D/N=(128,48)     pixel_mask      = 0
452                                Make/O/I/N=1    integrated_count        = 100111222
453                                Make/O/D/N=1    lateral_offset  = 20
454                                Make/O/D/N=1    sdd_offset      = 30
455                                Make/O/D/N=1    separation      = 150
456                                Make/O/I/N=1    PixelNumX       = 128
457                                Make/O/I/N=1    PixelNumY       = 48
458                                Make/O/D/N=1    PixelFWHM       = 0.5
459                                Make/O/D/N=1    size    = 65
460                                Make/O/T/N=1    event_file_name ="something.hst"
461                                Make/O/T/N=1    tube_orientation        = "horizontal"
462                                Make/O/I/N=1    number_of_tubes = 48
463                                Make/O/I/N=(tubes)      tube_index      = p
464                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
465                                Make/O/D/N=1    tube_width      = 8
466                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_FR                 
467                                Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
468                                //Make/O/D/N=(48,256)   //data_error    = 0.01*abs(gnoise(p+q))
469                                Make/O/D/N=1    nx_distance     = 2.1
470                                Make/O/T/N=1    description     = "fancy model"
471                                Make/O/T/N=1    settings        = "just right"
472                                Make/O/D/N=1    dead_time       = 5e-6
473                                Make/O/D/N=1    x_pixel_size    = 5.08
474                                Make/O/D/N=1    y_pixel_size    = 5.08
475                                Make/O/D/N=1    beam_center_x   = 65.55
476                                Make/O/D/N=1    beam_center_y   = 62.33
477                                Make/O/T/N=1    type    = "??"
478                                //Make/O/D/N=1  //flatfield_applied     = 0
479                                //Make/O/D/N=1  //countrate_correction_applied  = 0
480                                Make/O/D/N=(48,256)     pixel_mask      = 0
481                                Make/O/I/N=1    integrated_count        = 100111222
482                                Make/O/D/N=1    lateral_offset  = 20
483                                Make/O/D/N=1    separation      = 150
484                                Make/O/I/N=1    PixelNumX       = 48
485                                Make/O/I/N=1    PixelNumY       = 256
486                                Make/O/D/N=1    PixelFWHM       = 0.5
487                                Make/O/D/N=1    size    = 65
488                                Make/O/T/N=1    event_file_name ="something.hst"
489                                Make/O/T/N=1    tube_orientation        = "vertical"
490                                Make/O/I/N=1    number_of_tubes = 48
491                                Make/O/I/N=(tubes)      tube_index      = p
492                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
493                                Make/O/D/N=1    tube_width      = 8
494                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_FL                 
495                                Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
496                                //Make/O/D/N=(48,256)   //data_error    = 0.01*abs(gnoise(p+q))
497                                Make/O/D/N=1    nx_distance     = 2.1
498                                Make/O/T/N=1    description     = "fancy model"
499                                Make/O/T/N=1    settings        = "just right"
500                                Make/O/D/N=1    dead_time       = 5e-6
501                                Make/O/D/N=1    x_pixel_size    = 5.08
502                                Make/O/D/N=1    y_pixel_size    = 5.08
503                                Make/O/D/N=1    beam_center_x   = 65.55
504                                Make/O/D/N=1    beam_center_y   = 62.33
505                                Make/O/T/N=1    type    = "??"
506                                //Make/O/D/N=1  //flatfield_applied     = 0
507                                //Make/O/D/N=1  //countrate_correction_applied  = 0
508                                Make/O/D/N=(48,256)     pixel_mask      = 0
509                                Make/O/I/N=1    integrated_count        = 100111222
510                                Make/O/D/N=1    lateral_offset  = 20
511                                Make/O/D/N=1    separation      = 150
512                                Make/O/I/N=1    PixelNumX       = 48
513                                Make/O/I/N=1    PixelNumY       = 256
514                                Make/O/D/N=1    PixelFWHM       = 0.5
515                                Make/O/D/N=1    size    = 65
516                                Make/O/T/N=1    event_file_name ="something.hst"
517                                Make/O/T/N=1    tube_orientation        = "vertical"
518                                Make/O/I/N=1    number_of_tubes = 48
519                                Make/O/I/N=(tubes)      tube_index      = p
520                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
521                                Make/O/D/N=1    tube_width      = 8
522                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_FT         
523                                Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
524                                //Make/O/D/N=(128,48)   //data_error    = 0.01*abs(gnoise(p+q))
525                                Make/O/D/N=1    nx_distance     = 2.1
526                                Make/O/T/N=1    description     = "fancy model"
527                                Make/O/T/N=1    settings        = "just right"
528                                Make/O/D/N=1    dead_time       = 5e-6
529                                Make/O/D/N=1    x_pixel_size    = 5.08
530                                Make/O/D/N=1    y_pixel_size    = 5.08
531                                Make/O/D/N=1    beam_center_x   = 65.55
532                                Make/O/D/N=1    beam_center_y   = 62.33
533                                Make/O/T/N=1    type    = "??"
534                                //Make/O/D/N=1  //flatfield_applied     = 0
535                                //Make/O/D/N=1  //countrate_correction_applied  = 0
536                                Make/O/D/N=(128,48)     pixel_mask      = 0
537                                Make/O/I/N=1    integrated_count        = 100111222
538                                Make/O/D/N=1    lateral_offset  = 20
539                                Make/O/D/N=1    sdd_offset      = 30
540                                Make/O/D/N=1    separation      = 150
541                                Make/O/I/N=1    PixelNumX       = 128
542                                Make/O/I/N=1    PixelNumY       = 48
543                                Make/O/D/N=1    PixelFWHM       = 0.5
544                                Make/O/D/N=1    size    = 65
545                                Make/O/T/N=1    event_file_name ="something.hst"
546                                Make/O/T/N=1    tube_orientation        = "horizontal"
547                                Make/O/I/N=1    number_of_tubes = 48
548                                Make/O/I/N=(tubes)      tube_index      = p
549                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
550                                Make/O/D/N=1    tube_width      = 8
551                        NewDataFolder/O/S root:VSANS_file:entry1:instrument:detector_FB         
552                                Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
553                                //Make/O/D/N=(128,48)   //data_error    = 0.01*abs(gnoise(p+q))
554                                Make/O/D/N=1    nx_distance     = 2.1
555                                Make/O/T/N=1    description     = "fancy model"
556                                Make/O/T/N=1    settings        = "just right"
557                                Make/O/D/N=1    dead_time       = 5e-6
558                                Make/O/D/N=1    x_pixel_size    = 5.08
559                                Make/O/D/N=1    y_pixel_size    = 5.08
560                                Make/O/D/N=1    beam_center_x   = 65.55
561                                Make/O/D/N=1    beam_center_y   = 62.33
562                                Make/O/T/N=1    type    = "??"
563                                //Make/O/D/N=1  //flatfield_applied     = 0
564                                //Make/O/D/N=1  //countrate_correction_applied  = 0
565                                Make/O/D/N=(128,48)     pixel_mask      = 0
566                                Make/O/I/N=1    integrated_count        = 100111222
567                                Make/O/D/N=1    lateral_offset  = 20
568                                Make/O/D/N=1    sdd_offset      = 30
569                                Make/O/D/N=1    separation      = 150
570                                Make/O/I/N=1    PixelNumX       = 128
571                                Make/O/I/N=1    PixelNumY       = 48
572                                Make/O/D/N=1    PixelFWHM       = 0.5
573                                Make/O/D/N=1    size    = 65
574                                Make/O/T/N=1    event_file_name ="something.hst"
575                                Make/O/T/N=1    tube_orientation        = "horizontal"
576                                Make/O/I/N=1    number_of_tubes = 48
577                                Make/O/I/N=(tubes)      tube_index      = p
578                                Make/O/D/N=(2,tubes)    spatial_calibration     = 1
579                                Make/O/D/N=1    tube_width      = 8
580                                       
581                                       
582                NewDataFolder/O/S root:VSANS_file:entry1:data_B         
583                        Make/O/I/N=(320,320)    data    = trunc(abs(gnoise(p+q)))
584                        //Make/O/D/N=(320,320)  //error = 0.01*abs(gnoise(p+q))
585                        Make/O/D/N=2    variables       = {320,320}
586                        Make/O/I/N=(320,320)    data_image      = p
587                NewDataFolder/O/S root:VSANS_file:entry1:data_MR               
588                        Make/O/i/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
589                        //Make/O/D/N=(48,256)   //error = 0.01*abs(gnoise(p+q))
590                        Make/O/D/N=2    variables       = {48,256}
591                        Make/O/I/N=(48,256)     data_image      = p
592                NewDataFolder/O/S root:VSANS_file:entry1:data_ML               
593                        Make/O/i/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
594                        //Make/O/D/N=(48,256)   //error = 0.01*abs(gnoise(p+q))
595                        Make/O/D/N=2    variables       = {48,256}
596                        Make/O/I/N=(48,256)     data_image      = p
597                NewDataFolder/O/S root:VSANS_file:entry1:data_MT               
598                        Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
599                        //Make/O/D/N=(128,48)   //error = 0.01*abs(gnoise(p+q))
600                        Make/O/D/N=2    variables       = {128,48}
601                        Make/O/I/N=(128,48)     data_image      = p
602                NewDataFolder/O/S root:VSANS_file:entry1:data_MB               
603                        Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
604                        //Make/O/D/N=(128,48)   //error = 0.01*abs(gnoise(p+q))
605                        Make/O/D/N=2    variables       = {128,48}
606                        Make/O/I/N=(128,48)     data_image      = p
607                NewDataFolder/O/S root:VSANS_file:entry1:data_FR               
608                        Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
609                        //Make/O/D/N=(48,256)   //error = 0.01*abs(gnoise(p+q))
610                        Make/O/D/N=2    variables       = {48,256}
611                        Make/O/I/N=(48,256)     data_image      = p
612                NewDataFolder/O/S root:VSANS_file:entry1:data_FL               
613                        Make/O/I/N=(48,256)     data    = trunc(abs(gnoise(p+q)))
614                        //Make/O/D/N=(48,256)   //error = 0.01*abs(gnoise(p+q))
615                        Make/O/D/N=2    variables       = {48,256}
616                        Make/O/I/N=(48,256)     data_image      = p
617                NewDataFolder/O/S root:VSANS_file:entry1:data_FT               
618                        Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
619                        //Make/O/D/N=(128,48)   //error = 0.01*abs(gnoise(p+q))
620                        Make/O/D/N=2    variables       = {128,48}
621                        Make/O/I/N=(128,48)     data_image      = p
622                NewDataFolder/O/S root:VSANS_file:entry1:data_FB               
623                        Make/O/I/N=(128,48)     data    = trunc(abs(gnoise(p+q)))
624                        //Make/O/D/N=(128,48)   //error = 0.01*abs(gnoise(p+q))
625                        Make/O/D/N=2    variables       = {128,48}
626                        Make/O/I/N=(128,48)     data_image      = p
627                               
628                NewDataFolder/O/S root:VSANS_file:entry1:reduction             
629                        Make/O/T/N=1    intent  = "SCATTER"
630                        Make/O/T/N=1    transmission_file_name  = "SANSFile_TRN.h5"
631                        Make/O/T/N=1    empty_beam_file_name    = "SANSFile_EB.h5"
632                        Make/O/T/N=1    background_file_name    = "SANSFile_BKG.h5"
633                        Make/O/T/N=1    empty_file_name = "SANSFile_EMP.h5"
634                        Make/O/T/N=1    sensitivity_file_name   = "SANSFile_DIV.h5"
635                        Make/O/T/N=1    mask_file_name  = "SANSFile_MASK.h5"
636                        Make/O/T/N=1    sans_log_file_name      = "SANSFile_log.txt"
637                        Make/O/D/N=1    whole_trans     = 0.888
638                        Make/O/D/N=1    whole_trans_error       = 0.008
639                        Make/O/D/N=1    box_count       = 23232
640                        Make/O/D/N=1    box_count_error = 22
641                        Make/O/I/N=4    box_coordinates = {50,80,45,75}
642                        Make/O/T/N=1    comments        = "extra data comments"
643                        Make/O/D/N=4    absolute_scaling        = {1,1,1e5,1}
644                        NewDataFolder/O/S root:VSANS_file:entry1:reduction:pol_sans                     
645                                Make/O/T/N=1    pol_sans_purpose        = "name from the list"
646                                Make/O/T/N=1    cell_name       = "Burgundy"
647                                Make/O/D/N=(5)  cell_parameters = {1,2,3,4,5}
648                                               
649        NewDataFolder/O/S root:VSANS_file:DAS_Logs             
650                        //...multiple entries and levels... to add     
651                        //this will be enormous
652
653
654
655
656        SetDataFolder root:
657       
658End
659
660// writes in the attributes
661Proc H_Fill_VSANS_Attributes()
662
663SetDataFolder  root:VSANS_file         
664        Make/O/N=0 Igor___folder_attributes     
665        Note/K Igor___folder_attributes, "producer=IgorPro\rNX_class=NXroot"
666        //      file_name               
667        //      file_time               
668        //      facility               
669        //      NeXus_version           
670        //      hdf_version             
671        //      file_history           
672        SetDataFolder root:VSANS_file:entry1           
673                Make/O/N=0 Igor___folder_attributes     
674                Note/K Igor___folder_attributes, "NX_class=NXentry"
675                //      title           
676                //      experiment_identifier           
677                //      experiment_description         
678                //      entry_identifier               
679                //      definition             
680                //      start_time             
681                //      end_time               
682                //      duration               
683                Note/K duration, "units=s"
684                //      collection_time         
685                Note/K collection_time, "units=s"
686                //      run_cycle               
687                //      data_directory         
688                //      program_name           
689                SetDataFolder root:VSANS_file:entry1:user               
690                        Make/O/N=0 Igor___folder_attributes     
691                        Note/K Igor___folder_attributes, "NX_class=NXuser"
692                        //      name           
693                        //      role           
694                        //      affiliation             
695                        //      address         
696                        //      telephoneNumber         
697                        //      faxNumber               
698                        //      email           
699                        //      facility_user_id               
700                SetDataFolder root:VSANS_file:entry1:control           
701                        Make/O/N=0 Igor___folder_attributes     
702                        Note/K Igor___folder_attributes, "NX_class=NXmonitor"
703                        //      mode           
704                        //      preset         
705                        //      integral               
706                        //      monitor_counts         
707                        //      monitor_preset         
708                        ////    type           
709                        ////    efficiency             
710                        ////    sampled_fraction               
711                        //      detector_counts         
712                        //      detector_preset         
713                        //      count_start             
714                        Note/K count_start, "units=s"
715                        //      count_end               
716                        Note/K count_end, "units=s"
717                        //      count_time             
718                        Note/K count_time, "units=s"
719                        //      count_time_preset               
720                        Note/K count_time_preset, "units=s"
721                //SetDataFolder root:VSANS_file:entry1:program_name     //program_data         
722                        ////    //data         
723                        ////    //description           
724                        ////    //file_name             
725                        ////    //type         
726                SetDataFolder root:VSANS_file:entry1:sample             
727                        Make/O/N=0 Igor___folder_attributes     
728                        Note/K Igor___folder_attributes, "NX_class=NXsample"
729                        //      description             
730                        //      group_id               
731                        ////    //chemical_formula             
732                        SetDataFolder root:VSANS_file:entry1:sample:temperature_1               
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_1: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:temperature_2               
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:temperature_2: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=C"
760                        SetDataFolder root:VSANS_file:entry1:sample:electric_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:electric_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=V"
774                        SetDataFolder root:VSANS_file:entry1:sample:shear_field         
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:shear_field: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=Pa s"
788                        SetDataFolder root:VSANS_file:entry1:sample:pressure           
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:pressure: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=psi"
802                        SetDataFolder root:VSANS_file:entry1:sample:magnetic_field             
803                                Make/O/N=0 Igor___folder_attributes     
804                                Note/K Igor___folder_attributes, "NX_class=NXsensor"
805                                //      name           
806                                //      attached_to             
807                                //      measurement             
808                                SetDataFolder root:VSANS_file:entry1:sample:magnetic_field:value_log           
809                                        Make/O/N=0 Igor___folder_attributes     
810                                        Note/K Igor___folder_attributes, "NX_class=NXlog"
811                                        //      start           
812                                        //      nx_time         
813                                        Note/K nx_time, "units=s"
814                                        //      value           
815                                        Note/K value, "units=T"
816                        SetDataFolder root:VSANS_file:entry1:sample                     
817                        //      changer_position               
818                        //      sample_holder_description               
819                        ////    //mass         
820                        //Note/K mass, "units=g"
821                        ////    //density               
822                        //Note/K density, "units=g ml-1"
823                        ////    //molecular_weight             
824                        //Note/K molecular_weight, "units=g mol-1"
825                        ////    //description           
826                        ////    //preparation_date             
827                        ////    //volume_fraction               
828                        ////    //scattering_length_density             
829                        //Note/K scattering_length_density, "units=A-2"
830                        //      thickness               
831                                Note/K thickness, "units=cm"
832                        //      rotation_angle         
833                                Note/K rotation_angle, "units=degrees"
834                        //      transmission           
835                        //      transmission_error             
836                        ////    //xs_incoh             
837                        //Note/K xs_incoh, "units=cm-1"
838                        ////    //xs_coh               
839                        //Note/K xs_coh, "units=cm-1"
840                        ////    //xs_absorb             
841                        //Note/K xs_absorb, "units=cm-1"
842                SetDataFolder root:VSANS_file:entry1:instrument         
843                        Make/O/N=0 Igor___folder_attributes     
844                        Note/K Igor___folder_attributes, "NX_class=NXinstrument"
845                        ////    //location             
846                        //      name           
847                        //      type           
848                        //      local_contact           
849                        SetDataFolder root:VSANS_file:entry1:instrument:source         
850                                Make/O/N=0 Igor___folder_attributes     
851                                Note/K Igor___folder_attributes, "NX_class=NXsource"
852                                //      name           
853                                //      type           
854                                //      probe           
855                                //      power           
856                                Note/K power, "units=MW"
857                                               
858                        SetDataFolder root:VSANS_file:entry1:instrument:beam_monitor_norm               
859                                Make/O/N=0 Igor___folder_attributes     
860                                Note/K Igor___folder_attributes, "NX_class=NXmonitor"
861                                //      data           
862                                //      type           
863                                //      efficiency             
864                                //      nx_distance             
865                                Note/K nx_distance, "units=m"
866                                //      saved_count             
867                        SetDataFolder root:VSANS_file:entry1:instrument:beam_monitor_low               
868                                Make/O/N=0 Igor___folder_attributes     
869                                Note/K Igor___folder_attributes, "NX_class=NXmonitor"
870                                //      data           
871                                //      type           
872                                //      efficiency             
873                                //      nx_distance             
874                                Note/K nx_distance, "units=m"
875                                //      saved_count             
876                                               
877                        SetDataFolder root:VSANS_file:entry1:instrument:monochromator           
878                                Make/O/N=0 Igor___folder_attributes     
879                                Note/K Igor___folder_attributes, "NX_class=NXmonochromator"
880                                //      wavelength             
881                                Note/K wavelength, "units=A"
882                                //      wavelength_spread               
883                                //      type           
884                                SetDataFolder root:VSANS_file:entry1:instrument:monochromator:velocity_selector         
885                                        Make/O/N=0 Igor___folder_attributes     
886                                        Note/K Igor___folder_attributes, "NX_class=NXvelocity_selector"
887                                        //      status         
888                                        //      rotation_speed         
889                                        Note/K rotation_speed, "units=RPM"
890                                        //      wavelength             
891                                        Note/K wavelength, "units=A"
892                                        //      wavelength_spread               
893                                        //      vs_tilt         
894                                        Note/K vs_tilt, "units=degrees"
895                                        //      nx_distance             
896                                        Note/K nx_distance, "units=m"
897                                                // table (wave)         
898                                SetDataFolder root:VSANS_file:entry1:instrument:monochromator:crystal           
899                                        Make/O/N=0 Igor___folder_attributes     
900                                        Note/K Igor___folder_attributes, "NX_class=NXcrystal"
901                                        //      status         
902                                        //      nx_distance             
903                                        Note/K nx_distance, "units=m"
904                                        //      wavelength             
905                                        Note/K wavelength, "units=A"
906                                        //      wavelength_spread               
907                                        //      rotation               
908                                        Note/K rotation, "units=degrees"
909                                        //      energy         
910                                        Note/K energy, "units=mV"
911                                        //      wavevector             
912                                        Note/K wavevector, "units=A-1"
913                                        //      lattice_parameter               
914                                        //      reflection             
915                                        //      horizontal_curvature           
916                                        //      vertical_curvature             
917                                        //      horizontal_aperture             
918                                        //      vertical_aperture               
919                                SetDataFolder root:VSANS_file:entry1:instrument:monochromator:white_beam                       
920                                        //      status         
921                                        //      wavelength             
922                                        Note/K wavelength, "units=A"
923                                        //      wavelength_spread               
924                                                // description_of_distribution         
925                        SetDataFolder root:VSANS_file:entry1:instrument:chopper         
926                                Make/O/N=0 Igor___folder_attributes     
927                                Note/K Igor___folder_attributes, "NX_class=NXdisk_chopper"
928                                //      status         
929                                //      type           
930                                //      rotation_speed         
931                                Note/K rotation_speed, "units=RPM"
932                                //      distance_from_source           
933                                Note/K distance_from_source, "units=m"
934                                //      distance_from_sample           
935                                Note/K distance_from_sample, "units=m"
936                                //      slits           
937                                //      angular_opening         
938                                Note/K angular_opening, "units=degrees"
939                                //      duty_cycle             
940                                        // +?           
941                        SetDataFolder root:VSANS_file:entry1:instrument:polarizer                       
942                                //      status         
943                                //      type           
944                                //      composition             
945                                //      efficiency             
946                                //      status         
947                        SetDataFolder root:VSANS_file:entry1:instrument:flipper                 
948                                //      status         
949                                //      driving_current         
950                                Note/K driving_current, "units=A"
951                                //      waveform               
952                                //      frequency               
953                                Note/K frequency, "units=Hz"
954                                //      transmitted_power               
955                        SetDataFolder root:VSANS_file:entry1:instrument:polarizer_analyzer                     
956                                //      status         
957                                //      guide_field_current_1           
958                                Note/K guide_field_current_1, "units=A"
959                                //      guide_field_current_2           
960                                Note/K guide_field_current_2, "units=A"
961                                //      solenoid_current               
962                                Note/K solenoid_current, "units=A"
963                                //      cell_index             
964                                //      cell_names             
965                                //      cell_parameters         
966                                               
967                        SetDataFolder root:VSANS_file:entry1:instrument:attenuator             
968                                Make/O/N=0 Igor___folder_attributes     
969                                Note/K Igor___folder_attributes, "NX_class=NXattenuator"
970                                //      nx_distance             
971                                Note/K nx_distance, "units=m"
972                                //      type           
973                                //      thickness               
974                                Note/K thickness, "units=cm"
975                                //      attenuator_transmission         
976                                //      status         
977                                //      atten_number           
978                                //      index           
979                        SetDataFolder root:VSANS_file:entry1:instrument:source_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:source_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:sample_aperture         
994                                Make/O/N=0 Igor___folder_attributes     
995                                Note/K Igor___folder_attributes, "NX_class=NXaperture"
996                                //      material               
997                                //      description             
998                                //      diameter               
999                                Note/K diameter, "units=cm"
1000                                //      nx_distance             
1001                                Note/K nx_distance, "units=m"
1002                                SetDataFolder root:VSANS_file:entry1:instrument:sample_aperture:shape                   
1003                                        Make/O/N=0 Igor___folder_attributes     
1004                                        Note/K Igor___folder_attributes, "NX_class=NXshape"
1005                                        //      size           
1006                                        Note/K size, "units=cm"
1007                        SetDataFolder root:VSANS_file:entry1:instrument:collimator                     
1008                                SetDataFolder root:VSANS_file:entry1:instrument:collimator:geometry                     
1009                                        SetDataFolder root:VSANS_file:entry1:instrument:collimator:geometry:shape                       
1010                                                //      shape           
1011                                                //      size           
1012                                                Note/K size, "units=m"
1013                                //      nx_NumGuides           
1014                        SetDataFolder root:VSANS_file:entry1:instrument:converging_pinholes                     
1015                                //      status         
1016                        SetDataFolder root:VSANS_file:entry1:instrument:converging_slits                       
1017                                //      status         
1018                        SetDataFolder root:VSANS_file:entry1:instrument:lenses         
1019                                Make/O/N=0 Igor___folder_attributes     
1020                                Note/K Igor___folder_attributes, "NX_class=NXxraylens"
1021                                //      status         
1022                                //      lens_geometry           
1023                                //      focus_type             
1024                                //      number_of_lenses               
1025                                //      number_of_prisms               
1026                                //      curvature               
1027                                //      lens_distance           
1028                                Note/K lens_distance, "units=m"
1029                                //      prism_distance         
1030                                Note/K prism_distance, "units=m"
1031                                //      lens_material           
1032                                //      prism_material         
1033                        SetDataFolder root:VSANS_file:entry1:instrument:sample_table                   
1034                                //      location               
1035                                //      offset_distance         
1036                                Note/K offset_distance, "units=m"
1037                        SetDataFolder root:VSANS_file:entry1:instrument:beam_stop               
1038                                Make/O/N=0 Igor___folder_attributes     
1039                                Note/K Igor___folder_attributes, "NX_class=NXbeam_stop"
1040                                //      status         
1041                                //      description             
1042                                //      nx_distance             
1043                                Note/K nx_distance, "units=m"
1044                                //      size           
1045                                Note/K size, "units=cm"
1046                                //      xPos           
1047                                //      yPos           
1048                                //      x_motor_position               
1049                                Note/K x_motor_position, "units=cm"
1050                                //      y_motor_position               
1051                                Note/K y_motor_position, "units=cm"
1052                                               
1053                        SetDataFolder root:VSANS_file:entry1:instrument:detector_B             
1054                                Make/O/N=0 Igor___folder_attributes     
1055                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1056                                //      data           
1057                                ////    //data_error           
1058                                //      nx_distance             
1059                                Note/K nx_distance, "units=m"
1060                                //      description             
1061                                //      settings               
1062                                //      dead_time               
1063                                Note/K dead_time, "units=s"
1064                                //      x_pixel_size           
1065                                Note/K x_pixel_size, "units=cm"
1066                                //      y_pixel_size           
1067                                Note/K y_pixel_size, "units=cm"
1068                                //      beam_center_x           
1069                                //      beam_center_y           
1070                                //      type           
1071                                ////    //flatfield_applied             
1072                                ////    //countrate_correction_applied         
1073                                //      pixel_mask             
1074                                //      integrated_count               
1075                                //      lateral_offset         
1076                                Note/K lateral_offset, "units=cm"
1077                                //      PixelNumX               
1078                                //      PixelNumY               
1079                                //      PixelFWHM               
1080                                //      CALX           
1081                                //      CALY           
1082                                //      size           
1083                                Note/K size, "units=cm"
1084                                //      event_file_name         
1085                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MR                     
1086                                Make/O/N=0 Igor___folder_attributes     
1087                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1088                                //      data           
1089                                ////    //data_error           
1090                                //      nx_distance             
1091                                Note/K nx_distance, "units=m"
1092                                //      description             
1093                                //      settings               
1094                                //      dead_time               
1095                                Note/K dead_time, "units=s"
1096                                //      x_pixel_size           
1097                                Note/K x_pixel_size, "units=cm"
1098                                //      y_pixel_size           
1099                                Note/K y_pixel_size, "units=cm"
1100                                //      beam_center_x           
1101                                //      beam_center_y           
1102                                //      type           
1103                                ////    //flatfield_applied             
1104                                ////    //countrate_correction_applied         
1105                                //      pixel_mask             
1106                                //      integrated_count               
1107                                //      lateral_offset         
1108                                Note/K lateral_offset, "units=cm"
1109                                //      separation             
1110                                Note/K separation, "units=cm"
1111                                //      PixelNumX               
1112                                //      PixelNumY               
1113                                //      PixelFWHM               
1114                                //      size           
1115                                Note/K size, "units=cm"
1116                                //      event_file_name         
1117                                //      tube_orientation               
1118                                //      number_of_tubes         
1119                                //      tube_index             
1120                                //      spatial_calibration             
1121                                //      tube_width             
1122                                Note/K tube_width, "units=cm"
1123                        SetDataFolder root:VSANS_file:entry1:instrument:detector_ML             
1124                                Make/O/N=0 Igor___folder_attributes     
1125                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1126                                //      data           
1127                                ////    //data_error           
1128                                //      nx_distance             
1129                                Note/K nx_distance, "units=m"
1130                                //      description             
1131                                //      settings               
1132                                //      dead_time               
1133                                Note/K dead_time, "units=s"
1134                                //      x_pixel_size           
1135                                Note/K x_pixel_size, "units=cm"
1136                                //      y_pixel_size           
1137                                Note/K y_pixel_size, "units=cm"
1138                                //      beam_center_x           
1139                                //      beam_center_y           
1140                                //      type           
1141                                ////    //flatfield_applied             
1142                                ////    //countrate_correction_applied         
1143                                //      pixel_mask             
1144                                //      integrated_count               
1145                                //      lateral_offset         
1146                                Note/K lateral_offset, "units=cm"
1147                                //      separation             
1148                                Note/K separation, "units=cm"
1149                                //      PixelNumX               
1150                                //      PixelNumY               
1151                                //      PixelFWHM               
1152                                //      size           
1153                                Note/K size, "units=cm"
1154                                //      event_file_name         
1155                                //      tube_orientation               
1156                                //      number_of_tubes         
1157                                //      tube_index             
1158                                //      spatial_calibration             
1159                                //      tube_width             
1160                                Note/K tube_width, "units=cm"
1161                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MT             
1162                                Make/O/N=0 Igor___folder_attributes     
1163                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1164                                //      data           
1165                                ////    //data_error           
1166                                //      nx_distance             
1167                                Note/K nx_distance, "units=m"
1168                                //      description             
1169                                //      settings               
1170                                //      dead_time               
1171                                Note/K dead_time, "units=s"
1172                                //      x_pixel_size           
1173                                Note/K x_pixel_size, "units=cm"
1174                                //      y_pixel_size           
1175                                Note/K y_pixel_size, "units=cm"
1176                                //      beam_center_x           
1177                                //      beam_center_y           
1178                                //      type           
1179                                ////    //flatfield_applied             
1180                                ////    //countrate_correction_applied         
1181                                //      pixel_mask             
1182                                //      integrated_count               
1183                                //      lateral_offset         
1184                                Note/K lateral_offset, "units=cm"
1185                                //      sdd_offset             
1186                                Note/K sdd_offset, "units=cm"
1187                                //      separation             
1188                                Note/K separation, "units=cm"
1189                                //      PixelNumX               
1190                                //      PixelNumY               
1191                                //      PixelFWHM               
1192                                //      size           
1193                                Note/K size, "units=cm"
1194                                //      event_file_name         
1195                                //      tube_orientation               
1196                                //      number_of_tubes         
1197                                //      tube_index             
1198                                //      spatial_calibration             
1199                                //      tube_width             
1200                                Note/K tube_width, "units=cm"
1201                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MB             
1202                                Make/O/N=0 Igor___folder_attributes     
1203                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1204                                //      data           
1205                                ////    //data_error           
1206                                //      nx_distance             
1207                                Note/K nx_distance, "units=m"
1208                                //      description             
1209                                //      settings               
1210                                //      dead_time               
1211                                Note/K dead_time, "units=s"
1212                                //      x_pixel_size           
1213                                Note/K x_pixel_size, "units=cm"
1214                                //      y_pixel_size           
1215                                Note/K y_pixel_size, "units=cm"
1216                                //      beam_center_x           
1217                                //      beam_center_y           
1218                                //      type           
1219                                ////    //flatfield_applied             
1220                                ////    //countrate_correction_applied         
1221                                //      pixel_mask             
1222                                //      integrated_count               
1223                                //      lateral_offset         
1224                                Note/K lateral_offset, "units=cm"
1225                                //      sdd_offset             
1226                                Note/K sdd_offset, "units=cm"
1227                                //      separation             
1228                                Note/K separation, "units=cm"
1229                                //      PixelNumX               
1230                                //      PixelNumY               
1231                                //      PixelFWHM               
1232                                //      size           
1233                                Note/K size, "units=cm"
1234                                //      event_file_name         
1235                                //      tube_orientation               
1236                                //      number_of_tubes         
1237                                //      tube_index             
1238                                //      spatial_calibration             
1239                                //      tube_width             
1240                                Note/K tube_width, "units=cm"
1241                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FR                     
1242                                Make/O/N=0 Igor___folder_attributes     
1243                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1244                                //      data           
1245                                ////    //data_error           
1246                                //      nx_distance             
1247                                Note/K nx_distance, "units=m"
1248                                //      description             
1249                                //      settings               
1250                                //      dead_time               
1251                                Note/K dead_time, "units=s"
1252                                //      x_pixel_size           
1253                                Note/K x_pixel_size, "units=cm"
1254                                //      y_pixel_size           
1255                                Note/K y_pixel_size, "units=cm"
1256                                //      beam_center_x           
1257                                //      beam_center_y           
1258                                //      type           
1259                                ////    //flatfield_applied             
1260                                ////    //countrate_correction_applied         
1261                                //      pixel_mask             
1262                                //      integrated_count               
1263                                //      lateral_offset         
1264                                Note/K lateral_offset, "units=cm"
1265                                //      separation             
1266                                Note/K separation, "units=cm"
1267                                //      PixelNumX               
1268                                //      PixelNumY               
1269                                //      PixelFWHM               
1270                                //      size           
1271                                Note/K size, "units=cm"
1272                                //      event_file_name         
1273                                //      tube_orientation               
1274                                //      number_of_tubes         
1275                                //      tube_index             
1276                                //      spatial_calibration             
1277                                //      tube_width             
1278                                Note/K tube_width, "units=cm"
1279                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FL             
1280                                Make/O/N=0 Igor___folder_attributes     
1281                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1282                                //      data           
1283                                ////    //data_error           
1284                                //      nx_distance             
1285                                Note/K nx_distance, "units=m"
1286                                //      description             
1287                                //      settings               
1288                                //      dead_time               
1289                                Note/K dead_time, "units=s"
1290                                //      x_pixel_size           
1291                                Note/K x_pixel_size, "units=cm"
1292                                //      y_pixel_size           
1293                                Note/K y_pixel_size, "units=cm"
1294                                //      beam_center_x           
1295                                //      beam_center_y           
1296                                //      type           
1297                                ////    //flatfield_applied             
1298                                ////    //countrate_correction_applied         
1299                                //      pixel_mask             
1300                                //      integrated_count               
1301                                //      lateral_offset         
1302                                Note/K lateral_offset, "units=cm"
1303                                //      separation             
1304                                Note/K separation, "units=cm"
1305                                //      PixelNumX               
1306                                //      PixelNumY               
1307                                //      PixelFWHM               
1308                                //      size           
1309                                Note/K size, "units=cm"
1310                                //      event_file_name         
1311                                //      tube_orientation               
1312                                //      number_of_tubes         
1313                                //      tube_index             
1314                                //      spatial_calibration             
1315                                //      tube_width             
1316                                Note/K tube_width, "units=cm"
1317                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FT             
1318                                Make/O/N=0 Igor___folder_attributes     
1319                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1320                                //      data           
1321                                ////    //data_error           
1322                                //      nx_distance             
1323                                Note/K nx_distance, "units=m"
1324                                //      description             
1325                                //      settings               
1326                                //      dead_time               
1327                                Note/K dead_time, "units=s"
1328                                //      x_pixel_size           
1329                                Note/K x_pixel_size, "units=cm"
1330                                //      y_pixel_size           
1331                                Note/K y_pixel_size, "units=cm"
1332                                //      beam_center_x           
1333                                //      beam_center_y           
1334                                //      type           
1335                                ////    //flatfield_applied             
1336                                ////    //countrate_correction_applied         
1337                                //      pixel_mask             
1338                                //      integrated_count               
1339                                //      lateral_offset         
1340                                Note/K lateral_offset, "units=cm"
1341                                //      sdd_offset             
1342                                Note/K sdd_offset, "units=cm"
1343                                //      separation             
1344                                Note/K separation, "units=cm"
1345                                //      PixelNumX               
1346                                //      PixelNumY               
1347                                //      PixelFWHM               
1348                                //      size           
1349                                Note/K size, "units=cm"
1350                                //      event_file_name         
1351                                //      tube_orientation               
1352                                //      number_of_tubes         
1353                                //      tube_index             
1354                                //      spatial_calibration             
1355                                //      tube_width             
1356                                Note/K tube_width, "units=cm"
1357                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FB             
1358                                Make/O/N=0 Igor___folder_attributes     
1359                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
1360                                //      data           
1361                                ////    //data_error           
1362                                //      nx_distance             
1363                                Note/K nx_distance, "units=m"
1364                                //      description             
1365                                //      settings               
1366                                //      dead_time               
1367                                Note/K dead_time, "units=s"
1368                                //      x_pixel_size           
1369                                Note/K x_pixel_size, "units=cm"
1370                                //      y_pixel_size           
1371                                Note/K y_pixel_size, "units=cm"
1372                                //      beam_center_x           
1373                                //      beam_center_y           
1374                                //      type           
1375                                ////    //flatfield_applied             
1376                                ////    //countrate_correction_applied         
1377                                //      pixel_mask             
1378                                //      integrated_count               
1379                                //      lateral_offset         
1380                                Note/K lateral_offset, "units=cm"
1381                                //      sdd_offset             
1382                                Note/K sdd_offset, "units=cm"
1383                                //      separation             
1384                                Note/K separation, "units=cm"
1385                                //      PixelNumX               
1386                                //      PixelNumY               
1387                                //      PixelFWHM               
1388                                //      size           
1389                                Note/K size, "units=cm"
1390                                //      event_file_name         
1391                                //      tube_orientation               
1392                                //      number_of_tubes         
1393                                //      tube_index             
1394                                //      spatial_calibration             
1395                                //      tube_width             
1396                                Note/K tube_width, "units=cm"
1397                                               
1398                                               
1399                SetDataFolder root:VSANS_file:entry1:data_B             
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_MR           
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_ML           
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_MT           
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_MB           
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_FR           
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_FL           
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                SetDataFolder root:VSANS_file:entry1:data_FT           
1449                        Make/O/N=0 Igor___folder_attributes     
1450                        Note/K Igor___folder_attributes, "NX_class=NXdata"
1451                        //      data           
1452                        ////    //error         
1453                        //      variables               
1454                        //      data_image             
1455                SetDataFolder root:VSANS_file:entry1:data_FB           
1456                        Make/O/N=0 Igor___folder_attributes     
1457                        Note/K Igor___folder_attributes, "NX_class=NXdata"
1458                        //      data           
1459                        ////    //error         
1460                        //      variables               
1461                        //      data_image             
1462                                       
1463                SetDataFolder root:VSANS_file:entry1:reduction                 
1464                        //      intent         
1465                        //      transmission_file_name         
1466                        //      empty_beam_file_name           
1467                        //      background_file_name           
1468                        //      empty_file_name         
1469                        //      sensitivity_file_name           
1470                        //      mask_file_name         
1471                        //      sans_log_file_name             
1472                        //      whole_trans             
1473                        //      whole_trans_error               
1474                        //      box_count               
1475                        //      box_count_error         
1476                        //      box_coordinates         
1477                        //      comments               
1478                        //      absolute_scaling               
1479                        SetDataFolder root:VSANS_file:entry1:reduction:pol_sans                         
1480                                //      pol_sans_purpose               
1481                                //      cell_name               
1482                                //      cell_parameters         
1483                                                       
1484        SetDataFolder root:VSANS_file:DAS_Logs         
1485                Make/O/N=0 Igor___folder_attributes     
1486                Note/K Igor___folder_attributes, "NX_class=NXlog"
1487                        //...multiple entries and levels... to add             
1488                        //this will be enormous         
1489
1490       
1491
1492
1493        SetDataFolder root:     
1494
1495End
1496
1497// overwrites the dummy values as needed with VCALC information
1498//
1499//
1500//
1501// TODO
1502// issues here with the potential for Nexus to have data as INTEGER
1503// where I'd rather have the data here in Igor be DP, so there are no
1504// conversion/assignment issues
1505//
1506// simuation data from VCALC = DP, but I need to assign to an Integer wave...
1507// - sometimes this works, sometimes not...
1508// may need to Redimension/I
1509//
1510/// break this up into several smaller procedures as this is a VERY lengthy task to do
1511
1512        // TODO
1513// set the "accessible" copies of the data (these are really to be links in the file!)
1514
1515Proc H_Fill_VSANS_wSim()
1516
1517
1518SetDataFolder  root:VSANS_file         
1519                file_name       = "VSANSTest.h5"
1520                file_time       = "2015-02-28T08:15:30-5:00"
1521                facility        = "NCNR"
1522                NeXus_version   = "Nexus 0.0"
1523                hdf_version     = "hdf5.x"
1524                file_history    = "history log"
1525        SetDataFolder root:VSANS_file:entry1           
1526                        title   = "title of entry1"
1527                        experiment_identifier   = 684636
1528                        experiment_description  = "description of expt"
1529                        entry_identifier        = "S22-33"
1530                        definition      = "NXsas"
1531                        start_time      = "2015-02-28T08:15:30-5:00"
1532                        end_time        = "2015-02-28T08:15:30-5:00"
1533                        duration        = 300
1534                        collection_time = 300
1535                        run_cycle       = "S22-23"
1536                        data_directory  = "[VSANS_VSANS]"
1537                        program_name    = "runPoint={stuff}"
1538                SetDataFolder root:VSANS_file:entry1:user               
1539                                name    = "Dr. Pi"
1540                                role    = "evil scientist"
1541                                affiliation     = "NIST"
1542                                address = "100 Bureau Drive"
1543                                telephoneNumber = "301-999-9999"
1544                                faxNumber       = "301-999-9999"
1545                                email   = "sans@nist"
1546                                facility_user_id        = 6937596
1547                SetDataFolder root:VSANS_file:entry1:control           
1548                                mode    = "timer"
1549                                preset  = 555
1550                                integral        = 555
1551                                monitor_counts  = 666
1552                                monitor_preset  = 1e8
1553                        //WAVE/T        type    = "monitor type"
1554                        //WAVE  efficiency      = 0.01
1555                        //WAVE  sampled_fraction        = 1
1556                                detector_counts = 100111222
1557                                detector_preset = 1e5
1558                                count_start     = 1
1559                                count_end       = 1
1560                                count_time      = 1
1561                                count_time_preset       = 1
1562                //SetDataFolder root:VSANS_file:entry1:program_name     //program_data 
1563                        //WAVE/T        //data  = "program data"
1564                        //WAVE/T        //description   = "acquisition"
1565                        //WAVE/T        //file_name     = "NICE"
1566                        //WAVE/T        //type  = "client"
1567                SetDataFolder root:VSANS_file:entry1:sample             
1568                                description     = "My Sample"
1569                                group_id        = 12345
1570                        //WAVE/T        //chemical_formula      = "C8H10N4O2"
1571                        SetDataFolder root:VSANS_file:entry1:sample:temperature_1               
1572                                        name    = "Sample temperature"
1573                                        attached_to     = "block"
1574                                        measurement     = "temperature"
1575                                SetDataFolder root:VSANS_file:entry1:sample:temperature_1:value_log             
1576                                                start   = "2015-02-28T08:15:30-5:00"
1577                                                nx_time = p
1578                                                value   = 2*p
1579                        SetDataFolder root:VSANS_file:entry1:sample:temperature_2               
1580                                        name    = "Sample temperature"
1581                                        attached_to     = "block"
1582                                        measurement     = "temperature"
1583                                SetDataFolder root:VSANS_file:entry1:sample:temperature_2:value_log             
1584                                                start   = "2015-02-28T08:15:30-5:00"
1585                                                nx_time = p
1586                                                value   = 3*p
1587                        SetDataFolder root:VSANS_file:entry1:sample:electric_field             
1588                                        name    = "electric meter"
1589                                        attached_to     = "sample"
1590                                        measurement     = "voltage"
1591                                SetDataFolder root:VSANS_file:entry1:sample:electric_field:value_log           
1592                                                start   = "2015-02-28T08:15:30-5:00"
1593                                                nx_time = 2*p
1594                                                value   = sin(p/10)
1595                        SetDataFolder root:VSANS_file:entry1:sample:shear_field         
1596                                        name    = "rheometer"
1597                                        attached_to     = "sample"
1598                                        measurement     = "stress"
1599                                SetDataFolder root:VSANS_file:entry1:sample:shear_field:value_log               
1600                                                start   = "2015-02-28T08:15:30-5:00"
1601                                                nx_time = p
1602                                                value   = cos(p/5)
1603                        SetDataFolder root:VSANS_file:entry1:sample:pressure           
1604                                        name    = "Sample pressure"
1605                                        attached_to     = "pressure cell"
1606                                        measurement     = "pressure"
1607                                SetDataFolder root:VSANS_file:entry1:sample:pressure:value_log         
1608                                                start   = "2015-02-28T08:15:30-5:00"
1609                                                nx_time = p
1610                                                value   = p/2
1611                        SetDataFolder root:VSANS_file:entry1:sample:magnetic_field             
1612                                        name    = "magnetic field (direction)"
1613                                        attached_to     = "cryostat"
1614                                        measurement     = "magnetic field"
1615                                SetDataFolder root:VSANS_file:entry1:sample:magnetic_field:value_log           
1616                                                start   = "2015-02-28T08:15:30-5:00"
1617                                                nx_time = p
1618                                                value   = 10*p
1619                        SetDataFolder root:VSANS_file:entry1:sample             
1620                                changer_position        = 5
1621                                sample_holder_description       = "10CB"
1622                        //WAVE  //mass  = 0.3
1623                        //WAVE  //density       = 1.02
1624                        //WAVE  //molecular_weight      = 194.19
1625                        //WAVE/T        //description   = "My Sample"
1626                        //WAVE/T        //preparation_date      = "2015-02-28T08:15:30-5:00"
1627                        //WAVE  //volume_fraction       = 0.2
1628                        //WAVE  //scattering_length_density     = 6.35e-6
1629                                thickness       = 0.1
1630                                rotation_angle  = 30
1631                                transmission    = 0.888
1632                                transmission_error      = 0.011
1633                        //WAVE  //xs_incoh      = 5.5
1634                        //WAVE  //xs_coh        = 22.2
1635                        //WAVE  //xs_absorb     = 3.1
1636                SetDataFolder root:VSANS_file:entry1:instrument         
1637                        //WAVE/T        //location      = "NCNR"
1638                                name    = "NG3-VSANS"
1639                                type    = "VSANS"
1640                                local_contact   = "Steve Kline"
1641                        SetDataFolder root:VSANS_file:entry1:instrument:source         
1642                                        name    = "NCNR"
1643                                        type    = "Reactor Neutron Source"
1644                                        probe   = "neutron"
1645                                        power   = 20
1646                                       
1647                        SetDataFolder root:VSANS_file:entry1:instrument:beam_monitor_norm               
1648                                        data    = 1234567
1649                                        type    = "monitor"
1650                                        efficiency      = 0.01
1651                                        nx_distance     = 16
1652                                        saved_count     = 1e8
1653                        SetDataFolder root:VSANS_file:entry1:instrument:beam_monitor_low               
1654                                        data    = 1234567
1655                                        type    = "monitor"
1656                                        efficiency      = 0.001
1657                                        nx_distance     = 16
1658                                        saved_count     = 1e8
1659                                       
1660                        SetDataFolder root:VSANS_file:entry1:instrument:monochromator           
1661                                        wavelength      = 5.1
1662                                        wavelength_spread       = 0.02
1663                                        type    = "VS"
1664                                SetDataFolder root:VSANS_file:entry1:instrument:monochromator:velocity_selector         
1665                                                status  = "in"
1666                                                rotation_speed  = 5100
1667                                                wavelength      = 6
1668                                                wavelength_spread       = 0.15
1669                                                vs_tilt = 3
1670                                                nx_distance     = 18.8
1671                                                // table (wave)
1672                                SetDataFolder root:VSANS_file:entry1:instrument:monochromator:crystal           
1673                                                status  = "in"
1674                                                nx_distance     = 1
1675                                                wavelength      = 5.1
1676                                                wavelength_spread       = 0.02
1677                                                rotation        = 1.1
1678                                                energy  = 1
1679                                                wavevector      = 1
1680                                                lattice_parameter       = 1
1681                                                reflection      = {1,2,3}
1682                                                horizontal_curvature    = 1
1683                                                vertical_curvature      = 1
1684                                                horizontal_aperture     = 1
1685                                                vertical_aperture       = 1
1686                                SetDataFolder root:VSANS_file:entry1:instrument:monochromator:white_beam               
1687                                                status  = "in"
1688                                                wavelength      = 5.1
1689                                                wavelength_spread       = 0.8
1690                                                // description_of_distribution 
1691                        SetDataFolder root:VSANS_file:entry1:instrument:chopper         
1692                                        status  = "in"
1693                                        type    = "single"
1694                                        rotation_speed  = 12000
1695                                        distance_from_source    = 400
1696                                        distance_from_sample    = 1500
1697                                        slits   = 2
1698                                        angular_opening = 15
1699                                        duty_cycle      = 0.25
1700                                        // +?   
1701                        SetDataFolder root:VSANS_file:entry1:instrument:polarizer               
1702                                        status  = "in"
1703                                        type    = "supermirror"
1704                                        composition     = "multilayer"
1705                                        efficiency      = 0.95
1706                                        status  = "in"
1707                        SetDataFolder root:VSANS_file:entry1:instrument:flipper         
1708                                        status  = "on"
1709                                        driving_current = 42
1710                                        waveform        = "sine"
1711                                        frequency       = 400
1712                                        transmitted_power       = 0.99
1713                        SetDataFolder root:VSANS_file:entry1:instrument:polarizer_analyzer             
1714                                        status  = "down"
1715                                        guide_field_current_1   = 33
1716                                        guide_field_current_2   = 32
1717                                        solenoid_current        = 21
1718                                        cell_index      = 1
1719                                        cell_names      = {"Burgundy","Olaf","Jim","Bob","Joe"}
1720                                        cell_parameters = 1
1721                                       
1722                        SetDataFolder root:VSANS_file:entry1:instrument:attenuator             
1723                                        nx_distance     = 1500
1724                                        type    = "PMMA"
1725                                        thickness       = 0
1726                                        attenuator_transmission = 1
1727                                        status  = "in"
1728                                        atten_number    = "0101"
1729                                        index   = 1
1730                        SetDataFolder root:VSANS_file:entry1:instrument:source_aperture         
1731                                        material        = "Gd"
1732                                        description     = "source aperture"
1733                                        diameter        = 1.27
1734                                        nx_distance     = 13.0
1735                                SetDataFolder root:VSANS_file:entry1:instrument:source_aperture:shape                   
1736                                                size    = 1.27
1737                        SetDataFolder root:VSANS_file:entry1:instrument:sample_aperture         
1738                                        material        = "Gd"
1739                                        description     = "sample aperture"
1740                                        diameter        = 1.27
1741                                        nx_distance     = 10
1742                                SetDataFolder root:VSANS_file:entry1:instrument:sample_aperture:shape                   
1743                                                size    = 1.27
1744                        SetDataFolder root:VSANS_file:entry1:instrument:collimator             
1745                                SetDataFolder root:VSANS_file:entry1:instrument:collimator:geometry             
1746                                        SetDataFolder root:VSANS_file:entry1:instrument:collimator:geometry:shape               
1747                                                        shape   = "box"
1748                                                        size    = 11
1749                                        nx_NumGuides    = 1
1750                        SetDataFolder root:VSANS_file:entry1:instrument:converging_pinholes             
1751                                        status  = "in"
1752                        SetDataFolder root:VSANS_file:entry1:instrument:converging_slits               
1753                                        status  = "in"
1754                        SetDataFolder root:VSANS_file:entry1:instrument:lenses         
1755                                        status  = "in"
1756                                        lens_geometry   = "concave_lens"
1757                                        focus_type      = "point"
1758                                        number_of_lenses        = 28
1759                                        number_of_prisms        = 7
1760                                        curvature       = 1
1761                                        lens_distance   = 123
1762                                        prism_distance  = 123
1763                                        lens_material   = "MgF2"
1764                                        prism_material  = "MgF2"
1765                        SetDataFolder root:VSANS_file:entry1:instrument:sample_table           
1766                                        location        = "chamber"
1767                                        offset_distance = 0
1768                        SetDataFolder root:VSANS_file:entry1:instrument:beam_stop               
1769                                        status  = "out"
1770                                        description     = "circular"
1771                                        nx_distance     = 12.5
1772                                        size    = 7.62
1773                                        xPos    = 66.4
1774                                        yPos    = 64.4
1775                                        x_motor_position        = 0.15
1776                                        y_motor_position        = 0.55
1777                                       
1778                        SetDataFolder root:VSANS_file:entry1:instrument:detector_B             
1779                                        data    = trunc(abs(gnoise(p+q)))
1780                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1781                                        nx_distance     = 21.1
1782                                        description     = "fancy model"
1783                                        settings        = "just right"
1784                                        dead_time       = 5e-6
1785                                        x_pixel_size    = 5.08
1786                                        y_pixel_size    = 5.08
1787                                        beam_center_x   = 165.55
1788                                        beam_center_y   = 162.33
1789                                        type    = "??"
1790                                //WAVE  //flatfield_applied     = 0
1791                                //WAVE  //countrate_correction_applied  = 0
1792                                        pixel_mask      = 0
1793                                        integrated_count        = 100111222
1794                                        lateral_offset  = 20
1795                                        PixelNumX       = 320
1796                                        PixelNumY       = 320
1797                                        PixelFWHM       = 0.5
1798                                        CALX    = {0.5,0.5,10000}
1799                                        CALY    = {0.5,0.5,10000}
1800                                        size    = 65
1801                                        event_file_name ="something.hst"
1802                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MR                     
1803                                        data    = trunc(abs(gnoise(p+q)))
1804                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1805                                        nx_distance     = 13.1
1806                                        description     = "fancy model"
1807                                        settings        = "just right"
1808                                        dead_time       = 5e-6
1809                                        x_pixel_size    = 5.08
1810                                        y_pixel_size    = 5.08
1811                                        beam_center_x   = 65.55
1812                                        beam_center_y   = 62.33
1813                                        type    = "??"
1814                                //WAVE  //flatfield_applied     = 0
1815                                //WAVE  //countrate_correction_applied  = 0
1816                                        pixel_mask      = 0
1817                                        integrated_count        = 100111222
1818                                        lateral_offset  = 20
1819                                        separation      = 150
1820                                        PixelNumX       = 48
1821                                        PixelNumY       = 256
1822                                        PixelFWHM       = 0.5
1823                                        size    = 65
1824                                        event_file_name ="something.hst"
1825                                        tube_orientation        = "vertical"
1826                                        number_of_tubes = 48
1827                                        tube_index      = p
1828                                        spatial_calibration     = 1
1829                                        tube_width      = 8
1830                        SetDataFolder root:VSANS_file:entry1:instrument:detector_ML             
1831                                        data    = trunc(abs(gnoise(p+q)))
1832                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1833                                        nx_distance     = 13.1
1834                                        description     = "fancy model"
1835                                        settings        = "just right"
1836                                        dead_time       = 5e-6
1837                                        x_pixel_size    = 5.08
1838                                        y_pixel_size    = 5.08
1839                                        beam_center_x   = 65.55
1840                                        beam_center_y   = 62.33
1841                                        type    = "??"
1842                                //WAVE  //flatfield_applied     = 0
1843                                //WAVE  //countrate_correction_applied  = 0
1844                                        pixel_mask      = 0
1845                                        integrated_count        = 100111222
1846                                        lateral_offset  = 20
1847                                        separation      = 150
1848                                        PixelNumX       = 48
1849                                        PixelNumY       = 256
1850                                        PixelFWHM       = 0.5
1851                                        size    = 65
1852                                        event_file_name ="something.hst"
1853                                        tube_orientation        = "vertical"
1854                                        number_of_tubes = 48
1855                                        tube_index      = p
1856                                        spatial_calibration     = 1
1857                                        tube_width      = 8
1858                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MT             
1859                                        data    = trunc(abs(gnoise(p+q)))
1860                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1861                                        nx_distance     = 13.4
1862                                        description     = "fancy model"
1863                                        settings        = "just right"
1864                                        dead_time       = 5e-6
1865                                        x_pixel_size    = 5.08
1866                                        y_pixel_size    = 5.08
1867                                        beam_center_x   = 65.55
1868                                        beam_center_y   = 62.33
1869                                        type    = "??"
1870                                //WAVE  //flatfield_applied     = 0
1871                                //WAVE  //countrate_correction_applied  = 0
1872                                        pixel_mask      = 0
1873                                        integrated_count        = 100111222
1874                                        lateral_offset  = 20
1875                                        sdd_offset      = 30
1876                                        separation      = 150
1877                                        PixelNumX       = 128
1878                                        PixelNumY       = 48
1879                                        PixelFWHM       = 0.5
1880                                        size    = 65
1881                                        event_file_name ="something.hst"
1882                                        tube_orientation        = "horizontal"
1883                                        number_of_tubes = 48
1884                                        tube_index      = p
1885                                        spatial_calibration     = 1
1886                                        tube_width      = 8
1887                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MB             
1888                                        data    = trunc(abs(gnoise(p+q)))
1889                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1890                                        nx_distance     = 13.4
1891                                        description     = "fancy model"
1892                                        settings        = "just right"
1893                                        dead_time       = 5e-6
1894                                        x_pixel_size    = 5.08
1895                                        y_pixel_size    = 5.08
1896                                        beam_center_x   = 65.55
1897                                        beam_center_y   = 62.33
1898                                        type    = "??"
1899                                //WAVE  //flatfield_applied     = 0
1900                                //WAVE  //countrate_correction_applied  = 0
1901                                        pixel_mask      = 0
1902                                        integrated_count        = 100111222
1903                                        lateral_offset  = 20
1904                                        sdd_offset      = 30
1905                                        separation      = 150
1906                                        PixelNumX       = 128
1907                                        PixelNumY       = 48
1908                                        PixelFWHM       = 0.5
1909                                        size    = 65
1910                                        event_file_name ="something.hst"
1911                                        tube_orientation        = "horizontal"
1912                                        number_of_tubes = 48
1913                                        tube_index      = p
1914                                        spatial_calibration     = 1
1915                                        tube_width      = 8
1916                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FR                     
1917                                        data    = trunc(abs(gnoise(p+q)))
1918                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1919                                        nx_distance     = 2.1
1920                                        description     = "fancy model"
1921                                        settings        = "just right"
1922                                        dead_time       = 5e-6
1923                                        x_pixel_size    = 5.08
1924                                        y_pixel_size    = 5.08
1925                                        beam_center_x   = 65.55
1926                                        beam_center_y   = 62.33
1927                                        type    = "??"
1928                                //WAVE  //flatfield_applied     = 0
1929                                //WAVE  //countrate_correction_applied  = 0
1930                                        pixel_mask      = 0
1931                                        integrated_count        = 100111222
1932                                        lateral_offset  = 20
1933                                        separation      = 150
1934                                        PixelNumX       = 48
1935                                        PixelNumY       = 256
1936                                        PixelFWHM       = 0.5
1937                                        size    = 65
1938                                        event_file_name ="something.hst"
1939                                        tube_orientation        = "vertical"
1940                                        number_of_tubes = 48
1941                                        tube_index      = p
1942                                        spatial_calibration     = 1
1943                                        tube_width      = 8
1944                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FL             
1945                                        data    = trunc(abs(gnoise(p+q)))
1946                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1947                                        nx_distance     = 2.1
1948                                        description     = "fancy model"
1949                                        settings        = "just right"
1950                                        dead_time       = 5e-6
1951                                        x_pixel_size    = 5.08
1952                                        y_pixel_size    = 5.08
1953                                        beam_center_x   = 65.55
1954                                        beam_center_y   = 62.33
1955                                        type    = "??"
1956                                //WAVE  //flatfield_applied     = 0
1957                                //WAVE  //countrate_correction_applied  = 0
1958                                        pixel_mask      = 0
1959                                        integrated_count        = 100111222
1960                                        lateral_offset  = 20
1961                                        separation      = 150
1962                                        PixelNumX       = 48
1963                                        PixelNumY       = 256
1964                                        PixelFWHM       = 0.5
1965                                        size    = 65
1966                                        event_file_name ="something.hst"
1967                                        tube_orientation        = "vertical"
1968                                        number_of_tubes = 48
1969                                        tube_index      = p
1970                                        spatial_calibration     = 1
1971                                        tube_width      = 8
1972                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FT             
1973                                        data    = trunc(abs(gnoise(p+q)))
1974                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
1975                                        nx_distance     = 2.1
1976                                        description     = "fancy model"
1977                                        settings        = "just right"
1978                                        dead_time       = 5e-6
1979                                        x_pixel_size    = 5.08
1980                                        y_pixel_size    = 5.08
1981                                        beam_center_x   = 65.55
1982                                        beam_center_y   = 62.33
1983                                        type    = "??"
1984                                //WAVE  //flatfield_applied     = 0
1985                                //WAVE  //countrate_correction_applied  = 0
1986                                        pixel_mask      = 0
1987                                        integrated_count        = 100111222
1988                                        lateral_offset  = 20
1989                                        sdd_offset      = 30
1990                                        separation      = 150
1991                                        PixelNumX       = 128
1992                                        PixelNumY       = 48
1993                                        PixelFWHM       = 0.5
1994                                        size    = 65
1995                                        event_file_name ="something.hst"
1996                                        tube_orientation        = "horizontal"
1997                                        number_of_tubes = 48
1998                                        tube_index      = p
1999                                        spatial_calibration     = 1
2000                                        tube_width      = 8
2001                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FB             
2002                                        data    = trunc(abs(gnoise(p+q)))
2003                                //WAVE  //data_error    = 0.01*abs(gnoise(p+q))
2004                                        nx_distance     = 2.1
2005                                        description     = "fancy model"
2006                                        settings        = "just right"
2007                                        dead_time       = 5e-6
2008                                        x_pixel_size    = 5.08
2009                                        y_pixel_size    = 5.08
2010                                        beam_center_x   = 65.55
2011                                        beam_center_y   = 62.33
2012                                        type    = "??"
2013                                //WAVE  //flatfield_applied     = 0
2014                                //WAVE  //countrate_correction_applied  = 0
2015                                        pixel_mask      = 0
2016                                        integrated_count        = 100111222
2017                                        lateral_offset  = 20
2018                                        sdd_offset      = 30
2019                                        separation      = 150
2020                                        PixelNumX       = 128
2021                                        PixelNumY       = 48
2022                                        PixelFWHM       = 0.5
2023                                        size    = 65
2024                                        event_file_name ="something.hst"
2025                                        tube_orientation        = "horizontal"
2026                                        number_of_tubes = 48
2027                                        tube_index      = p
2028                                        spatial_calibration     = 1
2029                                        tube_width      = 8
2030                                       
2031                                       
2032                SetDataFolder root:VSANS_file:entry1:data_B             
2033                                data    = trunc(abs(gnoise(p+q)))
2034                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2035                                variables       = {320,320}
2036                                data_image      = p
2037                SetDataFolder root:VSANS_file:entry1:data_MR           
2038                                data    = trunc(abs(gnoise(p+q)))
2039                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2040                                variables       = {48,256}
2041                                data_image      = p
2042                SetDataFolder root:VSANS_file:entry1:data_ML           
2043                                data    = trunc(abs(gnoise(p+q)))
2044                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2045                                variables       = {48,256}
2046                                data_image      = p
2047                SetDataFolder root:VSANS_file:entry1:data_MT           
2048                                data    = trunc(abs(gnoise(p+q)))
2049                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2050                                variables       = {128,48}
2051                                data_image      = p
2052                SetDataFolder root:VSANS_file:entry1:data_MB           
2053                                data    = trunc(abs(gnoise(p+q)))
2054                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2055                                variables       = {128,48}
2056                                data_image      = p
2057                SetDataFolder root:VSANS_file:entry1:data_FR           
2058                                data    = trunc(abs(gnoise(p+q)))
2059                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2060                                variables       = {48,256}
2061                                data_image      = p
2062                SetDataFolder root:VSANS_file:entry1:data_FL           
2063                                data    = trunc(abs(gnoise(p+q)))
2064                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2065                                variables       = {48,256}
2066                                data_image      = p
2067                SetDataFolder root:VSANS_file:entry1:data_FT           
2068                                data    = trunc(abs(gnoise(p+q)))
2069                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2070                                variables       = {128,48}
2071                                data_image      = p
2072                SetDataFolder root:VSANS_file:entry1:data_FB           
2073                                data    = trunc(abs(gnoise(p+q)))
2074                        //WAVE  //error = 0.01*abs(gnoise(p+q))
2075                                variables       = {128,48}
2076                                data_image      = p
2077                               
2078                SetDataFolder root:VSANS_file:entry1:reduction         
2079                                intent  = "SCATTER"
2080                                transmission_file_name  = "SANSFile_TRN.h5"
2081                                empty_beam_file_name    = "SANSFile_EB.h5"
2082                                background_file_name    = "SANSFile_BKG.h5"
2083                                empty_file_name = "SANSFile_EMP.h5"
2084                                sensitivity_file_name   = "SANSFile_DIV.h5"
2085                                mask_file_name  = "SANSFile_MASK.h5"
2086                                sans_log_file_name      = "SANSFile_log.txt"
2087                                whole_trans     = 0.888
2088                                whole_trans_error       = 0.008
2089                                box_count       = 23232
2090                                box_count_error = 22
2091                                box_coordinates = {50,80,45,75}
2092                                comments        = "extra data comments"
2093                                absolute_scaling        = {1,1,1e5,1}
2094                        SetDataFolder root:VSANS_file:entry1:reduction:pol_sans                 
2095                                        pol_sans_purpose        = "name from the list"
2096                                        cell_name       = "Burgundy"
2097                                        cell_parameters = {1,2,3,4,5}
2098                                               
2099        SetDataFolder root:VSANS_file:DAS_Logs         
2100                        //...multiple entries and levels... to add     
2101                        //this will be enormous
2102
2103
2104
2105
2106
2107
2108
2109///// DO NOT DELETE WHAT IS BELOW THIS LINE  /////////////
2110
2111///////////////////////////
2112//
2113// these are all of the VCALC changes to the simulated files. ADD to these as needed, making these changes to the
2114// folder structure after the "default" values have been re-filled in the waves (to make sure something is really there)
2115//
2116////////////////////////
2117                               
2118                        SetDataFolder root:VSANS_file:entry1:instrument         
2119                                SetDataFolder root:VSANS_file:entry1:instrument:monochromator           
2120                                        wavelength      = VCALC_getWavelength()
2121                                        SetDataFolder root:VSANS_file:entry1:instrument:monochromator:velocity_selector         
2122                                                wavelength      = VCALC_getWavelength()
2123                                                //      table (wave)   
2124                                        SetDataFolder root:VSANS_file:entry1:instrument:monochromator:crystal           
2125                                                wavelength      = VCALC_getWavelength()
2126                                               
2127                                        SetDataFolder root:VSANS_file:entry1:instrument:monochromator:white_beam               
2128                                                wavelength      = VCALC_getWavelength()
2129                                                //      description_of_distribution
2130                                       
2131
2132                                       
2133                        SetDataFolder root:VSANS_file:entry1:instrument:detector_B             
2134                                data    = root:Packages:NIST:VSANS:VCALC:Back:det_B
2135                                nx_distance     = VCALC_getSDD("B")
2136
2137                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MR                     
2138                                data    = root:Packages:NIST:VSANS:VCALC:Middle:det_MR
2139                                nx_distance     = VCALC_getSDD("MR")
2140                                separation      = VCALC_getPanelSeparation("MR")
2141                                spatial_calibration[0][] = 1.072
2142                                spatial_calibration[1][] = -4.0e-5
2143                               
2144                        SetDataFolder root:VSANS_file:entry1:instrument:detector_ML             
2145                                data    = root:Packages:NIST:VSANS:VCALC:Middle:det_ML
2146                                nx_distance     = VCALC_getSDD("ML")
2147                                separation = VCALC_getPanelSeparation("ML")
2148                                spatial_calibration[0][] = 1.072
2149                                spatial_calibration[1][] = -4.0e-5
2150
2151                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MT             
2152                                data    = root:Packages:NIST:VSANS:VCALC:Middle:det_MT
2153                                nx_distance     = VCALC_getSDD("MT")
2154                                sdd_offset = VCALC_getTopBottomSDDOffset("MT")
2155                                separation = VCALC_getPanelSeparation("MT")
2156                                spatial_calibration[0][] = 1.072
2157                                spatial_calibration[1][] = -4.0e-5
2158
2159                        SetDataFolder root:VSANS_file:entry1:instrument:detector_MB             
2160                                data    = root:Packages:NIST:VSANS:VCALC:Middle:det_MB
2161                                nx_distance     = VCALC_getSDD("MB")
2162                                sdd_offset = VCALC_getTopBottomSDDOffset("MB")
2163                                separation = VCALC_getPanelSeparation("MB")
2164                                spatial_calibration[0][] = 1.072
2165                                spatial_calibration[1][] = -4.0e-5
2166
2167                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FR                     
2168                                data    = root:Packages:NIST:VSANS:VCALC:Front:det_FR
2169                                nx_distance     = VCALC_getSDD("FR")
2170                                separation = VCALC_getPanelSeparation("FR")
2171                                spatial_calibration[0][] = 1.072
2172                                spatial_calibration[1][] = -4.0e-5
2173
2174                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FL             
2175                                data    = root:Packages:NIST:VSANS:VCALC:Front:det_FL
2176                                nx_distance     = VCALC_getSDD("FL")
2177                                separation = VCALC_getPanelSeparation("FL")
2178                                spatial_calibration[0][] = 1.072
2179                                spatial_calibration[1][] = -4.0e-5
2180
2181                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FT             
2182                                data    = root:Packages:NIST:VSANS:VCALC:Front:det_FT
2183                                nx_distance     = VCALC_getSDD("FT")
2184                                sdd_offset = VCALC_getTopBottomSDDOffset("FT")
2185                                separation = VCALC_getPanelSeparation("FT")
2186                                spatial_calibration[0][] = 1.072
2187                                spatial_calibration[1][] = -4.0e-5
2188
2189                        SetDataFolder root:VSANS_file:entry1:instrument:detector_FB             
2190                                data    = root:Packages:NIST:VSANS:VCALC:Front:det_FB
2191                                nx_distance     = VCALC_getSDD("FB")
2192                                sdd_offset = VCALC_getTopBottomSDDOffset("FB")
2193                                separation = VCALC_getPanelSeparation("FB")
2194                                spatial_calibration[0][] = 1.072
2195                                spatial_calibration[1][] = -4.0e-5
2196
2197                                       
2198// SRK -set the top level copies of the data                                   
2199                SetDataFolder root:VSANS_file:entry1:data_B     
2200                        data    = root:Packages:NIST:VSANS:VCALC:Back:det_B
2201
2202                SetDataFolder root:VSANS_file:entry1:data_MR   
2203                        data    = root:Packages:NIST:VSANS:VCALC:Middle:det_MR
2204                       
2205                SetDataFolder root:VSANS_file:entry1:data_ML   
2206                        data    = root:Packages:NIST:VSANS:VCALC:Middle:det_ML
2207                       
2208                SetDataFolder root:VSANS_file:entry1:data_MT   
2209                        data    = root:Packages:NIST:VSANS:VCALC:Middle:det_MT
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_MB   
2213                        data    = root:Packages:NIST:VSANS:VCALC:Middle:det_MB
2214                        data    = (data ==   2147483647) ? 0 : data             //the NaN "mask" in the sim data shows up as an ugly integer
2215                       
2216                SetDataFolder root:VSANS_file:entry1:data_FR   
2217                        data    = root:Packages:NIST:VSANS:VCALC:Front:det_FR
2218                       
2219                SetDataFolder root:VSANS_file:entry1:data_FL   
2220                        data    = root:Packages:NIST:VSANS:VCALC:Front:det_FL
2221                       
2222                SetDataFolder root:VSANS_file:entry1:data_FT   
2223                        data    = root:Packages:NIST:VSANS:VCALC:Front:det_FT
2224                        data    = (data ==   2147483647) ? 0 : data             //the NaN "mask" in the sim data shows up as an ugly integer
2225                       
2226                SetDataFolder root:VSANS_file:entry1:data_FB   
2227                        data    = root:Packages:NIST:VSANS:VCALC:Front:det_FB
2228                        data    = (data ==   2147483647) ? 0 : data             //the NaN "mask" in the sim data shows up as an ugly integer
2229                       
2230                               
2231//              SetDataFolder root:VSANS_file:entry1:reduction         
2232//                      intent  = "SCATTER"
2233//                      transmission_file_name  = "SANSFile_TRN.h5"
2234//                      empty_beam_file_name    = "SANSFile_EB.h5"
2235//                      background_file_name    = "SANSFile_BKG.h5"
2236//                      empty_file_name = "SANSFile_EMP.h5"
2237//                      sensitivity_file_name   = "SANSFile_DIV.h5"
2238//                      mask_file_name  = "SANSFile_MASK.h5"
2239//                      sans_log_file_name      = "SANSFile_log.txt"
2240//                      whole_trans     = 0.888
2241//                      whole_trans_error       = 0.008
2242//                      box_count       = 23232
2243//                      box_count_error = 22
2244//                      box_coordinates = {50,80,45,75}
2245//                      comments        = "extra data comments"
2246//                      absolute_scaling        = {1,1,1e5,1}
2247//                      SetDataFolder root:VSANS_file:entry1:reduction:pol_sans                 
2248//                              pol_sans_purpose        = "name from the list"
2249//                              cell_name       = "Burgundy"
2250//                              cell_parameters = {1,2,3,4,5}
2251                                       
2252
2253        SetDataFolder root:
2254
2255End
2256
2257
2258
2259
2260
2261////////////////// SANS-specific functions
2262
2263
2264
2265//
2266// lays out the tree and fills with dummy values
2267//
2268Proc H_Setup_SANS_Structure()
2269       
2270        Variable n=100
2271       
2272NewDataFolder/O/S root:SANS_file       
2273        Make/O/T/N=1    file_name       = "SANSTest.h5"
2274        Make/O/T/N=1    file_time       = "2015-02-28T08:15:30-5:00"
2275        Make/O/T/N=1    facility        = "NCNR"
2276        Make/O/T/N=1    NeXus_version   = "Nexus 0.0"
2277        Make/O/T/N=1    hdf_version     = "hdf5.x"
2278        Make/O/T/N=1    file_history    = "history log"
2279        NewDataFolder/O/S  root:SANS_file:entry1               
2280                Make/O/T/N=1    title   = "title of entry1"
2281                Make/O/D/N=1    experiment_identifier   = 684636
2282                Make/O/T/N=1    experiment_description  = "description of expt"
2283                Make/O/T/N=1    entry_identifier        = "S22-33"
2284                Make/O/T/N=1    definition      = "NXsas"
2285                Make/O/T/N=1    start_time      = "2015-02-28T08:15:30-5:00"
2286                Make/O/T/N=1    end_time        = "2015-02-28T08:15:30-5:00"
2287                Make/O/D/N=1    duration        = 300
2288                Make/O/D/N=1    collection_time = 300
2289                Make/O/T/N=1    run_cycle       = "S22-23"
2290                Make/O/T/N=1    data_directory  = "[NG7SANS41]"
2291                Make/O/T/N=1    program_name    = "runPoint={stuff}"
2292                NewDataFolder/O/S  root:SANS_file:entry1:user           
2293                        Make/O/T/N=1    name    = "Dr. Pi"
2294                        Make/O/T/N=1    role    = "evil scientist"
2295                        Make/O/T/N=1    affiliation     = "NIST"
2296                        Make/O/T/N=1    address = "100 Bureau Drive"
2297                        Make/O/T/N=1    telephoneNumber = "301-999-9999"
2298                        Make/O/T/N=1    faxNumber       = "301-999-9999"
2299                        Make/O/T/N=1    email   = "sans@nist"
2300                        Make/O/I/N=1    facility_user_id        = 6937596
2301                NewDataFolder/O/S  root:SANS_file:entry1:control               
2302                        Make/O/T/N=1    mode    = "timer"
2303                        Make/O/D/N=1    preset  = 555
2304                        Make/O/D/N=1    integral        = 555
2305                        Make/O/D/N=1    monitor_counts  = 666
2306                        Make/O/D/N=1    monitor_preset  = 1e8
2307                        Make/O/D/N=1    detector_counts = 100111222
2308                        Make/O/D/N=1    detector_preset = 1e5
2309//                      Make/O/T/N=1    type    = "monitor type"
2310//                      Make/O/D/N=1    efficiency      = 0.01
2311//                      Make/O/D/N=1    sampled_fraction        = 1
2312                        Make/O/D/N=1    count_start     = 1
2313                        Make/O/D/N=1    count_end       = 1
2314                        Make/O/D/N=1    count_time      = 1
2315                        Make/O/D/N=1    count_time_preset       = 1
2316//              NewDataFolder/O/S  root:SANS_file:entry1:program_name           
2317//                      Make/O/T/N=1    data    = "program data"
2318//                      Make/O/T/N=1    description     = "acquisition"
2319//                      Make/O/T/N=1    file_name       = "NICE"
2320//                      Make/O/T/N=1    type    = "client"
2321                NewDataFolder/O/S  root:SANS_file:entry1:sample         
2322                        Make/O/T/N=1    description     = "My Sample"
2323                        Make/O/D/N=1    group_id        = 12345
2324//                      Make/O/T/N=1    chemical_formula        = "C8H10N4O2"
2325                        NewDataFolder/O/S  root:SANS_file:entry1:sample:temperature_1           
2326                                Make/O/T/N=1    name    = "Sample temperature"
2327                                Make/O/T/N=1    attached_to     = "block"
2328                                Make/O/T/N=1    measurement     = "temperature"
2329                                NewDataFolder/O/S  root:SANS_file:entry1:sample:temperature_1:value_log         
2330                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
2331                                        Make/O/D/N=(n)  nx_time = p
2332                                        Make/O/D/N=(n)  value   = 2*p
2333                        NewDataFolder/O/S  root:SANS_file:entry1:sample:temperature_2           
2334                                Make/O/T/N=1    name    = "Sample temperature"
2335                                Make/O/T/N=1    attached_to     = "block"
2336                                Make/O/T/N=1    measurement     = "temperature"
2337                                NewDataFolder/O/S  root:SANS_file:entry1:sample:temperature_2:value_log         
2338                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
2339                                        Make/O/D/N=(n)  nx_time = p
2340                                        Make/O/D/N=(n)  value   = 3*p
2341                        NewDataFolder/O/S  root:SANS_file:entry1:sample:electric_field         
2342                                Make/O/T/N=1    name    = "electric meter"
2343                                Make/O/T/N=1    attached_to     = "sample"
2344                                Make/O/T/N=1    measurement     = "voltage"
2345                                NewDataFolder/O/S  root:SANS_file:entry1:sample:electric_field:value_log               
2346                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
2347                                        Make/O/D/N=(n)  nx_time = 2*p
2348                                        Make/O/D/N=(n)  value   = sin(p/10)
2349                        NewDataFolder/O/S  root:SANS_file:entry1:sample:shear_field             
2350                                Make/O/T/N=1    name    = "rheometer"
2351                                Make/O/T/N=1    attached_to     = "sample"
2352                                Make/O/T/N=1    measurement     = "stress"
2353                                NewDataFolder/O/S  root:SANS_file:entry1:sample:shear_field:value_log           
2354                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
2355                                        Make/O/D/N=(n)  nx_time = p
2356                                        Make/O/D/N=(n)  value   = cos(p/5)
2357                        NewDataFolder/O/S  root:SANS_file:entry1:sample:pressure               
2358                                Make/O/T/N=1    name    = "Sample pressure"
2359                                Make/O/T/N=1    attached_to     = "pressure cell"
2360                                Make/O/T/N=1    measurement     = "pressure"
2361                                NewDataFolder/O/S  root:SANS_file:entry1:sample:pressure:value_log             
2362                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
2363                                        Make/O/D/N=(n)  nx_time = p
2364                                        Make/O/D/N=(n)  value   = p/2
2365                        NewDataFolder/O/S  root:SANS_file:entry1:sample:magnetic_field         
2366                                Make/O/T/N=1    name    = "magnetic field (direction)"
2367                                Make/O/T/N=1    attached_to     = "cryostat"
2368                                Make/O/T/N=1    measurement     = "magnetic field"
2369                                NewDataFolder/O/S  root:SANS_file:entry1:sample:magnetic_field:value_log               
2370                                        Make/O/T/N=1    start   = "2015-02-28T08:15:30-5:00"
2371                                        Make/O/D/N=(n)  nx_time = p
2372                                        Make/O/D/N=(n)  value   = 10*p
2373                        SetDataFolder  root:SANS_file:entry1:sample             
2374                        Make/O/D/N=1    changer_position        = 5
2375                        Make/O/T/N=1    sample_holder_description       = "10CB"
2376//                      Make/O/D/N=1    mass    = 0.3
2377//                      Make/O/D/N=1    density = 1.02
2378//                      Make/O/D/N=1    molecular_weight        = 194.19
2379//                      Make/O/T/N=1    description     = "My Sample"
2380//                      Make/O/T/N=1    preparation_date        = "2015-02-28T08:15:30-5:00"
2381//                      Make/O/D/N=1    volume_fraction = 0.2
2382//                      Make/O/D/N=1    scattering_length_density       = 6.35e-6
2383                        Make/O/D/N=1    thickness       = 0.1
2384                        Make/O/D/N=1    rotation_angle  = 30
2385                        Make/O/D/N=1    transmission    = 0.888
2386                        Make/O/D/N=1    transmission_error      = 0.011
2387//                      Make/O/D/N=1    xs_incoh        = 5.5
2388//                      Make/O/D/N=1    xs_coh  = 22.2
2389//                      Make/O/D/N=1    xs_absorb       = 3.1
2390                NewDataFolder/O/S  root:SANS_file:entry1:instrument             
2391//                      Make/O/T/N=1    location        = "NCNR"
2392                        Make/O/T/N=1    name    = "NGB30mSANS"
2393                        Make/O/T/N=1    type    = "30 m SANS"
2394                        Make/O/T/N=1    local_contact   = "Steve Kline"
2395                        NewDataFolder/O/S  root:SANS_file:entry1:instrument:source             
2396                                Make/O/T/N=1    name    = "NCNR"
2397                                Make/O/T/N=1    type    = "Reactor Neutron Source"
2398                                Make/O/T/N=1    probe   = "neutron"
2399                                Make/O/D/N=1    power   = 20
2400                        NewDataFolder/O/S root:SANS_file:entry1:instrument:beam_monitor         
2401                                Make/O/D/N=1    data    = 1234567
2402                                Make/O/T/N=1    type    = "monitor"
2403                                Make/O/D/N=1    efficiency      = 0.01
2404                                Make/O/D/N=1    nx_distance     = 16
2405                                Make/O/D/N=1    saved_count     = 1e8
2406                        NewDataFolder/O/S  root:SANS_file:entry1:instrument:monochromator               
2407                                Make/O/D/N=1    wavelength      = 6
2408                                Make/O/D/N=1    wavelength_spread       = 0.15
2409                                Make/O/T/N=1    type    = "VS"
2410                                NewDataFolder/O/S  root:SANS_file:entry1:instrument:monochromator:velocity_selector             
2411                                        Make/O/D/N=1    rotation_speed  = 5100
2412                                        Make/O/D/N=1    wavelength      = 6
2413                                        Make/O/D/N=1    wavelength_spread       = 0.15
2414                                        Make/O/D/N=1    vs_tilt = 3
2415                                        Make/O/D/N=1    nx_distance     = 18.8
2416                                                //table
2417                        NewDataFolder/O/S  root:SANS_file:entry1:instrument:polarizer           
2418                                Make/O/T/N=1    type    = "supermirror"
2419                                Make/O/T/N=1    composition     = "multilayer"
2420                                Make/O/D/N=1    efficiency      = 0.95
2421                                Make/O/T/N=1    status  = "in"
2422                        NewDataFolder/O/S  root:SANS_file:entry1:instrument:flipper             
2423                                Make/O/T/N=1    status  = "on"
2424                                Make/O/D/N=1    driving_current = 42
2425                                Make/O/T/N=1    waveform        = "sine"
2426                                Make/O/D/N=1    frequency       = 400
2427                                Make/O/D/N=1    transmitted_power       = 0.99
2428                        NewDataFolder/O/S  root:SANS_file:entry1:instrument:polarizer_analyzer         
2429                                Make/O/T/N=1    status  = "down"
2430                                Make/O/D/N=1    guide_field_current_1   = 33
2431                                Make/O/D/N=1    guide_field_current_2   = 32
2432                                Make/O/D/N=1    solenoid_current        = 21
2433                                Make/O/D/N=1    cell_index      = 1
2434                                Make/O/T/N=(5)  cell_names      = {"Burgundy","Olaf","Jim","Bob","Joe"}
2435                                Make/O/D/N=(5,2)        cell_parameters = 1
2436                        NewDataFolder/O/S  root:SANS_file:entry1:instrument:chopper             
2437                                Make/O/T/N=1    type    = "single"
2438                                Make/O/T/N=1    status  = "in"
2439                                Make/O/D/N=1    rotation_speed  = 12000
2440                                Make/O/D/N=1    distance_from_source    = 400
2441                                Make/O/D/N=1    distance_from_sample    = 1500
2442                                Make/O/D/N=1    slits   = 2
2443                                Make/O/D/N=1    angular_opening = 15
2444                                Make/O/D/N=1    duty_cycle      = 0.25
2445                        NewDataFolder/O/S  root:SANS_file:entry1:instrument:attenuator         
2446                                Make/O/D/N=1    nx_distance     = 1500
2447                                Make/O/T/N=1    type    = "PMMA"
2448                                Make/O/D/N=1    thickness       = 0
2449                                Make/O/D/N=1    attenuator_transmission = 1
2450                                Make/O/T/N=1    status  = "in"
2451                                Make/O/D/N=1    atten_number    = 0
2452                                Make/O/D/N=(10,10)      index   = 1
2453                        NewDataFolder/O/S  root:SANS_file:entry1:instrument:source_aperture             
2454//                              Make/O/T/N=1    material        = "Gd"
2455                                Make/O/T/N=1    description     = "source aperture"
2456                                Make/O/D/N=1    diameter        = 1.27
2457                                Make/O/D/N=1    nx_distance     = 13.0
2458                                NewDataFolder/O/S  root:SANS_file:entry1:instrument:source_aperture:shape               
2459                                        Make/O/D/N=(1,2)        size    = 1.27
2460                        NewDataFolder/O/S  root:SANS_file:entry1:instrument:sample_aperture             
2461//                              Make/O/T/N=1    material        = "Gd"
2462                                Make/O/T/N=1    description     = "sample aperture"
2463                                Make/O/D/N=1    diameter        = 1.27
2464                                Make/O/D/N=1    nx_distance     = 10
2465                                NewDataFolder/O/S  root:SANS_file:entry1:instrument:sample_aperture:shape               
2466                                        Make/O/D/N=(1,2)        size    = 1.27
2467                        NewDataFolder/O/S  root:SANS_file:entry1:instrument:collimator         
2468                                NewDataFolder/O/S root:SANS_file:entry1:instrument:collimator:geometry         
2469                                        NewDataFolder/O/S root:SANS_file:entry1:instrument:collimator:geometry:shape           
2470                                                Make/O/T/N=1    shape   = "box"
2471                                                Make/O/D/N=1    size    = 11
2472                                Make/O/I/N=1    nx_NumGuides    = 1
2473                        NewDataFolder/O/S  root:SANS_file:entry1:instrument:lenses             
2474                                Make/O/T/N=1    status  = "in"
2475                                Make/O/T/N=1    lens_geometry   = "concave_lens"
2476                                Make/O/T/N=1    focus_type      = "point"
2477                                Make/O/I/N=1    number_of_lenses        = 28
2478                                Make/O/I/N=1    number_of_prisms        = 7
2479                                Make/O/D/N=1    curvature       = 1
2480                                Make/O/D/N=1    lens_distance   = 123
2481                                Make/O/D/N=1    prism_distance  = 123
2482                                Make/O/T/N=1    lens_material   = "MgF2"
2483                                Make/O/T/N=1    prism_material  = "MgF2"
2484                        NewDataFolder/O/S  root:SANS_file:entry1:instrument:sample_table               
2485                                Make/O/T/N=1    location        = "chamber"
2486                                Make/O/D/N=1    offset_distance = 0
2487                        NewDataFolder/O/S  root:SANS_file:entry1:instrument:beam_stop           
2488                                Make/O/T/N=1    description     = "circular"
2489                                Make/O/D/N=1    nx_distance     = 12.5
2490                                Make/O/D/N=1    size    = 7.62
2491                                Make/O/T/N=1    status  = "out"
2492                                Make/O/D/N=1    xPos    = 66.4
2493                                Make/O/D/N=1    yPos    = 64.4
2494                                Make/O/D/N=1    x_motor_position        = 0.15
2495                                Make/O/D/N=1    y_motor_position        = 0.55
2496                        NewDataFolder/O/S  root:SANS_file:entry1:instrument:detector           
2497                                Make/O/I/N=(128,128)    data    = trunc(abs(gnoise(p+q)))
2498//                              Make/O/D/N=(128,128)    data_error      = 0.01*abs(gnoise(p+q))
2499                                Make/O/D/N=1    nx_distance     = 13.1
2500                                Make/O/T/N=1    description     = "Ordela 2660N"
2501                                Make/O/T/N=1    settings        = "just right"
2502                                Make/O/D/N=1    dead_time       = 5e-6
2503                                Make/O/D/N=1    x_pixel_size    = 5.08
2504                                Make/O/D/N=1    y_pixel_size    = 5.08
2505                                Make/O/D/N=1    beam_center_x   = 65.55
2506                                Make/O/D/N=1    beam_center_y   = 62.33
2507                                Make/O/T/N=1    type    = "Ordela"
2508//                              Make/O/D/N=1    flatfield_applied       = 0
2509//                              Make/O/D/N=1    countrate_correction_applied    = 0
2510                                Make/O/D/N=(128,128)    pixel_mask      = 0
2511                                Make/O/I/N=1    integrated_count        = 100111222
2512                                Make/O/D/N=1    lateral_offset  = 20
2513                                Make/O/I/N=1    PixelNumX       = 128
2514                                Make/O/I/N=1    PixelNumY       = 128
2515                                Make/O/D/N=1    PixelFWHM       = 0.5
2516                                        //calibration_method   
2517                                Make/O/D/N=3    CALX    = {0.5,0.5,10000}
2518                                Make/O/D/N=3    CALY    = {0.5,0.5,10000}
2519                                Make/O/D/N=1    size    = 65
2520                                Make/O/T/N=1    event_file_name ="something.hst"
2521                NewDataFolder/O/S  root:SANS_file:entry1:data           
2522                        Make/O/I/N=(128,128)    data    = trunc(abs(gnoise(p+q)))
2523//                      Make/O/D/N=(128,128)    error   = 0.01*abs(gnoise(p+q))
2524                        Make/O/D/N=2    variables       = {128,128}
2525                        Make/O/I/N=(128,128)    data_image      = p
2526                NewDataFolder/O/S  root:SANS_file:entry1:reduction             
2527                        Make/O/T/N=1    intent  = "SCATTER"
2528                        Make/O/T/N=1    transmission_file_name  = "SANSFile_TRN.h5"
2529                        Make/O/T/N=1    empty_beam_file_name    = "SANSFile_EB.h5"
2530                        Make/O/T/N=1    background_file_name    = "SANSFile_BKG.h5"
2531                        Make/O/T/N=1    empty_file_name = "SANSFile_EMP.h5"
2532                        Make/O/T/N=1    sensitivity_file_name   = "SANSFile_DIV.h5"
2533                        Make/O/T/N=1    mask_file_name  = "SANSFile_MASK.h5"
2534                        Make/O/T/N=1    sans_log_file_name      = "SANSFile_log.txt"
2535                        Make/O/D/N=1    whole_trans     = 0.888
2536                        Make/O/D/N=1    whole_trans_error       = 0.008
2537                        Make/O/D/N=1    box_count       = 23232
2538                        Make/O/D/N=1    box_count_error = 22
2539                        Make/O/I/N=4    box_coordinates = {50,80,45,75}
2540                        Make/O/T/N=1    comments        = "extra data comments"
2541                        Make/O/D/N=4    absolute_scaling        = {1,1,1e5,1}
2542                        NewDataFolder/O/S  root:SANS_file:entry1:reduction:pol_sans             
2543                                Make/O/T/N=1    pol_sans_purpose        = "name from the list"
2544                                Make/O/T/N=1    cell_name       = "Burgundy"
2545                                Make/O/D/N=(5)  cell_parameters = {1,2,3,4,5}
2546                                               
2547
2548        NewDataFolder/O/S  root:SANS_file:DAS_Logs             
2549                        //...multiple entries and levels... to add     
2550
2551        SetDataFolder root:
2552       
2553End
2554
2555
2556
2557
2558Proc H_Fill_SANS_Attributes()
2559
2560SetDataFolder  root:SANS_file           
2561        Make/O/N=0 Igor___folder_attributes     
2562        Note/K Igor___folder_attributes, "producer=IgorPro\rNX_class=NXroot"
2563        //      file_name               
2564        //      file_time               
2565        //      facility               
2566        //      NeXus_version           
2567        //      hdf_version             
2568        //      file_history           
2569        SetDataFolder  root:SANS_file:entry1           
2570                Make/O/N=0 Igor___folder_attributes     
2571                Note/K Igor___folder_attributes, "NX_class=NXentry"
2572                //      title           
2573                //      experiment_identifier           
2574                //      experiment_description         
2575                //      entry_identifier               
2576                //      definition             
2577                //      start_time             
2578                //      end_time               
2579                //      duration               
2580                Note/K duration, "units=s"
2581                //      collection_time         
2582                Note/K collection_time, "units=s"
2583                //      run_cycle               
2584                //      data_directory         
2585                //      program_name           
2586                SetDataFolder  root:SANS_file:entry1:user               
2587                        Make/O/N=0 Igor___folder_attributes     
2588                        Note/K Igor___folder_attributes, "NX_class=NXuser"
2589                        //      name           
2590                        //      role           
2591                        //      affiliation             
2592                        //      address         
2593                        //      telephoneNumber         
2594                        //      faxNumber               
2595                        //      email           
2596                        //      facility_user_id               
2597                SetDataFolder  root:SANS_file:entry1:control           
2598                        Make/O/N=0 Igor___folder_attributes     
2599                        Note/K Igor___folder_attributes, "NX_class=NXmonitor"
2600                        //      mode           
2601                        //      preset         
2602                        //      integral               
2603                        //      monitor_counts         
2604                        //      monitor_preset         
2605                        //      detector_counts         
2606                        //      detector_preset         
2607                        //      type           
2608                        //      efficiency             
2609                        //      sampled_fraction               
2610                        //      count_start             
2611                        Note/K count_start, "units=s"
2612                        //      count_end               
2613                        Note/K count_end, "units=s"
2614                        //      count_time             
2615                        Note/K count_time, "units=s"
2616                        //      count_time_preset               
2617                        Note/K count_time_preset, "units=s"
2618//              SetDataFolder  root:SANS_file:entry1:program_name               
2619//                      Make/O/N=0 Igor___folder_attributes     
2620                        //      data           
2621                        //      description             
2622                        //      file_name               
2623                        //      type           
2624                SetDataFolder  root:SANS_file:entry1:sample             
2625                        Make/O/N=0 Igor___folder_attributes     
2626                        Note/K Igor___folder_attributes, "NX_class=NXsample"
2627                        //      description             
2628                        //      group_id               
2629                        //      chemical_formula               
2630                        SetDataFolder  root:SANS_file:entry1:sample:temperature_1               
2631                                Make/O/N=0 Igor___folder_attributes     
2632                                Note/K Igor___folder_attributes, "NX_class=NXsensor"
2633                                //      name           
2634                                //      attached_to             
2635                                //      measurement             
2636                                SetDataFolder  root:SANS_file:entry1:sample:temperature_1:value_log             
2637                                        Make/O/N=0 Igor___folder_attributes     
2638                                        Note/K Igor___folder_attributes, "NX_class=NXlog"
2639                                        //      start           
2640                                        //      nx_time         
2641                                        Note/K nx_time, "units=s"
2642                                        //      value           
2643                                        Note/K value, "units=C"
2644                        SetDataFolder  root:SANS_file:entry1:sample:temperature_2               
2645                                Make/O/N=0 Igor___folder_attributes     
2646                                Note/K Igor___folder_attributes, "NX_class=NXsensor"
2647                                //      name           
2648                                //      attached_to             
2649                                //      measurement             
2650                                SetDataFolder  root:SANS_file:entry1:sample:temperature_2:value_log             
2651                                        Make/O/N=0 Igor___folder_attributes     
2652                                        Note/K Igor___folder_attributes, "NX_class=NXlog"
2653                                        //      start           
2654                                        //      nx_time         
2655                                        Note/K nx_time, "units=s"
2656                                        //      value           
2657                                        Note/K value, "units=C"
2658                        SetDataFolder  root:SANS_file:entry1:sample:electric_field             
2659                                Make/O/N=0 Igor___folder_attributes     
2660                                Note/K Igor___folder_attributes, "NX_class=NXsensor"
2661                                //      name           
2662                                //      attached_to             
2663                                //      measurement             
2664                                SetDataFolder  root:SANS_file:entry1:sample:electric_field:value_log           
2665                                        Make/O/N=0 Igor___folder_attributes     
2666                                        Note/K Igor___folder_attributes, "NX_class=NXlog"
2667                                        //      start           
2668                                        //      nx_time         
2669                                        Note/K nx_time, "units=s"
2670                                        //      value           
2671                                        Note/K value, "units=V"
2672                        SetDataFolder  root:SANS_file:entry1:sample:shear_field         
2673                                Make/O/N=0 Igor___folder_attributes     
2674                                Note/K Igor___folder_attributes, "NX_class=NXsensor"
2675                                //      name           
2676                                //      attached_to             
2677                                //      measurement             
2678                                SetDataFolder  root:SANS_file:entry1:sample:shear_field:value_log               
2679                                        Make/O/N=0 Igor___folder_attributes     
2680                                        Note/K Igor___folder_attributes, "NX_class=NXlog"
2681                                        //      start           
2682                                        //      nx_time         
2683                                        Note/K nx_time, "units=s"
2684                                        //      value           
2685                                        Note/K value, "units=Pa s"
2686                        SetDataFolder  root:SANS_file:entry1:sample:pressure           
2687                                Make/O/N=0 Igor___folder_attributes     
2688                                Note/K Igor___folder_attributes, "NX_class=NXsensor"
2689                                //      name           
2690                                //      attached_to             
2691                                //      measurement             
2692                                SetDataFolder  root:SANS_file:entry1:sample:pressure:value_log         
2693                                        Make/O/N=0 Igor___folder_attributes     
2694                                        Note/K Igor___folder_attributes, "NX_class=NXlog"
2695                                        //      start           
2696                                        //      nx_time         
2697                                        Note/K nx_time, "units=s"
2698                                        //      value           
2699                                        Note/K value, "units=psi"
2700                        SetDataFolder  root:SANS_file:entry1:sample:magnetic_field             
2701                                Make/O/N=0 Igor___folder_attributes     
2702                                Note/K Igor___folder_attributes, "NX_class=NXsensor"
2703                                //      name           
2704                                //      attached_to             
2705                                //      measurement             
2706                                SetDataFolder  root:SANS_file:entry1:sample:magnetic_field:value_log           
2707                                        Make/O/N=0 Igor___folder_attributes     
2708                                        Note/K Igor___folder_attributes, "NX_class=NXlog"
2709                                        //      start           
2710                                        //      nx_time         
2711                                        Note/K nx_time, "units=s"
2712                                        //      value           
2713                                        Note/K value, "units=T"
2714                        SetDataFolder  root:SANS_file:entry1:sample                     
2715                        //      changer_position               
2716                        //      sample_holder_description               
2717                        //      mass           
2718//                      Note/K mass, "units=g"
2719                        //      density         
2720//                      Note/K density, "units=g ml-1"
2721                        //      molecular_weight               
2722//                      Note/K molecular_weight, "units=g mol-1"
2723                        //      description             
2724                        //      preparation_date               
2725                        //      volume_fraction         
2726                        //      scattering_length_density               
2727//                      Note/K scattering_length_density, "units=A-2"
2728                        //      thickness               
2729                        Note/K thickness, "units=cm"
2730                        //      rotation_angle         
2731                        Note/K rotation_angle, "units=degrees"
2732                        //      transmission           
2733                        //      transmission_error             
2734                        //      xs_incoh               
2735//                      Note/K xs_incoh, "units=cm-1"
2736                        //      xs_coh         
2737//                      Note/K xs_coh, "units=cm-1"
2738                        //      xs_absorb               
2739//                      Note/K xs_absorb, "units=cm-1"
2740                SetDataFolder  root:SANS_file:entry1:instrument         
2741                        Make/O/N=0 Igor___folder_attributes     
2742                        Note/K Igor___folder_attributes, "NX_class=NXinstrument"
2743                        //      location               
2744                        //      name           
2745                        //      type           
2746                        //      local_contact           
2747                        SetDataFolder  root:SANS_file:entry1:instrument:source         
2748                                Make/O/N=0 Igor___folder_attributes     
2749                                Note/K Igor___folder_attributes, "NX_class=NXsource"
2750                                //      name           
2751                                //      type           
2752                                //      probe           
2753                                //      power           
2754                                Note/K power, "units=MW"
2755                        SetDataFolder root:SANS_file:entry1:instrument:beam_monitor             
2756                                Make/O/N=0 Igor___folder_attributes     
2757                                Note/K Igor___folder_attributes, "NX_class=NXmonitor"
2758                                //      data           
2759                                //      type           
2760                                //      efficiency             
2761                                //      nx_distance             
2762                                Note/K nx_distance, "units=m"
2763                                //      saved_count             
2764                        SetDataFolder  root:SANS_file:entry1:instrument:monochromator           
2765                                Make/O/N=0 Igor___folder_attributes     
2766                                Note/K Igor___folder_attributes, "NX_class=NXmonochromator"
2767                                //      wavelength             
2768                                Note/K wavelength, "units=A"
2769                                //      wavelength_spread               
2770                                //      type           
2771                                SetDataFolder  root:SANS_file:entry1:instrument:monochromator:velocity_selector         
2772                                        Make/O/N=0 Igor___folder_attributes     
2773                                        Note/K Igor___folder_attributes, "NX_class=NXvelocity_selector"
2774                                        //      rotation_speed         
2775                                        Note/K rotation_speed, "units=RPM"
2776                                        //      wavelength             
2777                                        Note/K wavelength, "units=A"
2778                                        //      wavelength_spread               
2779                                        //      vs_tilt         
2780                                        Note/K vs_tilt, "units=degrees"
2781                                        //      nx_distance             
2782                                        Note/K nx_distance, "units=m"
2783                                                //table         
2784                        SetDataFolder  root:SANS_file:entry1:instrument:polarizer               
2785                                Make/O/N=0 Igor___folder_attributes     
2786                                //      type           
2787                                //      composition             
2788                                //      efficiency             
2789                                //      status         
2790                        SetDataFolder  root:SANS_file:entry1:instrument:flipper         
2791                                Make/O/N=0 Igor___folder_attributes     
2792                                //      status         
2793                                //      driving_current         
2794                                Note/K driving_current, "units=A"
2795                                //      waveform               
2796                                //      frequency               
2797                                Note/K frequency, "units=Hz"
2798                                //      transmitted_power               
2799                        SetDataFolder  root:SANS_file:entry1:instrument:polarizer_analyzer             
2800                                Make/O/N=0 Igor___folder_attributes     
2801                                //      status         
2802                                //      guide_field_current_1           
2803                                Note/K guide_field_current_1, "units=A"
2804                                //      guide_field_current_2           
2805                                Note/K guide_field_current_2, "units=A"
2806                                //      solenoid_current               
2807                                Note/K solenoid_current, "units=A"
2808                                //      cell_index             
2809                                //      cell_names             
2810                                //      cell_parameters         
2811                        SetDataFolder  root:SANS_file:entry1:instrument:chopper         
2812                                Make/O/N=0 Igor___folder_attributes     
2813                                Note/K Igor___folder_attributes, "NX_class=NXdisk_chopper"
2814                                //      type           
2815                                //      status         
2816                                //      rotation_speed         
2817                                Note/K rotation_speed, "units=RPM"
2818                                //      distance_from_source           
2819                                Note/K distance_from_source, "units=m"
2820                                //      distance_from_sample           
2821                                Note/K distance_from_sample, "units=m"
2822                                //      slits           
2823                                //      angular_opening         
2824                                Note/K angular_opening, "units=degrees"
2825                                //      duty_cycle             
2826                        SetDataFolder  root:SANS_file:entry1:instrument:attenuator             
2827                                Make/O/N=0 Igor___folder_attributes     
2828                                Note/K Igor___folder_attributes, "NX_class=NXattenuator"
2829                                //      nx_distance             
2830                                Note/K nx_distance, "units=m"
2831                                //      type           
2832                                //      thickness               
2833                                Note/K thickness, "units=cm"
2834                                //      attenuator_transmission         
2835                                //      status         
2836                                //      atten_number           
2837                                //      index           
2838                        SetDataFolder  root:SANS_file:entry1:instrument:source_aperture         
2839                                Make/O/N=0 Igor___folder_attributes     
2840                                Note/K Igor___folder_attributes, "NX_class=NXaperture"
2841                                //      material               
2842                                //      description             
2843                                //      diameter               
2844                                Note/K diameter, "units=cm"
2845                                //      nx_distance             
2846                                Note/K nx_distance, "units=m"
2847                                SetDataFolder  root:SANS_file:entry1:instrument:source_aperture:shape           
2848                                        Make/O/N=0 Igor___folder_attributes     
2849                                        Note/K Igor___folder_attributes, "NX_class=NXshape"
2850                                        //      size           
2851                                        Note/K size, "units=cm"
2852                        SetDataFolder  root:SANS_file:entry1:instrument:sample_aperture         
2853                                Make/O/N=0 Igor___folder_attributes     
2854                                Note/K Igor___folder_attributes, "NX_class=NXaperture"
2855                                //      material               
2856                                //      description             
2857                                //      diameter               
2858                                Note/K diameter, "units=cm"
2859                                //      nx_distance             
2860                                Note/K nx_distance, "units=m"
2861                                SetDataFolder  root:SANS_file:entry1:instrument:sample_aperture:shape           
2862                                        Make/O/N=0 Igor___folder_attributes     
2863                                        Note/K Igor___folder_attributes, "NX_class=NXshape"
2864                                        //      size           
2865                                        Note/K size, "units=cm"
2866                        SetDataFolder root:SANS_file:entry1:instrument:collimator                       
2867                                SetDataFolder root:SANS_file:entry1:instrument:collimator:geometry                     
2868                                        SetDataFolder root:SANS_file:entry1:instrument:collimator:geometry:shape                       
2869                                                //      shape           
2870                                                //      size           
2871                                                Note/K size, "units=m"
2872                                //      nx_NumGuides           
2873                        SetDataFolder  root:SANS_file:entry1:instrument:lenses         
2874                                Make/O/N=0 Igor___folder_attributes     
2875                                Note/K Igor___folder_attributes, "NX_class=NXxraylens"
2876                                //      status         
2877                                //      lens_geometry           
2878                                //      focus_type             
2879                                //      number_of_lenses               
2880                                //      number_of_prisms               
2881                                //      curvature               
2882                                //      lens_distance           
2883                                Note/K lens_distance, "units=m"
2884                                //      prism_distance         
2885                                Note/K prism_distance, "units=m"
2886                                //      lens_material           
2887                                //      prism_material         
2888                        SetDataFolder  root:SANS_file:entry1:instrument:sample_table           
2889                                Make/O/N=0 Igor___folder_attributes     
2890                                //      location               
2891                                //      offset_distance         
2892                                Note/K offset_distance, "units=cm"
2893                        SetDataFolder  root:SANS_file:entry1:instrument:beam_stop               
2894                                Make/O/N=0 Igor___folder_attributes     
2895                                Note/K Igor___folder_attributes, "NX_class=NXbeam_stop"
2896                                //      description             
2897                                //      nx_distance             
2898                                Note/K nx_distance, "units=m"
2899                                //      size           
2900                                Note/K size, "units=cm"
2901                                //      status         
2902                                //      xPos           
2903                                //      yPos           
2904                                //      x_motor_position               
2905                                Note/K x_motor_position, "units=cm"
2906                                //      y_motor_position               
2907                                Note/K y_motor_position, "units=cm"
2908                        SetDataFolder  root:SANS_file:entry1:instrument:detector               
2909                                Make/O/N=0 Igor___folder_attributes     
2910                                Note/K Igor___folder_attributes, "NX_class=NXdetector"
2911                                //      data           
2912                                Note/K data, "signal=1"
2913                                //      data_error             
2914                                //      nx_distance             
2915                                Note/K nx_distance, "units=m"
2916                                //      description             
2917                                //      settings               
2918                                //      dead_time               
2919                                Note/K dead_time, "units=s"
2920                                //      x_pixel_size           
2921                                Note/K x_pixel_size, "units=cm"
2922                                //      y_pixel_size           
2923                                Note/K y_pixel_size, "units=cm"
2924                                //      beam_center_x           
2925                                //      beam_center_y           
2926                                //      type           
2927                                //      flatfield_applied               
2928                                //      countrate_correction_applied           
2929                                //      pixel_mask             
2930                                //      integrated_count               
2931                                //      lateral_offset         
2932                                Note/K lateral_offset, "units=cm"
2933                                //      PixelNumX               
2934                                //      PixelNumY               
2935                                //      PixelFWHM               
2936                                        //calibration_method           
2937                                //      CALX           
2938                                //      CALY           
2939                                //      size           
2940                                Note/K size, "units=cm"
2941                                //      event_file_name         
2942                SetDataFolder  root:SANS_file:entry1:data               
2943                        Make/O/N=0 Igor___folder_attributes     
2944                        Note/K Igor___folder_attributes, "NX_class=NXdata"
2945                        //      data           
2946                        Note/K data, "signal=1"
2947                        //      error           
2948                        //      variables               
2949                        //      data_image             
2950                SetDataFolder  root:SANS_file:entry1:reduction         
2951                        Make/O/N=0 Igor___folder_attributes     
2952                        //      intent         
2953                        //      transmission_file_name         
2954                        //      empty_beam_file_name           
2955                        //      background_file_name           
2956                        //      empty_file_name         
2957                        //      sensitivity_file_name           
2958                        //      mask_file_name         
2959                        //      sans_log_file_name             
2960                        //      whole_trans             
2961                        //      whole_trans_error               
2962                        //      box_count               
2963                        //      box_count_error         
2964                        //      box_coordinates         
2965                        //      comments               
2966                        //      absolute_scaling               
2967                        SetDataFolder  root:SANS_file:entry1:reduction:pol_sans         
2968                                Make/O/N=0 Igor___folder_attributes     
2969                                //      pol_sans_purpose               
2970                                //      cell_name               
2971                                //      cell_parameters         
2972                                                       
2973        SetDataFolder  root:SANS_file:DAS_Logs         
2974                Make/O/N=0 Igor___folder_attributes     
2975                Note/K Igor___folder_attributes, "NX_class=NXlog"
2976                        //...multiple entries and levels... to add             
2977
2978
2979        SetDataFolder root:     
2980
2981End
2982
2983
2984//
2985// this is NOT linked in any way with SASCALC, and I have no idea
2986// of how to ever keep this in sync if the Nexus tree changes...
2987//
2988Proc H_Fill_SANS_wSim()
2989
2990SetDataFolder  root:SANS_file           
2991                file_name       = "SANSTest.h5"
2992                file_time       = "2015-02-28T08:15:30-5:00"
2993                facility        = "NCNR"
2994                NeXus_version   = "Nexus 0.0"
2995                hdf_version     = "hdf5.x"
2996                file_history    = "history log"
2997        SetDataFolder  root:SANS_file:entry1           
2998                        title   = "title of entry1"
2999                        experiment_identifier   = 684636
3000                        experiment_description  = "description of expt"
3001                        entry_identifier        = "S22-33"
3002                        definition      = "NXsas"
3003                        start_time      = "2015-02-28T08:15:30-5:00"
3004                        end_time        = "2015-02-28T08:15:30-5:00"
3005                        duration        = 300
3006                        collection_time = 300
3007                        run_cycle       = "S22-23"
3008                        data_directory  = "[NG7SANS41]"
3009                        program_name    = "runPoint={stuff}"
3010                SetDataFolder  root:SANS_file:entry1:user               
3011                                name    = "Dr. Pi"
3012                                role    = "evil scientist"
3013                                affiliation     = "NIST"
3014                                address = "100 Bureau Drive"
3015                                telephoneNumber = "301-999-9999"
3016                                faxNumber       = "301-999-9999"
3017                                email   = "sans@nist"
3018                                facility_user_id        = 6937596
3019                SetDataFolder  root:SANS_file:entry1:control           
3020                                mode    = "timer"
3021                                preset  = 555
3022                                integral        = 555
3023                                monitor_counts  = 666
3024                                monitor_preset  = 1e8
3025                                detector_counts = 100111222
3026                                detector_preset = 1e5
3027//                              type    = "monitor type"
3028//                              efficiency      = 0.01
3029//                              sampled_fraction        = 1
3030                                count_start     = 1
3031                                count_end       = 1
3032                                count_time      = 1
3033                                count_time_preset       = 1
3034//              SetDataFolder  root:SANS_file:entry1:program_name               
3035//                              data    = "program data"
3036//                              description     = "acquisition"
3037//                              file_name       = "NICE"
3038//                              type    = "client"
3039                SetDataFolder  root:SANS_file:entry1:sample             
3040                                description     = "My Sample"
3041                                group_id        = 12345
3042//                              chemical_formula        = "C8H10N4O2"
3043                        SetDataFolder  root:SANS_file:entry1:sample:temperature_1               
3044                                        name    = "Sample temperature"
3045                                        attached_to     = "block"
3046                                        measurement     = "temperature"
3047                                SetDataFolder  root:SANS_file:entry1:sample:temperature_1:value_log             
3048                                                start   = "2015-02-28T08:15:30-5:00"
3049                                                nx_time = p
3050                                                value   = 2*p
3051                        SetDataFolder  root:SANS_file:entry1:sample:temperature_2               
3052                                        name    = "Sample temperature"
3053                                        attached_to     = "block"
3054                                        measurement     = "temperature"
3055                                SetDataFolder  root:SANS_file:entry1:sample:temperature_2:value_log             
3056                                                start   = "2015-02-28T08:15:30-5:00"
3057                                                nx_time = p
3058                                                value   = 3*p
3059                        SetDataFolder  root:SANS_file:entry1:sample:electric_field             
3060                                        name    = "electric meter"
3061                                        attached_to     = "sample"
3062                                        measurement     = "voltage"
3063                                SetDataFolder  root:SANS_file:entry1:sample:electric_field:value_log           
3064                                                start   = "2015-02-28T08:15:30-5:00"
3065                                                nx_time = 2*p
3066                                                value   = sin(p/10)
3067                        SetDataFolder  root:SANS_file:entry1:sample:shear_field         
3068                                        name    = "rheometer"
3069                                        attached_to     = "sample"
3070                                        measurement     = "stress"
3071                                SetDataFolder  root:SANS_file:entry1:sample:shear_field:value_log               
3072                                                start   = "2015-02-28T08:15:30-5:00"
3073                                                nx_time = p
3074                                                value   = cos(p/5)
3075                        SetDataFolder  root:SANS_file:entry1:sample:pressure           
3076                                        name    = "Sample pressure"
3077                                        attached_to     = "pressure cell"
3078                                        measurement     = "pressure"
3079                                SetDataFolder  root:SANS_file:entry1:sample:pressure:value_log         
3080                                                start   = "2015-02-28T08:15:30-5:00"
3081                                                nx_time = p
3082                                                value   = p/2
3083                        SetDataFolder  root:SANS_file:entry1:sample:magnetic_field             
3084                                        name    = "magnetic field (direction)"
3085                                        attached_to     = "cryostat"
3086                                        measurement     = "magnetic field"
3087                                SetDataFolder  root:SANS_file:entry1:sample:magnetic_field:value_log           
3088                                                start   = "2015-02-28T08:15:30-5:00"
3089                                                nx_time = p
3090                                                value   = 10*p
3091                        SetDataFolder  root:SANS_file:entry1:sample             
3092                                changer_position        = 5
3093                                sample_holder_description       = "10CB"
3094//                              mass    = 0.3
3095//                              density = 1.02
3096//                              molecular_weight        = 194.19
3097//                              description     = "My Sample"
3098//                              preparation_date        = "2015-02-28T08:15:30-5:00"
3099//                              volume_fraction = 0.2
3100//                              scattering_length_density       = 6.35e-6
3101                                thickness       = 0.1
3102                                rotation_angle  = 30
3103                                transmission    = 0.888
3104                                transmission_error      = 0.011
3105//                              xs_incoh        = 5.5
3106//                              xs_coh  = 22.2
3107//                              xs_absorb       = 3.1
3108                SetDataFolder  root:SANS_file:entry1:instrument         
3109//                              location        = "NCNR"
3110                                name    = "NGB30mSANS"
3111                                type    = "30 m SANS"
3112                                local_contact   = "Steve Kline"
3113                        SetDataFolder  root:SANS_file:entry1:instrument:source         
3114                                        name    = "NCNR"
3115                                        type    = "Reactor Neutron Source"
3116                                        probe   = "neutron"
3117                                        power   = 20
3118                        SetDataFolder root:SANS_file:entry1:instrument:beam_monitor             
3119                                        data    = 1234567
3120                                        type    = "monitor"
3121                                        efficiency      = 0.01
3122                                        nx_distance     = 16
3123                                        saved_count     = 1e8
3124                        SetDataFolder  root:SANS_file:entry1:instrument:monochromator           
3125                                        wavelength      = 6
3126                                        wavelength_spread       = 0.15
3127                                        type    = "VS"
3128                                SetDataFolder  root:SANS_file:entry1:instrument:monochromator:velocity_selector         
3129                                                rotation_speed  = 5100
3130                                                wavelength      = 6
3131                                                wavelength_spread       = 0.15
3132                                                vs_tilt = 3
3133                                                nx_distance     = 18.8
3134                                                //table
3135                        SetDataFolder  root:SANS_file:entry1:instrument:polarizer               
3136                                        type    = "supermirror"
3137                                        composition     = "multilayer"
3138                                        efficiency      = 0.95
3139                                        status  = "in"
3140                        SetDataFolder  root:SANS_file:entry1:instrument:flipper         
3141                                        status  = "on"
3142                                        driving_current = 42
3143                                        waveform        = "sine"
3144                                        frequency       = 400
3145                                        transmitted_power       = 0.99
3146                        SetDataFolder  root:SANS_file:entry1:instrument:polarizer_analyzer             
3147                                        status  = "down"
3148                                        guide_field_current_1   = 33
3149                                        guide_field_current_2   = 32
3150                                        solenoid_current        = 21
3151                                        cell_index      = 1
3152                                        cell_names      = {"Burgundy","Olaf","Jim","Bob","Joe"}
3153                                        cell_parameters = 1
3154                        SetDataFolder  root:SANS_file:entry1:instrument:chopper         
3155                                        type    = "single"
3156                                        status  = "in"
3157                                        rotation_speed  = 12000
3158                                        distance_from_source    = 400
3159                                        distance_from_sample    = 1500
3160                                        slits   = 2
3161                                        angular_opening = 15
3162                                        duty_cycle      = 0.25
3163                        SetDataFolder  root:SANS_file:entry1:instrument:attenuator             
3164                                        nx_distance     = 1500
3165                                        type    = "PMMA"
3166                                        thickness       = 0
3167                                        attenuator_transmission = 1
3168                                        status  = "in"
3169                                        atten_number    = 0
3170                                        index   = 1
3171                        SetDataFolder  root:SANS_file:entry1:instrument:source_aperture         
3172//                                      material        = "Gd"
3173                                        description     = "source aperture"
3174                                        diameter        = 1.27
3175                                        nx_distance     = 13.0
3176                                SetDataFolder  root:SANS_file:entry1:instrument:source_aperture:shape           
3177                                                size    = 1.27
3178                        SetDataFolder  root:SANS_file:entry1:instrument:sample_aperture         
3179//                                      material        = "Gd"
3180                                        description     = "sample aperture"
3181                                        diameter        = 1.27
3182                                        nx_distance     = 10
3183                                SetDataFolder  root:SANS_file:entry1:instrument:sample_aperture:shape           
3184                                                size    = 1.27
3185                        SetDataFolder root:SANS_file:entry1:instrument:collimator               
3186                                SetDataFolder root:SANS_file:entry1:instrument:collimator:geometry             
3187                                        SetDataFolder root:SANS_file:entry1:instrument:collimator:geometry:shape               
3188                                                        shape   = "box"
3189                                                        size    = 11
3190                                        nx_NumGuides    = 1
3191                        SetDataFolder  root:SANS_file:entry1:instrument:lenses         
3192                                        status  = "in"
3193                                        lens_geometry   = "concave_lens"
3194                                        focus_type      = "point"
3195                                        number_of_lenses        = 28
3196                                        number_of_prisms        = 7
3197                                        curvature       = 1
3198                                        lens_distance   = 123
3199                                        prism_distance  = 123
3200                                        lens_material   = "MgF2"
3201                                        prism_material  = "MgF2"
3202                        SetDataFolder  root:SANS_file:entry1:instrument:sample_table           
3203                                        location        = "chamber"
3204                                        offset_distance = 0
3205                        SetDataFolder  root:SANS_file:entry1:instrument:beam_stop               
3206                                        description     = "circular"
3207                                        nx_distance     = 12.5
3208                                        size    = 7.62
3209                                        status  = "out"
3210                                        xPos    = 66.4
3211                                        yPos    = 64.4
3212                                        x_motor_position        = 0.15
3213                                        y_motor_position        = 0.55
3214                        SetDataFolder  root:SANS_file:entry1:instrument:detector               
3215                                        data    = trunc(abs(gnoise(p+q)))
3216//                                      data_error      = 0.01*abs(gnoise(p+q))
3217                                        nx_distance     = 13.1
3218                                        description     = "Ordela 2660N"
3219                                        settings        = "just right"
3220                                        dead_time       = 5e-6
3221                                        x_pixel_size    = 5.08
3222                                        y_pixel_size    = 5.08
3223                                        beam_center_x   = 65.55
3224                                        beam_center_y   = 62.33
3225                                        type    = "Ordela"
3226//                                      flatfield_applied       = 0
3227//                                      countrate_correction_applied    = 0
3228                                        pixel_mask      = 0
3229                                        integrated_count        = 100111222
3230                                        lateral_offset  = 20
3231                                        PixelNumX       = 128
3232                                        PixelNumY       = 128
3233                                        PixelFWHM       = 0.5
3234                                        //calibration_method   
3235                                        CALX    = {0.5,0.5,10000}
3236                                        CALY    = {0.5,0.5,10000}
3237                                        size    = 65
3238                                        event_file_name ="something.hst"
3239                SetDataFolder  root:SANS_file:entry1:data               
3240                                data    = trunc(abs(gnoise(p+q)))
3241//                              error   = 0.01*abs(gnoise(p+q))
3242                                variables       = {128,128}
3243                                data_image      = p
3244                SetDataFolder  root:SANS_file:entry1:reduction         
3245                                intent  = "SCATTER"
3246                                transmission_file_name  = "SANSFile_TRN.h5"
3247                                empty_beam_file_name    = "SANSFile_EB.h5"
3248                                background_file_name    = "SANSFile_BKG.h5"
3249                                empty_file_name = "SANSFile_EMP.h5"
3250                                sensitivity_file_name   = "SANSFile_DIV.h5"
3251                                mask_file_name  = "SANSFile_MASK.h5"
3252                                sans_log_file_name      = "SANSFile_log.txt"
3253                                whole_trans     = 0.888
3254                                whole_trans_error       = 0.008
3255                                box_count       = 23232
3256                                box_count_error = 22
3257                                box_coordinates = {50,80,45,75}
3258                                comments        = "extra data comments"
3259                                absolute_scaling        = {1,1,1e5,1}
3260                        SetDataFolder  root:SANS_file:entry1:reduction:pol_sans         
3261                                        pol_sans_purpose        = "name from the list"
3262                                        cell_name       = "Burgundy"
3263                                        cell_parameters = {1,2,3,4,5}
3264                                               
3265        SetDataFolder  root:SANS_file:DAS_Logs         
3266                        //...multiple entries and levels... to add     
3267
3268
3269        SetDataFolder root:
3270
3271End
3272
3273
Note: See TracBrowser for help on using the repository browser.