Compare commits

...

619 Commits

Author SHA1 Message Date
f7695113b8 Interpolation has problems. To be checked 2019-12-17 17:09:50 +01:00
27f2321d64 fixed probelm with interpolation of rectangular pixels 2019-12-10 11:10:58 +01:00
545684c8e3 Fixed corordinate inversion 2019-12-09 16:51:15 +01:00
9584ea626d Interpolation changed for rectangular pixels 2019-12-09 13:53:11 +01:00
a2c26664ee added and corrected data structures for rectangular pixels 2019-12-06 12:17:31 +01:00
02a36a148f fixed process make file 2019-11-07 13:28:03 +01:00
142b184e62 fixed last frame with subframes 2019-09-30 12:43:37 +02:00
dd2fe28ce6 finxed subframe index in zmq process 2019-09-30 12:39:49 +02:00
0afd096eae removed log messages in receiver 2019-09-30 12:27:48 +02:00
98ae93fdde Possibility to sum up only fractions of frames in the Zmq process 2019-09-27 13:05:29 +02:00
c654ac7f1f Added sls_detector_process executable for acquire blocking on zmq 2019-09-27 10:12:21 +02:00
db2742495a Added defines to invert the data for HIGHZ in the moench data structures 2019-09-26 12:22:23 +02:00
d0c5c2a6e5 moenchZmqProcess and Makefile adjusted to work with this branch 2019-09-26 11:42:10 +02:00
2c09d394a6 slsDetectorCalibration updated to latest version 2019-09-26 11:34:11 +02:00
52f74142b1 Moench working version 2019-03-28 13:29:12 +01:00
18ab437ae5 Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2019-02-06 16:30:59 +01:00
3b56091e2f new header for raw files 2019-02-06 16:30:37 +01:00
dcad6c80ce minor modifications for interpolation and mythe data structure 2019-02-06 16:22:17 +01:00
6abfdcb2c8 manual 2019-02-04 10:48:42 +01:00
9e5ec6a57b only destroy sem if it was initialized 2019-01-16 11:54:01 +01:00
9d3134c3de Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-12-14 18:11:46 +01:00
563d644d2f Improved the interpolation with adaptive bins and implemented flat field correction when saving the interpolated images 2018-12-14 18:11:12 +01:00
e379b98631 added header files 2018-12-12 16:10:01 +01:00
f98259adc9 added build requirements to subpackages 2018-12-12 15:50:55 +01:00
88e0914405 added conda recipe as a test 2018-12-12 15:23:24 +01:00
9d8aa5fe91 Works with CTB5 (and should be backward compatible with the rest) 2018-12-06 17:26:54 +01:00
dceea92f1a Fixed big problem with CPU readout 2018-12-06 12:58:54 +01:00
2815458652 Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-12-06 10:55:32 +01:00
d8140d8db9 anna version 2018-12-06 10:55:18 +01:00
4d0090dfcc ctb server: added brackets around char* in write to socket 2018-11-21 15:57:46 +01:00
e98d60c26e updated ctb binary 2018-11-21 15:35:59 +01:00
cd3135c01d loophole for blackfin not checking the data sent, hence splitting data to a few packets when size > 30k bytes 2018-11-21 15:34:58 +01:00
40dedb8b07 manual 2018-11-16 17:47:41 +01:00
2e83db7d45 changed cluster file format 2018-11-09 12:34:14 +01:00
817736fcd5 after merging with developer 2018-11-02 10:48:06 +01:00
660ed4c177 changed users set/getDetectorsize API to include a single ROI 2018-10-25 14:11:40 +02:00
0d96272db5 manual 2018-10-23 11:29:27 +02:00
38a6393dde fixed probelem with multiThreadedInterpolatingDetector 2018-10-16 17:17:24 +02:00
4aa720eecb added data structure for moench03 rectangual pixels module 019 2018-10-11 09:32:47 +02:00
d68c3b73a8 pdf manual 2018-10-05 14:30:54 +02:00
def79807f6 merge conflict resolved from 4.0.0 2018-09-28 16:28:21 +02:00
eb89d12f41 updated readme and eiger_short 2018-09-28 15:09:31 +02:00
c477970cf0 manual updated 2018-09-28 11:47:25 +02:00
03ae32dcf3 updated manuals 2018-09-27 18:32:20 +02:00
5a394c080f updated release 2018-09-27 18:29:33 +02:00
e631414526 updated version 2018-09-27 18:23:08 +02:00
d2bce7e372 updated release.txt 2018-09-27 18:21:48 +02:00
f9b95b63eb gotthard server: made gotthard server readout only via udp, readframe just waits for acquisition to be done, does not allocate ram, receiver: removed positions hardcoded in 1d, should be 2d for all 2018-09-27 18:20:03 +02:00
c2db073d5e receiver and client: changed xcoord to row and ycoord to column, zcoord to reserved 2018-09-26 15:03:04 +02:00
970d448e73 receiver: using namespace std removed from all the headers and the bug fixes for that for hdf5 2018-09-26 10:53:45 +02:00
b236c14a66 Merge branch '4.0.0' of github.com:slsdetectorgroup/slsDetectorPackage into 4.0.0 2018-09-25 18:01:02 +02:00
80c0d4e10e gui: bug fix advanced tab (network and trimming) was a mess 2018-09-25 18:00:21 +02:00
46db575cc4 updating release.txt 2018-09-25 17:30:38 +02:00
6f0c505c01 Merge branch '4.0.0' of github.com:slsdetectorgroup/slsDetectorPackage into 4.0.0 2018-09-25 14:24:26 +02:00
06d698166f updated dicsard commands in RELEASE.txt 2018-09-25 14:23:22 +02:00
5a139d70b5 gotthard and jungfrau server binary updated for API 2018-09-25 14:08:34 +02:00
33d1b11279 jungfrau server updated for API version change 2018-09-25 14:04:54 +02:00
b163180d6f updating API versions 2018-09-25 14:02:22 +02:00
cab9dff225 Merge branch '4.0.0' of github.com:slsdetectorgroup/slsDetectorPackage into 4.0.0 2018-09-25 13:55:42 +02:00
7d8188fc11 gotthard server binary updated: config file not read a second time after detector start up 2018-09-25 13:55:26 +02:00
64229ca32b changed operator() to const 2018-09-25 11:20:44 +02:00
ae8678cdc2 New Zmq header staructur implemented and works, still different number of pixels in the GUI should be fixed (but it does not crash) 2018-09-25 09:36:47 +02:00
4aa0d26f26 gotthard server: trying to resolve roi problem that is only affected by latest firmware 2018-09-21 17:29:43 +02:00
c52025dd7c manual 2018-09-21 12:04:33 +02:00
9f84bf7175 gui: crashing when using roi fixed 2018-09-20 18:10:10 +02:00
235002cdd4 gui: fixed title height 2018-09-20 14:48:36 +02:00
c784f0f539 client: moved shortenable to roi in reciever, roi not yet written in master file 2018-09-19 17:35:26 +02:00
961489edb1 bugfix gotthard server and client to set roi and disable it, problem still exists with frame numbering between roi modes but can only be fixed in firmware 2018-09-18 18:02:01 +02:00
255931bbde release.txt: no overflow is the defaulkt option and not the overflow option 2018-09-18 10:28:49 +02:00
781152a772 slsDetectorSoftware bug fix: gappixels for x initialized wrong 2018-09-17 18:13:26 +02:00
7b4910ee87 branch 2018-09-17 14:59:08 +02:00
021212372b root converter 2018-09-17 14:54:19 +02:00
59cb9c84c2 bug fix slsdetectorgui: xcoord and y coord are actually col and row indices 2018-09-17 14:35:31 +02:00
e8612a481c receonstruction 2018-09-17 12:47:18 +02:00
d67b4765ea Removing redundant null byte from end of json header 2018-09-17 12:32:33 +02:00
8773de93e9 server first 2018-09-17 11:03:31 +02:00
ef20fa6f3c start documenting cbf converter 2018-09-14 18:05:28 +02:00
19e7ced332 moench zmq process implemented - command implementation is missing 2018-09-13 16:07:43 +02:00
f288390255 Zmq communication uses additional headers, moench processing fixed 2018-09-11 17:05:11 +02:00
30e060b3b1 gap pixels basics 2018-09-04 11:16:31 +02:00
29ba9ae6f7 some updates for 4.0.0 2018-09-03 16:34:06 +02:00
2b2b53f598 update 2018-09-03 13:57:21 +02:00
1ebb07198a deadtimesubperiod 2018-08-31 21:36:38 +02:00
ed0b22b500 updated binaries 2018-08-24 13:18:51 +02:00
548036a602 selective merge from branch 4.0.0 conflict fix 2018-08-24 13:12:55 +02:00
1b55fdad86 merged selected patches from 4.0.0 branch 2018-08-24 13:10:16 +02:00
14c899e7cf removed some manual warnings 2018-08-24 12:34:06 +02:00
b3d4e90f7f sls_detector_software is obsolete, conda packet sls_detector_lib or sls_detector_gui 2018-08-23 16:52:52 +02:00
cedd275892 conflict fix, minor 2018-08-23 16:24:17 +02:00
588037fd18 updated release version 2018-08-23 16:23:24 +02:00
1700d9884a Updated release.txt, minor indentation 2018-08-23 16:08:24 +02:00
e0b8fb3609 updated manuals, jungfrau server (reqd firmware vversion) 2018-08-23 15:52:12 +02:00
b7f62fcd47 updated release.txt 2018-08-23 13:07:38 +02:00
5b6ec303d7 manual api mainclient fix for enum FAIL 2018-08-23 13:00:49 +02:00
cea6c30ded updating release.txt, version API 2018-08-23 12:48:08 +02:00
0781344117 updating binaries 2018-08-22 19:00:21 +02:00
63c130a380 client:updated users class and release.txt 2018-08-22 18:08:35 +02:00
7945d15beb client: updating release.txt, updating command line help, catching slsDetectorUsers exception from multislsdetector constructor 2018-08-21 18:49:29 +02:00
4e446f1f39 eiger server: changed subperiod to subdeadtime, changing subexptime or subdeadtime sets subperiod in eiger server 2018-08-17 13:45:09 +02:00
83600fcb15 Added data structure for moench02 dynamic gain switching 2018-08-17 12:29:07 +02:00
2a28333a96 jungfrau server: allow check version in update mode 2018-08-16 15:09:29 +02:00
830f92dedc client and receiver: silent mode put into shared memory, works properly now 2018-08-15 19:51:04 +02:00
87e8333dfd slsDetectorSoftware & eiger server: fixed coordinates in 2 d, but switch to row (x), col(y); numdetx and numdety sent to all receivers now, likely bug fix virtual file linked in master for 1 mod jungfrau; xccoord and y coord calculated at setdetector pos and given to listener 2018-08-15 19:02:16 +02:00
b3ccd5e1a1 slsReceiverSoftware: bugfix double acquire did not write parameter file cuz vector.push_back always never clearing when closing current file 2018-08-14 19:11:52 +02:00
f0ac49190a slsReceiver:trying to get deactivate to work 2018-08-14 15:06:06 +02:00
921ae01bbe jungfrau module data, fixel moench02 for jctb and jctb server actualized for both buses 2018-08-13 16:27:36 +02:00
fa175ac934 eiger server: updated binaries 2018-08-10 19:14:52 +02:00
0018fa46f8 slsDetectorSoftware: Eiger server, added 3 commands, measuredperiod,measuredsubperiod, status trigger. measured period is in 10ns in det server, status trigger reads reg,sets bit and unsets bit 2018-08-10 19:14:05 +02:00
c934e92a41 Merge branch 'mainexceptions' into developer 2018-08-10 17:10:15 +02:00
da4253fe13 Exception handling from constructors for slsDetector and multiSlsDetector, zmqsockets deleted first in multi freeshm/constructor, removed unnecessary exceptions from exceptions list, replaced in slsDetector socket assign from NULL to 0 2018-08-10 17:07:29 +02:00
3cab1bc0fe minor cleaning of ZmqSocket 2018-08-10 14:34:59 +02:00
d74a8368b8 commented find pkg png 2018-08-10 14:11:16 +02:00
39ebd81230 Zmqsocket merge with Erik's (removing header message) and mine(socketdescriptor safe destruction in constructor exception) 2018-08-09 18:21:30 +02:00
823c855ef4 Zmqsocket merge with Erik's (removing header message) and mine(socketdescriptor safe destruction in constructor exception) 2018-08-09 18:19:47 +02:00
7fadf4feb4 Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-08-09 18:15:59 +02:00
f86578cfc3 minor fix 2018-08-09 18:15:35 +02:00
a0512a01d5 Exceptions: zmq socket class descriptors made into its own class for auto destruction upon construction exception, similarly for other try blocks. slsDetector and multislsdetector left to do 2018-08-09 18:12:56 +02:00
bdd37fa7c2 commenting zmq detail 2018-08-09 17:58:55 +02:00
a96a019435 string lenght 2018-08-09 17:46:07 +02:00
dd3f4aa81d switched from zmq_msg_revc to zmq_recv 2018-08-09 17:40:04 +02:00
1102153d2b Exceptions handling in constructor for genericSocket, created object to handle both socket descriptors upon throwing exception in constructor (as raw pointers wont get destructed automatically) 2018-08-09 15:43:56 +02:00
ab7e63c20f Moved sls_detector_exceptions to sls_receiver_exceptions & its consequences 2018-08-08 15:43:29 +02:00
f1333c7a90 Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-08-08 14:47:22 +02:00
e77cdb35dd socket: refactored genericsocket a bit to make socketdescriptor readable 2018-08-08 14:47:07 +02:00
52b1e98726 merge 2018-08-08 12:06:14 +02:00
df75fef6f6 reordered moenchExecutables 2018-08-08 11:27:46 +02:00
44fdc46c11 some changes in the moench executables 2018-08-08 10:23:35 +02:00
147194e8af slsDetector: connect stop socket in checkonline so that it does not stick to its initialized default file descriptor zero (which gets closed upon socket deletion) 2018-08-03 14:54:32 +02:00
05055eb283 slsReceiver: deleting slsReceiverUsers object before calling start() gives seg fault 2018-08-03 09:32:31 +02:00
0dc1e10bd3 slsDetectorSoftware: order of zmq deletion in multi destructor to first because api using zmq to get data will need to be deleted first 2018-07-30 18:51:18 +02:00
e38e500e16 manual example api: fixed the makefile include 2018-07-30 18:36:49 +02:00
134f13fc52 slsDetectorSoftware: back to original multi threading setTimer (removed parallelCallDetectorMember) due to change in function signature 2018-07-30 18:00:18 +02:00
41fb6c26a2 slsDetectorSoftware: from 3.1.4: being able to get timer values individually from the users class since gotthard 25um master and slave will have different delay values 2018-07-30 17:47:37 +02:00
73fcef5f6d slsReceiverSoftware: bitset storage in case the libarary changes contiguous representation, also changed hdf5 representation from 512 byte (to_string) to just passing char* to keep at 64 bytes 2018-07-30 12:05:22 +02:00
e9cc91698e Merge branch '3.3.0-rc' into developer 2018-07-26 13:46:58 +02:00
6213b5e07a gotthard server and slsDetectorSoftware: more accuracy when converting from double to int64_t by adding 0.5, improved clock precision of gotthard from 32.1 to 32.007729 2018-07-26 13:46:41 +02:00
08aacf76ac Merge branch '3.3.0-rc' into developer 2018-07-23 15:03:13 +02:00
711e0d771e slsDetectorSoftware: users setSettings(-1) gives undefined settings. fixed 2018-07-23 15:03:00 +02:00
2fc98c7a54 updated binaries, eiger jungfrau 2018-07-18 15:04:47 +02:00
3b6ead7783 slsReceiver: HDF5: unlimited max dimension in x (#numImages), x dim gets incremented by #frames when it gets an extra image, removed virtual_ naming in parameter names, small cased parameter names 2018-07-18 14:05:31 +02:00
40c96b5562 Updated Makefiles, Cmakelists.txt to compile slsMultiReceiver properly and with HDF5 and fixed compiler warnings 2018-07-18 12:29:19 +02:00
6bb7195a2c slsReceiver: master file limited by size of 1000 bytes 2018-07-17 15:41:43 +02:00
53423a42ac slsDetectorSoftware eiger and jungfrau server version API updated 2018-07-10 15:04:59 +02:00
c2b1eef75c slsDetectorSoftware: removed warnings, and made compilable via make 2018-07-10 14:58:18 +02:00
f5a86bbfe1 slsReceiverSoftware: removed hdf5 static cpp file 2018-07-10 12:31:55 +02:00
9af0ec74b6 slsReceiver: updated help in slsMultiReceiver 2018-07-06 16:32:42 +02:00
45de361b22 slsReceiver: added an executable slsMultiReceiver to have the option to have one process create multiple child processes for multiple receivers with configurable tcp port and callback enable 2018-07-06 16:26:29 +02:00
260f237990 slsDetectorSoftware, changing shm name prefix for environment 2018-07-06 15:41:09 +02:00
37dd5fb902 slsDetectorSoftware: sharedmemory, appends environment variable of SLS_SHM_NAME to shm name 2018-07-06 15:30:06 +02:00
ecd0c810ca slsDetectorSoftware: Sharedmemory removed private methodf or removeshm, removed static isexisting as the usecases are all member method 2018-07-06 15:18:34 +02:00
7c29327b47 saving bit field in hdf5 as string of 512 bytes instead of 512 bits for the time being, will be updated when a better option is figured out 2018-07-06 12:00:35 +02:00
c366e94a96 bit field for missing packets, added commands r_padding and r_discardpolicy, hdf5 bitfield metadata left to do 2018-07-05 13:47:20 +02:00
ca8cb33569 Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-06-29 14:53:07 +02:00
7db6b7bca8 slsDetectorSoftware: command line should print same file when loading or saving to trimbits file 2018-06-29 14:52:52 +02:00
7e16f3ebeb Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-06-29 13:47:48 +02:00
233c145791 manual 2018-06-29 13:47:34 +02:00
d7cc9fc023 slsDetectorSoftware: moved offsets from multi shm to sls shm, and moved updated offsets and createthreadpool to end of addmultipledetectors, so that it is not done each time per detector 2018-06-29 12:21:15 +02:00
ed1135566a slsReceiver: maximum frames per file written to master files for both binary and hdf5, note the version number change for these master file format 2018-06-28 18:30:34 +02:00
3595c586d4 slsDetectorSoftware: slsDetectorUsers: added burst_trigger 2018-06-28 18:10:37 +02:00
11de3dfde2 slsDetectorSoftware: trimen in multi does not check for each value in slsdet, fixed 2018-06-28 18:06:53 +02:00
14d227f8db jungfrau server fix (3.1.3): delay after trigger set at testbus 2018-06-28 16:19:19 +02:00
144bd7124b updated clean shared memory script if anyone is using it 2018-06-28 10:48:42 +02:00
f6660c0dac slsDetectorSoftware: updated shared memory to have _sls_ instead of _single_, and updated versions 2018-06-28 10:37:46 +02:00
73ac8bab38 commenting out printout 2018-06-28 08:58:34 +02:00
d76568d6d9 jungfrau server, merge fix binaries 2018-06-28 08:55:14 +02:00
72f47b2375 Merge branch 'developer' into sharedmem 2018-06-28 08:51:25 +02:00
3114512c3f sharedmem: sls_detector_acquire multi and sls index scaning, error message when trying to acquire from a differet multi shm id, updateoffset and create threadpool after adding slsdetectors 2018-06-27 17:20:05 +02:00
95254619c6 sharedmem: config, sethostname call freesharedmemory and call setupmulti, freesharedmemoy(nonstatic) also cleans up member variables to make it consistent with shm, sharedmemory pointer set to 0 in non static free shared memory to be able to continue within application, sethostname frees memory only if detectors found in shm, add calls addmultipledetectors, replace replaces a detector in sls detector level, should also take lines in config file that has comments in between while ignoring the comments, sethostname in slsdetector also updates client, adding object in sls when creating new shm complains if shm existed and must delete again, removed remove commands 2018-06-27 15:38:03 +02:00
a0016cb005 sharedmem: working, need to add replace 2018-06-27 10:05:05 +02:00
0b140111b3 sharedmem: more modifications on command line to remove features such as id, remove, add 2018-06-26 12:10:50 +02:00
d7831f6c64 sharedmem: command line refactor, fixing to do 2018-06-25 19:18:00 +02:00
a97b725f43 sharedmem: command line done, fixing to do 2018-06-25 19:14:41 +02:00
69c71e48f6 sharedmem: updated slsdetector, changes left 2018-06-25 18:19:19 +02:00
54fc63dd55 manual 2018-06-22 15:28:33 +02:00
5e9871720b sharedmem: slsdetector being modified intensively 2018-06-21 18:26:50 +02:00
55517e6d4c sharedmem: done with multi .h, sls and command line left 2018-06-20 17:12:48 +02:00
2853f97fe7 sharedmem: done with multi, sls and command line left to do 2018-06-20 14:06:10 +02:00
fc0f8ef9da more changes for multi for shared mem 2018-06-19 16:38:18 +02:00
99bf6446fe shared mem in the middle of modifying multi 2018-06-18 17:51:30 +02:00
283dfa2b05 manual 2018-06-13 11:39:52 +02:00
5316fed5d4 manual 2018-06-13 11:38:45 +02:00
dda013a85b manual 2018-06-12 19:02:04 +02:00
2eecf43fbb multi sharedmemory, basic done, left to go thru whole file, and slsDetector left to do 2018-06-12 18:00:26 +02:00
eba0fa277d manual 2018-06-12 15:52:19 +02:00
e6e3561dcb manual 2018-06-12 12:26:38 +02:00
b294b3e8b1 in progress with integratign new shm in multi 2018-06-12 12:14:55 +02:00
025e7b8f44 manual 2018-06-08 13:48:29 +02:00
aa25d86310 manual 2018-06-06 19:25:06 +02:00
a7551cca4e Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-06-06 16:53:10 +02:00
8e79f9094a manual 2018-06-06 16:52:51 +02:00
2dece5c635 jungfrau server: reading power status (fixed in firmware) 2018-06-06 16:15:30 +02:00
24db58e615 jungfrau server required firmware version on server changed from 0x2018 to 0x18 2018-06-06 10:23:06 +02:00
bab7d8e3fb Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-06-01 11:05:03 +02:00
2339fb2a0e slsDetectorSoftware: bug fix, changing dr didnt change the databytesinclgappixels immediately 2018-06-01 11:04:54 +02:00
378392c0f5 fixed return storage cell 2018-05-29 18:10:36 +02:00
fcde40b854 minor 2018-05-29 17:26:27 +02:00
ceed0eaa9b generic call for hostname and sgetDetectorsType 2018-05-29 16:59:55 +02:00
e3088d822f removed commented section 2018-05-29 16:09:09 +02:00
27ebd9c713 applying callDetectorMember in getTimerLeft 2018-05-29 16:08:08 +02:00
f33b3cdc79 Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-05-29 15:55:42 +02:00
b0ea458d3a slsReceiver: hdf5 use relative links now, fill -1 also for data file creation (for deactivated ones) 2018-05-29 15:55:33 +02:00
7e2f2cd31b Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-05-29 15:52:04 +02:00
6cf7bf2e06 using callDetectorMember for portType 2018-05-29 15:51:55 +02:00
fc7ae98eee using parallel call for checkCompatibility 2018-05-29 15:45:13 +02:00
542dda8ece slsReceiver: deactivated no longer writes 0xFFFF, creates empty files 2018-05-29 14:32:14 +02:00
0f6cb4dc41 Merge branch 'developer' into gotthardversioning 2018-05-29 12:14:59 +02:00
ecc970bc73 gotthard server: check client api version done 2018-05-29 12:14:46 +02:00
15aaa93130 Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-05-28 19:17:37 +02:00
34b659fa15 first draft of gotthard versioning 2018-05-28 19:17:06 +02:00
cf8b0de433 slsReceiver, slsDetector, eiger and jungfrau server: client checks firmware and software an dreceiver compatibility for each time shared memory is cleaned up 2018-05-28 19:11:34 +02:00
32c1a45e11 minor 2018-05-28 18:46:08 +02:00
da1b6ad62d more generalization in multi 2018-05-28 17:12:19 +02:00
49d6dcb6e2 templated functions in multi 2018-05-28 13:23:30 +02:00
22ef1cee8b Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-05-28 12:22:35 +02:00
9d3fdaaadc minor clean 2018-05-28 12:22:25 +02:00
06f84585af compareRetrun.. to minusOneIf.. 2018-05-28 11:55:11 +02:00
a970bacbe5 slsDetectorGui: JCTB does not kill itself for wrong settings anymore 2018-05-28 11:29:35 +02:00
5be2979fff slsReceiver: fix to default number of frames per file, also set to 10k 2018-05-28 11:18:13 +02:00
4765849613 minor 2018-05-25 17:09:23 +02:00
05ed8dca4e more cleanup 2018-05-25 17:02:01 +02:00
4f600f3129 even more 2018-05-25 16:32:40 +02:00
4b72d685f3 migrating more multiSlsDetector calls to the generic function 2018-05-25 15:39:28 +02:00
bbd7e7906a replacing pulsechip with a generic algorithm 2018-05-25 15:10:57 +02:00
f735baf9d7 more cleaning 2018-05-25 12:21:36 +02:00
ad14381ab4 replacing ReceiverReadTimer, Frequency calibratePedestal 2018-05-25 11:44:39 +02:00
7702865409 replacing slsDetectorMember calls with generic function 2018-05-25 11:38:59 +02:00
2f8c1b453e renaming generic call 2018-05-25 11:06:33 +02:00
883317dd28 replaced logic in getSettingsFile 2018-05-25 10:46:36 +02:00
8ed67119b9 replacing logic in getLastClientIP and getReceiverLastClientIP with generic function 2018-05-25 10:39:34 +02:00
f45e2b4ab9 changed type of getCalDir to std::string 2018-05-25 10:30:02 +02:00
abdf4b1ada converting to Qstring 2018-05-25 10:19:09 +02:00
228d624d8f general function for returning first or concatenated string 2018-05-25 10:01:51 +02:00
e0c9805ee8 clang-format on multiDetector 2018-05-25 08:23:59 +02:00
4eef81fbe9 clean up of multiSlsDetector::getSettingsDir 2018-05-24 18:14:02 +02:00
301600e720 chaning return type of getSettingsDir and setSettingsDir to std::string 2018-05-24 17:47:12 +02:00
4d4e4a4ce7 first draft of versioning of client 2018-05-24 16:58:07 +02:00
ad3ac2cdee Merge branch 'developer' into versioning 2018-05-24 16:56:39 +02:00
b10abd07ee first draft of api versioning with client 2018-05-24 16:51:21 +02:00
e65b416215 cleaning up sgetDetectorsType 2018-05-24 16:32:20 +02:00
24df69d57f cleaning up getHostname 2018-05-24 16:21:48 +02:00
183c306166 modify string name in multi checkOnline 2018-05-24 16:03:17 +02:00
1dfdcfcb7e finished removing using namespace std 2018-05-24 15:24:01 +02:00
212218396a removal of using namespace std from theadFiles 2018-05-24 14:47:45 +02:00
b78b8425fd ifstream and ofstream to std:: 2018-05-24 14:27:01 +02:00
12832a3a96 adding more std:: in slsDetectorActions.h 2018-05-24 14:24:10 +02:00
621b7cfb2a adding std:: where needed 2018-05-24 14:11:30 +02:00
a67d9e60da removing more using namespace std 2018-05-24 13:47:48 +02:00
d71008bd10 removing using namespace std from headers in slsDetector 2018-05-24 12:18:25 +02:00
a154d0a088 slsDetectorUsers: added setthreshold without trimbits for eiger 2018-05-23 16:39:52 +02:00
c5262458d5 eiger and jungfrau server, updated virtual versions with start and stop acquisition 2018-05-23 15:28:39 +02:00
cb635d800a eiger server: added overflow, noverflow to the flags to show/not show saturation when there is overflow in any of the single subframes in 32 bit mode 2018-05-22 18:43:13 +02:00
0ed82d4ef7 settingsdir for gotthard, jungfrau, propix, moench deleted, as these are default values in server 2018-05-22 15:13:26 +02:00
bdf9373e0d gotthard and jungfrau servers do not need to send whole module for sending settings anymore 2018-05-22 14:52:53 +02:00
3f61206289 Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-05-22 10:59:20 +02:00
e19a27bf62 eiger server: bug fix for saving trimbits to file, was copying from destination to source in server 2018-05-22 10:59:04 +02:00
a1831c38ed replace lostFocus with editingFinished for QT 2018-05-18 17:05:35 +02:00
c4b8c6385f Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-05-18 16:36:29 +02:00
f393751771 r_framesperfile configurable to have infinite frames in file with option 0 2018-05-18 16:35:50 +02:00
94ce042401 slsReceiver, fixed virtual hdf5 last row random values bug 2018-05-18 14:51:18 +02:00
49b8024c43 added logger.h to publig headers 2018-05-18 14:15:17 +02:00
8b39443197 slsReciever, slsDetector: configurable number of images per file, removed all the receiver threads from using generalData->maxframesperfile, yet to do: infinite images, bug fix, virtual hdf5 has -1 for all pixels in last image 2018-05-18 13:47:10 +02:00
dcce66ee9f slsReceiver: debug, insignificant 2018-05-17 15:57:16 +02:00
563b1bb8b7 slsDetectorGui:added subexptime and subperiod to gui 2018-05-17 15:34:35 +02:00
b4d9a6a09d slsReceiver, slsDetector(eiger server), client: added sub period to receiver, fixed eiger subperiod updates to client, added subperiod and subexptime to users, fixed hdf5 warnings 2018-05-17 12:34:18 +02:00
51fd9ed423 added subperiod in command line 2018-05-16 09:13:43 +02:00
23d73ae5ae jungfrau server: programming allowed only in -update or -dev mode, -dev strictly for Carlos, in update mode one can only do programming 2018-05-11 13:42:46 +02:00
8986b008dd jungfrau server: programfpga: handling bus error, and printing a message for user to restart servers when done in client command line 2018-05-09 15:57:18 +02:00
30f1e6ad3f eiger and jungfrau server, updated binaries 2018-05-09 15:28:34 +02:00
02cc284422 added binaries 2018-05-09 15:27:28 +02:00
e6c0304af1 jungfrau server: programfpga: stop server also mapped during a reset, binaries added 2018-05-09 15:16:04 +02:00
16fe4d305e Merge branch 'progfpga' into esrfchanges 2018-05-09 11:21:07 +02:00
68e9648854 created programming mode, where only programming is allowed, one has to restart servers afterwards 2018-05-09 11:20:54 +02:00
0417a7e97d fixing warnings 2018-05-07 10:44:00 +02:00
6653cc9cb1 slsDetectorSoftware: jungfrau program fpga: mkstemp being used instead of creating file at source location 2018-05-03 11:22:02 +02:00
a37bbc50fe updated server binaries 2018-05-02 17:48:46 +02:00
5b01b4cbd8 Merge branch 'developer' into esrfchanges 2018-05-02 16:57:03 +02:00
d3a0319863 esrf changes: Listener, DataProcessor, DataStreamer, Fifo, ZmqSocket constructors return an exception when it fails 2018-05-02 16:49:27 +02:00
fdd19bc316 slsReceiver: udp socket buffer size, additional prints 2018-05-01 12:01:33 +02:00
1152555663 esrf changes: rx_udpsocksize sets/gets udp socket buffer size to be set, rx_realudpsocksize gets the real udp sock size buffer. At receiver config and at rx_udpsocksize command, dummy udp sockets created to know if set udp sock size fails (if fail, set to previous value), and also to get the real udp sock buffer size 2018-05-01 11:55:48 +02:00
9ae1289616 Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-04-27 15:14:19 +02:00
3baa677a2e minor changes by Anna 2018-04-27 15:14:09 +02:00
516336963e [CTB] - Modified memory map address shift for the interface between FPGA and Blackfin SOM. Shift has to be set to 1 since the basic AMC data transfers is 8-bit and not 16-bit. 2018-04-27 15:11:37 +02:00
99281e2690 esrf changes: previous commit compile 2018-04-26 16:43:07 +02:00
501d2478a5 Merge branch 'jungfraunew' into esrfchanges 2018-04-26 16:37:33 +02:00
08b6eb78c5 gui: always mask out gain bit for jungfrau, even if missing packet 2018-04-26 16:32:03 +02:00
d096a5efeb jungfrau server: default storage cell start is 0xf 2018-04-26 16:30:27 +02:00
9f24bb0a98 jungfrauserver: bug fix: settings read correctly, forceswitchg2 mainly 2018-04-26 15:49:09 +02:00
173d8f740e esrf changes: slsReceiver: better checking of socket buffer pars. and warn on failures
* not done. The 'setsockopt(SO_RECVBUF)' system call cannot set the socket buffer
  size lager than the specified in net.core.rmem_max. The requested value
  was 2 GB (commit 3b0e2e6), which is far too large for this application,
  so it was restored to the acceptable 100 MB value.

* The syscall does not fail if the requested buffer size is larger than
  net.core.rmem_max. Use 'setsockopt(SO_RECVBUFFORCE)' to actually force a
  value larger than the system limit, which can be done if run in a
  privileged context (capability CAP_NET_ADMIN set).

* The real value is read with 'getsockopt(SO_RECVBUF)'. If it
  corresponds to twice the requested value (see 'man 7 socket'), it is
  printed in green, otherwise it is signalled in red.

* The 'setsockopt(SO_RECVBUFFORCE)' syscall removes the need to write to
  /proc/sys/net/core/rmem_max, so this was was suppressed in the
  'UDPStandardImplementation' constructor.

* The test on EIGER detectors before setting the system
  buffers was removed. Was there for 9m/2m eiger, but one can take care of
  memory requirements using a customizable max socket buffer size(only with
  permissions). to be implmented later.

* The file /proc/sys/net/core/netdev_max_backlog is first read by the
  receiver to check is the current value is OK. If it is not, the receiver
  directly writes the good value into the file (instead of delegating to
  the system shell), printing a red error message if there is an access
  error (non-privileged user).
2018-04-26 15:22:44 +02:00
16428f3828 esrf changes: CMake: support to be added and installed as a sub-project:
* Configure zmq as global imported library in slsReceiverSoftware
* Install zmq, necessary if linking to slsReceiver library
2018-04-25 18:24:08 +02:00
1247f760f2 virtual hdf file mapping fix for fnum-1 images 2018-04-25 17:39:09 +02:00
11475316fd eiger binary updated 2018-04-25 17:11:52 +02:00
a09c2e38a3 storage cell fix in gui for non jungfrau detectors 2018-04-25 17:03:25 +02:00
1c49fbb090 virtual hdf file mapping fnum-1 images, fixed 2018-04-25 16:52:14 +02:00
b5909044f6 slsReceiver: remove static members in Listener, DataProcessing and DataStreamer:
* Needed when more than one receiver is created by process
* Replace NumberofXxxx by explicit index in constructor
* Remove Error[Mask], use return value in constructor signature
* Replace RunningMask by individual Running flags
* Remove obsolete Mutex objects
2018-04-25 09:24:39 +02:00
62a88dadba Merge branch 'jungfraunew' of github.com:slsdetectorgroup/slsDetectorPackage into esrfchanges 2018-04-23 17:45:12 +02:00
e0bb7d74f4 esrf changes: eiver: initialise global optind variable before calling getopt_long: Needed when multiple receivers are instantiated in the same process 2018-04-23 17:43:54 +02:00
d09a1a0a95 esrf changes: users class added API functionality getNMods 2018-04-23 17:38:40 +02:00
d38108e527 esrf changes: slsReceiver: extend CircularFifo to support blocking/non-blocking transfers:
* Add blocking push (for performance) and non-blocking pop (for symmetry), default to blocking operations
* Fix memory fault if Fifo allocation fails
* Fix fifoFree initialisation to fifoSize elements (was fifoSize - 1)
2018-04-23 17:32:40 +02:00
c9675d111a jungfrau server: fixed the settings for gain2 stages 2018-04-23 16:11:04 +02:00
8f9c657fa0 esrf remove changes: VRS to interpolate, not copy 2018-04-23 14:41:01 +02:00
c35203ebfb fixed gitinfo 2018-04-23 14:19:55 +02:00
1069bf5979 esrf changes: slsDetector: fix setThresholdEnergy and slsDetectorAnalysis file read:
* slsDetector: Proper cleanup and return when no interpolation is possible
 * slsDetectorAnalysis: treat CAL DAC as irrelevant when interpolating settings for two energies(do not abort if different), also including VRS in copying
2018-04-23 13:31:05 +02:00
cac913831c esrf change: CMake: add support for GCC versions older than 6.1 2018-04-23 12:07:13 +02:00
03e781a0ac subperiod for eiger implemented in client side 2018-04-23 11:03:23 +02:00
a5a3d4bc78 added jungfrau server binary 2018-04-13 17:42:04 +02:00
bc70cc3a26 jungfrau server: added storage start, connected auto_comp_disable, changed adcphase, added ADC_PORT_INVERT_VAL, ADC_OFST_HALF_SPEED_VAL, minimum exposure time 2018-04-13 17:33:46 +02:00
e024774323 added storage cells 2018-04-13 15:05:43 +02:00
bdcccb7732 jungfrau server, changed api, fixed regdefs 2018-04-13 11:43:30 +02:00
5ff2e86060 jungfrau server configuring ASIC timer at server startup 2018-04-13 11:07:22 +02:00
70e193b0fd valgrind leak from tasks not deleting funcs 2018-04-13 09:35:18 +02:00
c3a9d3c342 fixed a valgrind error 2018-04-12 17:38:15 +02:00
d3c807975f adding a semaphore to handle end of acq 2018-04-12 15:50:27 +02:00
1c5250ea7f warning 2018-04-11 17:55:42 +02:00
7cb3b3f8de Merge branch 'developer' into zmqhandler 2018-04-09 18:21:59 +02:00
7cd35f24b8 added to users class receiverfifodepth, flowcontrol10g, 10gbe 2018-04-09 18:21:43 +02:00
28af3c2642 insignificant print 2018-04-09 17:44:55 +02:00
2bd8e6c166 zmq fixed to have additional json headers using rx_zmqjsonheader 2018-04-09 16:33:14 +02:00
ccdc7d22e9 gappixels also work with new zmq handler 2018-04-09 11:19:31 +02:00
3831896a78 Merge branch 'developer' into zmqhandler 2018-04-09 11:13:37 +02:00
9847729f3c gap pixels included in gui 2018-04-09 11:13:20 +02:00
0eff9e1401 debug print 2018-04-09 10:13:14 +02:00
4323a837ef Merge branch 'developer' into zmqhandler 2018-04-09 09:19:46 +02:00
649cb0aed9 added reset frames caught in to users class 2018-04-09 09:18:56 +02:00
8cf6e0cbd6 in between 2018-04-06 17:48:10 +02:00
753290b228 Merge branch 'developer' into zmqhandler 2018-04-06 12:19:16 +02:00
d28f293485 jungfrau and eiger server bug fix: module_firmware_version gets stuck as it expects an int, but should have been for module_serial_number 2018-04-06 12:15:57 +02:00
da010a03d7 added -std=c++98 to CXX flags 2018-04-04 18:07:33 +02:00
72b71f3fcd Merge branch 'developer' into zmqhandler 2018-04-04 14:57:24 +02:00
e4868671ae bugfix: users api version numbering always gives a -1. 2018-04-04 14:56:55 +02:00
61897cbd41 in between 2018-04-04 14:27:53 +02:00
9e8d3e598f added enablegappixels to users class 2018-03-28 10:41:52 +02:00
252e924f92 separated start gui button into start and stop to prevent multiple click syndrome 2018-03-27 17:49:01 +02:00
fe2ba8621b updating versioning to only have date 2018-03-27 11:00:15 +02:00
b8bdbf4da6 updaterev 2018-03-26 18:10:14 +02:00
5340b8ef24 added error mask for loading/writing config file to be caught by python 2018-03-26 18:07:10 +02:00
807189a492 Working for gotthard double modules 2018-03-26 10:30:44 +02:00
593f5b6c65 Working for gotthard double modules 2018-03-26 10:12:04 +02:00
b029f1fa26 Common mode added, working for gotthard double modules 2018-03-26 09:07:27 +02:00
14546247e4 adding a receiver callback to be able to give modified size from the callback 2018-03-22 14:34:03 +01:00
a74e8f68f7 size change in receiver call back API now streamed, gui allows smaller packet size than expected to be caught and replaced the rest with 0xFF 2018-03-21 17:08:38 +01:00
a1936cb884 updated docu 2018-03-21 09:10:11 +01:00
a36b715eab resolved conflicts from merging 3.1.1 in here 2018-03-21 09:03:31 +01:00
17c20748bc updated links in serverbin 2018-03-21 08:28:49 +01:00
d5f8a1b4e7 updated doc 2018-03-20 17:37:48 +01:00
70ce8c1653 updated doc 2018-03-20 17:35:39 +01:00
5203a0d621 updated doc 2018-03-20 16:40:56 +01:00
59ad15b54e eiger server bug fix: in 10giga mode always used the 1g ip (dhcp ip) if detectorip is before tengiga in config file 2018-03-20 16:36:45 +01:00
afac5be3c3 updated release notes 2018-03-20 12:20:15 +01:00
688dd15fe9 Jungfrau bug fix: cannot give same adcphase value to pll, updated recommended default of adcphase for half speed and quarter speed, updated client manuals for both adcphase and clkdivider 2018-03-20 12:12:38 +01:00
98752e1cdb manual 2018-03-20 11:40:37 +01:00
d59f419370 manual 2018-03-20 11:32:09 +01:00
9ba3fb9279 removed using namespace std from multiSlsDetector 2018-03-16 10:51:27 +01:00
50111bcea7 removed unused variable in slsDetector 2018-03-16 10:41:30 +01:00
ab06c33107 Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-03-15 12:27:05 +01:00
10209b75df some changes in slsCalibration for moench 2018-03-15 12:26:45 +01:00
40210ae26f jungfrauserver adcphase fix: bug was if adcphase was same as previous value, it still shifted 2018-03-14 17:20:26 +01:00
dd6301d66d updated for compilation 2018-03-14 16:19:30 +01:00
b58c3e8951 solving merging conflicts from 3.1.0 to developer 2018-03-14 15:45:35 +01:00
06cdf8ad92 overloading access operator 2018-02-28 17:34:55 +01:00
7364f674ed [JUNGFRAU] - Modified memory map address shift for the interface between FPGA and Blackfin SOM. Shift has to be set to 1 since the basic AMC data transfers is 8-bit and not 16-bit. 2018-02-22 11:15:24 +01:00
a536f8ac9b added png and Qt in CMakesList for gui 2018-02-19 17:44:57 +01:00
d48ca4a9fe merge from 3.0.1 in readme and makefle for manual 2018-02-09 14:12:27 +01:00
459b588b9f merge from 3.0.1 for gotthard 25um server start acq delay 2018-02-08 15:17:52 +01:00
8bf03a7712 Merge branch '3.0.1' into developer 2018-02-08 15:16:49 +01:00
895f8ccf81 Merge branch '3.0.1' into developer 2018-02-08 14:51:20 +01:00
a654febb7e merge from 3.0.1 parallalize dr 2018-02-07 15:48:39 +01:00
aa190fda7a merge from 3.0.1: eiger server detip and mac client updated back 2018-02-07 15:24:44 +01:00
897cbac27d merge from 3.0.1 for server binaries (adcphase,server dates, temp control, settings file 2018-02-07 11:02:36 +01:00
3da6a6df65 merge conflict removed, jungfrau server and eiger server re compiled 2018-02-05 12:33:05 +01:00
08fda2b662 in between in terms of mythen3 server, done with setdac and set power 2018-02-01 17:48:43 +01:00
6af3a6d33a Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-01-31 11:46:17 +01:00
b11b2dcfa9 in between stage 2018-01-31 11:45:34 +01:00
3782a56ef2 second My3 commit 2018-01-30 11:02:08 +01:00
e95b444908 Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2018-01-30 10:25:21 +01:00
d1ef6bf94b some fixes in the cluster finder 2018-01-30 10:24:56 +01:00
3aeb3f58d1 first mythen3Server commit 2018-01-22 14:01:46 +01:00
09a707d7ff Merge branch '3.0.1' into developer 2018-01-19 16:12:36 +01:00
f264691dc1 renamed sebastians interpolation - must be edited to avoid root 2018-01-18 18:08:55 +01:00
3854c82b90 added iterative interpolation 2018-01-18 18:07:58 +01:00
92b4b3324e first mythen3 server commit 2018-01-18 09:25:06 +01:00
ac536ebdf7 cluster finder for phoenix data (i.e. old raw data format) 2018-01-15 11:52:28 +01:00
59c0861131 Merge branch '3.0.1' into developer 2017-12-19 17:51:31 +01:00
31589ce352 added and fixed gotthard 25um file and zmq photon finder 2017-12-19 13:40:05 +01:00
7602ffc5ac gotthard on the fly to be stested 2017-12-14 17:01:28 +01:00
13078d0ef2 gotthardDataStructures added 2017-12-14 17:00:30 +01:00
9f3468bd15 Merge branch 'developer' of github.com:slsdetectorgroup/slsDetectorPackage into developer 2017-12-14 16:59:04 +01:00
b50c1d966a on the fly moench photon finder and cluster saving 2017-12-14 16:58:22 +01:00
65a91c519e Merge branch '3.0.1' into developer 2017-12-14 14:29:16 +01:00
5958cf9278 Merge remote branch 'slsDetectorCalibration/developer' into developer 2017-12-12 11:14:38 +01:00
f6e1c21137 Merge branch '3.0.1' into developer 2017-12-12 09:05:50 +01:00
d2319459df Merge branch '3.0.1' into developer 2017-12-11 18:03:01 +01:00
d6bdbf8524 Merge branch '3.0.1' into developer 2017-12-11 13:51:20 +01:00
4c0a16cd75 Merge branch '3.0.1' into developer 2017-12-11 11:13:32 +01:00
e39d0aee56 Merge branch '3.0.1' into developer 2017-12-11 10:51:28 +01:00
1e849097ea merge conflict fixed in filename bug 2017-12-08 12:09:10 +01:00
7577d03e75 Merge branch '3.0.1' into developer 2017-12-08 11:50:15 +01:00
6e876d79ee conflict merged fix, lockin in stop and startandreadallnowait, r_restreamstop moved to stop 2017-12-08 11:45:29 +01:00
4718378d0a corrected bug fix in r_restreamstop 2017-12-06 19:21:28 +01:00
24c305ec59 solved conflicts from merge of version being used to binary 2017-12-06 19:07:06 +01:00
1bf7b4a6a1 directory restuctured 2017-12-06 09:10:13 +01:00
2f3dc8d109 Merge branch '3.0.1' into developer 2017-12-06 08:44:21 +01:00
7e932bf84b Merge branch '3.0.1' into developer 2017-12-05 16:04:26 +01:00
98e09b29d5 merge conflict solved -1 in adc in gui 2017-12-05 15:39:02 +01:00
a51f4f1252 Merge branch '3.0.1' into developer 2017-12-05 14:49:32 +01:00
2d14da545d Merge branch '3.0.1' into developer 2017-12-05 13:47:09 +01:00
9150556209 merge from 3.0.1 added more to write config/paramters 2017-12-05 13:42:35 +01:00
3b684c4662 Merge branch '3.0.1' into developer 2017-12-05 13:41:26 +01:00
0ef52138e1 merge conflict sorted, removing rest 2017-12-05 11:25:10 +01:00
28211af5af Makefile for Receiver merged incorrectly sometime back, also in archived project 2017-12-05 11:23:35 +01:00
2ae5a959fe fix in receiver merge conflict (before the respos merge) 2017-12-04 18:35:57 +01:00
263d702535 Merge remote branch 'slsDetectorGui/developer' into developer 2017-12-04 16:48:32 +01:00
7512f818cb Merge remote branch 'slsReceiverSoftware/developer' into developer 2017-12-04 16:48:32 +01:00
25023f6971 Merge remote branch 'slsDetectorSoftware/developer' into developer 2017-12-04 16:48:30 +01:00
9f152ce1f3 merge conflict resolved 2017-12-01 12:44:34 +01:00
12348ac76c merge conflict fix 2017-12-01 09:20:44 +01:00
0e26734023 restreaming stop fix 2017-11-30 19:13:55 +01:00
fd64ba289e Merge branch '3.0.1' into developer 2017-11-30 19:07:21 +01:00
6f3898441e merge conflict from 3.0.1 to restream stop from recieveR 2017-11-30 19:05:47 +01:00
5b88203bd9 merge conflict from 3.0.1 to restream stop from recieveR 2017-11-30 19:05:35 +01:00
385e6714cc merge conflict from 3.0.1 to restream stop from recieveR 2017-11-30 19:05:19 +01:00
1edb41242c ensure gui gets measurement finished after dummy packet received from receiver/ext process 2017-11-29 15:22:10 +01:00
397344a264 Merge branch '3.0.1' into developer 2017-11-29 12:13:09 +01:00
e17e4c3171 Merge branch '3.0.1' into developer 2017-11-28 18:50:27 +01:00
8bba57e77d fix to not have sls_receiver_defs in zmqSocket.h incldue 2017-11-28 16:32:15 +01:00
7c1423d654 zmqip fix to restart reciever streaming form command line, fix to not have sls_receiver_defs in zmqSocket.h incldue 2017-11-28 16:31:43 +01:00
8388d1f503 using file index from zmq 2017-11-28 14:45:48 +01:00
6a41b5ce3a using file index from zmq 2017-11-28 14:45:29 +01:00
1c606df752 using file index from zmq 2017-11-28 14:45:01 +01:00
1e85482d09 make updated 2017-11-28 11:30:23 +01:00
a89847538d merge ocnflict for white background 2017-11-28 11:29:15 +01:00
130f3d2e6f Merge branch '3.0.1' into developer 2017-11-28 11:18:43 +01:00
57fc89a6bb comment users 2017-11-28 10:51:05 +01:00
f49998ccd9 Merge branch '3.0.1' into developer 2017-11-28 10:35:24 +01:00
41f24489bc zmqip in users fixed 2017-11-28 10:33:40 +01:00
addf964901 Merge branch '3.0.1' into developer 2017-11-28 09:37:09 +01:00
bca7c649d7 Merge branch '3.0.1' into developer 2017-11-28 09:37:09 +01:00
747e9af431 Merge branch '3.0.1' into developer 2017-11-28 09:26:55 +01:00
620f7651a0 Merge branch '3.0.1' into developer 2017-11-28 09:24:57 +01:00
4466213882 makng the zmq work without external flag 2017-11-27 17:06:27 +01:00
ca19993149 makng the zmq work without external flag 2017-11-27 17:06:18 +01:00
e29371ca8d makng the zmq work without external flag 2017-11-27 17:06:11 +01:00
3439ccbec9 updates for merge for r_readfreq without reciever 2017-11-23 18:30:48 +01:00
a0c9018455 Merge branch '3.0.1' into developer 2017-11-23 18:24:34 +01:00
f0431bd873 Merge branch '3.0.1' into developer 2017-11-23 18:24:33 +01:00
ab5229bcbf bugfix zmq ip was being overwritten 2017-11-23 17:48:30 +01:00
585661412c Merge branch '3.0.1' into developer 2017-11-23 17:20:13 +01:00
935fecefde copy zmq ip even if receiver not online, else it is lost 2017-11-23 17:18:40 +01:00
2c276db579 solved merge conflict in changes to use ZmqSocket.h externally 2017-11-23 16:35:31 +01:00
a57e8edd88 jctb setting dr correctly 2017-11-23 16:15:38 +01:00
2ac170db98 removed data streaming shutdown from command line to allow external gui 2017-11-23 11:52:46 +01:00
ab93835ce2 merge conflict to include datastreaming in client comment 2017-11-23 10:29:08 +01:00
43140811bd one measurement in users class 2017-11-23 10:25:35 +01:00
34908edd6a Merge branch '3.0.1' into developer 2017-11-23 10:22:03 +01:00
29f3387d73 Merge branch '3.0.1' into developer 2017-11-23 09:34:22 +01:00
a1d325a115 Merge branch '3.0.1' into developer 2017-11-23 09:20:22 +01:00
3034cf87d0 changes that might be reverted in detser 2017-11-23 09:20:20 +01:00
0b45d73e0c Merge branch '3.0.1' into developer 2017-11-22 18:02:45 +01:00
c0bfe46aa1 enabling client in developer user api 2017-11-22 18:00:41 +01:00
26829585dc Merge branch '3.0.1' into developer 2017-11-22 17:47:28 +01:00
c0a1f83691 Merge branch '3.0.1' into developer 2017-11-22 17:43:49 +01:00
fb3c903c04 Merge branch '3.0.1' into developer 2017-11-22 17:06:51 +01:00
db6947cc9c Merge branch 'developer' of git.psi.ch:sls_detectors_software/sls_detector_software into developer 2017-11-22 15:08:33 +01:00
590fac9e07 making nx and ny available for jctb in call back 2017-11-22 15:08:09 +01:00
400585be6a Merge branch 'developer' of git.psi.ch:sls_detectors_software/sls_detector_software into developer 2017-11-22 12:34:28 +01:00
dcfa6fb100 Fixed filename problem with CPU readout and trimval command for mythen 2017-11-22 12:34:14 +01:00
39a20e1616 comment 2017-11-22 11:34:55 +01:00
114c45c04a making gui work temporarily for jctb 2017-11-22 09:27:42 +01:00
4159e83fd6 making gui work temporarily for jctb 2017-11-22 09:27:01 +01:00
3a26c95c0d Merge branch '3.0.1' into developer 2017-11-21 15:46:21 +01:00
f2f00fec06 Merge branch '3.0.1' into developer 2017-11-21 15:35:19 +01:00
7f58b77dfb Merge branch '3.0.1' into developer 2017-11-21 15:12:32 +01:00
5d34358f44 changin zmqip in rxr should also restart streaming 2017-11-21 15:11:29 +01:00
8328b30cbd removed merge conflicts from bug fix of zmq buffering while acquire from command line 2017-11-21 14:58:07 +01:00
9c55cb4974 removed merge conflicts from bug fix of zmq buffering while acquire from command line 2017-11-21 14:57:52 +01:00
a0ad1fb3a3 Merge branch '3.0.1' into developer 2017-11-21 14:15:59 +01:00
2067f47f34 Merge branch '3.0.1' into developer 2017-11-21 14:15:59 +01:00
46aeee00f1 somewhere 2017-11-21 12:30:58 +01:00
5f0575236e Merge branch 'developer' of git.psi.ch:sls_detectors_software/sls_detector_software into developer 2017-11-21 12:10:33 +01:00
45e0cf71eb put trimval should work also for MYTHEN 2017-11-21 12:09:52 +01:00
bd228fac27 bug fix in cleanup code, indexing 2017-11-20 17:19:03 +01:00
b7ca7f5319 just cleanuped code 2017-11-20 17:15:13 +01:00
11c9ab16f9 Merge branch '3.0.1' into developer 2017-11-20 16:44:21 +01:00
e6d22a97e2 Merge branch '3.0.1' into developer 2017-11-20 15:14:13 +01:00
99037449f4 in between moench stuff 2017-11-20 14:23:32 +01:00
97260510f2 gap pixels should be allowed to set to 0 for other detectors 2017-11-20 09:43:41 +01:00
662f502d4c zmq always needs an ip in header 2017-11-17 17:40:57 +01:00
c5c23e73d5 works zmq separated for client and rx, ports and ip included in expert advanced mode 2017-11-17 17:39:04 +01:00
70e4c6e2a2 zmq separated for client and rx, ports and ip included in expert advanced mode 2017-11-17 17:37:00 +01:00
428855d801 in between 2017-11-17 14:02:00 +01:00
2e234f1bbd Merge branch '3.0.1' into developer 2017-11-17 11:36:02 +01:00
1dee950870 merge conflict from 3.0.1 2017-11-17 11:35:15 +01:00
51499fa503 merge conflict from 3.0.1 2017-11-17 11:35:02 +01:00
dcf4d98a75 show warnings, update binaries conflict from merge 2017-11-17 11:33:52 +01:00
28e2ebf75a merge conflict resolved from 3.0.1 2017-11-17 09:40:42 +01:00
bf89dd44f3 updated binaries 2017-11-16 12:34:12 +01:00
d9fcac0236 updated merge from 3.0 hotfix setdac 2017-11-16 12:32:38 +01:00
7f256c868b fixed bug for 1D detector in slsDetectorData 2017-11-15 14:39:35 +01:00
06b9efd229 modifications for on the fly analysis working at cSAXS 2017-11-15 12:23:21 +01:00
9ad0fd0bc9 modifications for on the fly analysis working at cSAXS 2017-11-15 12:21:58 +01:00
7c9958db04 updated binary merge from 3.0 regarding settings 2017-11-15 10:36:55 +01:00
956625bb50 Merge branch '3.0' into developer 2017-11-15 10:35:20 +01:00
4f74f6d08f Merge branch '3.0.1' into developer 2017-11-14 15:19:14 +01:00
2d962dfead Merge branch '3.0.1' into developer 2017-11-14 12:43:19 +01:00
db2fef5d69 conflict resolved in merge from 3.0.1 to include file index in zmq streaming 2017-11-14 12:14:26 +01:00
cf4498cf78 Merge branch '3.0.1' into developer 2017-11-14 10:59:01 +01:00
c127eebeaa Merge branch '3.0.1' into developer 2017-11-14 09:13:39 +01:00
363aa9124e Merge branch '3.0.1' into developer 2017-11-14 09:08:16 +01:00
8872f86e31 Merge branch '3.0.1' into developer 2017-11-13 15:32:47 +01:00
4c4a26c0e3 Merge branch '3.0.1' into developer 2017-11-13 13:39:39 +01:00
e33ba2cd76 merge from 3.0.1 compiling with rpath and updating detector binaries 2017-11-13 12:32:08 +01:00
1af065fdb1 infinite loop with gettotalnumberofchannels in gappixels initialization resulting in bus error fix 2017-11-13 11:13:26 +01:00
678ef89e17 conflict resolved from merge developer to gappixels insignificant 2017-11-10 16:54:18 +01:00
dc70c45ef2 Merge branch 'developer' into gappixels 2017-11-10 16:53:14 +01:00
c0ec315b04 Merge branch 'developer' into gappixels 2017-11-10 16:53:14 +01:00
6fa4e4cef8 Merge branch '3.0.1' into gappixels 2017-11-10 16:37:28 +01:00
3886a0c9ad merge fix from 3.0.1 regarding gethostbyname thread safety 2017-11-10 16:37:20 +01:00
5b65d44303 Merge branch '3.0.1' into developer 2017-11-10 16:34:43 +01:00
23ddb3d4b5 merge fix from 3.0.1 regarding gethostbyname thread safety 2017-11-10 16:34:31 +01:00
a2210c0118 Merge branch '3.0.1' into gappixels 2017-11-09 14:08:04 +01:00
6d0f751104 Merge branch '3.0.1' into developer 2017-11-09 14:07:48 +01:00
3c6d572369 including dynamic range in gui call back 2017-11-02 11:02:40 +01:00
7ba90f98fc including dynamic range in gui call back 2017-11-02 11:02:22 +01:00
589a5c7852 Merge branch '3.0.1' into gappixels 2017-11-02 10:55:05 +01:00
0df4576874 Merge branch '3.0.1' into developer 2017-11-02 10:54:40 +01:00
82f503aa09 dynamic range also updates offsets, 4 bit mode gap pixels work in call back from gui 2017-10-31 12:50:31 +01:00
3da8bca462 allowing receiver to know of gap pixels enable even in 4 bit mode, but not doing anything useful 2017-10-31 12:39:36 +01:00
9d4c14b724 gap pixels should now work for 4 bit mode and a bug fix in decoding for 4 bit mode 2017-10-31 12:38:42 +01:00
6ff249c3f2 Merge branch 'developer' into gappixels 2017-10-27 16:18:52 +02:00
e12229633c update binaries 2017-10-27 16:18:21 +02:00
b75dde4613 merge bug fix of set module 2017-10-27 16:17:12 +02:00
f6989d5539 merge bug fix of set module 2017-10-27 16:16:38 +02:00
7ff23b25b3 merge bug fix of set module 2017-10-27 16:16:29 +02:00
79bce5e006 4 bit mode works without gappixels 2017-10-26 16:01:18 +02:00
9c82a8f726 temp in between, trying to get 4 bitmode to work without gap pixels 2017-10-26 11:19:58 +02:00
6812961836 temp in between, trying to get 4 bitmode to work without gap pixels 2017-10-26 11:09:55 +02:00
003239cddd gap pixels for 4 bit mode restrictions, not completed 2017-10-24 14:16:08 +02:00
ce7386e230 merge solved from developer, xcoord from detector if given 2017-10-23 17:21:45 +02:00
fde4194f9b merged with developer, receiver call back merged with no call back 2017-10-23 17:12:00 +02:00
7f9ac86862 Merge branch 'developer' into gappixels 2017-10-23 17:09:13 +02:00
16a939c0c0 Merge branch '3.0.1' into developer 2017-10-23 17:08:12 +02:00
4084e2c31e updated release doc 2017-10-23 17:06:12 +02:00
1f138abac1 fix in receiver as x, y and z are properly integrated with detector server for eiger and jungfrau, and handling previous versions of detector where x y and z were all 0 (hardcoding them in 1 d) 2017-10-23 12:21:41 +02:00
d2fd0cbee9 x y and z coordinates are pushed into eiger server and its fixed in appropriate client side as well 2017-10-23 12:20:18 +02:00
210bcb081d xcoord should not be hardcoded for this version for eiger and jungfrau 2017-10-20 10:49:02 +02:00
673b7f1652 merge conflict fixed with developer 2017-10-19 15:36:28 +02:00
b6ae3300a9 merge conflict fixed with developer(patches for file write disable, xcoord) 2017-10-19 15:35:34 +02:00
801817b749 bug fix to the merge 2017-10-19 14:41:12 +02:00
1cddb9a542 merge from 3.0.1 with patches for file write disable 2017-10-18 17:53:55 +02:00
927e776353 Merge branch 'developer' into gappixels 2017-10-12 15:09:35 +02:00
36a200ceba Merge branch 'developer' into gappixels 2017-10-12 15:09:30 +02:00
0fe43c75f2 merge branch developer into gappixels, added .project into gitignore 2017-10-12 15:08:32 +02:00
4d92744dea .project added to gitignore 2017-10-12 15:08:12 +02:00
ae72df7b14 .project added to gitignore 2017-10-12 15:07:54 +02:00
e814aee300 .project added to gitignore 2017-10-12 15:07:33 +02:00
4f2af046d3 Merge branch 'developer' into gappixels 2017-10-12 14:58:41 +02:00
91588ecc21 Merge branch 'developer' into gappixels 2017-10-12 14:58:25 +02:00
d2767afa7c added the eiger server binary with merges from 3.0.1 2017-10-12 14:57:12 +02:00
311059d748 merge fix from 3.0.1 which includes server without crash, multi settimer -1 bug, need to recompile eiger server for this branch 2017-10-12 14:42:57 +02:00
10e57319bf moench03OnTheFlyAnalysis multipthreaded with interpolation works 2017-10-12 10:31:11 +02:00
2e5f64d9bc gap pixels for 8, 16, 32 in receiver at udp level 2017-10-05 15:59:07 +02:00
0d92b11055 print out comment, not print if mythen else access to null 2017-10-05 15:58:37 +02:00
4260dc0baf conflict resolution 2017-10-03 15:18:56 +02:00
0f302e3446 conflict resolution 2017-10-03 15:17:15 +02:00
e54767b69d conflict resolution with developer 2017-10-03 15:12:56 +02:00
812606a7b4 conflict resolution with developer 2017-10-03 15:12:49 +02:00
fc025bd28b conflict resolution with developer 2017-10-03 15:12:35 +02:00
34f10b382e one more conflict resolved from mergin with 3.0.1 (silent mode, this had changes for zmq source ip) 2017-10-03 15:01:30 +02:00
0b82aabd2b merge with 3.0.1 conflicts resolved 2017-10-03 14:52:53 +02:00
03a2f979a9 fixing merge conflict in error_Defs 2017-10-03 14:32:30 +02:00
4669d408d4 somewhere in between 2017-10-03 12:09:31 +02:00
c594870fdd Merge branch 'realgappixels' into gappixels 2017-10-03 10:49:47 +02:00
34062b6e0b fixed 32 bit gui masking problem in qdrawplot (conversion from char* to double) mythen clause not activated 2017-10-03 10:49:26 +02:00
7cde5dbe38 changes upto the receiver, not incl gui 2017-10-03 10:44:08 +02:00
bb817733ff changes upto the receiver, not incl gui 2017-10-03 10:44:05 +02:00
7cf7d9eb79 changes upto the receiver, not incl gui 2017-10-03 10:44:01 +02:00
907ab2f0bd changes upto the receiver, not incl gui 2017-10-03 10:43:47 +02:00
d0b379a2d5 double* changed to char* in gui data call back, effect in receiver is change in zmqsocket.h from int* to char* 2017-10-02 13:21:49 +02:00
afc08f8c30 double* changed to char* in gui data call back, decoding to be done by caller. enablegappixels skeleton created 2017-10-02 13:21:38 +02:00
5a7800768b double* to char* in detector call back. 2017-10-02 13:20:19 +02:00
63c0fe863d missing packets 0xffff are also anded with the mask, fixed 2017-09-29 18:33:41 +02:00
fa79a36089 should work, but jungfrau needs debugging 2017-09-29 16:43:07 +02:00
9bdb361d08 works but needs to be verified. the void* in call back 2017-09-29 11:39:36 +02:00
1a8b0692fe works but needs to be verified. the void* in call back 2017-09-29 11:39:10 +02:00
352ade6457 just skeleton of gappixels 2017-09-27 17:08:00 +02:00
986826cbe9 x y z and id are written to the udp header for eiger 2017-09-26 16:39:02 +02:00
e0d82ad92d only 3d positins in x y z coord, so receiver not overwriting them 2017-09-22 15:29:28 +02:00
663fd557ff client gives now 3d positions of detector to be configured in udp header, only in jungfrau firmware till now 2017-09-22 15:28:57 +02:00
5a8f30fee8 Merge branch '3.0.1' of git.psi.ch:sls_detectors_software/sls_detector_software into developer 2017-09-22 12:28:24 +02:00
e8bb186ff8 removed setframeindexenable from being set by client, redundant. removed read_frame from list of functions, obsolete. 2017-09-22 12:25:08 +02:00
ab27437604 removed setframeindexenable from going to the receiver, it can figure it out on its own now 2017-09-22 12:23:39 +02:00
c2f6e5b20c modifying to adjust to common basic tests debug mode for jungfrau 2017-09-21 17:58:10 +02:00
7e0481eeff renamed server names 2017-09-21 16:45:40 +02:00
2b3d2bb4d7 removed changing number of samples by setting dynamic range 2017-09-21 16:36:33 +02:00
d8803ca5e4 improved library structure for analog detectors and interpolation t.b.t. 2017-09-21 15:03:43 +02:00
2bd5386c29 Merge branch '3.0.1' into developer 2017-09-21 13:35:16 +02:00
c5ff578d10 Merge branch '3.0.1' into developer 2017-09-21 13:35:16 +02:00
6eb5167c70 Merge branch '3.0.1' into developer 2017-09-21 13:35:16 +02:00
862169e178 jungfrau with the option to start in debug mode to bypass the checks and tests 2017-09-20 16:20:39 +02:00
e2832d2e1b Merge branch '3.0.1' into developer 2017-09-19 17:19:37 +02:00
092487c08e Merge branch '3.0.1' into developer 2017-09-19 17:19:36 +02:00
b78dcf869b Merge branch '3.0' into developer 2017-09-15 13:27:18 +02:00
c635b19941 fixed jungfrau image after programfpga, fixed resetfpga 2017-09-14 15:55:55 +02:00
5ff574b33f made default streamer to be the ip related to hostname, otherwise can be specified from the client, also made it compatible with chip test board detector now 2017-09-12 15:04:56 +02:00
49378e6d09 added streamsrcip command to be able to change the interface from which receiver streams data from 2017-09-12 14:33:11 +02:00
aef462da32 merge error fixed 2017-09-08 09:31:26 +02:00
1ba325e902 Merge branch 'developer' of git.psi.ch:sls_detectors_software/sls_detector_software into developer 2017-09-07 11:27:52 +02:00
1c14b146a2 T1 data structure from CPU added 2017-09-04 14:28:30 +02:00
e95ffde95d T1 data structure finally correct 2017-09-04 14:26:28 +02:00
4ed3859c75 Merge branch 'virtualclass' into developer 2017-09-01 15:40:28 +02:00
069d044e17 fixed gain plot, aspect ratio, 1/4size of mainplat, keeping limits also for gain plot at start up, removing gain plot titles 2017-09-01 15:37:05 +02:00
272167435d gainplot added, masking done separately before converting to double 2017-09-01 12:04:04 +02:00
277dc2cfd9 gainplot added for jungfrau, aspect ratio check in gui added, npixels-1 as endpixel bug fix 2017-09-01 12:03:09 +02:00
1510fa71d3 T1 data structure fixed 2017-09-01 10:08:07 +02:00
ca865a6636 Merge branch 'developer' of git.psi.ch:sls_detectors_software/sls_detector_software into developer 2017-08-16 09:27:48 +02:00
3aeb15648c Anna's modifications 2017-08-11 15:55:07 +02:00
52e1bd32b9 Anna's modifications 2017-08-11 15:52:08 +02:00
0b6aeac364 Merge branch 'developer' of git.psi.ch:sls_detectors_software/sls_detector_software into developer 2017-06-27 10:40:19 +02:00
ffd3cb6511 Merge branch 'developer' of git.psi.ch:sls_detectors_software/sls_detector_software into developer 2017-06-26 13:03:08 +02:00
dfb8a1f7ad small modifications for jctb and moench03 module 2017-06-26 13:03:01 +02:00
1010 changed files with 47330 additions and 79296 deletions

45
.travis.yml Normal file
View File

@ -0,0 +1,45 @@
sudo: false
language: cpp
matrix:
include:
- os: linux
env: CONDA_PY=3.6
dist: trusty
install:
- sudo apt-get update
- ldd --version
- wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh;
- bash miniconda.sh -b -p $HOME/miniconda
- export PATH="$HOME/miniconda/bin:$PATH"
- rm -f miniconda.sh
- hash -r
- conda config --set always_yes yes --set changeps1 no
- conda config --add channels conda-forge
- conda config --add channels slsdetectorgroup
- conda update conda
- conda update --all
- conda install conda-build anaconda-client
# Useful for debugging any issues with conda
- conda info -a
# Replace dep1 dep2 ... with your dependencies
- conda create -q -n test-environment python=$CONDA_PY
- source activate test-environment
- conda-build .
script:
- echo "No test scripts to be run!"
deploy:
provider: script
script: find $HOME/miniconda/conda-bld/${TRAVIS_OS_NAME}-64 -name "*.tar.bz2" -exec anaconda -t $CONDA_TOKEN upload --force {} \;
on:
branch: developer

View File

@ -1,5 +1,5 @@
cmake_minimum_required(VERSION 2.8)
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
set(CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake" ${CMAKE_MODULE_PATH})
set (CALIBRATE OFF)
option (USE_HDF5 "HDF5 File format" OFF)
@ -7,13 +7,18 @@ option (USE_TEXTCLIENT "Text Client" OFF)
option (USE_RECEIVER "Receiver" OFF)
option (USE_GUI "GUI" OFF)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wno-misleading-indentation")
if (CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 6.0)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -std=c++98 -Wno-misleading-indentation")
else ()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -std=c++98")
endif ()
find_package(Qt4)
find_package(Qwt 6)
find_package(CBF)
find_package(Doxygen)
find_package(PNG REQUIRED)
# find_package(PNG REQUIRED)
if (USE_HDF5)
find_package(HDF5 1.10 COMPONENTS CXX)
@ -31,8 +36,10 @@ endif (USE_TEXTCLIENT)
if (USE_RECEIVER)
add_subdirectory(slsReceiverSoftware)
add_subdirectory(manual/manual-api)
endif (USE_RECEIVER)
if (USE_GUI)
if (QT4_FOUND AND QWT_FOUND)
add_subdirectory(slsDetectorGui)

View File

@ -19,11 +19,12 @@ RECEIVERDIR = $(LIBRARYRXRDIR)
CALWIZDIR = $(WD)/calibrationWizards
MANDIR = $(WD)/manual
CALIBDIR = $(WD)/slsDetectorCalibration
MANAPIDIR = $(MANDIR)/manual-api
TABSPACE := "\t"
INCLUDES=-I. -I$(LIBRARYDIR)/commonFiles -I$(LIBRARYDIR)/slsDetector -I$(LIBRARYDIR)/usersFunctions -I$(LIBRARYDIR)/multiSlsDetector -I$(LIBRARYDIR)/slsDetectorUtils -I$(LIBRARYDIR)/slsDetectorCommand -I$(LIBRARYDIR)/slsDetectorAnalysis -I$(LIBRARYDIR)/slsReceiverInterface -I$(LIBRARYRXRDIR)/include -I$(LIBRARYDIR)/threadFiles -I$(ASM)
INCLUDES=-I. -I$(LIBRARYDIR)/commonFiles -I$(LIBRARYDIR)/slsDetector -I$(LIBRARYDIR)/usersFunctions -I$(LIBRARYDIR)/multiSlsDetector -I$(LIBRARYDIR)/slsDetectorUtils -I$(LIBRARYDIR)/slsDetectorCommand -I$(LIBRARYDIR)/slsDetectorAnalysis -I$(LIBRARYDIR)/slsReceiverInterface -I$(LIBRARYRXRDIR)/include -I$(LIBRARYDIR)/threadFiles -I$(LIBRARYDIR)/sharedMemory -I$(ASM)
INCLUDESRXR += -I. -I$(LIBRARYRXRDIR)/include -I$(CALIBDIR) -I$(ASM)
#LIBFLAGRXR +=
@ -79,6 +80,7 @@ slsReceiver_static: receiver
receiver: #libreceiver
# cd $(RECEIVERDIR) && $(MAKE) receiver FLAGS='$(FLAGS)' DESTDIR='$(BINDIR)' LIBS='$(LDFLAGRXR)' INCLUDES='$(INCLUDESRXR)' LIBDIR='$(LIBDIR)'
cd $(RECEIVERDIR) && $(MAKE) FLAGS='$(FLAGS)' DESTDIR='$(BINDIR)' LIBS='$(LDFLAGRXR)' INCLUDES='$(INCLUDESRXR)' LIBDIR='$(LIBDIR)'
cd $(MANAPIDIR) && $(MAKE) slsMultiReceiver
@echo ""
@echo "#######################################"
@echo "# Back in slsDetectorPackage Makefile #"
@ -151,6 +153,7 @@ clean:
cd $(DOCDIR) && rm -rf *
rm -rf slsDetectorPackageDocs;
rm -rf $(DETAILDOC)
rm -rf $(MANAPIDIR)/slsMultiReceiver
#install_lib:

View File

@ -2,12 +2,12 @@
Detailed documentation can be found on the [official site.](https://www.psi.ch/detectors/users-support)
### Binaries
Documentation to obtain the binaries via the conda package is available [here.](https://github.com/slsdetectorgroup/sls_detector_software)
Documentation to obtain the binaries via the conda package is available for [lib](https://github.com/slsdetectorgroup/sls_detector_lib) and [gui](https://github.com/slsdetectorgroup/sls_detector_gui)
### Source code
One can also obtain the source code from this repository and compile while realizing the setup dependencies as required.
```
git clone https://github.com/slsdetectorgroup/slsDetectorPackage.git --branch 3.1.0
git clone https://github.com/slsdetectorgroup/slsDetectorPackage.git
```
#### Setup dependencies
@ -19,7 +19,7 @@ Requirements: Qt 4.8 and Qwt 6.0
```
If either of them does not exist, the GUI client will not be built.
* Calibration wizards<br>
* Advanced user Calibration wizards<br>
Requirements: ROOT
```
export ROOTSYS=/usr/local/root-5.34
@ -43,6 +43,10 @@ Usage: [-c] [-b] [-h] [-d HDF5 directory] [-j]<br>
* -r: Build/Rebuilds only receiver<br>
* -g: Build/Rebuilds only gui<br>
* -j: Number of threads to compile through<br>
* -e: Debug mode
Basic Option:
./cmk.sh -b
For only make:
./cmk.sh
@ -83,5 +87,5 @@ After compiling, the libraries and executables will be found at `bin` directory
```
$ ls bin/
gui_client libSlsDetector.a libSlsDetector.so libSlsReceiver.a libSlsReceiver.so
sls_detector_acquire sls_detector_get slsDetectorGui sls_detector_help sls_detector_put slsReceiver
sls_detector_acquire sls_detector_get slsDetectorGui sls_detector_help sls_detector_put slsReceiver slsMultiReceiver
```

View File

@ -1,353 +1,508 @@
SLS Detector Package 3.1.0 released on 2018-03-12
SLS Detector Package 4.0.0 released on 27.09.2018
=================================================
INTRODUCTION
This document describes the differences between 3.1.0 and 3.0.0 releases.
This document describes the differences between 4.0.0 and 3.1.4 releases.
The conda package of the binaries can be downloaded from
Download
--------
https://github.com/slsdetectorgroup/sls_detector_software.git
The Source Code (Default C++ API):
https://github.com/slsdetectorgroup/slsDetectorPackage
The Conda Lib Package:
https://github.com/slsdetectorgroup/sls_detector_lib
The Conda GUI Package:
https://github.com/slsdetectorgroup/sls_detector_gui
The Python Interface (including the package):
https://github.com/slsdetectorgroup/sls_detector
The Python interface to the software package (including the package) is at
https://github.com/slsdetectorgroup/sls_detector.git
Documentation
-------------
Manual (both HTML and pdf versions) are provided in
manual/docs/
Documentation from Source Code can be found for the Command Line and C++ API in
html:
Manual (HTML & PDF):
https://www.psi.ch/detectors/documentation
slsDetectorPackage/manual/docs/
Command Line Documentation:
manual/docs/html/slsDetectorClientDocs/index.html
manual/docs/html/slsDetectorUsersDocs/index.html
pdf:
manual/docs/pdf/slsDetectorClientDocs.pdf
C++ API Documentation:
manual/docs/html/slsDetectorUsersDocs/index.html
manual/docs/pdf/slsDetectorUsersDocs.pdf
Documentation to the python API is available at
https://slsdetectorgroup.github.io/sls_detector/
C++ API Example:
manual/manual-api/mainClient.cpp
manual/manual-api/mainReceiver.cpp
Python API Documentation:
https://slsdetectorgroup.github.io/sls_detector/
Further Documentation:
https://www.psi.ch/detectors/users-support
Example including binaries for detector and receiver user classes can be found in
manual/manual-api
User documentation can also be accessed directly at this location:
Support
-------
https://www.psi.ch/detectors/users-support
General Software related:
dhanya.thattil@psi.ch
anna.bergamaschi@psi.ch
Python related:
erik.frojdh@psi.ch
If you have any software related questions or comments, please send them to:
dhanya.thattil@psi.ch
anna.bergamaschi@psi.ch
If you have any python related questions or comments, please send them to:
erik.frojdh@psi.ch
CONTENTS
- Firmware Requirements
- Changes in User Interface
- New Features
- Resolved Issues
- Known Issues
1. Firmware Requirements
2. Changes in User Interface
3. New/Modified Commands
4. Other New Features
5. Resolved Issues
6. Known Issues
7. Next Major Release Plans
Firmware Requirements
=====================
Please refer to the link below for more details on the firmware versions.
https://www.psi.ch/detectors/firmware.
1. Firmware Requirements
========================
Gotthard
========
Minimum compatible version : 11.01.2013
Latest version : 08.02.2018 (50um and 25um Master)
09.02.2018 (25 um Slave)
-Can not be upgraded remotely.
Eiger
=====
Minimum compatible version : 16
Latest version : 20
-Can be upgraded remotely via bit files.
Minimum compatible version : 22
Latest version : 22
Jungfrau
========
Minimum compatible version : 13.11.2017
Latest version : 13.11.2017
Minimum compatible version : 15.06.2018
Latest version : 15.06.2018
-Can be upgraded remotely via sls_detector_put programfpga <pof>.
Detector Upgrade
================
Gotthard Cannot be upgraded remotely. Requires programming via USB blaster
Eiger Can be upgraded remotely via bit files
Jungfrau Can be upgraded remotely using sls_detector_put programfpga <pof>
Instructions available at
https://www.psi.ch/detectors/installation-instructions
under Detector Upgrade -> [Detector Type] -> Firmware.
Please refer to the link below for more details on the firmware versions.
https://www.psi.ch/detectors/firmware.
Changes in User Interface
=========================
2. Changes in User Interface
============================
Client
------
1. Additional functions added for advanced users in users class:
(setSpeed, setClockDivider, setReadOutFlags, setDac, getADC,
setAllTrimbits, startReceiver, stopReceiver,
startAcquisition non blocking, setReceiverSilentMode, setHighVoltage,
enableDataStreamingToClient, enableDataStreamingFromReceiver,
setReceiverDataStreamingOutPort, setClientDataStreamingInPort)
2. Zmq set up for client and receiver are separated.
zmqport for client and rx_zmqport for receiver. By default, they are the
same for the slsDetectorGui to work.
1. Shared Memory:
POSIX shared memory has been implemented and they are typically created in
/dev/shm/ folder.
3. Users example also works without config file, where detector already
configured in shared memory.
A multiSlsDetector object will create a shared memory segment with naming style:
slsDetectorPackage_x_[_z]
and an slsDetector object will create a shared memory segment with naming style:
slsDetectorPackage_x_sls_y[_z]
where
x is the multi detector id
y is the sls detector id
z is the environment variable SLSDETNAME, if set.
They can be deleted directly.
4. Use "sls_detector_get busy 0" to clear acquiring flag in shared memory
caused due to an earlier interrupted acquisition from Ctrl+C"
Environment variable SLSDETNAME included for user-friendliness
of using 2 different detectors from the same client pc. One needn't use
different multi detector id if the SLSDETNAME is different for both consoles.
5. Set bit, clear bit, read register and write register cannot give -1 for
inconsistent values from multiple detectors. One has to check error from
API or read the values individually.
6. multiSlsDetector::char* getSettingsFile() function signature has been
changed to string getSettingsFile().
Constructor will fail if shared memory size is different (different package
releases/detectors). Loading config file cleans shared memory.
2. Exceptions in constructors:
All constructors that have an error throws an exception. For this release,
this is caught within the package and interfaced as error codes or messages
to the users using command line or API.
As a result:
- slsDetectorsUsers constructor signature now includes a success flag.
- If one uses multiSlsDetector, slsDetector, ZmqSocket classes directly,
catch exceptions from constructors.
- In future releases, the exception will be thrown
outside the package for the users to handle it.
3. API Compatibility:
Client now checks API version of Detector Server - Client and Receiver - Client
when connecting for the first time to detector server or receiver server
and the online flags have not been set in shm.
Upon failure, error messages will ensue and further commands will not
be executed. Detector servers referred to are only for Eiger, Jungfrau and Gotthard.
Previously, the detector server would exit on mismatched Firmware-Detector
server mismatch. They now wait for client to ask for compatibility check,
which is done the first time client connects to the detector and the
online flag in shm has not been set.
4. Commands "type", "id" and "replace" are removed.
Receiver
--------
1. Reciever Header Structure in file writing and call back:
sls_receiver_header structure added to sls_receiver_defs.h for image headers
in file writing.
#define MAX_NUM_PACKETS 512
typedef std::bitset<MAX_NUM_PACKETS> sls_bitset;
typedef struct {
sls_detector_header detHeader; /**< is the detector header */
sls_bitset packetsMask; /**< is the packets caught bit mask */
} sls_receiver_header;
It includes the detector header structure + bitmask of 512 bits,
where each bit represents a packet caught. This is useful in saving time
in writing to file by not padding missing packets and still retaining useful data.
The binary and HDF5 writer version number changed from 1.0 to 2.0.
The detector header version remains as 1.0.
registerCallBackRawDataReady modified to give this structure pointer,
instead of individual structure member pointers.
2. ZmqSocket class:
If one uses ZmqSocket.h, then the json header has to be parsed outside
the class to allow the user to remove the restriction in extracting all data
from the json header.
3. Receiver Call back with modified size:
registerCallBackRawDataModifyReady call back that is similar to the receiver
registerCallBackRawDataReady has been added to allow the call back to
specify an updated size of image after call back. This is in view to process
an image in call back (including extract only a region of the image) and
provide this updated size in callback. This new resized/processed image
will be written to file or streamed out via zmq. This is useful in ROI
selection in the receiver.
This also means that the call back is now called before writing to file.
3. New/Modified Commands
========================
Client
------
1. add (modified):
appends detector to end of multi detector list.
2. replace:
sets hostname/ip address for a single detector.
3. user:
get user details from shared memory.
4. checkdetversion:
checks client version compatibility with detector server.
5. checkrecversion:
checks client version compatibility with receiver server.
Receiver
--------
1. rx_zmqip:
sets/gets the zmq (TCP) ip of the receiver from where data is streamed
out from. (Eg. to the gui or intermediate process). By default, it is
the same as the zmqip.
2. zmqip:
sets/gets the zmq (TCP) ip, where client listens to, to reconstuct images.
(Eg. from receiver or intermediate process). By default, it is the same
as rx_zmqip.
3. rx_jsonaddheader:
sets/gets additional json header to be streamed out with the zmq from
receiver. Default is empty. Eg. p rx_jsonaddheader \"what\":\"nothing\"
4. r_discardpolicy:
sets/gets the frame discard policy in the receiver.
nodiscard - no discard (default),
discardempty - discard only empty frames,
discardpartial - discard any partial frame(fastest)
5. r_padding:
sets/gets the frame padding in the receiver.
0 does not pad partial frames(fastest),
1 (default) pads partial frames.
One can look at bitmask in the sls_receiver_header to process the unpadded
partial frames later.
6. activate (modified):
Extra option added to pad or unpad images in receivers when deactivated.
activate i [padding option], where i is activate/deactivate and padding
option is "padding" (default) or "nopadding".
7. rx_udpsocksize:
sets/gets the UDP socket buffer size. Already attempts to set by default
to 100mb, 2gb for Jungfrau. Does not remember custom values in client
shared memory, so must be initialized each time after setting receiver
hostname in config file.
8. rx_realudpsocksize:
gets the actual UDP socket buffer size. Usually double the set udp socket
buffer size due to kernel bookkeeping.
9. r_framesperfile:
sets/gets the frames per file in receiver. 0 means infinite or all frames
in a single file. Default of Eiger changed from 2k to 10k.
Eiger Specific
--------------
1. status trigger:
To trigger internally via software, one can use "status trigger".
2. subdeadtime:
sets/gets sub frame dead time in s in 32 bit mode. Subperiod is set in
the detector by subexptime + subdeadtime. This value is normally a
constant set by an expert catered to individual detector modules in the
config file. Receiver files writes master file metadata subperiod
instead of subdeadtime.
3. gappixels:
enables/disables gap pixels in system (detector & receiver). 1 sets,
0 unsets. In Receiver, 4 bit gap pixels mode is not implemented, but is
implemented in client data call back. Gap pixels are at module level
and not at multi module level.
4. measuredperiod:
gets the measured frame period (time between last frame and the previous
one) in s. Makes sense only for acquisitions of more than 1 frame.
5. measuredsubperiod:
gets the measured subframe period (time between last subframe and the
previous one) in s in 32 bit mode.
6. flags(modified):
extra flags "nooverflow" (default) and "overflow" for sub images in 32
bit mode. If set to overflow, it will set MSB of pixel data high if
there was any saturation in any of the sub images 32 bit mode.
Jungfrau Specific
-----------------
1. storagecells:
sets/gets number of additional storage cells per acquisition. For very
advanced users only. Range: 0-15. Default: 0.
The #images = #frames * #cycles * (#storagecells +1).
2. storage_start:
sets/gets the storage cell that stores the first acquisition of the series.
For very advanced users only. Range: 0-15. Default: 15(0xf).
4. Other New Features
=====================
Client
------
1. (Jungfrau & Gotthard) Settingsdir and caldir is removed from config file.
Default dacs are stored in detector server. Hence, these folders
are also removed from slsDetectorPackage/settingsdir. Eiger and Mythen
continue to have them.
2. Depending on 1d position of detectors and detsizechan in config file,
row and column (previously xcoord and ycoord) are given to detector
servers (Eiger and Jungfrau) to encode into the udp header.
3. (Eiger) Setting threshold energy changes such as CAL dac is irrelevant
when interpolating between two energies and VRS dac is interpolated, not copied.
4. Users API updated with the following functions:
- setReceiverFramesDiscardPolicy
- setReceiverPartialFramesPadding
- setReceiverFramesPerFile
- sendSoftwareTrigger
- setSubFrameExposureDeadTime
- setSubFrameExposureTime
- enableGapPixels
- getMeasuredPeriod
- getMeasuredSubFramePeriod
- setOverflowMode
- setNumberOfStorageCells
- setStoragecellStart
- setThresholdEnergy (overloaded)
- resetFramesCaughtInReceiver
- setReceiverFifoDepth
- setFlowControl10G
- setTenGigabitEthernet
- getNMods
- setReceiverDataStreamingOutIP
- setClientDataStreamingInIP
SlsReceiver
-----------
1. slsMultiReceiver executable added that creates multiple receiver child processes.
./slsMultiReceiver [start_tcp_port] [num_receivers] [1 for call back, 0 for none]
2. Default row and column (previously xcoord and ycoord) are hardcoded
for missing packets. (Eiger and Jungfrau)
Gui
---
1. (Jungfrau) Gain plot included. Option under 2D options in Plot tab.
2. Option to maintain aspect ratio
3. Start and Stop separated to prevent multiple click syndrome.
Detector Server
---------------
1. (Jungfrau) To use programfpga command, one must start server with -update
mode and then restart server without -update mode.
2. (Jungfrau) ASIC Timer configured at server start up and changed a few
startup values for firmware v0.7 such as adc phase, ADC_PORT_INVERT_VAL
and ADC offset half speed value.
3. (Jungfrau) Minimum exposure time of 50 us was implemented.
4. (Eiger and Jungfrau) They can be configured to have x and y coord values
of the detector in their udp header.
5. Resolved Issues
==================
Client
------
memory leak for multi threading
1. Compiler flag -std=c++98 enforced. Debug flag removed.
2. If trimen gives different list from different detectors, it returns a -1.
3. Version format for each submodule of the package changed to just date YYMMDD.
Users class fixed to give correct version, instead of -1.
4. Getting settings in users class gave -1. Fixed now.
5. (Jungfrau) Programming FPGA now creates the rawbin file from pof in tmp
rather than source file location (for permission issues).
6. (Gotthard) ROI segmentation fault fixed.
Receiver
--------
7. Modified the help manaual/main-api/mainReceiver.cpp to make it more
robust (handling child process exit) and flexible to determine upon
start up the number of receivers (child processes), the start TCP port
and whether to call back data.
detReceiver is now executed with [start tcp port] [number of receivers]
[1 for call back, 0 for none] as arguments.
By default, start tcp port is 1954, number of receivers is 1, and call
back is initiated.
8. rx_datastream to enable/disable data streaming in receiver. Using the GUI
or registering data call back in client automatically enables zmq in
receiver and client. "externalgui" is removed from the command line. Use
this command instead.
9. Rx_tcpport argument to the slsReceiver can be given using -t.
Eg. slsReceiver -t1955
1. Silent feature of receiver fixed.
2. Socket descriptor misused earlier for success flag, instead exceptions
used that are handled inside the package.
New Features
============
3. Global optind variable initialized to instantiate multiple receivers
in same process. Also removed static members to enable this feature.
4. Socket buffer size attempts to set for each acquiistion and provide
warning if no capabilities. Warnings can be removed using instruction with
error provided. Default Jungfrau UDP socket buffer size if 2 GB, default is
100 MB.
5. Refactored code a bit for performance and robustness, blocking push
in buffer between listener and dataprocessor
Package
-------
1. In addition to the C++ API, the Python API is also now provided.
2. CMAKE now with debug flag and rpath, show warnings, compile only certain
components (such as receiver or gui)
3. One repository for entire package and made available at github.
4. One can do --version or -v to all the binaries to find out the release
version of the particular executable.
5. All the software version numbers have only date in format YYMMDD.
Client
------
6. Parallelized more commands to detector. Beneficial for large detectors.
(setTimer, setFileIndex, setOnline, setReceiverOnline, getReceiverStatus,
resetFramesCaught, setFrameIndex, setFileName, getFramesCaughtByReceiver,
setDynamicRange, setRateCorrection)
Option to also use "sls_detector_put threaded 0" to improve speed by
eliminating progress display during acquisition. Effective only for
large detectors.
Detector Server
---------------
7. (Eiger) Virtual class to execute on pc.
8. One can now read temperatures during acquisition. It goes via the stop
server.
9. (Jungfrau) One can start server in "debug" mode and then program the
new firmware via software command "sls_detector_put programfpga xx.pof".
10. (Jungfrau) Server can exit on start up if either the firmware or the
server is incompatible with each other.
1. (Jungfrau) Stop server also mapped during a reset. Reading power status
instead of user input register for power.
11. (Jungfrau) One is able to set transmission delay (ms) of image for each
individual detector using "txndelay_frame" command. Beneficial for
large detectors.
12. (Jungfrau) One can set a threshold temperature (temp_threshold) and
enable the temperature control feature (temp_control). When the
temperature (temp_fpga) overshoots the threshold temperature, it will
set the temperature event (temp_event) and power off the chip. One must
then switch off the detector and check cooling. Switching back on starts
with defaults.
13. (25um Gotthard) Added start acquisition delay to master module.
2. (Eiger) Bug fix for saving trimbits to file (Advanced users).
14. (Gotthard) New constraints for firmware dated 08.02.2018 and 09.02.2018
(25 um Slave) include minimum exposure time is 186 ns and minimum
period is 1278 ns + current exposure time.
Receiver
--------
14. The detectorip and rx_udpip does not have to be in the same subnet anymore.
Add the following commands after rx_hostname in config file to overwrite
mac configuration:
rx_udpmac [router mac]
configuremac 0
15. Added silent mode to receiver using command r_silent [i] from client.
It might be beneficial for max frame rate applications.
16. Receiver print out can handle black or white backgrounds.
17. zmq package included updated to v4.0.8.
18. Zmq streaming from receiver also sends file index in json header.
Gui
---
19. If acquisition is done, but "stop dummy packet" to the gui was lost in
the network, stop acquisition command will restream it so that the gui
doesnt hang forever. This is used only for very fast detectors like
Moench.
3. (Gotthard 25um) config.txt is not read again after detector startup,
no matter the number of times the detector server is restarted.
Resolved Issues
6. Known Issues
===============
Client
------
1. gethostbyname used in connecting to sockets was not thread safe for
multiple detectors. Using getaddrinfo for stability in multi threaded
environment.
2. Updated writing content of config and parameter dump into files.
3. More locking to handle main and processing threads using the threadpool.
Removing unlock twice, which is undefined behavior.
4. (Jungfrau) adcphase returns the correct value, instead of -1.
Detector Server
---------------
4. (Eiger) The hardware MAC of the detector is used during configuration
and relayed back to client. Similarly, hardware IP for 1 Gbe data mode.
5. (Eiger) Status will return error if there was the unlikely trouble
reading status register in the front end board. Earlier, it would only
return idle.
6. (Jungfrau) patch server v3.0.0.6.3
Able to set settings, high voltage now correctly reads 0 when
switched off, dacs are properly set.
7. (Jungfrau) FPGA reset and programming FPGA firmware via software is done
properly
8. (Gotthard) patch server v3.0.0.5.1
Able to read temperature properly.
9. (Gotthard) butst mode if set too fast had unwanted behavior such as
sending same image continuously. Now it is handled to display error
and stop acquisition.
10. (Gotthard) completely removed the possibility to set timing modes
other than auto and trigger as they are not implemented anyway. Also
signal index 1, 2 and 3 are reserved and hence, cannot be configured for
an external trigger.
11. Non Mythen and non Eiger detectors can also now get settings file from
board.
12. (Gotthard) Did not get first few images initially after configuring MAC
of detector. Fixed.
Receiver
--------
12. Made it easier to disable the standard receiver and fixing bugs related
to the use of a custom one.
13. (Jungfrau) HDF5 dimensions (npixelsY) required for mapping fixed.
14. patch2-v3.0.0-slsReceiverSoftware.patch
x, y and z coordinates in the call backs and the files are hardcoded
for this release.
15. Rest implementation (not used by standard receiver) removed.
1. HDF5 compression and filters are not implemented yet.
Gui
---
16. patch1-v3.0.0-slsDetectorGui.patch
(Eiger) In expert mode and in advanced tab, when trimbits
loaded are different for every pixel, the gui complains and sets
all trimbits to zero. This has been resolved. Now, the "Set All
Trimbits" field is just set to -1.
17. Fixed segmentation fault of xputsn properly.
18. Upon clicking on "Start", clears acquiring flag in shared memory
caused due to an earlier interrupted acquisition from Ctrl+C"
19. Fixed plotting twice caused due to unzooming the first time.
20. Removed option for compression in Gui as it is not available currently.
21. Can also show Jungfrau multi detector in x direction in gui.
22. Switching tabs sometimes results in delay and gates fields being incorrectly
enabled. Fixed.
Known Issues
============
Client
------
1. File name prefix can only be done at multi deector level. Changing at
individual detector level will not include scan or position variables.
Detector Server
---------------
2. Standard header fills x-coord in 1D. y-coord and z-coord is not
implemented (3D).
Receiver
--------
3. HDF5 compression and filters are not implemented yet.
1. (Eiger) Registers mapped differently between firmware v20 and v22.
So, please ensure correct on-board server before switching between
firmware versions. Else one cannot ping it anymore. Will need to flash firmware
again to recover.
2. (Gotthard) To switch back to all ADC from single ADC ROI, one must take
even number of images for the receiver to understand complete images.
This will be fixed in the next firmware upgrade.
7. Next Major Release Plans
===========================
Client
------
1. Exceptions thrown to the user to be handled.
2. Compilation using c++11.
3. Support of Mythen II restricted to this major and its minor releases.
4. Restructuring and refactoring of client code.

View File

@ -1 +1 @@
for i in seq `ipcs -m | cut -d ' ' -f1`; do ipcrm -M $i; done;
rm /dev/shm/slsDetectorPackage*;

17
cmk.sh
View File

@ -6,6 +6,7 @@ COMPILERTHREADS=0
TEXTCLIENT=0
RECEIVER=0
GUI=0
DEBUG=0
CLEAN=0
@ -24,6 +25,7 @@ Usage: $0 [-c] [-b] [-h] [-d <HDF5 directory>] [-j]
-r: Build/Rebuilds only receiver
-g: Build/Rebuilds only gui
-j: Number of threads to compile through
-e: Debug mode
For only make:
./cmk.sh
@ -53,7 +55,7 @@ For rebuilding only certain sections
" ; exit 1; }
while getopts ":bchd:j:trg" opt ; do
while getopts ":bchd:j:trge" opt ; do
case $opt in
b)
echo "Building of CMake files Required"
@ -90,7 +92,11 @@ while getopts ":bchd:j:trg" opt ; do
echo "Compiling Options: GUI"
GUI=1
REBUILD=1
;;
;;
e)
echo "Compiling Options: Debug"
DEBUG=1
;;
\?)
echo "Invalid option: -$OPTARG"
usage
@ -145,7 +151,12 @@ else
fi
fi
CMAKE_POST+=" -DCMAKE_BUILD_TYPE=Debug "
#Debug
if [ $DEBUG -eq 1 ]; then
CMAKE_POST+=" -DCMAKE_BUILD_TYPE=Debug "
echo "Debug Option enabled"
fi
#hdf5 rebuild
if [ $HDF5 -eq 1 ]; then

View File

@ -0,0 +1,61 @@
detsizechan 2560 1
hostname bchip074+bchip075+
#replace my_installation_path
settingsdir /my_installation_path/slsDetectorPackage/settingsdir/gotthard
caldir /my_installation_path/slsDetectorPackage/settingsdir/gotthard
0:extsig:0 trigger_in_rising_edge
0:rx_tcpport 1954
0:rx_udpport 50001
0:vhighvoltage 0
1:extsig:0 trigger_in_rising_edge
1:rx_tcpport 1955
1:rx_udpport 50002
#1:detectorip 10.1.1.52
1:vhighvoltage 0
##############################################################################
#########
######### Uncomment this part to use the gotthard25umZmq process
#########
##############################################################################
# #replace my_receiver_hostname with the hostname of IP of the machine where the receiver runs
#0:rx_zmqip my_receiver_hostname
#0:rx_zmqport 30003
# #replace my_client_hostname with the hostname of IP of the machine where the client/GUI or softIOC runs
#0:zmqip my_client_hostname
#0:zmqport 40003
# #replace my_receiver_hostname with the hostname of IP of the machine where the receiver runs
#1:rx_zmqip my_receiver_hostname
#1:rx_zmqport 30004
# #replace my_client_hostname with the hostname of IP of the machine where the client/GUI or softIOC runs
#1:zmqip my_client_hostname
#1:zmqport 40004
##############################################################################
#########
######### until here
#########
##############################################################################
r_readfreq 1
rx_datastream 1
#replace my_receiver_hostname with the hostname of 1Gb IP of the machine where the receiver runs
rx_hostname my_receiver_hostname
rx_datastream 1
outdir /tmp/
angconv none
threaded 1
settings veryhighgain
exptime 0.000005
period 0.0001
vhighvoltage 90

View File

@ -0,0 +1,61 @@
detsizechan 2560 1
hostname bchip074+bchip075+
#replace my_installation_path
settingsdir /my_installation_path/slsDetectorPackage/settingsdir/gotthard
caldir /my_installation_path/slsDetectorPackage/settingsdir/gotthard
0:extsig:0 trigger_in_rising_edge
0:rx_tcpport 1954
0:rx_udpport 50001
0:vhighvoltage 0
1:extsig:0 trigger_in_rising_edge
1:rx_tcpport 1955
1:rx_udpport 50002
#1:detectorip 10.1.1.52
1:vhighvoltage 0
##############################################################################
#########
######### Uncomment this part to use the gotthard25umZmq process
#########
##############################################################################
# #replace my_receiver_hostname with the hostname of IP of the machine where the receiver runs
#0:rx_zmqip my_receiver_hostname
#0:rx_zmqport 30003
# #replace my_client_hostname with the hostname of IP of the machine where the client/GUI or softIOC runs
#0:zmqip my_client_hostname
#0:zmqport 40003
# #replace my_receiver_hostname with the hostname of IP of the machine where the receiver runs
#1:rx_zmqip my_receiver_hostname
#1:rx_zmqport 30004
# #replace my_client_hostname with the hostname of IP of the machine where the client/GUI or softIOC runs
#1:zmqip my_client_hostname
#1:zmqport 40004
##############################################################################
#########
######### until here
#########
##############################################################################
r_readfreq 1
rx_datastream 1
#replace my_receiver_hostname with the hostname of 1Gb IP of the machine where the receiver runs
rx_hostname my_receiver_hostname
rx_datastream 1
outdir /tmp/
angconv none
threaded 1
settings veryhighgain
exptime 0.000005
period 0.0001
vhighvoltage 90

View File

@ -3,12 +3,8 @@ hostname bchip007
#0:port 1952
#0:stopport 1953
#0:rx_tcpport 1956 must also have this in receiver config file
0:settingsdir /home/l_maliakal_d/mySoft/newMythenSoftware/settingsdir/gotthard
0:angdir 1.000000
0:moveflag 0.000000
0:lock 0
0:caldir /home/l_maliakal_d/mySoft/newMythenSoftware/settingsdir/gotthard
0:ffdir /home/l_maliakal_d
0:extsig:0 off
#0:detectorip 129.129.202.9
0:detectormac 00:aa:bb:cc:dd:ee
@ -20,7 +16,6 @@ hostname bchip007
master -1
sync none
outdir /bigRAID/datadir_gotthard/rec_test_data
ffdir /home/l_maliakal_d
headerbefore none
headerafter none
headerbeforepar none
@ -29,4 +24,4 @@ badchannels none
angconv none
globaloff 0.000000
binsize 0.001000
threaded 1

View File

@ -0,0 +1,14 @@
Turn on the two receivers:
slsReceiver --rx_tcpport 1954 &
slsReceiver --rx_tcpport 1955 &
Switch on the photon conversion on the receiver machine (replace my_receiver_hostname):
gotthard25umZmq my_receiver_hostname 30003 my_receiver_hostname 40003 &
Run the configuration file:
sls_detector_put config bchip2modules.config
Start your measurements using the command line, the slsDetectorGui or the EPICS driver

View File

@ -1,18 +1,15 @@
hostname bchip038+
settingsdir /home/mySoft/slsDetectorsPackage/settingsdir/jungfrau
caldir /home/mySoft/slsDetectorsPackage/settingsdir/jungfrau
lock 0
0:rx_udpport 50004
0:rx_udpip 10.1.1.100
0:detectorip 10.1.1.10
rx_hostname pcmoench01
powerchip 1
timing auto
#extsig:0 trigger_in_rising_edge
#timing trigger
outdir /external_pool/jungfrau_data/softwaretest
threaded 1

View File

@ -1,11 +1,6 @@
detsizechan 1024 1024
hostname bchip048+bchip052+
settingsdir /home/mySoft/slsDetectorsPackage/settingsdir/jungfrau
caldir /home/mySoft/slsDetectorsPackage/settingsdir/jungfrau
lock 0
0:rx_udpport 50004
0:rx_udpip 10.1.1.100
0:rx_udpmac F4:52:14:2F:32:00
@ -22,9 +17,9 @@ lock 0
rx_hostname pcmoench01
powerchip 1
extsig:0 trigger_in_rising_edge
timing auto
#extsig:0 trigger_in_rising_edge
#timing trigger
outdir /external_pool/jungfrau_data/softwaretest
threaded 1

View File

@ -0,0 +1,493 @@
hostname bchip020+
patword 0000 0000000000000000
patword 0001 0000000000000000
patword 0002 0008000900080000
patword 0003 0008000900080000
patword 0004 0008000900080000
patword 0005 0008000900080000
patword 0006 0008000900080000
patword 0007 0008000900080000
patword 0008 0008000900080000
patword 0009 0008000900080000
patword 000a 0008000900080000
patword 000b 0008000900080000
patword 000c 0008000900080000
patword 000d 0008000900080000
patword 000e 0008000900080000
patword 000f 0008000900080000
patword 0010 0008000900080000
patword 0011 0008000900080000
patword 0012 0008000900080000
patword 0013 0008000900080000
patword 0014 0008000900080000
patword 0015 0008000900080000
patword 0016 0008400900080020
patword 0017 0008400900080020
patword 0018 0008599f0418503a
patword 0019 0008599f0418503a
patword 001a 0108599f0418503a
patword 001b 0108599f0418503a
patword 001c 0108599f0418503a
patword 001d 0108599f0418503a
patword 001e 0108599f0418503a
patword 001f 0108599f0418503a
patword 0020 0108599f0418503a
patword 0021 0108599f0418503a
patword 0022 0108599f0418503a
patword 0023 0108599f0418503a
patword 0024 0108599f0418503a
patword 0025 0108599f0418503a
patword 0026 0108599f0418503a
patword 0027 0108599f0418503a
patword 0028 0108599f0418503a
patword 0029 0108599f0418503a
patword 002a 0108599f0418503a
patword 002b 0108599f0418503a
patword 002c 0108599f0418503a
patword 002d 0108599f0418503a
patword 002e 0108599f0418503a
patword 002f 0108599f0418503a
patword 0030 0108599f0418503a
patword 0031 0108599f0418503a
patword 0032 0108599f0418503a
patword 0033 0108599f0418503a
patword 0034 0108599f0418503a
patword 0035 0108599f0418503a
patword 0036 0108599f0418503a
patword 0037 0108599f0418503a
patword 0038 0108599f0418503a
patword 0039 0108599f0418503a
patword 003a 0108599f0418503a
patword 003b 0108599f0418503a
patword 003c 0108599f0418503a
patword 003d 0108599f0418503a
patword 003e 0108599f0418503a
patword 003f 0108599f0418503a
patword 0040 0108599f0418503a
patword 0041 0108599f0418503a
patword 0042 0108599f0418503a
patword 0043 0108599f0418503a
patword 0044 0108599f0418503a
patword 0045 0108599f0418503a
patword 0046 0108599f0418503a
patword 0047 0108599f0418503a
patword 0048 0108599f0418503a
patword 0049 0108599f0418503a
patword 004a 0108599f0418503a
patword 004b 0108599f0418503a
patword 004c 0108599f0418503a
patword 004d 0108599f0418503a
patword 004e 0108599f0418503a
patword 004f 0108599f0418503a
patword 0050 0108599f0418503a
patword 0051 0108599f0418503a
patword 0052 0108599f0418503a
patword 0053 0108599f0418503a
patword 0054 0108599f0418503a
patword 0055 0108599f0418503a
patword 0056 0108599f0418503a
patword 0057 0108599f0418503a
patword 0058 0108599f0418503a
patword 0059 0108599f0418503a
patword 005a 0108599f0418503a
patword 005b 0108599f0418503a
patword 005c 0108599f0418503a
patword 005d 0108599f0418503a
patword 005e 0108599f0418503a
patword 005f 0108599f0418503a
patword 0060 0108599f0418503a
patword 0061 0108599f0418503a
patword 0062 0108599f0418503a
patword 0063 0108599f0418503a
patword 0064 0108599f0418503a
patword 0065 0108599f0418503a
patword 0066 0108599f0418503a
patword 0067 0108599f0418503a
patword 0068 0108599f0418503a
patword 0069 0108599f0418503a
patword 006a 0108599f0418503a
patword 006b 0108599f0418503a
patword 006c 0108599f0418503a
patword 006d 0108599f0418503a
patword 006e 0108599f0418503a
patword 006f 0108599f0418503a
patword 0070 0108599f0418503a
patword 0071 0108599f0418503a
patword 0072 0108599f0418503a
patword 0073 0108599f0418503a
patword 0074 0108599f0418503a
patword 0075 0108599f0418503a
patword 0076 0108599f0418503a
patword 0077 0108599f0418503a
patword 0078 0108599f0418503a
patword 0079 0108599f0418503a
patword 007a 0108599f0418503a
patword 007b 0108599f0418503a
patword 007c 0108599f0418503a
patword 007d 0108599f0418503a
patword 007e 010859960418503a
patword 007f 010859960418503a
patword 0080 010859960418503a
patword 0081 010859960418503a
patword 0082 010859960418503a
patword 0083 010859960418503a
patword 0084 010859960418503a
patword 0085 010859960418503a
patword 0086 010859960418503a
patword 0087 010859960418503a
patword 0088 010859960418503a
patword 0089 010859960418503a
patword 008a 010859960418503a
patword 008b 010859960418503a
patword 008c 010859960418503a
patword 008d 010859960418503a
patword 008e 010859960418503a
patword 008f 010859960418503a
patword 0090 010859960418503a
patword 0091 010859960418503a
patword 0092 010819960418501a
patword 0093 010819960418501a
patword 0094 010819960418501a
patword 0095 010819960418501a
patword 0096 030819960418501a
patword 0097 030819960418501a
patword 0098 030819960418501a
patword 0099 030819960418501a
patword 009a 030819960418501a
patword 009b 030819960418501a
patword 009c 030819960418501a
patword 009d 030819960418501a
patword 009e 030819960418501a
patword 009f 030819960418501a
patword 00a0 030819960418501a
patword 00a1 030819960418501a
patword 00a2 030819960418501a
patword 00a3 030819960418501a
patword 00a4 030819960418501a
patword 00a5 030819960418501a
patword 00a6 030819960418501a
patword 00a7 030819960418501a
patword 00a8 030819960418501a
patword 00a9 030819960418501a
patword 00aa 030819960418501a
patword 00ab 030819960418501a
patword 00ac 030819960008501a
patword 00ad 030819960008501a
patword 00ae 030819960008501a
patword 00af 030819960008501a
patword 00b0 030819960008501a
patword 00b1 030819960008501a
patword 00b2 030819960008501a
patword 00b3 030819960008501a
patword 00b4 030819960008501a
patword 00b5 030819960008501a
patword 00b6 030819960008501a
patword 00b7 030819960008501a
patword 00b8 030819960008501a
patword 00b9 030819960008501a
patword 00ba 030819960008501a
patword 00bb 030819960008501a
patword 00bc 030819960008501a
patword 00bd 030819960008501a
patword 00be 030819960008501a
patword 00bf 030819960008501a
patword 00c0 0308199f0008501a
patword 00c1 0308199f0008501a
patword 00c2 0308199f0008501a
patword 00c3 0308199f0008501a
patword 00c4 0308199f0008501a
patword 00c5 0308199f0008501a
patword 00c6 0308199f0008501a
patword 00c7 0308199f0008501a
patword 00c8 0308199f0008501a
patword 00c9 0308199f0008501a
patword 00ca 0308199f0008501a
patword 00cb 0308199f0008501a
patword 00cc 0308199f0008501a
patword 00cd 0308199f0008501a
patword 00ce 0308199f0008501a
patword 00cf 0308199f0008501a
patword 00d0 0308199f0008501a
patword 00d1 0308199f0008501a
patword 00d2 0308199f0008501a
patword 00d3 0308199f0008501a
patword 00d4 0308599f0008503a
patword 00d5 0308599f0008503a
patword 00d6 030c599f000850ba
patword 00d7 030c599f000850ba
patword 00d8 030c599f000850ba
patword 00d9 030c599f000850ba
patword 00da 030c599f000850ba
patword 00db 030c599f000850ba
patword 00dc 030c599f000850ba
patword 00dd 030c599f000850ba
patword 00de 030c599f000850ba
patword 00df 030c599f000850ba
patword 00e0 030c599f000850ba
patword 00e1 030c599f000850ba
patword 00e2 030c599f000850ba
patword 00e3 030c599f000850ba
patword 00e4 030c599f000850ba
patword 00e5 030c599f000850ba
patword 00e6 030c599f000850ba
patword 00e7 030c599f000850ba
patword 00e8 030c599f000850ba
patword 00e9 030c599f000850ba
patword 00ea 030c799f010858ba
patword 00eb 030c799f010858ba
patword 00ec 030c599f000850ba
patword 00ed 030c599f000850ba
patword 00ee 030c599f000850ba
patword 00ef 030c599f000850ba
patword 00f0 030c599f000850ba
patword 00f1 030c599f000850ba
patword 00f2 030c599f000850ba
patword 00f3 030c599f000850ba
patword 00f4 030c599f000850ba
patword 00f5 030c599f000850ba
patword 00f6 030c599f000850ba
patword 00f7 030c599f000850ba
patword 00f8 030c599f000850ba
patword 00f9 030c599f000850ba
patword 00fa 030c599f000850ba
patword 00fb 030c599f000850ba
patword 00fc 030c599f000850ba
patword 00fd 030c599f000850ba
patword 00fe 030c599f000850ba
patword 00ff 030c599f000850ba
patword 0100 030c599f000850ba
patword 0101 030c599f000850ba
patword 0102 030c599f400850ba
patword 0103 030c599f400850ba
patword 0104 030c599f600850ba
patword 0105 030c599f400850ba
patword 0106 030c599f400850ba
patword 0107 030c599f400850ba
patword 0108 870c599f682e50ba
patword 0109 870c599f482850ba
patword 010a 870c599f000e50ba
patword 010b 870c599f000850ba
patword 010c 870c599f000e50ba
patword 010d 870c599f000850ba
patword 010e 870c599f000e50ba
patword 010f 870c599f000850ba
patword 0110 870c599f000e50ba
patword 0111 870c599f000850ba
patword 0112 870c599f000e50ba
patword 0113 870c599f000850ba
patword 0114 870c599f000e50ba
patword 0115 870c599f000850ba
patword 0116 870c599f000e50ba
patword 0117 870c599f000850ba
patword 0118 870c599f000e50ba
patword 0119 870c599f000850ba
patword 011a 870c599f000e50ba
patword 011b 870c599f000850ba
patword 011c 870c599f000e50ba
patword 011d 870c599f000850ba
patword 011e 870c599f000e50ba
patword 011f 870c599f000850ba
patword 0120 870c599f000e50ba
patword 0121 870c599f000850ba
patword 0122 870c599f200e50ba
patword 0123 870c599f000850ba
patword 0124 870c599f000e50ba
patword 0125 870c599f000850ba
patword 0126 870c599f000e50ba
patword 0127 870c599f000850ba
patword 0128 870c599f000e50ba
patword 0129 870c599f000850ba
patword 012a 870c599f000e50ba
patword 012b 870c599f000850ba
patword 012c 870c599f000e50ba
patword 012d 870c599f000850ba
patword 012e 870c599f000e50ba
patword 012f 870c599f000850ba
patword 0130 870c599f000e50ba
patword 0131 870c599f000850ba
patword 0132 870c599f000e50ba
patword 0133 870c599f000850ba
patword 0134 870c599f000e50ba
patword 0135 870c599f000850ba
patword 0136 870c599f000e50ba
patword 0137 870c599f000850ba
patword 0138 870c599f000e50ba
patword 0139 870c599f000850ba
patword 013a 870c599f282e50ba
patword 013b 870c599f082850ba
patword 013c 870c599f000e50ba
patword 013d 870c599f000850ba
patword 013e 870c599f000e50ba
patword 013f 870c599f000850ba
patword 0140 870c599f000e50ba
patword 0141 870c599f000850ba
patword 0142 870c599f000e50ba
patword 0143 870c599f000850ba
patword 0144 870c599f000e50ba
patword 0145 870c599f000850ba
patword 0146 870c599f000e50ba
patword 0147 870c599f000850ba
patword 0148 870c599f000e50ba
patword 0149 870c599f000850ba
patword 014a 870c599f000e50ba
patword 014b 870c599f000850ba
patword 014c 870c599f000e50ba
patword 014d 870c599f000850ba
patword 014e 870c599f000e50ba
patword 014f 870c599f000850ba
patword 0150 870c599f000e50ba
patword 0151 870c599f000850ba
patword 0152 870c599f000e50ba
patword 0153 870c599f000850ba
patword 0154 870c599f200e50ba
patword 0155 870c599f000850ba
patword 0156 870c599f000e50ba
patword 0157 870c599f000850ba
patword 0158 870c599f000e50ba
patword 0159 870c599f000850ba
patword 015a 870c599f000e50ba
patword 015b 870c599f000850ba
patword 015c 870c599f000e50ba
patword 015d 870c599f000850ba
patword 015e 870c599f000e50ba
patword 015f 870c599f000850ba
patword 0160 870c599f000e50ba
patword 0161 870c599f000850ba
patword 0162 870c599f000e50ba
patword 0163 870c599f000850ba
patword 0164 870c599f000e50ba
patword 0165 870c599f000850ba
patword 0166 870c599f000e50ba
patword 0167 870c599f000850ba
patword 0168 870c599f000e50ba
patword 0169 870c599f000850ba
patword 016a 870c599f000e50ba
patword 016b 870c599f000850ba
patword 016c 070c599f000850ba
patword 016d 070c599f000850ba
patword 016e 000c599f000850ba
patword 016f 000c599f000850ba
patword 0170 0008599f200e503a
patword 0171 0008599f0008503a
patword 0172 0008599f200e503a
patword 0173 0008599f0008503a
patword 0174 0008599f0008503a
patword 0175 0008599f0008503a
patword 0176 0008599f0008503a
patword 0177 0008599f0008503a
patword 0178 0008599f0008503a
patword 0179 0008599f0008503a
patword 017a 0008599f0008503a
patword 017b 0008599f0008503a
patword 017c 0008599f0008503a
patword 017d 0008599f0008503a
patword 017e 0008599f0008503a
patword 017f 0008599f0008503a
patword 0180 0008599f0008503a
patword 0181 0008599f0008503a
patword 0182 0008599f0008503a
patword 0183 0008599f0008503a
patword 0184 0008599f0008503a
patword 0185 0008599f0008503a
patword 0186 0008599f0008503a
patword 0187 0008599f0008503a
patword 0188 0008599f0008503a
patword 0189 0008599f0008503a
patword 018a 0008599f0008503a
patword 018b 0008599f0008503a
patword 018c 0008599f0008503a
patword 018d 0008599f0008503a
patioctrl 8f0effff6dbffdbf
patclkctrl 0000000000000000
patlimits 0000 018c
patloop0 013a 016b
patnloop0 199
patloop1 0400 0400
patnloop1 0
patloop2 0400 0400
patnloop2 0
patwait0 00aa
patwaittime0 40000
patwait1 0400
patwaittime1 0
patwait2 0400
patwaittime2 0
####mcp2011
0:rx_tcpport 1954
0:rx_udpip 10.1.1.102
0:detectorip 10.1.1.19
0:rx_udpport 32411
####gui listening to
zmqip 129.129.202.106
zmqport 50001
####data streaming out of
rx_zmqip 10.1.2.103
rx_zmqport 50003
0:rx_hostname mpc2011
####pcmoench01
#0:rx_tcpport 1977
#0:rx_udpip 10.1.1.100
#0:detectorip 10.1.1.19
#0:rx_udpport 32410
####gui listening to (on receiver pc)
#zmqip 129.129.202.92
#zmqport 50001
####data streaming out of
#rx_zmqip 10.1.1.100
#rx_zmqport 50003
#0:rx_hostname mx-test-1
#turn on datastream from commandline
rx_datastream 1
r_readfreq 1
#0:configuremac -1
rx_datastream 1
r_readfreq 1
dac:6 800
dac:0 1300
dac:4 1428
dac:1 1000
dac:7 900
dac:3 680
dac:2 1400
dac:5 1200
adcinvert 4a342593
samples 5000
adcphase 90
adcpipeline 15
adcreg 14 40
powerchip 1
vhighvoltage 90
period 0.005
frames 100
period 0.1
outdir /scratch/
enablefwrite 0

View File

@ -8,13 +8,11 @@ hostname bchip007+bchip009+
#0:port 1952
#0:stopport 1953
#0:rx_tcpport 1956
0:settingsdir /home/l_msdetect/dhanya/slsDetectorsPackage/settingsdir/gotthard
0:angdir 1.000000
0:moveflag 0.000000
0:lock 0
0:caldir /home/l_msdetect/dhanya/slsDetectorsPackage/settingsdir/gotthard
0:ffdir /home/l_msdetect
0:extsig:0 off
0:detectorip 10.1.1.2
#0:detectormac 00:aa:bb:cc:dd:ee
#0:rx_udpport 50001
@ -28,13 +26,11 @@ hostname bchip007+bchip009+
#1:port 1952
#1:stopport 1953
1:rx_tcpport 1957
1:settingsdir /home/l_msdetect/dhanya/slsDetectorsPackage/settingsdir/gotthard
1:angdir 1.000000
1:moveflag 0.000000
1:lock 0
1:caldir /home/l_msdetect/dhanya/slsDetectorsPackage/settingsdir/gotthard
1:ffdir /home/l_msdetect
1:extsig:0 off
1:detectorip 10.1.2.2
#1:detectormac 00:aa:bb:cc:dd:ee
1:rx_udpport 50004
@ -56,4 +52,4 @@ badchannels none
angconv none
globaloff 0.000000
binsize 0.001000
threaded 1

View File

@ -1 +0,0 @@
No implementation found for style `graphicx'

View File

@ -1,30 +0,0 @@
/* Century Schoolbook font is very similar to Computer Modern Math: cmmi */
.MATH { font-family: "Century Schoolbook", serif; }
.MATH I { font-family: "Century Schoolbook", serif; font-style: italic }
.BOLDMATH { font-family: "Century Schoolbook", serif; font-weight: bold }
/* implement both fixed-size and relative sizes */
SMALL.XTINY { font-size : xx-small }
SMALL.TINY { font-size : x-small }
SMALL.SCRIPTSIZE { font-size : smaller }
SMALL.FOOTNOTESIZE { font-size : small }
SMALL.SMALL { }
BIG.LARGE { }
BIG.XLARGE { font-size : large }
BIG.XXLARGE { font-size : x-large }
BIG.HUGE { font-size : larger }
BIG.XHUGE { font-size : xx-large }
/* heading styles */
H1 { }
H2 { }
H3 { }
H4 { }
H5 { }
/* mathematics styles */
DIV.displaymath { } /* math displays */
TD.eqno { } /* equation-number cells */
/* document-specific styles come next */

View File

@ -1,84 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2008 (1.71)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Angular calibration wizard manual</TITLE>
<META NAME="description" CONTENT="Angular calibration wizard manual">
<META NAME="keywords" CONTENT="angularCalibrationHowTo">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="angularCalibrationHowTo.css">
<LINK REL="next" HREF="node1.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html6"
HREF="node1.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up_g.png">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev_g.png">
<BR>
<B> Next:</B> <A NAME="tex2html7"
HREF="node1.html">Introduction</A>
<BR>
<BR>
<!--End of Navigation Panel-->
<P>
<H1 ALIGN="CENTER">Angular calibration wizard manual</H1>
<DIV>
<P ALIGN="CENTER"><STRONG>Anna Bergamaschi</STRONG></P>
<P ALIGN="CENTER"><STRONG>March 12, 2018</STRONG></P>
</DIV>
<P>
<BR><HR>
<!--Table of Child-Links-->
<A NAME="CHILD_LINKS"></A>
<UL>
<LI><A NAME="tex2html8"
HREF="node1.html">Introduction</A>
<LI><A NAME="tex2html9"
HREF="node2.html">Data acquisition</A>
<UL>
<LI><A NAME="tex2html10"
HREF="node2.html#SECTION00021000000000000000">Software</A>
</UL>
<BR>
<LI><A NAME="tex2html11"
HREF="node3.html">Data analysis</A>
<UL>
<LI><A NAME="tex2html12"
HREF="node3.html#SECTION00031000000000000000">Software</A>
</UL>
<BR>
<LI><A NAME="tex2html13"
HREF="node4.html">Setup calibration files</A>
<LI><A NAME="tex2html14"
HREF="node5.html">About this document ...</A>
</UL>
<!--End of Table of Child-Links-->
<BR><HR>
<ADDRESS>
Thattil Dhanya
2018-03-12
</ADDRESS>
</BODY>
</HTML>

View File

@ -1 +0,0 @@
\relax

View File

@ -1,236 +0,0 @@
This is pdfTeXk, Version 3.141592-1.40.3 (Web2C 7.5.6) (format=latex 2014.12.17) 12 MAR 2018 15:45
entering extended mode
%&-line parsing enabled.
**./images.tex
(./images.tex
LaTeX2e <2005/12/01>
Babel <v3.8h> and hyphenation patterns for english, usenglishmax, dumylang, noh
yphenation, arabic, basque, bulgarian, coptic, welsh, czech, slovak, german, ng
erman, danish, esperanto, spanish, catalan, galician, estonian, farsi, finnish,
french, greek, monogreek, ancientgreek, croatian, hungarian, interlingua, ibyc
us, indonesian, icelandic, italian, latin, mongolian, dutch, norsk, polish, por
tuguese, pinyin, romanian, russian, slovenian, uppersorbian, serbian, swedish,
turkish, ukenglish, ukrainian, loaded.
(/usr/share/texmf/tex/latex/base/article.cls
Document Class: article 2005/09/16 v1.4f Standard LaTeX document class
(/usr/share/texmf/tex/latex/base/size10.clo
File: size10.clo 2005/09/16 v1.4f Standard LaTeX file (size option)
)
\c@part=\count79
\c@section=\count80
\c@subsection=\count81
\c@subsubsection=\count82
\c@paragraph=\count83
\c@subparagraph=\count84
\c@figure=\count85
\c@table=\count86
\abovecaptionskip=\skip41
\belowcaptionskip=\skip42
\bibindent=\dimen102
) (/usr/share/texmf/tex/latex/base/ifthen.sty
Package: ifthen 2001/05/26 v1.1c Standard LaTeX ifthen package (DPC)
) (/usr/share/texmf/tex/latex/amsfonts/amssymb.sty
Package: amssymb 2002/01/22 v2.2d
(/usr/share/texmf/tex/latex/amsfonts/amsfonts.sty
Package: amsfonts 2001/10/25 v2.2f
\@emptytoks=\toks14
\symAMSa=\mathgroup4
\symAMSb=\mathgroup5
LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold'
(Font) U/euf/m/n --> U/euf/b/n on input line 132.
)) (/usr/share/texmf/tex/latex/graphics/graphicx.sty
Package: graphicx 1999/02/16 v1.0f Enhanced LaTeX Graphics (DPC,SPQR)
(/usr/share/texmf/tex/latex/graphics/keyval.sty
Package: keyval 1999/03/16 v1.13 key=value parser (DPC)
\KV@toks@=\toks15
) (/usr/share/texmf/tex/latex/graphics/graphics.sty
Package: graphics 2006/02/20 v1.0o Standard LaTeX Graphics (DPC,SPQR)
(/usr/share/texmf/tex/latex/graphics/trig.sty
Package: trig 1999/03/16 v1.09 sin cos tan (DPC)
) (/usr/share/texmf/tex/latex/config/graphics.cfg
File: graphics.cfg 2007/01/18 v1.5 graphics configuration of teTeX/TeXLive
)
Package graphics Info: Driver file: dvips.def on input line 90.
(/usr/share/texmf/tex/latex/graphics/dvips.def
File: dvips.def 1999/02/16 v3.0i Driver-dependant file (DPC,SPQR)
))
\Gin@req@height=\dimen103
\Gin@req@width=\dimen104
) (/usr/share/texmf/tex/latex/tools/verbatim.sty
Package: verbatim 2003/08/22 v1.5q LaTeX2e package for verbatim enhancements
\every@verbatim=\toks16
\verbatim@line=\toks17
\verbatim@in@stream=\read1
) (/usr/share/texmf/tex/latex/graphics/color.sty
Package: color 2005/11/14 v1.0j Standard LaTeX Color (DPC)
(/usr/share/texmf/tex/latex/config/color.cfg
File: color.cfg 2007/01/18 v1.5 color configuration of teTeX/TeXLive
)
Package color Info: Driver file: dvips.def on input line 130.
(/usr/share/texmf/tex/latex/graphics/dvipsnam.def
File: dvipsnam.def 1999/02/16 v3.0i Driver-dependant file (DPC,SPQR)
)) (/usr/share/texmf/tex/latex/base/inputenc.sty
Package: inputenc 2006/05/05 v1.1b Input encoding file
\inpenc@prehook=\toks18
\inpenc@posthook=\toks19
)
\sizebox=\box26
\lthtmlwrite=\write3
(./images.aux)
\openout1 = `images.aux'.
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 116.
LaTeX Font Info: ... okay on input line 116.
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 116.
LaTeX Font Info: ... okay on input line 116.
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 116.
LaTeX Font Info: ... okay on input line 116.
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 116.
LaTeX Font Info: ... okay on input line 116.
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 116.
LaTeX Font Info: ... okay on input line 116.
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 116.
LaTeX Font Info: ... okay on input line 116.
latex2htmlLength hsize=349.0pt
latex2htmlLength vsize=633.0pt
latex2htmlLength hoffset=0.0pt
latex2htmlLength voffset=0.0pt
latex2htmlLength topmargin=0.0pt
latex2htmlLength topskip=0.00003pt
latex2htmlLength headheight=0.0pt
latex2htmlLength headsep=0.0pt
latex2htmlLength parskip=0.0pt plus 1.0pt
latex2htmlLength oddsidemargin=62.0pt
latex2htmlLength evensidemargin=62.0pt
LaTeX Font Info: Try loading font information for U+msa on input line 141.
(/usr/share/texmf/tex/latex/amsfonts/umsa.fd
File: umsa.fd 2002/01/19 v2.2g AMS font definitions
)
LaTeX Font Info: Try loading font information for U+msb on input line 141.
(/usr/share/texmf/tex/latex/amsfonts/umsb.fd
File: umsb.fd 2002/01/19 v2.2g AMS font definitions
)
l2hSize :tex2html_wrap_inline84:6.94444pt::0.0pt::5.47226pt.
[1
]
l2hSize :tex2html_wrap_inline86:7.33331pt::7.33331pt::24.82152pt.
[2
]
l2hSize :tex2html_wrap_inline88:6.59525pt::0.0pt::3.94516pt.
[3
]
l2hSize :tex2html_wrap_inline90:7.33331pt::7.33331pt::12.57195pt.
[4
]
l2hSize :displaymath18:22.88544pt::0.0pt::349.0pt.
[5
]
l2hSize :tex2html_wrap_inline94:8.76085pt::8.76085pt::12.72505pt.
[6
]
l2hSize :tex2html_wrap_inline96:8.76085pt::8.76085pt::31.20164pt.
[7
]
l2hSize :tex2html_wrap_inline98:8.26085pt::0.0pt::11.49947pt.
[8
]
l2hSize :tex2html_wrap_inline102:6.95831pt::6.95831pt::47.00348pt.
[9
]
l2hSize :tex2html_wrap_inline106:6.95831pt::6.95831pt::4.98616pt.
[10
]
l2hSize :tex2html_wrap_inline108:6.95831pt::6.95831pt::6.52551pt.
[11
]
l2hSize :tex2html_wrap_inline110:6.95831pt::6.95831pt::8.27783pt.
[12
]
l2hSize :tex2html_wrap_inline120:8.76085pt::8.76085pt::21.53073pt.
[13
]
File: enable_angcal.eps Graphic file (type eps)
<enable_angcal.eps>
l2hSize :tex2html_wrap330:378.81322pt::0.0pt::349.0pt.
[14
]
File: position_scan.eps Graphic file (type eps)
<position_scan.eps>
l2hSize :tex2html_wrap334:378.81322pt::0.0pt::349.0pt.
[15
]
File: setupAngcal.eps Graphic file (type eps)
<setupAngcal.eps>
l2hSize :tex2html_wrap340:444.03647pt::0.0pt::349.0pt.
[16
]
File: peakFit.eps Graphic file (type eps)
<peakFit.eps>
l2hSize :tex2html_wrap344:444.03647pt::0.0pt::349.0pt.
[17
]
File: angleFit.eps Graphic file (type eps)
<angleFit.eps>
l2hSize :tex2html_wrap348:444.03647pt::0.0pt::349.0pt.
[18
] (./images.aux) )
Here is how much of TeX's memory you used:
1145 strings out of 256217
14220 string characters out of 1917094
57024 words of memory out of 1500000
4454 multiletter control sequences out of 10000+200000
5339 words of font info for 22 fonts, out of 1200000 for 2000
645 hyphenation exceptions out of 8191
25i,6n,24p,212b,199s stack positions out of 5000i,500n,6000p,200000b,15000s
Output written on images.dvi (18 pages, 4432 bytes).

View File

@ -1,116 +0,0 @@
# LaTeX2HTML 2008 (1.71)
# Associate images original text with physical files.
$key = q/Theta_e;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="24" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img4.png"
ALT="$\Theta_e$">|;
$key = q/C_{center}^{i};MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="53" HEIGHT="36" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img7.png"
ALT="$C_{center}^{i}$">|;
$key = q/i;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="10" HEIGHT="17" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img3.png"
ALT="$i$">|;
$key = q/mu;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="14" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img11.png"
ALT="$\mu$">|;
$key = q/Theta_o^i;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="24" HEIGHT="36" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img6.png"
ALT="$\Theta_o^i$">|;
$key = q/includegraphics[width=textwidth]{enable_angcal.eps};AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="555" HEIGHT="603" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img14.png"
ALT="\includegraphics[width=\textwidth]{enable_angcal.eps}">|;
$key = q/p=50~mum;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="79" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img9.png"
ALT="$p=50&nbsp;\mu m$">|;
$key = q/_6;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="12" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img10.png"
ALT="$_6$">|;
$key = q/C_{peak};MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="43" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img2.png"
ALT="$C_{peak}$">|;
$key = q/includegraphics[width=textwidth]{peakFit.eps};AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="555" HEIGHT="707" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img17.png"
ALT="\includegraphics[width=\textwidth]{peakFit.eps}">|;
$key = q/pslashR^i;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="38" HEIGHT="36" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img13.png"
ALT="$p/R^i$">|;
$key = q/includegraphics[width=textwidth]{setupAngcal.eps};AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="555" HEIGHT="707" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img16.png"
ALT="\includegraphics[width=\textwidth]{setupAngcal.eps}">|;
$key = q/pm;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="17" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img12.png"
ALT="$\pm$">|;
$key = q/includegraphics[width=textwidth]{angleFit.eps};AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="555" HEIGHT="707" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img18.png"
ALT="\includegraphics[width=\textwidth]{angleFit.eps}">|;
$key = q/{displaymath}Theta_e=Theta_o^i-arctanBig(frac{pcdot(C_{peak}-C_{center}^i)}{R^i}Big),{displaymath};MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="291" HEIGHT="41" BORDER="0"
SRC="|."$dir".q|img5.png"
ALT="\begin{displaymath}
\Theta_e=\Theta_o^i-\arctan\Big(\frac{p \cdot (C_{peak}-C_{center}^i)}{R^i}\Big),
\end{displaymath}">|;
$key = q/theta;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="12" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img1.png"
ALT="$\theta$">|;
$key = q/R^i;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="22" HEIGHT="16" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img8.png"
ALT="$R^i$">|;
$key = q/includegraphics[width=textwidth]{position_scan.eps};AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="555" HEIGHT="603" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img15.png"
ALT="\includegraphics[width=\textwidth]{position_scan.eps}">|;
1;

View File

@ -1,255 +0,0 @@
\batchmode
\documentclass{article}
\RequirePackage{ifthen}
\usepackage{amssymb}
\usepackage[dvips]{graphicx}
\usepackage{verbatim}
\usepackage[dvips]{color}
\pagecolor[gray]{.7}
\usepackage[]{inputenc}
\makeatletter
\makeatletter
\count@=\the\catcode`\_ \catcode`\_=8
\newenvironment{tex2html_wrap}{}{}%
\catcode`\<=12\catcode`\_=\count@
\newcommand{\providedcommand}[1]{\expandafter\providecommand\csname #1\endcsname}%
\newcommand{\renewedcommand}[1]{\expandafter\providecommand\csname #1\endcsname{}%
\expandafter\renewcommand\csname #1\endcsname}%
\newcommand{\newedenvironment}[1]{\newenvironment{#1}{}{}\renewenvironment{#1}}%
\let\newedcommand\renewedcommand
\let\renewedenvironment\newedenvironment
\makeatother
\let\mathon=$
\let\mathoff=$
\ifx\AtBeginDocument\undefined \newcommand{\AtBeginDocument}[1]{}\fi
\newbox\sizebox
\setlength{\hoffset}{0pt}\setlength{\voffset}{0pt}
\addtolength{\textheight}{\footskip}\setlength{\footskip}{0pt}
\addtolength{\textheight}{\topmargin}\setlength{\topmargin}{0pt}
\addtolength{\textheight}{\headheight}\setlength{\headheight}{0pt}
\addtolength{\textheight}{\headsep}\setlength{\headsep}{0pt}
\setlength{\textwidth}{349pt}
\newwrite\lthtmlwrite
\makeatletter
\let\realnormalsize=\normalsize
\global\topskip=2sp
\def\preveqno{}\let\real@float=\@float \let\realend@float=\end@float
\def\@float{\let\@savefreelist\@freelist\real@float}
\def\liih@math{\ifmmode$\else\bad@math\fi}
\def\end@float{\realend@float\global\let\@freelist\@savefreelist}
\let\real@dbflt=\@dbflt \let\end@dblfloat=\end@float
\let\@largefloatcheck=\relax
\let\if@boxedmulticols=\iftrue
\def\@dbflt{\let\@savefreelist\@freelist\real@dbflt}
\def\adjustnormalsize{\def\normalsize{\mathsurround=0pt \realnormalsize
\parindent=0pt\abovedisplayskip=0pt\belowdisplayskip=0pt}%
\def\phantompar{\csname par\endcsname}\normalsize}%
\def\lthtmltypeout#1{{\let\protect\string \immediate\write\lthtmlwrite{#1}}}%
\newcommand\lthtmlhboxmathA{\adjustnormalsize\setbox\sizebox=\hbox\bgroup\kern.05em }%
\newcommand\lthtmlhboxmathB{\adjustnormalsize\setbox\sizebox=\hbox to\hsize\bgroup\hfill }%
\newcommand\lthtmlvboxmathA{\adjustnormalsize\setbox\sizebox=\vbox\bgroup %
\let\ifinner=\iffalse \let\)\liih@math }%
\newcommand\lthtmlboxmathZ{\@next\next\@currlist{}{\def\next{\voidb@x}}%
\expandafter\box\next\egroup}%
\newcommand\lthtmlmathtype[1]{\gdef\lthtmlmathenv{#1}}%
\newcommand\lthtmllogmath{\dimen0\ht\sizebox \advance\dimen0\dp\sizebox
\ifdim\dimen0>.95\vsize
\lthtmltypeout{%
*** image for \lthtmlmathenv\space is too tall at \the\dimen0, reducing to .95 vsize ***}%
\ht\sizebox.95\vsize \dp\sizebox\z@ \fi
\lthtmltypeout{l2hSize %
:\lthtmlmathenv:\the\ht\sizebox::\the\dp\sizebox::\the\wd\sizebox.\preveqno}}%
\newcommand\lthtmlfigureA[1]{\let\@savefreelist\@freelist
\lthtmlmathtype{#1}\lthtmlvboxmathA}%
\newcommand\lthtmlpictureA{\bgroup\catcode`\_=8 \lthtmlpictureB}%
\newcommand\lthtmlpictureB[1]{\lthtmlmathtype{#1}\egroup
\let\@savefreelist\@freelist \lthtmlhboxmathB}%
\newcommand\lthtmlpictureZ[1]{\hfill\lthtmlfigureZ}%
\newcommand\lthtmlfigureZ{\lthtmlboxmathZ\lthtmllogmath\copy\sizebox
\global\let\@freelist\@savefreelist}%
\newcommand\lthtmldisplayA{\bgroup\catcode`\_=8 \lthtmldisplayAi}%
\newcommand\lthtmldisplayAi[1]{\lthtmlmathtype{#1}\egroup\lthtmlvboxmathA}%
\newcommand\lthtmldisplayB[1]{\edef\preveqno{(\theequation)}%
\lthtmldisplayA{#1}\let\@eqnnum\relax}%
\newcommand\lthtmldisplayZ{\lthtmlboxmathZ\lthtmllogmath\lthtmlsetmath}%
\newcommand\lthtmlinlinemathA{\bgroup\catcode`\_=8 \lthtmlinlinemathB}
\newcommand\lthtmlinlinemathB[1]{\lthtmlmathtype{#1}\egroup\lthtmlhboxmathA
\vrule height1.5ex width0pt }%
\newcommand\lthtmlinlineA{\bgroup\catcode`\_=8 \lthtmlinlineB}%
\newcommand\lthtmlinlineB[1]{\lthtmlmathtype{#1}\egroup\lthtmlhboxmathA}%
\newcommand\lthtmlinlineZ{\egroup\expandafter\ifdim\dp\sizebox>0pt %
\expandafter\centerinlinemath\fi\lthtmllogmath\lthtmlsetinline}
\newcommand\lthtmlinlinemathZ{\egroup\expandafter\ifdim\dp\sizebox>0pt %
\expandafter\centerinlinemath\fi\lthtmllogmath\lthtmlsetmath}
\newcommand\lthtmlindisplaymathZ{\egroup %
\centerinlinemath\lthtmllogmath\lthtmlsetmath}
\def\lthtmlsetinline{\hbox{\vrule width.1em \vtop{\vbox{%
\kern.1em\copy\sizebox}\ifdim\dp\sizebox>0pt\kern.1em\else\kern.3pt\fi
\ifdim\hsize>\wd\sizebox \hrule depth1pt\fi}}}
\def\lthtmlsetmath{\hbox{\vrule width.1em\kern-.05em\vtop{\vbox{%
\kern.1em\kern0.8 pt\hbox{\hglue.17em\copy\sizebox\hglue0.8 pt}}\kern.3pt%
\ifdim\dp\sizebox>0pt\kern.1em\fi \kern0.8 pt%
\ifdim\hsize>\wd\sizebox \hrule depth1pt\fi}}}
\def\centerinlinemath{%
\dimen1=\ifdim\ht\sizebox<\dp\sizebox \dp\sizebox\else\ht\sizebox\fi
\advance\dimen1by.5pt \vrule width0pt height\dimen1 depth\dimen1
\dp\sizebox=\dimen1\ht\sizebox=\dimen1\relax}
\def\lthtmlcheckvsize{\ifdim\ht\sizebox<\vsize
\ifdim\wd\sizebox<\hsize\expandafter\hfill\fi \expandafter\vfill
\else\expandafter\vss\fi}%
\providecommand{\selectlanguage}[1]{}%
\makeatletter \tracingstats = 1
\begin{document}
\pagestyle{empty}\thispagestyle{empty}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength hsize=\the\hsize}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength vsize=\the\vsize}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength hoffset=\the\hoffset}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength voffset=\the\voffset}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength topmargin=\the\topmargin}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength topskip=\the\topskip}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength headheight=\the\headheight}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength headsep=\the\headsep}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength parskip=\the\parskip}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength oddsidemargin=\the\oddsidemargin}\lthtmltypeout{}%
\makeatletter
\if@twoside\lthtmltypeout{latex2htmlLength evensidemargin=\the\evensidemargin}%
\else\lthtmltypeout{latex2htmlLength evensidemargin=\the\oddsidemargin}\fi%
\lthtmltypeout{}%
\makeatother
\setcounter{page}{1}
\onecolumn
% !!! IMAGES START HERE !!!
\stepcounter{section}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline84}%
$\theta$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline86}%
$C_{peak}$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline88}%
$i$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline90}%
$\Theta_e$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmldisplayA{displaymath18}%
\begin{displaymath}
\Theta_e=\Theta_o^i-\arctan\Big(\frac{p \cdot (C_{peak}-C_{center}^i)}{R^i}\Big),
\end{displaymath}%
\lthtmldisplayZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline94}%
$\Theta_o^i$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline96}%
$C_{center}^{i}$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline98}%
$R^i$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline102}%
$p=50~\mu m$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline106}%
$_6$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline108}%
$\mu$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline110}%
$\pm$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
\stepcounter{section}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline120}%
$p/R^i$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
\stepcounter{subsection}
{\newpage\clearpage
\lthtmlpictureA{tex2html_wrap330}%
\includegraphics[width=\textwidth]{enable_angcal.eps}%
\lthtmlpictureZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlpictureA{tex2html_wrap334}%
\includegraphics[width=\textwidth]{position_scan.eps}%
\lthtmlpictureZ
\lthtmlcheckvsize\clearpage}
\stepcounter{section}
\stepcounter{subsection}
{\newpage\clearpage
\lthtmlpictureA{tex2html_wrap340}%
\includegraphics[width=\textwidth]{setupAngcal.eps}%
\lthtmlpictureZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlpictureA{tex2html_wrap344}%
\includegraphics[width=\textwidth]{peakFit.eps}%
\lthtmlpictureZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlpictureA{tex2html_wrap348}%
\includegraphics[width=\textwidth]{angleFit.eps}%
\lthtmlpictureZ
\lthtmlcheckvsize\clearpage}
\stepcounter{section}
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 206 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 184 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 223 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 159 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 365 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 70 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 330 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 181 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 253 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 286 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 371 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 241 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 458 B

View File

@ -1,84 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2008 (1.71)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Angular calibration wizard manual</TITLE>
<META NAME="description" CONTENT="Angular calibration wizard manual">
<META NAME="keywords" CONTENT="angularCalibrationHowTo">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="angularCalibrationHowTo.css">
<LINK REL="next" HREF="node1.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html6"
HREF="node1.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up_g.png">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev_g.png">
<BR>
<B> Next:</B> <A NAME="tex2html7"
HREF="node1.html">Introduction</A>
<BR>
<BR>
<!--End of Navigation Panel-->
<P>
<H1 ALIGN="CENTER">Angular calibration wizard manual</H1>
<DIV>
<P ALIGN="CENTER"><STRONG>Anna Bergamaschi</STRONG></P>
<P ALIGN="CENTER"><STRONG>March 12, 2018</STRONG></P>
</DIV>
<P>
<BR><HR>
<!--Table of Child-Links-->
<A NAME="CHILD_LINKS"></A>
<UL>
<LI><A NAME="tex2html8"
HREF="node1.html">Introduction</A>
<LI><A NAME="tex2html9"
HREF="node2.html">Data acquisition</A>
<UL>
<LI><A NAME="tex2html10"
HREF="node2.html#SECTION00021000000000000000">Software</A>
</UL>
<BR>
<LI><A NAME="tex2html11"
HREF="node3.html">Data analysis</A>
<UL>
<LI><A NAME="tex2html12"
HREF="node3.html#SECTION00031000000000000000">Software</A>
</UL>
<BR>
<LI><A NAME="tex2html13"
HREF="node4.html">Setup calibration files</A>
<LI><A NAME="tex2html14"
HREF="node5.html">About this document ...</A>
</UL>
<!--End of Table of Child-Links-->
<BR><HR>
<ADDRESS>
Thattil Dhanya
2018-03-12
</ADDRESS>
</BODY>
</HTML>

View File

@ -1,30 +0,0 @@
# LaTeX2HTML 2008 (1.71)
# Associate internals original text with physical files.
$key = q/fig:guiangcallog/;
$ref_files{$key} = "$dir".q|node2.html|;
$noresave{$key} = "$nosave";
$key = q/fig:guiposscan/;
$ref_files{$key} = "$dir".q|node2.html|;
$noresave{$key} = "$nosave";
$key = q/fig:peakfit/;
$ref_files{$key} = "$dir".q|node3.html|;
$noresave{$key} = "$nosave";
$key = q/eq:angcal/;
$ref_files{$key} = "$dir".q|node1.html|;
$noresave{$key} = "$nosave";
$key = q/fig:setangcal/;
$ref_files{$key} = "$dir".q|node3.html|;
$noresave{$key} = "$nosave";
$key = q/fig:anglefit/;
$ref_files{$key} = "$dir".q|node3.html|;
$noresave{$key} = "$nosave";
1;

View File

@ -1,61 +0,0 @@
# LaTeX2HTML 2008 (1.71)
# Associate labels original text with physical files.
$key = q/fig:guiangcallog/;
$external_labels{$key} = "$URL/" . q|node2.html|;
$noresave{$key} = "$nosave";
$key = q/fig:guiposscan/;
$external_labels{$key} = "$URL/" . q|node2.html|;
$noresave{$key} = "$nosave";
$key = q/fig:peakfit/;
$external_labels{$key} = "$URL/" . q|node3.html|;
$noresave{$key} = "$nosave";
$key = q/eq:angcal/;
$external_labels{$key} = "$URL/" . q|node1.html|;
$noresave{$key} = "$nosave";
$key = q/fig:setangcal/;
$external_labels{$key} = "$URL/" . q|node3.html|;
$noresave{$key} = "$nosave";
$key = q/fig:anglefit/;
$external_labels{$key} = "$URL/" . q|node3.html|;
$noresave{$key} = "$nosave";
1;
# LaTeX2HTML 2008 (1.71)
# labels from external_latex_labels array.
$key = q/fig:guiangcallog/;
$external_latex_labels{$key} = q|1|;
$noresave{$key} = "$nosave";
$key = q/fig:guiposscan/;
$external_latex_labels{$key} = q|2|;
$noresave{$key} = "$nosave";
$key = q/fig:peakfit/;
$external_latex_labels{$key} = q|4|;
$noresave{$key} = "$nosave";
$key = q/eq:angcal/;
$external_latex_labels{$key} = q|1|;
$noresave{$key} = "$nosave";
$key = q/fig:setangcal/;
$external_latex_labels{$key} = q|3|;
$noresave{$key} = "$nosave";
$key = q/fig:anglefit/;
$external_latex_labels{$key} = q|5|;
$noresave{$key} = "$nosave";
1;

View File

@ -1,186 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2008 (1.71)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Introduction</TITLE>
<META NAME="description" CONTENT="Introduction">
<META NAME="keywords" CONTENT="angularCalibrationHowTo">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="angularCalibrationHowTo.css">
<LINK REL="next" HREF="node2.html">
<LINK REL="previous" HREF="angularCalibrationHowTo.html">
<LINK REL="up" HREF="angularCalibrationHowTo.html">
<LINK REL="next" HREF="node2.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html23"
HREF="node2.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<A NAME="tex2html21"
HREF="angularCalibrationHowTo.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up.png"></A>
<A NAME="tex2html15"
HREF="angularCalibrationHowTo.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html24"
HREF="node2.html">Data acquisition</A>
<B> Up:</B> <A NAME="tex2html22"
HREF="angularCalibrationHowTo.html">Angular calibration wizard manual</A>
<B> Previous:</B> <A NAME="tex2html16"
HREF="angularCalibrationHowTo.html">Angular calibration wizard manual</A>
<BR>
<BR>
<!--End of Navigation Panel-->
<H1><A NAME="SECTION00010000000000000000">
Introduction</A>
</H1>
<P>
In order to convert from strip number to 2<IMG
WIDTH="12" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img1.png"
ALT="$\theta$">-angle, an accurate angular calibration of the detector must be performed (for details see the paper Bergamaschi, A. et al. (2010). J. Synchrotron Rad. 17, 653-668).
<BR>
<P>
For this purpose, a series of patterns of a powder standard with symmetric peaks (e.g. silicon) must acquired while shifting the detector by an angular step of the order of about 2% of the module size. During the measurement, a strong intensity peak (e.g. Si(111)) should pass through the field of view of every module such that it can be used as a reference angular position to perform the calibration of the modules position.
<BR>
<P>
In a first step, the peak is fitted with a Gaussian in order to determine its position <IMG
WIDTH="43" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img2.png"
ALT="$C_{peak}$"> in channel number for each of the acquired patterns.
<BR>
In a second step, for each module <IMG
WIDTH="10" HEIGHT="17" ALIGN="BOTTOM" BORDER="0"
SRC="img3.png"
ALT="$i$">, the encoder position <IMG
WIDTH="24" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img4.png"
ALT="$\Theta_e$"> is fitted as a function of the peak position <IMG
WIDTH="43" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img2.png"
ALT="$C_{peak}$"> according to:
<BR>
<DIV ALIGN="RIGHT">
<!-- MATH
\begin{equation}
\Theta_e=\Theta_o^i-\arctan\Big(\frac{p \cdot (C_{peak}-C_{center}^i)}{R^i}\Big),
\end{equation}
-->
<TABLE WIDTH="100%" ALIGN="CENTER">
<TR VALIGN="MIDDLE"><TD ALIGN="CENTER" NOWRAP><A NAME="eq:angcal"></A><IMG
WIDTH="291" HEIGHT="41" BORDER="0"
SRC="img5.png"
ALT="\begin{displaymath}
\Theta_e=\Theta_o^i-\arctan\Big(\frac{p \cdot (C_{peak}-C_{center}^i)}{R^i}\Big),
\end{displaymath}"></TD>
<TD WIDTH=10 ALIGN="RIGHT">
(1)</TD></TR>
</TABLE>
<BR CLEAR="ALL"></DIV><P></P>
where the parameters <IMG
WIDTH="24" HEIGHT="36" ALIGN="MIDDLE" BORDER="0"
SRC="img6.png"
ALT="$\Theta_o^i$"> is the angular offset with respect to the diffractometer zero position, <!-- MATH
$C_{center}^{i}$
-->
<IMG
WIDTH="53" HEIGHT="36" ALIGN="MIDDLE" BORDER="0"
SRC="img7.png"
ALT="$C_{center}^{i}$"> is the central channel and <IMG
WIDTH="22" HEIGHT="16" ALIGN="BOTTOM" BORDER="0"
SRC="img8.png"
ALT="$R^i$"> is the distance of the module <IMG
WIDTH="10" HEIGHT="17" ALIGN="BOTTOM" BORDER="0"
SRC="img3.png"
ALT="$i$"> from the diffractometer center while <IMG
WIDTH="79" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img9.png"
ALT="$p=50~\mu m$"> is the strip pitch of the detector.
<BR>
Finally, the global offset of the detector system is precisely determined by refining a silicon pattern at a well-defined energy (i.e., knowing the position of the peak).
<P>
The same function of equation&nbsp;<A HREF="#eq:angcal">1</A>, with the parameters obtained from the calibration, is used in order to convert from channel number to 2<IMG
WIDTH="12" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img1.png"
ALT="$\theta$">-angle.
<P>
The parallax at the borders of the modules due to the thickness of the silicon sensor is a function of the X-ray energy (higher energy X-rays are absorbed deeper inside the sensor) and is of the order of 0.2&nbsp;mdeg at 12&nbsp;keV and 0.5&nbsp;mdeg at 30&nbsp;keV.
<BR>
The differences in pixel size due to the different portion of solid angle covered by the strips on the border of the modules and the higher efficiency due to the longer path of the X-rays in the sensor are removed by the flat field correction. This also normalizes additional differences in pixel size between channels which are also present because of mismatches in the strip sensor fabrication and in fluctuations of the channels threshold level.
<P>
Patterns acquired at different detector positions are generally merged together in order to fill the gaps between the modules and correct possibly bad functioning channels. In this procedure the data from different positions which are closer than 4&nbsp;mdeg (the average pixel size) are averaged and the new position is set to the mean of the positions of the original points.
<P>
The position and width of the peaks results from a fit over several detector channels. Geometrical distortions might disturb this determination mainly because of errors in the angular calibration, fluctuations in the encoder position, variations between channels and parallax effects.
<BR>
The resolution in locating the peak center and determining its width and integrated intensity has been estimated by acquiring several patterns of a LaB<IMG
WIDTH="12" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img10.png"
ALT="$_6$"> sample in a 300&nbsp;<IMG
WIDTH="14" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img11.png"
ALT="$\mu$">m capillary with the detector shifted in 5&nbsp;mdeg steps between 30.4 and 36.5 degrees. The 16&nbsp;peaks acquired have been fitted with a Gaussian function plus background and the fluctuations on the fitted parameters have been calculated. The resulting average resolutions are 0.63<IMG
WIDTH="17" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img12.png"
ALT="$\pm$">0.06&nbsp;mdeg for the peak center and 0.22<IMG
WIDTH="17" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img12.png"
ALT="$\pm$">0.05&nbsp;mdeg for the peak Full-Width at Half-Maximum (FWHM) for an average peak FWHM of 27.0<IMG
WIDTH="17" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img12.png"
ALT="$\pm$">2.5&nbsp;mdeg.
<BR>
These results show that the angular calibration allows a resolution in determining the peaks position and width which is appropriate for structural determination.
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html23"
HREF="node2.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<A NAME="tex2html21"
HREF="angularCalibrationHowTo.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up.png"></A>
<A NAME="tex2html15"
HREF="angularCalibrationHowTo.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html24"
HREF="node2.html">Data acquisition</A>
<B> Up:</B> <A NAME="tex2html22"
HREF="angularCalibrationHowTo.html">Angular calibration wizard manual</A>
<B> Previous:</B> <A NAME="tex2html16"
HREF="angularCalibrationHowTo.html">Angular calibration wizard manual</A>
<!--End of Navigation Panel-->
<ADDRESS>
Thattil Dhanya
2018-03-12
</ADDRESS>
</BODY>
</HTML>

View File

@ -1,217 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2008 (1.71)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Data acquisition</TITLE>
<META NAME="description" CONTENT="Data acquisition">
<META NAME="keywords" CONTENT="angularCalibrationHowTo">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="angularCalibrationHowTo.css">
<LINK REL="next" HREF="node3.html">
<LINK REL="previous" HREF="node1.html">
<LINK REL="up" HREF="angularCalibrationHowTo.html">
<LINK REL="next" HREF="node3.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html33"
HREF="node3.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<A NAME="tex2html31"
HREF="angularCalibrationHowTo.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up.png"></A>
<A NAME="tex2html25"
HREF="node1.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html34"
HREF="node3.html">Data analysis</A>
<B> Up:</B> <A NAME="tex2html32"
HREF="angularCalibrationHowTo.html">Angular calibration wizard manual</A>
<B> Previous:</B> <A NAME="tex2html26"
HREF="node1.html">Introduction</A>
<BR>
<BR>
<!--End of Navigation Panel-->
<!--Table of Child-Links-->
<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
<UL>
<LI><A NAME="tex2html35"
HREF="node2.html#SECTION00021000000000000000">Software</A>
</UL>
<!--End of Table of Child-Links-->
<HR>
<H1><A NAME="SECTION00020000000000000000">
Data acquisition</A>
</H1>
<P>
The angular calibration consists in acquiring a set of diffraction patterns of a well known powder standard (e.g. Silicon) at different encoder positions. In order to facilitate the procedure, the sample should not emit fluorescent light and should present relatively symmetric peaks.
<BR>
During the measurement, a strong intensity peak (e.g. Si(111)) should pass through the field of view of every module such that it can be used as a reference angular position to perform the calibration of the modules position. In general the highest peak will be used for the calibration, but this is not necessary in case there would be e.g. geometrical limitations for shifting the detector.
<BR><B>Do not forget to properly position the beam stopper if the detector is scanned in front of the direct beam.</B>
<BR>
The detector should be shifted of an angular step of the order of about 2% of the module size, such that about 50 patterns can contribute to the fitting of the 3 parameters necessary for the angular calibration.
<BR>
<P>
All the angular calibration procedure should be acquired using a trimmed detector with the threshold set at half of the X-ray energy (Assuming no fluorescent element in the standard). A flat field should also be acquired in order to precisely correct the data, while the X-ray intensity should be kept lower than about 100&nbsp;kHz per strip in order to avoid the need for rate corrections.
<P>
A rough angular conversion file starting from a previous calibration or from the geometric characteristics of the mechanics is an advantage. The angular conversion file should contain a line for each module of the detector with its module number <IMG
WIDTH="10" HEIGHT="17" ALIGN="BOTTOM" BORDER="0"
SRC="img3.png"
ALT="$i$">, center <!-- MATH
$C_{center}^{i}$
-->
<IMG
WIDTH="53" HEIGHT="36" ALIGN="MIDDLE" BORDER="0"
SRC="img7.png"
ALT="$C_{center}^{i}$"> and error, conversion radius <IMG
WIDTH="38" HEIGHT="36" ALIGN="MIDDLE" BORDER="0"
SRC="img13.png"
ALT="$p/R^i$"> and error, offset <IMG
WIDTH="24" HEIGHT="36" ALIGN="MIDDLE" BORDER="0"
SRC="img6.png"
ALT="$\Theta_o^i$"> and error:
<PRE>
module 0 center 639.5 +- 0 conversion 6.56E-05 +- 0 offset 0 +- 0
</PRE>
Also the <I>global offset</I> value of the beamline should be approximately known i.e. the angular position of channel 0 of module 0 when the motor is set at 0.
<BR>
All the documentation assumes that the detector is oriented in the same direction as the encoder position i.e. large channel number at higher angles (both per module and absolute). If this is not the case, the <I>angular direction</I> should be set to -1.
<P>
<H2><A NAME="SECTION00021000000000000000">
Software</A>
</H2>
<P>
For the acquisition ot the data you need to install the slsDetector software package (please refere to separate documentation). The use of the GUI is optional and all operations can be performed also using the text client.
<BR>
<P>
Please make sure that you have edited the
<BR><I>slsDetectorSoftware/usersFunctions/angleFunction.h</I>
<BR>
in order to match the angular conversion for your geometry and
<BR><I>slsDetectorSoftware/usersFunctions/usersFunctions.cpp</I>
<BR>
in order to be able to move the detector and read out its position by using the slsDetector software.
<P>
In the following the command to acquire a dataset for the angular calibration with an exposure time of 1&nbsp;s, and position shift
<PRE>
#setup angular calibration log mode
&gt; sls_detector_put angcallog 1
#set exposure time to 1s
&gt; sls_detector_put exptime 1.
#setup threshold scan
&gt; sls_detector_put scan0script position
#setup the precision for the scan variable in the file name
&gt; sls_detector_put scan0prec 2
#set scan range between 20deg and -60deg, step of -0.1deg
# (at 12.4 keV the Si(111) peak is at approx 19deg
&gt; sls_detector_put scan0range 20 -60 -0.1
#acquire the data
&gt; sls_detector_acquire
#unset angular calibration log mode
&gt; sls_detector_put angcallog 0
</PRE>
<P>
With the GUI you can obtain the same results by clicking on the <I>Angular calibration</I> log button in the advanced tab (see figure&nbsp;<A HREF="#fig:guiangcallog">1</A>) and setting up the motor position scan in the Actions tab (see figure&nbsp;<A HREF="#fig:guiposscan">2</A>). The exposure time should also be set in the measurement tab.
<P>
Additional to the data files, the acquisition will produce a .angcal file containing an header and, for each step of the acquisition, the exect value of the motor position and the file name.
<BR>
In case you forgot to enable the angcallog flag in the software, you can produce the file with the syntax as follows, assuming that you know the exact values of your encoder for each frame:
<PRE>
type Mythen
maxmod 32
nmod 32
angconv /scratch/angcal20120422/ang.off
globaloff 5.088
fineoff 0.0
angdir 1
ffdir /scratch/angcal20120422/
flatfield flatfield_E12keV_T6keV_0.raw
badchannels /scratch/cal/bad.chans
19.99998 angcal_S20.00_0
19.90001 angcal_S19.90_0
19.79999 angcal_S19.80_0
19.70002 angcal_S19.70_0
......
</PRE>
<P>
<DIV ALIGN="CENTER"><A NAME="fig:guiangcallog"></A><A NAME="46"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 1:</STRONG>
Acquisition GUI window to enable the angular calibration log.</CAPTION>
<TR><TD><IMG
WIDTH="555" HEIGHT="603" ALIGN="BOTTOM" BORDER="0"
SRC="img14.png"
ALT="\includegraphics[width=\textwidth]{enable_angcal.eps}"></TD></TR>
</TABLE>
</DIV>
<P>
<DIV ALIGN="CENTER"><A NAME="fig:guiposscan"></A><A NAME="51"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 2:</STRONG>
Acquisition GUI window to setup the motor position scan.</CAPTION>
<TR><TD><IMG
WIDTH="555" HEIGHT="603" ALIGN="BOTTOM" BORDER="0"
SRC="img15.png"
ALT="\includegraphics[width=\textwidth]{position_scan.eps}"></TD></TR>
</TABLE>
</DIV>
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html33"
HREF="node3.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<A NAME="tex2html31"
HREF="angularCalibrationHowTo.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up.png"></A>
<A NAME="tex2html25"
HREF="node1.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html34"
HREF="node3.html">Data analysis</A>
<B> Up:</B> <A NAME="tex2html32"
HREF="angularCalibrationHowTo.html">Angular calibration wizard manual</A>
<B> Previous:</B> <A NAME="tex2html26"
HREF="node1.html">Introduction</A>
<!--End of Navigation Panel-->
<ADDRESS>
Thattil Dhanya
2018-03-12
</ADDRESS>
</BODY>
</HTML>

View File

@ -1,186 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2008 (1.71)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Data analysis</TITLE>
<META NAME="description" CONTENT="Data analysis">
<META NAME="keywords" CONTENT="angularCalibrationHowTo">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="angularCalibrationHowTo.css">
<LINK REL="next" HREF="node4.html">
<LINK REL="previous" HREF="node2.html">
<LINK REL="up" HREF="angularCalibrationHowTo.html">
<LINK REL="next" HREF="node4.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html44"
HREF="node4.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<A NAME="tex2html42"
HREF="angularCalibrationHowTo.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up.png"></A>
<A NAME="tex2html36"
HREF="node2.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html45"
HREF="node4.html">Setup calibration files</A>
<B> Up:</B> <A NAME="tex2html43"
HREF="angularCalibrationHowTo.html">Angular calibration wizard manual</A>
<B> Previous:</B> <A NAME="tex2html37"
HREF="node2.html">Data acquisition</A>
<BR>
<BR>
<!--End of Navigation Panel-->
<!--Table of Child-Links-->
<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
<UL>
<LI><A NAME="tex2html46"
HREF="node3.html#SECTION00031000000000000000">Software</A>
</UL>
<!--End of Table of Child-Links-->
<HR>
<H1><A NAME="SECTION00030000000000000000">
Data analysis</A>
</H1>
<P>
The data analysis consists in fitting with a gaussian the selected peak of the powder pattern for each position in order to determine its position is channel number as a function of the encoder position.
<BR>
In a second step, for each module, the channel vs. encoder curve is fitted in order to extrapolate the three parameters necessary for the angular conversion and the result is written to file
<P>
<H2><A NAME="SECTION00031000000000000000">
Software</A>
</H2>
<P>
The software used for the angular calibration data analysis is based on root (see http://root.cern.ch).
<BR>
This can be downloaded as binary or installed from sources. The version of the software should not play an important role, but up to now everything has been implemented and tested using version 5.20.
<P>
To start the data analysis simply launch:
<PRE>
&gt; ./angularCalibrationWizard
</PRE>
<P>
<DIV ALIGN="CENTER"><A NAME="fig:setangcal"></A><A NAME="60"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 3:</STRONG>
Overview of the nagular calibration dataset.</CAPTION>
<TR><TD><IMG
WIDTH="555" HEIGHT="707" ALIGN="BOTTOM" BORDER="0"
SRC="img16.png"
ALT="\includegraphics[width=\textwidth]{setupAngcal.eps}"></TD></TR>
</TABLE>
</DIV>
<P>
To setup the angular calibration dataset, the .angcal file should be selected (or digited) and the load button should be pressed to confirm. The parameters of the angular calibration are then read to the file and the data loaded for a quick overview (see figure&nbsp;<A HREF="#fig:setangcal">3</A>).
<BR>
The software assumes that the data files (.raw) and the .encal file are in the same directory.
<BR>
A 2D color plot will show a rebinned overview of the dataset. The peak to be fitted should be visible as a high intensity diagonal line passing through all the channels.
<P>
<DIV ALIGN="CENTER"><A NAME="fig:peakfit"></A><A NAME="66"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 4:</STRONG>
Preview of the fitting of the Si(111) peak for one of the detector positions.</CAPTION>
<TR><TD><IMG
WIDTH="555" HEIGHT="707" ALIGN="BOTTOM" BORDER="0"
SRC="img17.png"
ALT="\includegraphics[width=\textwidth]{peakFit.eps}"></TD></TR>
</TABLE>
</DIV>
<P>
For a more detailed view of the data, one can select an angular calibration step from the combo box, select the plot mode (raw data or processed data as a function of channel number, processed angular converted data, flat field data, or again an overview of the whole dataset).
<BR>
By (right) clicking close to the axis you are able to zoom in/out, set the scale to logarithmic etc.
<BR>
<P>
If the bad channel list, angular conversion file or flat field file are changed compared to the acquisition, they can be reloaded by editing the correspondent text entries and pressing enter.
<P>
In particular, the angular converted data should be checked in order to view the position of the selected peak. In this case, the plot will be zoomed to the angular region slected in the minimum and maximum angle entries. By pressing fit, the fit of the peak in the selected angular range will be shown (see figure&nbsp;<A HREF="#fig:peakfit">4</A>). It is useful to check that it works properly in several positions such that then the sequential fitting on all steps can give good results.
<P>
To automatically fit all positions simply press <I>Proceed to Modules Calibration</I> and wait until all steps are fitted. This can take sometime, depending on the number of steps.
<P>
<DIV ALIGN="CENTER"><A NAME="fig:anglefit"></A><A NAME="73"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 5:</STRONG>
Window for fitting the angular calibration parameters of a module.</CAPTION>
<TR><TD><IMG
WIDTH="555" HEIGHT="707" ALIGN="BOTTOM" BORDER="0"
SRC="img18.png"
ALT="\includegraphics[width=\textwidth]{angleFit.eps}"></TD></TR>
</TABLE>
</DIV>
<P>
In the module calibration window (see figure&nbsp;<A HREF="#fig:anglefit">5</A>), you will be able to fit the channel number to encoder position curve to estimate the three angular calibration parameters for each module.
<BR>
The entries show the angular calibration parameters used for approximate angular conversion in the previous step of the calibration. These can be edited and will be used as start parameters for the fit.
By clicking on the check box next to the parameters, the selected parameter will be set and fixed during the fit. Often the center is used as a fix parameter.
<BR>
It is possible to navigate between modules by using the Previous and Next module buttons. To refit the current module (e.g. after changing one of the parameters) simply re-click on the module number.
<P>
After fitting all modules you can click on the <I>Write Angular Calibration</I> button, select the file name to write to and save the calibration angulat calibration data. Please note that the offset of module 0 will always be 0 and the other values will be rescaled to its value. Therefore the global offset of the steup will always need to be specified for a proper angular conversion unless the home of the encoder will not be redifined.
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html44"
HREF="node4.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<A NAME="tex2html42"
HREF="angularCalibrationHowTo.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up.png"></A>
<A NAME="tex2html36"
HREF="node2.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html45"
HREF="node4.html">Setup calibration files</A>
<B> Up:</B> <A NAME="tex2html43"
HREF="angularCalibrationHowTo.html">Angular calibration wizard manual</A>
<B> Previous:</B> <A NAME="tex2html37"
HREF="node2.html">Data acquisition</A>
<!--End of Navigation Panel-->
<ADDRESS>
Thattil Dhanya
2018-03-12
</ADDRESS>
</BODY>
</HTML>

View File

@ -1,68 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2008 (1.71)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Setup calibration files</TITLE>
<META NAME="description" CONTENT="Setup calibration files">
<META NAME="keywords" CONTENT="angularCalibrationHowTo">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="angularCalibrationHowTo.css">
<LINK REL="next" HREF="node5.html">
<LINK REL="previous" HREF="node3.html">
<LINK REL="up" HREF="angularCalibrationHowTo.html">
<LINK REL="next" HREF="node5.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html55"
HREF="node5.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<A NAME="tex2html53"
HREF="angularCalibrationHowTo.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up.png"></A>
<A NAME="tex2html47"
HREF="node3.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html56"
HREF="node5.html">About this document ...</A>
<B> Up:</B> <A NAME="tex2html54"
HREF="angularCalibrationHowTo.html">Angular calibration wizard manual</A>
<B> Previous:</B> <A NAME="tex2html48"
HREF="node3.html">Data analysis</A>
<BR>
<BR>
<!--End of Navigation Panel-->
<H1><A NAME="SECTION00040000000000000000">
Setup calibration files</A>
</H1>
<P>
To use the generated angular calibration files, using the text client:
<PRE>
sls_detector_put angconv /scratch/ang_new.off
</PRE>
while for the GUI the file name should be specified in the configuration file (works also for the text client).
<BR><HR>
<ADDRESS>
Thattil Dhanya
2018-03-12
</ADDRESS>
</BODY>
</HTML>

View File

@ -1,71 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2008 (1.71)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>About this document ...</TITLE>
<META NAME="description" CONTENT="About this document ...">
<META NAME="keywords" CONTENT="angularCalibrationHowTo">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="angularCalibrationHowTo.css">
<LINK REL="previous" HREF="node4.html">
<LINK REL="up" HREF="angularCalibrationHowTo.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next_g.png">
<A NAME="tex2html61"
HREF="angularCalibrationHowTo.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up.png"></A>
<A NAME="tex2html57"
HREF="node4.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev.png"></A>
<BR>
<B> Up:</B> <A NAME="tex2html62"
HREF="angularCalibrationHowTo.html">Angular calibration wizard manual</A>
<B> Previous:</B> <A NAME="tex2html58"
HREF="node4.html">Setup calibration files</A>
<BR>
<BR>
<!--End of Navigation Panel-->
<H1><A NAME="SECTION00050000000000000000">
About this document ...</A>
</H1>
<STRONG>Angular calibration wizard manual</STRONG><P>
This document was generated using the
<A HREF="http://www.latex2html.org/"><STRONG>LaTeX</STRONG>2<tt>HTML</tt></A> translator Version 2008 (1.71)
<P>
Copyright &#169; 1993, 1994, 1995, 1996,
<A HREF="http://cbl.leeds.ac.uk/nikos/personal.html">Nikos Drakos</A>,
Computer Based Learning Unit, University of Leeds.
<BR>
Copyright &#169; 1997, 1998, 1999,
<A HREF="http://www.maths.mq.edu.au/~ross/">Ross Moore</A>,
Mathematics Department, Macquarie University, Sydney.
<P>
The command line arguments were: <BR>
<STRONG>latex2html</STRONG> <TT>-split 4 angularCalibrationHowTo.tex</TT>
<P>
The translation was initiated by Thattil Dhanya on 2018-03-12
<BR><HR>
<ADDRESS>
Thattil Dhanya
2018-03-12
</ADDRESS>
</BODY>
</HTML>

View File

@ -1 +0,0 @@
No implementation found for style `graphicx'

View File

@ -1,30 +0,0 @@
/* Century Schoolbook font is very similar to Computer Modern Math: cmmi */
.MATH { font-family: "Century Schoolbook", serif; }
.MATH I { font-family: "Century Schoolbook", serif; font-style: italic }
.BOLDMATH { font-family: "Century Schoolbook", serif; font-weight: bold }
/* implement both fixed-size and relative sizes */
SMALL.XTINY { font-size : xx-small }
SMALL.TINY { font-size : x-small }
SMALL.SCRIPTSIZE { font-size : smaller }
SMALL.FOOTNOTESIZE { font-size : small }
SMALL.SMALL { }
BIG.LARGE { }
BIG.XLARGE { font-size : large }
BIG.XXLARGE { font-size : x-large }
BIG.HUGE { font-size : larger }
BIG.XHUGE { font-size : xx-large }
/* heading styles */
H1 { }
H2 { }
H3 { }
H4 { }
H5 { }
/* mathematics styles */
DIV.displaymath { } /* math displays */
TD.eqno { } /* equation-number cells */
/* document-specific styles come next */

View File

@ -1,84 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2008 (1.71)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Energy calibration wizard manual</TITLE>
<META NAME="description" CONTENT="Energy calibration wizard manual">
<META NAME="keywords" CONTENT="energyCalibrationHowTo">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="energyCalibrationHowTo.css">
<LINK REL="next" HREF="node1.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html9"
HREF="node1.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up_g.png">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev_g.png">
<BR>
<B> Next:</B> <A NAME="tex2html10"
HREF="node1.html">Introduction</A>
<BR>
<BR>
<!--End of Navigation Panel-->
<P>
<H1 ALIGN="CENTER">Energy calibration wizard manual</H1>
<DIV>
<P ALIGN="CENTER"><STRONG>Anna Bergamaschi</STRONG></P>
<P ALIGN="CENTER"><STRONG>March 12, 2018</STRONG></P>
</DIV>
<P>
<BR><HR>
<!--Table of Child-Links-->
<A NAME="CHILD_LINKS"></A>
<UL>
<LI><A NAME="tex2html11"
HREF="node1.html">Introduction</A>
<LI><A NAME="tex2html12"
HREF="node2.html">Data acquisition</A>
<UL>
<LI><A NAME="tex2html13"
HREF="node2.html#SECTION00021000000000000000">Software</A>
</UL>
<BR>
<LI><A NAME="tex2html14"
HREF="node3.html">Data analysis</A>
<UL>
<LI><A NAME="tex2html15"
HREF="node3.html#SECTION00031000000000000000">Software</A>
</UL>
<BR>
<LI><A NAME="tex2html16"
HREF="node4.html">Setup calibration files</A>
<LI><A NAME="tex2html17"
HREF="node5.html">About this document ...</A>
</UL>
<!--End of Table of Child-Links-->
<BR><HR>
<ADDRESS>
Thattil Dhanya
2018-03-12
</ADDRESS>
</BODY>
</HTML>

View File

@ -1 +0,0 @@
\relax

View File

@ -1,443 +0,0 @@
This is pdfTeXk, Version 3.141592-1.40.3 (Web2C 7.5.6) (format=latex 2014.12.17) 12 MAR 2018 15:45
entering extended mode
%&-line parsing enabled.
**./images.tex
(./images.tex
LaTeX2e <2005/12/01>
Babel <v3.8h> and hyphenation patterns for english, usenglishmax, dumylang, noh
yphenation, arabic, basque, bulgarian, coptic, welsh, czech, slovak, german, ng
erman, danish, esperanto, spanish, catalan, galician, estonian, farsi, finnish,
french, greek, monogreek, ancientgreek, croatian, hungarian, interlingua, ibyc
us, indonesian, icelandic, italian, latin, mongolian, dutch, norsk, polish, por
tuguese, pinyin, romanian, russian, slovenian, uppersorbian, serbian, swedish,
turkish, ukenglish, ukrainian, loaded.
(/usr/share/texmf/tex/latex/base/article.cls
Document Class: article 2005/09/16 v1.4f Standard LaTeX document class
(/usr/share/texmf/tex/latex/base/size10.clo
File: size10.clo 2005/09/16 v1.4f Standard LaTeX file (size option)
)
\c@part=\count79
\c@section=\count80
\c@subsection=\count81
\c@subsubsection=\count82
\c@paragraph=\count83
\c@subparagraph=\count84
\c@figure=\count85
\c@table=\count86
\abovecaptionskip=\skip41
\belowcaptionskip=\skip42
\bibindent=\dimen102
) (/usr/share/texmf/tex/latex/base/ifthen.sty
Package: ifthen 2001/05/26 v1.1c Standard LaTeX ifthen package (DPC)
) (/usr/share/texmf/tex/latex/amsfonts/amssymb.sty
Package: amssymb 2002/01/22 v2.2d
(/usr/share/texmf/tex/latex/amsfonts/amsfonts.sty
Package: amsfonts 2001/10/25 v2.2f
\@emptytoks=\toks14
\symAMSa=\mathgroup4
\symAMSb=\mathgroup5
LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold'
(Font) U/euf/m/n --> U/euf/b/n on input line 132.
)) (/usr/share/texmf/tex/latex/graphics/graphicx.sty
Package: graphicx 1999/02/16 v1.0f Enhanced LaTeX Graphics (DPC,SPQR)
(/usr/share/texmf/tex/latex/graphics/keyval.sty
Package: keyval 1999/03/16 v1.13 key=value parser (DPC)
\KV@toks@=\toks15
) (/usr/share/texmf/tex/latex/graphics/graphics.sty
Package: graphics 2006/02/20 v1.0o Standard LaTeX Graphics (DPC,SPQR)
(/usr/share/texmf/tex/latex/graphics/trig.sty
Package: trig 1999/03/16 v1.09 sin cos tan (DPC)
) (/usr/share/texmf/tex/latex/config/graphics.cfg
File: graphics.cfg 2007/01/18 v1.5 graphics configuration of teTeX/TeXLive
)
Package graphics Info: Driver file: dvips.def on input line 90.
(/usr/share/texmf/tex/latex/graphics/dvips.def
File: dvips.def 1999/02/16 v3.0i Driver-dependant file (DPC,SPQR)
))
\Gin@req@height=\dimen103
\Gin@req@width=\dimen104
) (/usr/share/texmf/tex/latex/tools/verbatim.sty
Package: verbatim 2003/08/22 v1.5q LaTeX2e package for verbatim enhancements
\every@verbatim=\toks16
\verbatim@line=\toks17
\verbatim@in@stream=\read1
) (/usr/share/texmf/tex/latex/graphics/color.sty
Package: color 2005/11/14 v1.0j Standard LaTeX Color (DPC)
(/usr/share/texmf/tex/latex/config/color.cfg
File: color.cfg 2007/01/18 v1.5 color configuration of teTeX/TeXLive
)
Package color Info: Driver file: dvips.def on input line 130.
(/usr/share/texmf/tex/latex/graphics/dvipsnam.def
File: dvipsnam.def 1999/02/16 v3.0i Driver-dependant file (DPC,SPQR)
)) (/usr/share/texmf/tex/latex/base/inputenc.sty
Package: inputenc 2006/05/05 v1.1b Input encoding file
\inpenc@prehook=\toks18
\inpenc@posthook=\toks19
)
\sizebox=\box26
\lthtmlwrite=\write3
(./images.aux)
\openout1 = `images.aux'.
LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 116.
LaTeX Font Info: ... okay on input line 116.
LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 116.
LaTeX Font Info: ... okay on input line 116.
LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 116.
LaTeX Font Info: ... okay on input line 116.
LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 116.
LaTeX Font Info: ... okay on input line 116.
LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 116.
LaTeX Font Info: ... okay on input line 116.
LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 116.
LaTeX Font Info: ... okay on input line 116.
latex2htmlLength hsize=349.0pt
latex2htmlLength vsize=633.0pt
latex2htmlLength hoffset=0.0pt
latex2htmlLength voffset=0.0pt
latex2htmlLength topmargin=0.0pt
latex2htmlLength topskip=0.00003pt
latex2htmlLength headheight=0.0pt
latex2htmlLength headsep=0.0pt
latex2htmlLength parskip=0.0pt plus 1.0pt
latex2htmlLength oddsidemargin=62.0pt
latex2htmlLength evensidemargin=62.0pt
LaTeX Font Info: Try loading font information for U+msa on input line 140.
(/usr/share/texmf/tex/latex/amsfonts/umsa.fd
File: umsa.fd 2002/01/19 v2.2g AMS font definitions
)
LaTeX Font Info: Try loading font information for U+msb on input line 140.
(/usr/share/texmf/tex/latex/amsfonts/umsb.fd
File: umsb.fd 2002/01/19 v2.2g AMS font definitions
)
l2hSize :tex2html_wrap_inline464:7.33331pt::7.33331pt::12.3681pt.
[1
]
l2hSize :tex2html_wrap_inline466:7.33331pt::7.33331pt::13.02087pt.
[2
]
l2hSize :tex2html_wrap_inline468:6.83331pt::0.0pt::25.4458pt.
[3
]
l2hSize :tex2html_wrap_inline470:6.83331pt::0.0pt::25.62634pt.
[4
]
l2hSize :tex2html_wrap_inline472:7.33331pt::7.33331pt::14.32782pt.
[5
]
! Undefined control sequence.
l.170 $CS={\begingroupN
_S\endgroup\over N_0}$%
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
! Missing } inserted.
<inserted text>
}
l.170 $CS={\begingroupN_S\endgroup
\over N_0}$%
I've inserted something that you may have forgotten.
(See the <inserted text> above.)
With luck, this will get me unwedged. But if you
really didn't forget anything, try typing `2' now; then
my insertion and my current dilemma will both disappear.
! Missing $ inserted.
<inserted text>
$
l.170 $CS={\begingroupN_S\endgroup
\over N_0}$%
I've inserted something that you may have forgotten.
(See the <inserted text> above.)
With luck, this will get me unwedged. But if you
really didn't forget anything, try typing `2' now; then
my insertion and my current dilemma will both disappear.
! Missing } inserted.
<inserted text>
}
l.170 $CS={\begingroupN_S\endgroup
\over N_0}$%
I've inserted something that you may have forgotten.
(See the <inserted text> above.)
With luck, this will get me unwedged. But if you
really didn't forget anything, try typing `2' now; then
my insertion and my current dilemma will both disappear.
! Missing } inserted.
<inserted text>
}
l.170 $CS={\begingroupN_S\endgroup
\over N_0}$%
I've inserted something that you may have forgotten.
(See the <inserted text> above.)
With luck, this will get me unwedged. But if you
really didn't forget anything, try typing `2' now; then
my insertion and my current dilemma will both disappear.
! Extra \endgroup.
<recently read> \endgroup
l.170 $CS={\begingroupN_S\endgroup
\over N_0}$%
Things are pretty mixed up, but I think the worst is over.
! Missing $ inserted.
<inserted text>
$
l.170 $CS={\begingroupN_S\endgroup\over
N_0}$%
I've inserted a begin-math/end-math symbol since I think
you left one out. Proceed, with fingers crossed.
! Extra }, or forgotten $.
l.170 $CS={\begingroupN_S\endgroup\over N_0}
$%
I've deleted a group-closing symbol because it seems to be
spurious, as in `$x}$'. But perhaps the } is legitimate and
you forgot something else, as in `\hbox{$x}'. In such cases
the way to recover is to insert both the forgotten and the
deleted material, e.g., by typing `I$}'.
! Too many }'s.
\lthtmlinlinemathZ ->\egroup
\expandafter \ifdim \dp \sizebox >0pt \expandaf...
l.171 \lthtmlinlinemathZ
You've closed more groups than you opened.
Such booboos are generally harmless, so keep going.
l2hSize :tex2html_wrap_inline474:0.0pt::0.0pt::0.0pt.
[6
]
! Too many }'s.
l.172 \lthtmlcheckvsize\clearpage}
You've closed more groups than you opened.
Such booboos are generally harmless, so keep going.
l2hSize :tex2html_wrap_inline482:7.33331pt::7.33331pt::13.06606pt.
[7
]
l2hSize :tex2html_wrap_inline486:8.0pt::8.0pt::22.36813pt.
[8
]
l2hSize :tex2html_wrap_inline490:6.83331pt::0.0pt::19.3889pt.
[9
]
l2hSize :tex2html_wrap_inline492:7.33331pt::7.33331pt::11.40282pt.
[10
]
l2hSize :tex2html_wrap_inline494:7.33331pt::7.33331pt::51.00127pt.
[11
]
l2hSize :tex2html_wrap_inline131:7.96227pt::0.0pt::11.90631pt.
[12
]
l2hSize :tex2html_wrap_inline137:6.83331pt::0.0pt::9.05698pt.
[13
]
l2hSize :tex2html_wrap_inline141:8.0pt::8.0pt::46.60414pt.
[14
]
l2hSize :tex2html_wrap_inline143:6.83331pt::0.0pt::9.625pt.
[15
]
l2hSize :tex2html_wrap_inline147:7.33331pt::7.33331pt::13.97807pt.
[16
]
l2hSize :tex2html_wrap_inline149:7.33331pt::7.33331pt::13.66582pt.
[17
]
l2hSize :displaymath17:22.95789pt::0.0pt::349.0pt.
[18
]
l2hSize :tex2html_wrap_inline151:7.33331pt::7.33331pt::11.92157pt.
[19
]
l2hSize :tex2html_wrap_inline153:7.33331pt::7.33331pt::50.08467pt.
[20
]
l2hSize :tex2html_wrap_inline155:6.95831pt::6.95831pt::9.14589pt.
[21
]
l2hSize :tex2html_wrap_inline157:6.83331pt::0.0pt::7.73268pt.
[22
]
l2hSize :displaymath26:22.95789pt::0.0pt::349.0pt.
[23
]
l2hSize :tex2html_wrap_inline165:7.33331pt::7.33331pt::52.6679pt.
[24
]
l2hSize :tex2html_wrap_inline167:6.83331pt::0.0pt::8.40558pt.
[25
]
l2hSize :tex2html_wrap_inline169:6.83331pt::0.0pt::8.36252pt.
[26
]
l2hSize :tex2html_wrap_inline171:7.33331pt::7.33331pt::9.8542pt.
[27
]
l2hSize :displaymath34:13.49998pt::0.0pt::349.0pt.
[28
]
l2hSize :tex2html_wrap_inline175:6.59525pt::0.0pt::3.94516pt.
[29
]
l2hSize :tex2html_wrap_inline177:7.33331pt::7.33331pt::11.45708pt.
[30
]
l2hSize :tex2html_wrap_inline179:7.33331pt::7.33331pt::11.6918pt.
[31
]
l2hSize :tex2html_wrap_inline191:9.38889pt::9.38889pt::42.17287pt.
[32
]
File: fig4.eps Graphic file (type eps)
<fig4.eps>
l2hSize :tex2html_wrap559:338.53587pt::0.0pt::349.0pt.
[33
]
File: fig5.eps Graphic file (type eps)
<fig5.eps>
l2hSize :tex2html_wrap563:338.53587pt::0.0pt::349.0pt.
[34
]
File: fig7.eps Graphic file (type eps)
<fig7.eps>
l2hSize :tex2html_wrap585:347.15315pt::0.0pt::349.0pt.
[35
]
File: fig8.eps Graphic file (type eps)
<fig8.eps>
l2hSize :tex2html_wrap589:338.53587pt::0.0pt::349.0pt.
[36
]
File: GUI_Advanced.eps Graphic file (type eps)
<GUI_Advanced.eps>
l2hSize :tex2html_wrap595:378.81322pt::0.0pt::349.0pt.
[37
]
File: GUI_ThresholdScan.eps Graphic file (type eps)
<GUI_ThresholdScan.eps>
l2hSize :tex2html_wrap599:378.81322pt::0.0pt::349.0pt.
[38
]
File: addEnergy.eps Graphic file (type eps)
<addEnergy.eps>
l2hSize :tex2html_wrap605:436.2459pt::0.0pt::349.0pt.
[39
]
File: calibrateModule.eps Graphic file (type eps)
<calibrateModule.eps>
l2hSize :tex2html_wrap609:436.2459pt::0.0pt::349.0pt.
[40
] (./images.aux) )
Here is how much of TeX's memory you used:
1156 strings out of 256217
14369 string characters out of 1917094
57024 words of memory out of 1500000
4462 multiletter control sequences out of 10000+200000
5339 words of font info for 22 fonts, out of 1200000 for 2000
645 hyphenation exceptions out of 8191
25i,6n,24p,836b,199s stack positions out of 5000i,500n,6000p,200000b,15000s
Output written on images.dvi (40 pages, 9712 bytes).

View File

@ -1,252 +0,0 @@
# LaTeX2HTML 2008 (1.71)
# Associate images original text with physical files.
$key = q/CS=frac{N_S}{N_0};MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="71" HEIGHT="38" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img32.png"
ALT="$CS=\frac{N_S}{N_0}$">|;
$key = q/O;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="17" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img25.png"
ALT="$O$">|;
$key = q/N_gamma;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="25" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img17.png"
ALT="$N_\gamma$">|;
$key = q/E_t;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="22" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img10.png"
ALT="$E_t$">|;
$key = q/includegraphics[width=textwidth]{calibrateModule.eps};AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="555" HEIGHT="694" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img40.png"
ALT="\includegraphics[width=\textwidth]{calibrateModule.eps}">|;
$key = q/{displaymath}N_n(E_t)simfrac{T}{tau_s}DBig(frac{-E_t}{ENC}Big).{displaymath};MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="169" HEIGHT="41" BORDER="0"
SRC="|."$dir".q|img23.png"
ALT="\begin{displaymath}
N_n(E_t) \sim \frac{T}{\tau_s} D \Big(\frac{-E_t}{ENC} \Big).
\end{displaymath}">|;
$key = q/tau_s;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="18" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img21.png"
ALT="$\tau_s$">|;
$key = q/V_t;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="19" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img27.png"
ALT="$V_t$">|;
$key = q/ENC;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="44" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img3.png"
ALT="$ENC$">|;
$key = q/includegraphics[width=textwidth]{fig8.eps};AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="556" HEIGHT="539" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img36.png"
ALT="\includegraphics[width=\textwidth]{fig8.eps}">|;
$key = q/N_n;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="26" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img16.png"
ALT="$N_n$">|;
$key = q/T;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="16" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img22.png"
ALT="$T$">|;
$key = q/E_0;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="23" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img1.png"
ALT="$E_0$">|;
$key = q/G;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="17" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img26.png"
ALT="$G$">|;
$key = q/{displaymath}N_gamma(E_t)=frac{N_0}{2}cdotBig(1+C_sfrac{E_0-2E_t}{E_0}Big)DBig(frac{E_0-E_t}{ENC}Big),{displaymath};MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="335" HEIGHT="41" BORDER="0"
SRC="|."$dir".q|img18.png"
ALT="\begin{displaymath}
N_\gamma(E_t)=\frac{N_0}{2}\cdot\Big(1+C_s \frac{E_0-2E_t}{E_0}\Big)D \Big(\frac{E_0-E_t}{ENC} \Big),
\end{displaymath}">|;
$key = q/includegraphics[width=textwidth]{GUI_ThresholdScan.eps};AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="555" HEIGHT="603" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img38.png"
ALT="\includegraphics[width=\textwidth]{GUI_ThresholdScan.eps}">|;
$key = q/N_0;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="24" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img2.png"
ALT="$N_0$">|;
$key = q/N_S;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="27" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img5.png"
ALT="$N_S$">|;
$key = q/O_i;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="22" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img30.png"
ALT="$O_i$">|;
$key = q/E_f;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="25" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img7.png"
ALT="$E_f$">|;
$key = q/i;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="10" HEIGHT="17" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img29.png"
ALT="$i$">|;
$key = q/G_i;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="22" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img31.png"
ALT="$G_i$">|;
$key = q/includegraphics[width=textwidth]{fig7.eps};AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="556" HEIGHT="553" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img35.png"
ALT="\includegraphics[width=\textwidth]{fig7.eps}">|;
$key = q/D;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="18" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img13.png"
ALT="$D$">|;
$key = q/N_s=C_sN_0;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="83" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img20.png"
ALT="$N_s=C_s N_0$">|;
$key = q/E_0slash2;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="39" HEIGHT="32" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img8.png"
ALT="$E_0/2$">|;
$key = q/E_t=E_0slash2;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="78" HEIGHT="32" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img14.png"
ALT="$E_t=E_0/2$">|;
$key = q/includegraphics[width=textwidth]{fig4.eps};AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="556" HEIGHT="539" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img33.png"
ALT="\includegraphics[width=\textwidth]{fig4.eps}">|;
$key = q/includegraphics[width=textwidth]{GUI_Advanced.eps};AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="555" HEIGHT="603" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img37.png"
ALT="\includegraphics[width=\textwidth]{GUI_Advanced.eps}">|;
$key = q/includegraphics[width=textwidth]{addEnergy.eps};AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="555" HEIGHT="694" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img39.png"
ALT="\includegraphics[width=\textwidth]{addEnergy.eps}">|;
$key = q/C_s;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="23" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img19.png"
ALT="$C_s$">|;
$key = q/CS={begingroup{N_Sbegingroup{overN_0};MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="24" HEIGHT="11" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img6.png"
ALT="$CS={\begingroupN_S\endgroup\over N_0}$">|;
$key = q/CS=;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="45" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img4.png"
ALT="$CS=$">|;
$key = q/e^-;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="23" HEIGHT="19" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img12.png"
ALT="$e^-$">|;
$key = q/includegraphics[width=textwidth]{fig5.eps};AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="556" HEIGHT="539" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img34.png"
ALT="\includegraphics[width=\textwidth]{fig5.eps}">|;
$key = q/{displaymath}V_{t}=O+GcdotE_t.{displaymath};MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="111" HEIGHT="26" BORDER="0"
SRC="|."$dir".q|img28.png"
ALT="\begin{displaymath}
V_{t}=O+G \cdot E_t.
\end{displaymath}">|;
$key = q/Sigma>3ENC;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="85" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img11.png"
ALT="$\Sigma &gt;3ENC$">|;
$key = q/N;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="19" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img15.png"
ALT="$N$">|;
$key = q/Sigma>3,ENC;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="88" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="|."$dir".q|img24.png"
ALT="$\Sigma&gt;3 ENC$">|;
$key = q/Deltasim;MSF=1.6;AAT/;
$cached_env_img{$key} = q|<IMG
WIDTH="35" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="|."$dir".q|img9.png"
ALT="$\Delta \sim $">|;
1;

View File

@ -1,391 +0,0 @@
\batchmode
\documentclass{article}
\RequirePackage{ifthen}
\usepackage{amssymb}
\usepackage[dvips]{graphicx}
\usepackage{verbatim}
\usepackage[dvips]{color}
\pagecolor[gray]{.7}
\usepackage[]{inputenc}
\makeatletter
\makeatletter
\count@=\the\catcode`\_ \catcode`\_=8
\newenvironment{tex2html_wrap}{}{}%
\catcode`\<=12\catcode`\_=\count@
\newcommand{\providedcommand}[1]{\expandafter\providecommand\csname #1\endcsname}%
\newcommand{\renewedcommand}[1]{\expandafter\providecommand\csname #1\endcsname{}%
\expandafter\renewcommand\csname #1\endcsname}%
\newcommand{\newedenvironment}[1]{\newenvironment{#1}{}{}\renewenvironment{#1}}%
\let\newedcommand\renewedcommand
\let\renewedenvironment\newedenvironment
\makeatother
\let\mathon=$
\let\mathoff=$
\ifx\AtBeginDocument\undefined \newcommand{\AtBeginDocument}[1]{}\fi
\newbox\sizebox
\setlength{\hoffset}{0pt}\setlength{\voffset}{0pt}
\addtolength{\textheight}{\footskip}\setlength{\footskip}{0pt}
\addtolength{\textheight}{\topmargin}\setlength{\topmargin}{0pt}
\addtolength{\textheight}{\headheight}\setlength{\headheight}{0pt}
\addtolength{\textheight}{\headsep}\setlength{\headsep}{0pt}
\setlength{\textwidth}{349pt}
\newwrite\lthtmlwrite
\makeatletter
\let\realnormalsize=\normalsize
\global\topskip=2sp
\def\preveqno{}\let\real@float=\@float \let\realend@float=\end@float
\def\@float{\let\@savefreelist\@freelist\real@float}
\def\liih@math{\ifmmode$\else\bad@math\fi}
\def\end@float{\realend@float\global\let\@freelist\@savefreelist}
\let\real@dbflt=\@dbflt \let\end@dblfloat=\end@float
\let\@largefloatcheck=\relax
\let\if@boxedmulticols=\iftrue
\def\@dbflt{\let\@savefreelist\@freelist\real@dbflt}
\def\adjustnormalsize{\def\normalsize{\mathsurround=0pt \realnormalsize
\parindent=0pt\abovedisplayskip=0pt\belowdisplayskip=0pt}%
\def\phantompar{\csname par\endcsname}\normalsize}%
\def\lthtmltypeout#1{{\let\protect\string \immediate\write\lthtmlwrite{#1}}}%
\newcommand\lthtmlhboxmathA{\adjustnormalsize\setbox\sizebox=\hbox\bgroup\kern.05em }%
\newcommand\lthtmlhboxmathB{\adjustnormalsize\setbox\sizebox=\hbox to\hsize\bgroup\hfill }%
\newcommand\lthtmlvboxmathA{\adjustnormalsize\setbox\sizebox=\vbox\bgroup %
\let\ifinner=\iffalse \let\)\liih@math }%
\newcommand\lthtmlboxmathZ{\@next\next\@currlist{}{\def\next{\voidb@x}}%
\expandafter\box\next\egroup}%
\newcommand\lthtmlmathtype[1]{\gdef\lthtmlmathenv{#1}}%
\newcommand\lthtmllogmath{\dimen0\ht\sizebox \advance\dimen0\dp\sizebox
\ifdim\dimen0>.95\vsize
\lthtmltypeout{%
*** image for \lthtmlmathenv\space is too tall at \the\dimen0, reducing to .95 vsize ***}%
\ht\sizebox.95\vsize \dp\sizebox\z@ \fi
\lthtmltypeout{l2hSize %
:\lthtmlmathenv:\the\ht\sizebox::\the\dp\sizebox::\the\wd\sizebox.\preveqno}}%
\newcommand\lthtmlfigureA[1]{\let\@savefreelist\@freelist
\lthtmlmathtype{#1}\lthtmlvboxmathA}%
\newcommand\lthtmlpictureA{\bgroup\catcode`\_=8 \lthtmlpictureB}%
\newcommand\lthtmlpictureB[1]{\lthtmlmathtype{#1}\egroup
\let\@savefreelist\@freelist \lthtmlhboxmathB}%
\newcommand\lthtmlpictureZ[1]{\hfill\lthtmlfigureZ}%
\newcommand\lthtmlfigureZ{\lthtmlboxmathZ\lthtmllogmath\copy\sizebox
\global\let\@freelist\@savefreelist}%
\newcommand\lthtmldisplayA{\bgroup\catcode`\_=8 \lthtmldisplayAi}%
\newcommand\lthtmldisplayAi[1]{\lthtmlmathtype{#1}\egroup\lthtmlvboxmathA}%
\newcommand\lthtmldisplayB[1]{\edef\preveqno{(\theequation)}%
\lthtmldisplayA{#1}\let\@eqnnum\relax}%
\newcommand\lthtmldisplayZ{\lthtmlboxmathZ\lthtmllogmath\lthtmlsetmath}%
\newcommand\lthtmlinlinemathA{\bgroup\catcode`\_=8 \lthtmlinlinemathB}
\newcommand\lthtmlinlinemathB[1]{\lthtmlmathtype{#1}\egroup\lthtmlhboxmathA
\vrule height1.5ex width0pt }%
\newcommand\lthtmlinlineA{\bgroup\catcode`\_=8 \lthtmlinlineB}%
\newcommand\lthtmlinlineB[1]{\lthtmlmathtype{#1}\egroup\lthtmlhboxmathA}%
\newcommand\lthtmlinlineZ{\egroup\expandafter\ifdim\dp\sizebox>0pt %
\expandafter\centerinlinemath\fi\lthtmllogmath\lthtmlsetinline}
\newcommand\lthtmlinlinemathZ{\egroup\expandafter\ifdim\dp\sizebox>0pt %
\expandafter\centerinlinemath\fi\lthtmllogmath\lthtmlsetmath}
\newcommand\lthtmlindisplaymathZ{\egroup %
\centerinlinemath\lthtmllogmath\lthtmlsetmath}
\def\lthtmlsetinline{\hbox{\vrule width.1em \vtop{\vbox{%
\kern.1em\copy\sizebox}\ifdim\dp\sizebox>0pt\kern.1em\else\kern.3pt\fi
\ifdim\hsize>\wd\sizebox \hrule depth1pt\fi}}}
\def\lthtmlsetmath{\hbox{\vrule width.1em\kern-.05em\vtop{\vbox{%
\kern.1em\kern0.8 pt\hbox{\hglue.17em\copy\sizebox\hglue0.8 pt}}\kern.3pt%
\ifdim\dp\sizebox>0pt\kern.1em\fi \kern0.8 pt%
\ifdim\hsize>\wd\sizebox \hrule depth1pt\fi}}}
\def\centerinlinemath{%
\dimen1=\ifdim\ht\sizebox<\dp\sizebox \dp\sizebox\else\ht\sizebox\fi
\advance\dimen1by.5pt \vrule width0pt height\dimen1 depth\dimen1
\dp\sizebox=\dimen1\ht\sizebox=\dimen1\relax}
\def\lthtmlcheckvsize{\ifdim\ht\sizebox<\vsize
\ifdim\wd\sizebox<\hsize\expandafter\hfill\fi \expandafter\vfill
\else\expandafter\vss\fi}%
\providecommand{\selectlanguage}[1]{}%
\makeatletter \tracingstats = 1
\begin{document}
\pagestyle{empty}\thispagestyle{empty}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength hsize=\the\hsize}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength vsize=\the\vsize}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength hoffset=\the\hoffset}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength voffset=\the\voffset}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength topmargin=\the\topmargin}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength topskip=\the\topskip}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength headheight=\the\headheight}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength headsep=\the\headsep}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength parskip=\the\parskip}\lthtmltypeout{}%
\lthtmltypeout{latex2htmlLength oddsidemargin=\the\oddsidemargin}\lthtmltypeout{}%
\makeatletter
\if@twoside\lthtmltypeout{latex2htmlLength evensidemargin=\the\evensidemargin}%
\else\lthtmltypeout{latex2htmlLength evensidemargin=\the\oddsidemargin}\fi%
\lthtmltypeout{}%
\makeatother
\setcounter{page}{1}
\onecolumn
% !!! IMAGES START HERE !!!
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline464}%
$E_0$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline466}%
$N_0$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline468}%
$ENC$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline470}%
$CS=$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline472}%
$N_S$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline474}%
$CS={\begingroupN_S\endgroup\over N_0}$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline482}%
$E_f$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline486}%
$E_0/2$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline490}%
$\Delta \sim $%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline492}%
$E_t$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline494}%
$\Sigma >3ENC$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
\stepcounter{section}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline131}%
$e^-$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline137}%
$D$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline141}%
$E_t=E_0/2$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline143}%
$N$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline147}%
$N_n$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline149}%
$N_\gamma$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmldisplayA{displaymath17}%
\begin{displaymath}
N_\gamma(E_t)=\frac{N_0}{2}\cdot\Big(1+C_s \frac{E_0-2E_t}{E_0}\Big)D \Big(\frac{E_0-E_t}{ENC} \Big),
\end{displaymath}%
\lthtmldisplayZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline151}%
$C_s$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline153}%
$N_s=C_s N_0$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline155}%
$\tau_s$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline157}%
$T$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmldisplayA{displaymath26}%
\begin{displaymath}
N_n(E_t) \sim \frac{T}{\tau_s} D \Big(\frac{-E_t}{ENC} \Big).
\end{displaymath}%
\lthtmldisplayZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline165}%
$\Sigma>3\,ENC$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline167}%
$O$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline169}%
$G$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline171}%
$V_t$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmldisplayA{displaymath34}%
\begin{displaymath}
V_{t}=O+G \cdot E_t.
\end{displaymath}%
\lthtmldisplayZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline175}%
$i$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline177}%
$O_i$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline179}%
$G_i$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlinlinemathA{tex2html_wrap_inline191}%
$CS=\frac{N_S}{N_0}$%
\lthtmlinlinemathZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlpictureA{tex2html_wrap559}%
\includegraphics[width=\textwidth]{fig4.eps}%
\lthtmlpictureZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlpictureA{tex2html_wrap563}%
\includegraphics[width=\textwidth]{fig5.eps}%
\lthtmlpictureZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlpictureA{tex2html_wrap585}%
\includegraphics[width=\textwidth]{fig7.eps}%
\lthtmlpictureZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlpictureA{tex2html_wrap589}%
\includegraphics[width=\textwidth]{fig8.eps}%
\lthtmlpictureZ
\lthtmlcheckvsize\clearpage}
\stepcounter{section}
\stepcounter{subsection}
{\newpage\clearpage
\lthtmlpictureA{tex2html_wrap595}%
\includegraphics[width=\textwidth]{GUI_Advanced.eps}%
\lthtmlpictureZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlpictureA{tex2html_wrap599}%
\includegraphics[width=\textwidth]{GUI_ThresholdScan.eps}%
\lthtmlpictureZ
\lthtmlcheckvsize\clearpage}
\stepcounter{section}
\stepcounter{subsection}
{\newpage\clearpage
\lthtmlpictureA{tex2html_wrap605}%
\includegraphics[width=\textwidth]{addEnergy.eps}%
\lthtmlpictureZ
\lthtmlcheckvsize\clearpage}
{\newpage\clearpage
\lthtmlpictureA{tex2html_wrap609}%
\includegraphics[width=\textwidth]{calibrateModule.eps}%
\lthtmlpictureZ
\lthtmlcheckvsize\clearpage}
\stepcounter{section}
\end{document}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 255 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 259 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 505 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 192 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 218 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 471 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 222 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 263 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 262 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 253 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 258 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 468 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 215 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 199 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 514 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 228 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 229 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 248 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 539 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 181 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 357 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 254 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 252 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 482 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 300 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 281 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 242 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 269 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 357 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 251 B

View File

@ -1,84 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2008 (1.71)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Energy calibration wizard manual</TITLE>
<META NAME="description" CONTENT="Energy calibration wizard manual">
<META NAME="keywords" CONTENT="energyCalibrationHowTo">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="energyCalibrationHowTo.css">
<LINK REL="next" HREF="node1.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html9"
HREF="node1.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up_g.png">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev_g.png">
<BR>
<B> Next:</B> <A NAME="tex2html10"
HREF="node1.html">Introduction</A>
<BR>
<BR>
<!--End of Navigation Panel-->
<P>
<H1 ALIGN="CENTER">Energy calibration wizard manual</H1>
<DIV>
<P ALIGN="CENTER"><STRONG>Anna Bergamaschi</STRONG></P>
<P ALIGN="CENTER"><STRONG>March 12, 2018</STRONG></P>
</DIV>
<P>
<BR><HR>
<!--Table of Child-Links-->
<A NAME="CHILD_LINKS"></A>
<UL>
<LI><A NAME="tex2html11"
HREF="node1.html">Introduction</A>
<LI><A NAME="tex2html12"
HREF="node2.html">Data acquisition</A>
<UL>
<LI><A NAME="tex2html13"
HREF="node2.html#SECTION00021000000000000000">Software</A>
</UL>
<BR>
<LI><A NAME="tex2html14"
HREF="node3.html">Data analysis</A>
<UL>
<LI><A NAME="tex2html15"
HREF="node3.html#SECTION00031000000000000000">Software</A>
</UL>
<BR>
<LI><A NAME="tex2html16"
HREF="node4.html">Setup calibration files</A>
<LI><A NAME="tex2html17"
HREF="node5.html">About this document ...</A>
</UL>
<!--End of Table of Child-Links-->
<BR><HR>
<ADDRESS>
Thattil Dhanya
2018-03-12
</ADDRESS>
</BODY>
</HTML>

View File

@ -1,50 +0,0 @@
# LaTeX2HTML 2008 (1.71)
# Associate internals original text with physical files.
$key = q/fig:modulecalibration/;
$ref_files{$key} = "$dir".q|node1.html|;
$noresave{$key} = "$nosave";
$key = q/eq:encal/;
$ref_files{$key} = "$dir".q|node1.html|;
$noresave{$key} = "$nosave";
$key = q/fig:guithrscan/;
$ref_files{$key} = "$dir".q|node2.html|;
$noresave{$key} = "$nosave";
$key = q/fig:thrscanfluo/;
$ref_files{$key} = "$dir".q|node1.html|;
$noresave{$key} = "$nosave";
$key = q/eq:noisescan/;
$ref_files{$key} = "$dir".q|node1.html|;
$noresave{$key} = "$nosave";
$key = q/eq:thrscan/;
$ref_files{$key} = "$dir".q|node1.html|;
$noresave{$key} = "$nosave";
$key = q/fig:calibratemodule/;
$ref_files{$key} = "$dir".q|node3.html|;
$noresave{$key} = "$nosave";
$key = q/fig:guiencallog/;
$ref_files{$key} = "$dir".q|node2.html|;
$noresave{$key} = "$nosave";
$key = q/fig:addenergy/;
$ref_files{$key} = "$dir".q|node3.html|;
$noresave{$key} = "$nosave";
$key = q/fig:thrscanexpl/;
$ref_files{$key} = "$dir".q|node1.html|;
$noresave{$key} = "$nosave";
$key = q/fig:expthrscan/;
$ref_files{$key} = "$dir".q|node1.html|;
$noresave{$key} = "$nosave";
1;

View File

@ -1,101 +0,0 @@
# LaTeX2HTML 2008 (1.71)
# Associate labels original text with physical files.
$key = q/fig:modulecalibration/;
$external_labels{$key} = "$URL/" . q|node1.html|;
$noresave{$key} = "$nosave";
$key = q/eq:encal/;
$external_labels{$key} = "$URL/" . q|node1.html|;
$noresave{$key} = "$nosave";
$key = q/fig:guithrscan/;
$external_labels{$key} = "$URL/" . q|node2.html|;
$noresave{$key} = "$nosave";
$key = q/fig:thrscanfluo/;
$external_labels{$key} = "$URL/" . q|node1.html|;
$noresave{$key} = "$nosave";
$key = q/eq:noisescan/;
$external_labels{$key} = "$URL/" . q|node1.html|;
$noresave{$key} = "$nosave";
$key = q/eq:thrscan/;
$external_labels{$key} = "$URL/" . q|node1.html|;
$noresave{$key} = "$nosave";
$key = q/fig:calibratemodule/;
$external_labels{$key} = "$URL/" . q|node3.html|;
$noresave{$key} = "$nosave";
$key = q/fig:guiencallog/;
$external_labels{$key} = "$URL/" . q|node2.html|;
$noresave{$key} = "$nosave";
$key = q/fig:addenergy/;
$external_labels{$key} = "$URL/" . q|node3.html|;
$noresave{$key} = "$nosave";
$key = q/fig:thrscanexpl/;
$external_labels{$key} = "$URL/" . q|node1.html|;
$noresave{$key} = "$nosave";
$key = q/fig:expthrscan/;
$external_labels{$key} = "$URL/" . q|node1.html|;
$noresave{$key} = "$nosave";
1;
# LaTeX2HTML 2008 (1.71)
# labels from external_latex_labels array.
$key = q/fig:modulecalibration/;
$external_latex_labels{$key} = q|4|;
$noresave{$key} = "$nosave";
$key = q/eq:encal/;
$external_latex_labels{$key} = q|3|;
$noresave{$key} = "$nosave";
$key = q/fig:guithrscan/;
$external_latex_labels{$key} = q|6|;
$noresave{$key} = "$nosave";
$key = q/fig:thrscanfluo/;
$external_latex_labels{$key} = q|3|;
$noresave{$key} = "$nosave";
$key = q/eq:noisescan/;
$external_latex_labels{$key} = q|2|;
$noresave{$key} = "$nosave";
$key = q/eq:thrscan/;
$external_latex_labels{$key} = q|1|;
$noresave{$key} = "$nosave";
$key = q/fig:calibratemodule/;
$external_latex_labels{$key} = q|8|;
$noresave{$key} = "$nosave";
$key = q/fig:guiencallog/;
$external_latex_labels{$key} = q|5|;
$noresave{$key} = "$nosave";
$key = q/fig:addenergy/;
$external_latex_labels{$key} = q|7|;
$noresave{$key} = "$nosave";
$key = q/fig:thrscanexpl/;
$external_latex_labels{$key} = q|1|;
$noresave{$key} = "$nosave";
$key = q/fig:expthrscan/;
$external_latex_labels{$key} = q|2|;
$noresave{$key} = "$nosave";
1;

View File

@ -1,383 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2008 (1.71)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Introduction</TITLE>
<META NAME="description" CONTENT="Introduction">
<META NAME="keywords" CONTENT="energyCalibrationHowTo">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="energyCalibrationHowTo.css">
<LINK REL="next" HREF="node2.html">
<LINK REL="previous" HREF="energyCalibrationHowTo.html">
<LINK REL="up" HREF="energyCalibrationHowTo.html">
<LINK REL="next" HREF="node2.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html26"
HREF="node2.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<A NAME="tex2html24"
HREF="energyCalibrationHowTo.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up.png"></A>
<A NAME="tex2html18"
HREF="energyCalibrationHowTo.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html27"
HREF="node2.html">Data acquisition</A>
<B> Up:</B> <A NAME="tex2html25"
HREF="energyCalibrationHowTo.html">Energy calibration wizard manual</A>
<B> Previous:</B> <A NAME="tex2html19"
HREF="energyCalibrationHowTo.html">Energy calibration wizard manual</A>
<BR>
<BR>
<!--End of Navigation Panel-->
<H1><A NAME="SECTION00010000000000000000">
Introduction</A>
</H1>
<P>
The choice of the level of the comparator threshold plays a very important role in counting systems since it influences the efficiency of the detector as well as its spatial resolution (for details see the paper Bergamaschi, A. et al. (2010). J. Synchrotron Rad. 17, 653-668).
<P>
Single-photon-counting detectors are sensitive to single photons and the only limitation on the fluctuations of the number of counts is given by the Poisson-like statistics of the X-ray quanta.
The digitized signal does not carry any information concerning the energy of the X-rays and all photons with an energy larger than the threshold are counted as one bit. This means that the choice of the correct comparator threshold level is critical in order to obtain good-quality data.
<BR>
Figure&nbsp;<A HREF="#fig:thrscanexpl">1</A> shows the expected number of counts as a function of the threshold energy for <IMG
WIDTH="24" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img2.png"
ALT="$N_0$"> monochromatic X-rays of energy <IMG
WIDTH="23" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img1.png"
ALT="$E_0$">. This is often denominated S-curve and can be interpreted as the integral of the signal spectrum between the threshold level and infinity.
The dashed curve represents the behavior of an ideal counting system: nothing is counted for thresholds larger than the photon energy and all the <IMG
WIDTH="24" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img2.png"
ALT="$N_0$"> X-rays are counted for thresholds lower than <IMG
WIDTH="23" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img1.png"
ALT="$E_0$">.
The thick solid line represents the physical curve which also takes into account the electronic noise and the charge sharing between channels.
<P>
The intrinsic noise on the electronic signal is defined by the Equivalent Noise Charge (<IMG
WIDTH="44" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img3.png"
ALT="$ENC$">). The <IMG
WIDTH="44" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img3.png"
ALT="$ENC$"> describes noise in terms of the charge at the detector input needed to create the same output at the end of the analog chain and is normally expressed in electrons. For silicon sensors, it can be converted into energy units by considering 1&nbsp;<IMG
WIDTH="23" HEIGHT="19" ALIGN="BOTTOM" BORDER="0"
SRC="img12.png"
ALT="$e^-$">=3.6&nbsp;eV.
The value of the <IMG
WIDTH="44" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img3.png"
ALT="$ENC$"> normally depends on the shaping settings of the analog chain and increases with shorter shaping times.
The resulting electronic signal spectrum is then given by a convolution between the radiation spectrum and the noise i.e., a Gaussian of standard deviation <IMG
WIDTH="44" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img3.png"
ALT="$ENC$">.
The S-curve for a monochromatic radiation beam is well described by a Gaussian cumulative distribution <IMG
WIDTH="18" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img13.png"
ALT="$D$"> with an additional increase at low threshold due to the baseline noise, as shown by the solid thin line.
<P>
Moreover, when a photon is absorbed in the region between two strips of the sensor, the generated charge is partially collected by the two nearest electronic channels. For this reason the physical S-curve is not flat but can be modeled by a decreasing straight line. The number of shared photons <IMG
WIDTH="27" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img5.png"
ALT="$N_S$"> is given by the difference between the number of counts and the number of X-rays whose charge is completely collected by the strip (shown by the dotted line).
<P>
The number of counts in the physical case is equal to that in the ideal case for a threshold set at half the photon energy. This defines the optimal threshold level <IMG
WIDTH="78" HEIGHT="32" ALIGN="MIDDLE" BORDER="0"
SRC="img14.png"
ALT="$E_t=E_0/2$">.
<BR>
The detector response <IMG
WIDTH="19" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img15.png"
ALT="$N$"> as a function of the threshold energy <IMG
WIDTH="22" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img10.png"
ALT="$E_t$"> is given by the sum of the noise counts <IMG
WIDTH="26" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img16.png"
ALT="$N_n$"> and the counts originating from photons <IMG
WIDTH="25" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img17.png"
ALT="$N_\gamma$">:
<BR>
<DIV ALIGN="RIGHT">
<!-- MATH
\begin{equation}
N_\gamma(E_t)=\frac{N_0}{2}\cdot\Big(1+C_s \frac{E_0-2E_t}{E_0}\Big)D \Big(\frac{E_0-E_t}{ENC} \Big),
\end{equation}
-->
<TABLE WIDTH="100%" ALIGN="CENTER">
<TR VALIGN="MIDDLE"><TD ALIGN="CENTER" NOWRAP><A NAME="eq:thrscan"></A><IMG
WIDTH="335" HEIGHT="41" BORDER="0"
SRC="img18.png"
ALT="\begin{displaymath}
N_\gamma(E_t)=\frac{N_0}{2}\cdot\Big(1+C_s \frac{E_0-2E_t}{E_0}\Big)D \Big(\frac{E_0-E_t}{ENC} \Big),
\end{displaymath}"></TD>
<TD WIDTH=10 ALIGN="RIGHT">
(1)</TD></TR>
</TABLE>
<BR CLEAR="ALL"></DIV><P></P>
where <IMG
WIDTH="23" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img19.png"
ALT="$C_s$"> is the fraction of photons which produce a charge cloud which is shared between neighboring strips (<IMG
WIDTH="83" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img20.png"
ALT="$N_s=C_s N_0$">).
<BR>
By assuming a noise of Gaussian type, and considering its bandwidth limited by the shaping time <IMG
WIDTH="18" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img21.png"
ALT="$\tau_s$">, the number of noise counts in the acquisition time <IMG
WIDTH="16" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img22.png"
ALT="$T$"> can be approximated as:
<BR>
<DIV ALIGN="RIGHT">
<!-- MATH
\begin{equation}
N_n(E_t) \sim \frac{T}{\tau_s} D \Big(\frac{-E_t}{ENC} \Big).
\end{equation}
-->
<TABLE WIDTH="100%" ALIGN="CENTER">
<TR VALIGN="MIDDLE"><TD ALIGN="CENTER" NOWRAP><A NAME="eq:noisescan"></A><IMG
WIDTH="169" HEIGHT="41" BORDER="0"
SRC="img23.png"
ALT="\begin{displaymath}
N_n(E_t) \sim \frac{T}{\tau_s} D \Big(\frac{-E_t}{ENC} \Big).
\end{displaymath}"></TD>
<TD WIDTH=10 ALIGN="RIGHT">
(2)</TD></TR>
</TABLE>
<BR CLEAR="ALL"></DIV><P></P>
<P>
The choice of the comparator threshold level <IMG
WIDTH="22" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img10.png"
ALT="$E_t$"> influences not only the counting efficiency and noise performances, but also the spatial resolution and the counting statistics of the detector.
If the threshold is set at values higher than the ideal value <IMG
WIDTH="78" HEIGHT="32" ALIGN="MIDDLE" BORDER="0"
SRC="img14.png"
ALT="$E_t=E_0/2$">, a fraction of the photons absorbed in the sensor in the region between two strips is not counted thus reducing the detector efficiency but improving its spatial resolution (narrower strip size). On the other hand, if the threshold is set at values lower than <IMG
WIDTH="22" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img10.png"
ALT="$E_t$">, part of the X-rays absorbed in the region between two strips are counted by both of them, resulting in a deterioration of the spatial resolution of the detector and of the fluctuations on the number of photons because of the increased multiplicity.
<P>
Furthermore, the threshold uniformity is particularly critical with regards to fluorescent radiation emitted by the sample under investigation. Since the emission of fluorescent light is isotropic, the data quality will be improved by setting the threshold high enough in order to discard the fluorescence background (see figure&nbsp;<A HREF="#fig:thrscanfluo">3</A>).
<BR>
Moreover, setting the threshold too close to the energy of the fluorescent light gives rise to large fluctuations between channels in the number of counts since the threshold sits on the steepest part of the threshold scan curve for the fluorescent background. These differences cannot be corrected by using a flat-field normalization since the fluorescent component is not present in the reference image. For this reason, it is extremely important that the threshold uniformity over the whole detector is optimized. The threshold level must be set at least <IMG
WIDTH="88" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img24.png"
ALT="$\Sigma&gt;3\,ENC$"> away from both the fluorescent energy level and the X-ray energy in order to remove the fluorescence background while efficiently count the diffracted photons.
<P>
The comparator threshold is given by a global level which can be set on a module basis and adds to a component which is individually adjustable for each channel. In order to optimize the uniformity of the detector response it is important to properly adjust the threshold for all channels.
<BR>
Since both the signal amplification stages and the comparator are linear, it is necessary to calibrate the detector offset <IMG
WIDTH="17" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img25.png"
ALT="$O$"> and gain <IMG
WIDTH="17" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img26.png"
ALT="$G$"> in order to correctly set its comparator threshold <IMG
WIDTH="19" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img27.png"
ALT="$V_t$"> at the desired energy <IMG
WIDTH="22" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img10.png"
ALT="$E_t$">:
<BR>
<DIV ALIGN="RIGHT">
<!-- MATH
\begin{equation}
V_{t}=O+G \cdot E_t.
\end{equation}
-->
<TABLE WIDTH="100%" ALIGN="CENTER">
<TR VALIGN="MIDDLE"><TD ALIGN="CENTER" NOWRAP><A NAME="eq:encal"></A><IMG
WIDTH="111" HEIGHT="26" BORDER="0"
SRC="img28.png"
ALT="\begin{displaymath}
V_{t}=O+G \cdot E_t.
\end{displaymath}"></TD>
<TD WIDTH=10 ALIGN="RIGHT">
(3)</TD></TR>
</TABLE>
<BR CLEAR="ALL"></DIV><P></P>
This is initially performed by acquiring measurements while scanning the global threshold using different X-ray energies and calculating the median of the counts at each threshold value for each module <IMG
WIDTH="10" HEIGHT="17" ALIGN="BOTTOM" BORDER="0"
SRC="img29.png"
ALT="$i$">. The curves obtained for one of the detector modules at three energies are shown in figure&nbsp;<A HREF="#fig:modulecalibration">4</A>. The experimental data are then fitted according to equation&nbsp;<A HREF="#eq:thrscan">1</A> and for each module a linear relation is found between the X-ray energy and the estimated inflection point, as shown in the inset of figure&nbsp;<A HREF="#fig:modulecalibration">4</A>. The resulting offset <IMG
WIDTH="22" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img30.png"
ALT="$O_i$"> and gain <IMG
WIDTH="22" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img31.png"
ALT="$G_i$"> are used as a conversion factor between the threshold level and the energy.
<P>
<DIV ALIGN="CENTER"><A NAME="fig:thrscanexpl"></A><A NAME="116"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 1:</STRONG>
Expected counts as a function of a threshold energy for a monochromatic beam of energy <IMG
WIDTH="23" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img1.png"
ALT="$E_0$">=12&nbsp;keV. <IMG
WIDTH="24" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img2.png"
ALT="$N_0$">=10000 is the number of photons absorbed by the detector during the acquisition time. The dashed line represents the curve in an ideal case without electronic noise and charge sharing, the solid thin line with noise <IMG
WIDTH="44" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img3.png"
ALT="$ENC$">=1&nbsp;keV but without charge sharing and the solid thick line is the physical case with noise and <IMG
WIDTH="45" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img4.png"
ALT="$CS=$">22&nbsp;% charge sharing. <IMG
WIDTH="27" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img5.png"
ALT="$N_S$"> is the number of photons whose charge is shared between neighbouring strips (<!-- MATH
$CS=\frac{N_S}{N_0}$
-->
<IMG
WIDTH="71" HEIGHT="38" ALIGN="MIDDLE" BORDER="0"
SRC="img32.png"
ALT="$CS=\frac{N_S}{N_0}$">). The dotted line represents the number of photons whose charge is completely collected by a single strip.</CAPTION>
<TR><TD><IMG
WIDTH="556" HEIGHT="539" ALIGN="BOTTOM" BORDER="0"
SRC="img33.png"
ALT="\includegraphics[width=\textwidth]{fig4.eps}"></TD></TR>
</TABLE>
</DIV>
<P>
<DIV ALIGN="CENTER"><A NAME="fig:expthrscan"></A><A NAME="117"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 2:</STRONG>
Measured threshold scan at 12.5&nbsp;keV with the three different settings. In the inset the fit of the experimental data with the expected curve as in function&nbsp;<A HREF="#eq:thrscan">1</A> is shown in the region of the inflection point.</CAPTION>
<TR><TD><IMG
WIDTH="556" HEIGHT="539" ALIGN="BOTTOM" BORDER="0"
SRC="img34.png"
ALT="\includegraphics[width=\textwidth]{fig5.eps}"></TD></TR>
</TABLE>
</DIV>
<P>
<DIV ALIGN="CENTER"><A NAME="fig:thrscanfluo"></A><A NAME="53"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 3:</STRONG>
Number of counts as a function of the threshold measured from a sample containing iron (<IMG
WIDTH="25" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img7.png"
ALT="$E_f$">=5.9&nbsp;keV) when using X-rays of energy <IMG
WIDTH="23" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img1.png"
ALT="$E_0$">=12&nbsp;keV. In this case, setting the threshold at <IMG
WIDTH="39" HEIGHT="32" ALIGN="MIDDLE" BORDER="0"
SRC="img8.png"
ALT="$E_0/2$">, which is very close to <IMG
WIDTH="25" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img7.png"
ALT="$E_f$">, would give <IMG
WIDTH="35" HEIGHT="14" ALIGN="BOTTOM" BORDER="0"
SRC="img9.png"
ALT="$\Delta \sim $">10% counts from the fluorescense background. Therefore the threshold should be set at an intermediate level <IMG
WIDTH="22" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img10.png"
ALT="$E_t$"> between the two energy components with a distance of at least <IMG
WIDTH="85" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img11.png"
ALT="$\Sigma &gt;3ENC$"> from both <IMG
WIDTH="25" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img7.png"
ALT="$E_f$"> and <IMG
WIDTH="23" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
SRC="img1.png"
ALT="$E_0$">.</CAPTION>
<TR><TD><IMG
WIDTH="556" HEIGHT="553" ALIGN="BOTTOM" BORDER="0"
SRC="img35.png"
ALT="\includegraphics[width=\textwidth]{fig7.eps}"></TD></TR>
</TABLE>
</DIV>
Differences in gain and offset are present also between individual channels within a module and therefore the use of threshold equalization techniques (trimming) using the internal 6-bit DAC is needed in order to reduce the threshold dispersion.
Since both gain and offset have variations between channels, the optimal trimming should be performed as a function of the threshold energy.
Please not that trimming of the channels of the detector should be performed in advanced and is extremely important for a succeful energy calibration of the detector.
<P>
All energy calibration procedures should be applied to a trimmed detector and only an improvement of the existing trimbits can be performed afterwards, since it does not significatively affect the energy calibration.
<P>
<DIV ALIGN="CENTER"><A NAME="fig:modulecalibration"></A><A NAME="118"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 4:</STRONG>
Median of the number of counts as a function of the threshold for X-rays of 12.5, 17.5 and 25&nbsp;keV for one of the detector modules using <I>standard</I> settings. The solid line represents the fit of the experimental points with equation&nbsp;<A HREF="#eq:thrscan">1</A>. In the inset the linear fit between the X-ray energy and the position of the inflection point of the curves is shown.</CAPTION>
<TR><TD><IMG
WIDTH="556" HEIGHT="539" ALIGN="BOTTOM" BORDER="0"
SRC="img36.png"
ALT="\includegraphics[width=\textwidth]{fig8.eps}"></TD></TR>
</TABLE>
</DIV>
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html26"
HREF="node2.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<A NAME="tex2html24"
HREF="energyCalibrationHowTo.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up.png"></A>
<A NAME="tex2html18"
HREF="energyCalibrationHowTo.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html27"
HREF="node2.html">Data acquisition</A>
<B> Up:</B> <A NAME="tex2html25"
HREF="energyCalibrationHowTo.html">Energy calibration wizard manual</A>
<B> Previous:</B> <A NAME="tex2html19"
HREF="energyCalibrationHowTo.html">Energy calibration wizard manual</A>
<!--End of Navigation Panel-->
<ADDRESS>
Thattil Dhanya
2018-03-12
</ADDRESS>
</BODY>
</HTML>

View File

@ -1,186 +0,0 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 2008 (1.71)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Data acquisition</TITLE>
<META NAME="description" CONTENT="Data acquisition">
<META NAME="keywords" CONTENT="energyCalibrationHowTo">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META NAME="Generator" CONTENT="LaTeX2HTML v2008">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="energyCalibrationHowTo.css">
<LINK REL="next" HREF="node3.html">
<LINK REL="previous" HREF="node1.html">
<LINK REL="up" HREF="energyCalibrationHowTo.html">
<LINK REL="next" HREF="node3.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html36"
HREF="node3.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<A NAME="tex2html34"
HREF="energyCalibrationHowTo.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up.png"></A>
<A NAME="tex2html28"
HREF="node1.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html37"
HREF="node3.html">Data analysis</A>
<B> Up:</B> <A NAME="tex2html35"
HREF="energyCalibrationHowTo.html">Energy calibration wizard manual</A>
<B> Previous:</B> <A NAME="tex2html29"
HREF="node1.html">Introduction</A>
<BR>
<BR>
<!--End of Navigation Panel-->
<!--Table of Child-Links-->
<A NAME="CHILD_LINKS"><STRONG>Subsections</STRONG></A>
<UL>
<LI><A NAME="tex2html38"
HREF="node2.html#SECTION00021000000000000000">Software</A>
</UL>
<!--End of Table of Child-Links-->
<HR>
<H1><A NAME="SECTION00020000000000000000">
Data acquisition</A>
</H1>
<P>
The energy calibration consists in acquiring threshold scans using the detector at at least 2 (better 3) energies. A monochromatic beam is ideal in this procedure, but beam obtained from some fluorescent sample is also good.
<BR>
Please note that the statistic is important to succesfully analyze the data. Normally the exposure time for each step should be chosen in order to achieve at least 1000 counts per step.
If this is not possible it is better to reduce the scan range or enlarge the scan step rather than acquiring data with a too low statics.
<P>
With a quick acquisition or threshold scan it is useful to define the range of the scan and the exposure time. It is important to start from a threshold high enough that (almost) all channels of the detector have a negligible number of counts and that the plateau of the S-curve is long enough to correctly estimate the number of photons.
<P>
<H2><A NAME="SECTION00021000000000000000">
Software</A>
</H2>
<P>
For the acquisition ot the data you need to install the slsDetector software package (please refere to separate documentation). The use of the GUI is optional and all operations can be performed also using the text client.
<BR>
<P>
In the following the command to acquire a dataset for the energy calibration with an exposure time of 1&nbsp;s, and threshold scan range between 200 and 850 with a setp of 1 DAC unit.
<PRE>
&gt; sls_detector_put encallog 1 #setup energy calibration
&gt; sls_detector_put exptime 1. #set exposure time to 1s
&gt; sls_detector_put scan0script threshold #setup threshold scan
&gt; sls_detector_put scan0range 200 850 1 #set scan range between 200 and 850, step of 1
&gt; sls_detector_acquire #acquire the data
&gt; sls_detector_put encallog 0 #unset energy calibration
</PRE>
<P>
With the GUI you can obtain the same results by clicking on the <I>Energy Calibration</I> log button in the advanced tab (see figure&nbsp;<A HREF="#fig:guiencallog">5</A>) and setting up the threshold scan in the Actions tab (see figure&nbsp;<A HREF="#fig:guithrscan">6</A>). the exposure time should also be set in the measurement tab.
<P>
This procedure should be executed at at least 2 (better 3) energies.
<P>
Additional to the data files, the acquisition will produce a .encal file containing an header and, for each step of the acquisition, the threshold value and the file name.
<BR>
In case you forgot to enable the encallog flag in the software, you can produce the file with the syntax as follows:
<PRE>
settings standard
type Mythen+
nmod 12
modulenumber:0 000
modulenumber:1 111
modulenumber:2 222
modulenumber:3 333
modulenumber:4 444
modulenumber:5 555
modulenumber:6 666
modulenumber:7 777
modulenumber:8 888
modulenumber:9 999
modulenumber:10 aaa
modulenumber:11 bbb
450 standard_12_4keV_S450_0
460 standard_12_4keV_S460_0
470 standard_12_4keV_S470_0
480 standard_12_4keV_S480_0
490 standard_12_4keV_S490_0
500 standard_12_4keV_S500_0
510 standard_12_4keV_S510_0
520 standard_12_4keV_S520_0
...
...
</PRE>
<P>
<DIV ALIGN="CENTER"><A NAME="fig:guiencallog"></A><A NAME="73"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 5:</STRONG>
Acquisition GUI window to enable the energy calibration log.</CAPTION>
<TR><TD><IMG
WIDTH="555" HEIGHT="603" ALIGN="BOTTOM" BORDER="0"
SRC="img37.png"
ALT="\includegraphics[width=\textwidth]{GUI_Advanced.eps}"></TD></TR>
</TABLE>
</DIV>
<P>
<DIV ALIGN="CENTER"><A NAME="fig:guithrscan"></A><A NAME="78"></A>
<TABLE>
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 6:</STRONG>
Acquisition GUI window to setup the threshold scan.</CAPTION>
<TR><TD><IMG
WIDTH="555" HEIGHT="603" ALIGN="BOTTOM" BORDER="0"
SRC="img38.png"
ALT="\includegraphics[width=\textwidth]{GUI_ThresholdScan.eps}"></TD></TR>
</TABLE>
</DIV>
<P>
<HR>
<!--Navigation Panel-->
<A NAME="tex2html36"
HREF="node3.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next"
SRC="file:/usr/share/latex2html/icons/next.png"></A>
<A NAME="tex2html34"
HREF="energyCalibrationHowTo.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up"
SRC="file:/usr/share/latex2html/icons/up.png"></A>
<A NAME="tex2html28"
HREF="node1.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous"
SRC="file:/usr/share/latex2html/icons/prev.png"></A>
<BR>
<B> Next:</B> <A NAME="tex2html37"
HREF="node3.html">Data analysis</A>
<B> Up:</B> <A NAME="tex2html35"
HREF="energyCalibrationHowTo.html">Energy calibration wizard manual</A>
<B> Previous:</B> <A NAME="tex2html29"
HREF="node1.html">Introduction</A>
<!--End of Navigation Panel-->
<ADDRESS>
Thattil Dhanya
2018-03-12
</ADDRESS>
</BODY>
</HTML>

Some files were not shown because too many files have changed in this diff Show More