Compare commits
601 Commits
Author | SHA1 | Date | |
---|---|---|---|
9b7f9b1be1 | |||
26c829d766 | |||
3fde5c5b55 | |||
3e5f546ebe | |||
834794ad98 | |||
bc8c706150 | |||
e39bee0113 | |||
a4dc00b252 | |||
6438238b55 | |||
735b8ea206 | |||
56c504abbb | |||
4d6346e678 | |||
dc7e448759 | |||
aab62fccc1 | |||
73ce4abd58 | |||
c12b137b79 | |||
befdcf7f36 | |||
02f5c472a8 | |||
75ed2cd2e4 | |||
3be045f9b6 | |||
8fae982802 | |||
128ec88b5f | |||
d5fc158330 | |||
864e6e4c81 | |||
343d96ff16 | |||
f340eef4bc | |||
f192164e32 | |||
ea0c436fc8 | |||
dd1cf42a73 | |||
18d5fd5a35 | |||
aab56ea943 | |||
045a7cfcb1 | |||
92f988ddc1 | |||
5388b54eff | |||
75b94e6614 | |||
d30a839eff | |||
bcea5a99a1 | |||
c37d3feae9 | |||
c086e9c19f | |||
7099bc3286 | |||
35dcdd62c9 | |||
84b0f9a91b | |||
91fece87b2 | |||
05c5ad711b | |||
ad4fdcfa1a | |||
2efe9cd40b | |||
07594e0607 | |||
c4c063534e | |||
705e1a762c | |||
a8b41ca813 | |||
0de9682e72 | |||
ce0aa98b3f | |||
57fee3d5ef | |||
891e76af0a | |||
67e92fdf68 | |||
13186e1ee2 | |||
14f97cbc10 | |||
6d2072f198 | |||
a78bc86bca | |||
5e11e0a7db | |||
319d883880 | |||
2d52058a55 | |||
e5c84fd11c | |||
598d163173 | |||
6f09a5abff | |||
fbb04f5ebe | |||
0bea688a83 | |||
19d973f5d6 | |||
92d5143f81 | |||
6332025bbc | |||
bdccddfe97 | |||
a236a7a9aa | |||
72c4cbe871 | |||
7ffd9b87b8 | |||
a657bac1b1 | |||
f4e2b819d2 | |||
634fbc748e | |||
8fde83499e | |||
5e90386fda | |||
2116070f02 | |||
02c193118b | |||
33894509e6 | |||
b208acf4a0 | |||
02f4b5f546 | |||
b2513cad23 | |||
4f28df03ab | |||
a7dab9a257 | |||
ca756dbeee | |||
760ca98ee4 | |||
960dc5c62f | |||
03d9e1d182 | |||
25886044ab | |||
4dd7cafe32 | |||
f78a7b201b | |||
4e374eb2cd | |||
5b80ef6d04 | |||
cc5862533e | |||
d58dd1d035 | |||
3b497eca36 | |||
f4a11533be | |||
fe24c8fb86 | |||
608f292e4f | |||
9868ca3eca | |||
de3c62fea4 | |||
4b6144c489 | |||
4838d6c037 | |||
ec4be4f2c0 | |||
e93f53f459 | |||
efad86335f | |||
70c2165df4 | |||
c1ea73d21c | |||
181616fb67 | |||
ed8e41a02c | |||
37f881017a | |||
cda7814c21 | |||
c87cb5d051 | |||
70a55428bc | |||
8c0b4ac216 | |||
60292ca0f8 | |||
fecac2c4d2 | |||
9167d113dc | |||
04ebc85fcc | |||
de5986e5dd | |||
7cfc6a9fd9 | |||
e0c29190a2 | |||
ff7b6c5abe | |||
269227b093 | |||
355c0a8c11 | |||
be95de0963 | |||
0dd6567ce4 | |||
638a69ad23 | |||
7115ac19b6 | |||
b20f994ac4 | |||
4adf3e9385 | |||
ae13fbce72 | |||
68840b4544 | |||
e2af1de83f | |||
7156d2e7b3 | |||
e2d451a400 | |||
3189bd5359 | |||
c3fce9822f | |||
ca02a8fd72 | |||
3c3a5062bd | |||
edfa8493d8 | |||
52223e61d4 | |||
827ce17fac | |||
96700d42b4 | |||
56e61de863 | |||
2932a954ab | |||
de7bb0b979 | |||
6ef4aa9715 | |||
e333eb15cd | |||
80c8ff9f20 | |||
3da71c9274 | |||
3a887eb604 | |||
c6549694a8 | |||
b9cd0054a9 | |||
cf5137723d | |||
945a7ed10f | |||
5ef0012518 | |||
94e3874545 | |||
722fb58010 | |||
d63933b2de | |||
c6c0819a5e | |||
45681f86ce | |||
50c5c12523 | |||
4f773120b2 | |||
4ffefc99a2 | |||
16fc44b3ab | |||
e8cfadaae3 | |||
ac6720e27d | |||
65c76e10be | |||
ae7255953d | |||
0bbee8d91e | |||
24d6d2c24a | |||
28e9605ab7 | |||
6b28201f72 | |||
ae49c04dcd | |||
87abe15227 | |||
5f90db723c | |||
2ab90ae2ed | |||
4b7970c191 | |||
3cf092d058 | |||
0be51b69fb | |||
57537a350f | |||
2b030abf0d | |||
e8217b0867 | |||
83bb7c99ea | |||
24d0d776b7 | |||
f4b01bc18b | |||
509d81ba7d | |||
eaed8bab08 | |||
3c59b3b8dd | |||
2935722b98 | |||
af5f61bd95 | |||
8bc039c95f | |||
b0b3701fcf | |||
c489aeb9dc | |||
db983c5439 | |||
ca6fff9648 | |||
5de120f7e7 | |||
c21f7f371a | |||
03cc80dc3c | |||
413a944e70 | |||
25ece55d7f | |||
4d493504e3 | |||
bb917b70f3 | |||
c0d0ebb104 | |||
f8060ef757 | |||
193139f06f | |||
f92a6e58d3 | |||
8e1a841b42 | |||
6a2c0ac86d | |||
9bb8a94c55 | |||
f8bb6a04a9 | |||
1e7932f09c | |||
02b6228856 | |||
bcf5e1fc0b | |||
3fb92aa9dd | |||
77d688e508 | |||
1ec3a69e29 | |||
aca3b4ca1b | |||
0c6fcc1186 | |||
92ae104f39 | |||
ae6884949b | |||
1a313e4d5d | |||
e8d83a085f | |||
c724756b5f | |||
ad3e3ce255 | |||
f084efd263 | |||
af079f3168 | |||
11943c4b5c | |||
389f356a3a | |||
0219d09067 | |||
df11f41416 | |||
97330b65ca | |||
eed951016b | |||
39847c5db6 | |||
12592c1206 | |||
cb90c3722d | |||
851914f0ae | |||
e85973ec8b | |||
7a30ab25bd | |||
5a45f15c7f | |||
558e5e2e9a | |||
82d21b6971 | |||
ccc60dacf4 | |||
517dfdf523 | |||
43ba40ec4c | |||
557d190236 | |||
5c6a99afca | |||
c98c5e469b | |||
d827ccc115 | |||
a40d18f8b2 | |||
0cd18a3b7a | |||
ebe01104e7 | |||
6b8b6b4b3d | |||
31026576f4 | |||
2c58bc6a5c | |||
3ed2bcf3fa | |||
8f1e8b1196 | |||
c0d6958e37 | |||
d2d2959237 | |||
c31ee2d76f | |||
dc318d3f47 | |||
429bf7f13d | |||
96ce9ed7c1 | |||
41288302f4 | |||
039092f292 | |||
fbee70818a | |||
5027f66d77 | |||
f5773de068 | |||
88b6fabb0d | |||
37dd32f1b0 | |||
5713cd6092 | |||
3174bd1c85 | |||
eb4da5ff0c | |||
98d5758ba1 | |||
c49c07b34a | |||
058fcd8aba | |||
699cce713b | |||
a88aa53d82 | |||
7fa13a5d5d | |||
56b420d68b | |||
efd49ae92a | |||
71204172df | |||
6cb387e3a8 | |||
05b32ce26c | |||
b920e52218 | |||
f07816a0d1 | |||
c7d4582efa | |||
77dc4d3d77 | |||
1d073b6897 | |||
56aaaf2e07 | |||
e360077e09 | |||
0fcf768772 | |||
a5f3de61a9 | |||
915fd41bf6 | |||
497f5289e6 | |||
8a8e76e839 | |||
086beea501 | |||
1a522c6696 | |||
91f8987b6c | |||
5771a3c722 | |||
9d8faae375 | |||
2ddf4117d0 | |||
68cbb63355 | |||
7df21e1790 | |||
c25239a398 | |||
04165a9da8 | |||
0bacb903ea | |||
a1fd34ebb6 | |||
126ad92ed8 | |||
e3667f6827 | |||
39560969f4 | |||
f1a77c4146 | |||
68b1959a85 | |||
931a5840e8 | |||
f430152f61 | |||
e0b886e2cc | |||
ef9fd77850 | |||
672c42a20e | |||
dbce25fdea | |||
a583f3d6e2 | |||
cf0ef68cda | |||
be6925c504 | |||
14bba171e7 | |||
1e50bc4cc0 | |||
374b07a126 | |||
460a44a9b1 | |||
f944d7cae4 | |||
b4309a9f60 | |||
539ab79e99 | |||
99dad79572 | |||
26f9b1ccbd | |||
da4ffb235c | |||
b03e35a8d6 | |||
f8c04a6a51 | |||
7033d43e61 | |||
bd9f19f6c7 | |||
a4c07ba9a0 | |||
4b9a8c1dad | |||
b05e9c194a | |||
c01931e5a6 | |||
7afbd8f0f0 | |||
b6eb4cbb61 | |||
21e1fcf693 | |||
cfff7969e3 | |||
6bfbb075c8 | |||
1a74ceca3e | |||
7990dd6f77 | |||
f4857355b6 | |||
81d68bebc6 | |||
8992d51787 | |||
e79827384a | |||
4905f49108 | |||
073d30bf61 | |||
3515951bb8 | |||
fde7ddf832 | |||
7a8d0b8dad | |||
56645a48af | |||
a7d3006cda | |||
c2624daa9a | |||
2126e2a723 | |||
c2980b3c44 | |||
ca358e4d17 | |||
22796d0d27 | |||
e6f1a90ed7 | |||
6a80bc5b54 | |||
5dd2f273fc | |||
1ed4407c11 | |||
f7e4dbc99e | |||
57ae305c7d | |||
5d75d8371b | |||
bbbd4731d7 | |||
df01ca7e4b | |||
931e750d65 | |||
697fc5b85e | |||
cd86c708dc | |||
cffdf7fede | |||
c05b89a77d | |||
f66950d312 | |||
98cb8de478 | |||
1dc774d229 | |||
1c7ff1dd8c | |||
fe73e09aa4 | |||
b2caec384f | |||
1c221d5844 | |||
8b3864969c | |||
cbd1570a8c | |||
df71899244 | |||
48f853aa1a | |||
e2e25f6e62 | |||
68bbea17d1 | |||
2ec1e08081 | |||
3007694b77 | |||
c2af014dad | |||
a46a8cc686 | |||
9ab2c1eb1f | |||
84d07a3e0c | |||
8d6ceccf87 | |||
5176ad521f | |||
feb1ef4ea5 | |||
00e742e0e0 | |||
a95dbd2215 | |||
cbbdd8eeab | |||
8caab4e562 | |||
1537bb3298 | |||
cb7b8713cf | |||
3d8903b2da | |||
7f01ccc83f | |||
e1eba8dec3 | |||
3fbbeea434 | |||
47e5504203 | |||
d41abc2b1c | |||
b46da37932 | |||
d862f10d5c | |||
74ca3fcc9a | |||
73c97f1381 | |||
f516d24089 | |||
132a9bbfe9 | |||
e10bf9d897 | |||
c755a8974c | |||
0254ff0281 | |||
2465eafff0 | |||
5481e19709 | |||
5dbfbdb82b | |||
f74710998d | |||
db75f1c81e | |||
046ac97a9b | |||
b8f0dd5f38 | |||
0ea61a1e3f | |||
c012f2cda3 | |||
978af1009e | |||
39a985cbba | |||
06d60c981d | |||
0e2d0f07e8 | |||
e8e9e12302 | |||
781fea0a96 | |||
4aa73c607f | |||
a276b6b7f5 | |||
ea875a14f9 | |||
cb008bb700 | |||
4633c142a8 | |||
001d6415bf | |||
a182ca3660 | |||
bd363b2c93 | |||
205a3780d5 | |||
5e82b50a00 | |||
476f3162af | |||
b7291dffb9 | |||
15424149cd | |||
f53770a2fc | |||
0e9cf558b4 | |||
95bf19a417 | |||
8471765e30 | |||
6d7fb07a4c | |||
1e8c7bd637 | |||
a1fc93b398 | |||
0722ef3125 | |||
49b4ae2f56 | |||
e2d1d58acf | |||
44339d3b89 | |||
404bb4a653 | |||
066550d38c | |||
020eaded36 | |||
445da80df8 | |||
f937b8ca5d | |||
7901b6f463 | |||
e9f6dcf479 | |||
264485c8ff | |||
3525bb3f9f | |||
78d1504d66 | |||
c6cb499758 | |||
bc57ea5725 | |||
27f752ff9e | |||
b9275646ad | |||
9e2f2697c7 | |||
b6b0df62b6 | |||
0ba537e479 | |||
75ddf535dc | |||
b1de501bef | |||
0f3a63f101 | |||
3b4b2d707f | |||
f405aa1733 | |||
df0fdb7ecb | |||
91b7a87557 | |||
b401a6c33b | |||
faefcc4799 | |||
671587c029 | |||
fb0b0b96ec | |||
72d89fefc3 | |||
a11313fe96 | |||
aba3a67b80 | |||
2bb8fa596a | |||
bb52676f50 | |||
536f8937cb | |||
e8b14f8c8a | |||
aca09bcd4e | |||
fdb4fa28db | |||
93362963e2 | |||
33a7375c72 | |||
97bad0fcb9 | |||
059711af37 | |||
f0c5106764 | |||
4182615aa9 | |||
ff2c42e921 | |||
b9eb3d5a52 | |||
78078f4ef3 | |||
ea66f2d12f | |||
de16c2a7f1 | |||
911ff49238 | |||
6731c39ce2 | |||
81eade8ede | |||
4d5506a0a8 | |||
cad8ffc0c6 | |||
8ebbfbb84b | |||
2ef44ec70b | |||
978b54dff9 | |||
300b014f73 | |||
1e94ec0c6a | |||
86018684c9 | |||
300bf85dae | |||
0ff79b7d5a | |||
0dccd78567 | |||
0e4c7a9494 | |||
679e747b5c | |||
daaf13d99c | |||
50f8366bc2 | |||
f3bf331b5f | |||
73ec3903bf | |||
85cc0d8184 | |||
7e00d9f395 | |||
bd7f3567f8 | |||
bd0f72c60e | |||
2505369c08 | |||
ab4572f544 | |||
80fb0a99a8 | |||
bdff083402 | |||
053e05628f | |||
d8b0a13ee2 | |||
537260879a | |||
a7309be567 | |||
829ba49c1c | |||
fa6d18e9b2 | |||
fd42fad045 | |||
447c5bb8fe | |||
2024eb5d6e | |||
cf8b53adff | |||
3aac30b8ee | |||
3b07afe3fc | |||
d90db50a60 | |||
f12df80c5b | |||
936dfea8a7 | |||
9e21583331 | |||
19460a03f5 | |||
72c2fbee9c | |||
2cd38fefcd | |||
549e346ad4 | |||
54f92fb26c | |||
b260d08225 | |||
c89f6e649c | |||
5287441a65 | |||
9b3f4a3a66 | |||
1decd2dd89 | |||
d95aaa2089 | |||
01d54a7a4c | |||
70a7d83175 | |||
f6927ad1bf | |||
bd31ac1d52 | |||
b16d087fd1 | |||
3563f0deec | |||
adb5ab5ed1 | |||
abb5bfb6e4 | |||
987aeda6fb | |||
d847a289a4 | |||
66c488b79a | |||
aa99d289c3 | |||
bb9208f8ee | |||
3eea80a121 | |||
68b13a0ecd | |||
12cd3d07a2 | |||
ebf44704b2 | |||
d555bc6e75 | |||
b5f7dc29af | |||
b403aa20a6 | |||
33092b6d85 | |||
aaab8d697a | |||
8b8d8449f2 | |||
545c5530e3 | |||
ae48a0e251 | |||
62ba3838ef | |||
cdcb413241 | |||
f8b34a16dd | |||
a971d87008 | |||
aba3319427 | |||
d3200dc76f | |||
e7621a6cd0 | |||
d6793a0802 | |||
37ba8f9a71 | |||
cb879c61ca |
9
.gitignore
vendored
@ -1,17 +1,10 @@
|
||||
.cproject
|
||||
.project
|
||||
bin/
|
||||
calibrationWizards/
|
||||
slsDetectorGui/
|
||||
slsDetectorSoftware/
|
||||
slsReceiverSoftware/
|
||||
slsDetectorCalibration/
|
||||
slsImageReconstruction/
|
||||
.settings
|
||||
JCTBGui/
|
||||
*.aux
|
||||
*.log
|
||||
*.out
|
||||
*.toc
|
||||
build
|
||||
tests
|
||||
docs/
|
||||
|
@ -1,21 +1,32 @@
|
||||
cmake_minimum_required(VERSION 2.8)
|
||||
set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
|
||||
set (REST OFF)
|
||||
set (CALIBRATE OFF)
|
||||
option (USE_HDF5 "HDF5 File format" OFF)
|
||||
|
||||
|
||||
find_package(Qt4)
|
||||
find_package(Qwt 6)
|
||||
find_package(CBF)
|
||||
find_package(Doxygen)
|
||||
if (USE_HDF5)
|
||||
find_package(HDF5 1.10 COMPONENTS CXX)
|
||||
endif (USE_HDF5)
|
||||
|
||||
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
||||
|
||||
add_subdirectory(slsDetectorSoftware)
|
||||
add_subdirectory(slsReceiverSoftware)
|
||||
add_subdirectory(slsImageReconstruction)
|
||||
if (QT4_FOUND AND QWT_FOUND)
|
||||
add_subdirectory(slsDetectorGui)
|
||||
endif()
|
||||
|
||||
if (DEFINED ENV{ROOTSYS})
|
||||
find_package(ROOT)
|
||||
if (ROOT_FOUND)
|
||||
add_subdirectory(calibrationWizards)
|
||||
|
||||
if (CALIBRATE)
|
||||
if (DEFINED ENV{ROOTSYS})
|
||||
find_package(ROOT)
|
||||
if (ROOT_FOUND)
|
||||
add_subdirectory(calibrationWizards)
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
endif(CALIBRATE)
|
||||
|
97
Makefile
@ -5,10 +5,11 @@ include Makefile.include
|
||||
|
||||
INSTALLROOT ?= $(PWD)
|
||||
BINDIR ?= $(INSTALLROOT)/bin
|
||||
DOCDIR ?= $(INSTALLROOT)/docs
|
||||
DOCDIR ?= $(INSTALLROOT)/manual/docs
|
||||
LIBDIR ?= $(INSTALLROOT)/bin
|
||||
INCDIR ?= $(INSTALLROOT)/include
|
||||
|
||||
DETAILDOC ?= $(INSTALLROOT)/docs
|
||||
|
||||
WD = $(shell pwd)
|
||||
LIBRARYDIR = $(WD)/slsDetectorSoftware
|
||||
LIBRARYRXRDIR = $(WD)/slsReceiverSoftware
|
||||
@ -19,6 +20,8 @@ CALWIZDIR = $(WD)/calibrationWizards
|
||||
MANDIR = $(WD)/manual
|
||||
CALIBDIR = $(WD)/slsDetectorCalibration
|
||||
|
||||
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)
|
||||
|
||||
@ -27,14 +30,15 @@ INCLUDESRXR += -I. -I$(LIBRARYRXRDIR)/include -I$(CALIBDIR) -I$(ASM)
|
||||
|
||||
$(info )
|
||||
$(info #######################################)
|
||||
$(info # Compiling slsDetectorsPackage #)
|
||||
$(info # In slsDetectorsPackage Makefile #)
|
||||
$(info #######################################)
|
||||
$(info )
|
||||
|
||||
|
||||
.PHONY: all nonstatic static lib libreceiver textclient receiver gui stextclient sreceiver
|
||||
|
||||
all: lib textclient receiver gui
|
||||
#all: lib textclient receiver gui
|
||||
all: textclient receiver gui
|
||||
|
||||
nonstatic: lib libreceiver textclient receiver gui
|
||||
|
||||
@ -42,39 +46,61 @@ static: lib libreceiver stextclient sreceiver gui
|
||||
|
||||
|
||||
lib:
|
||||
cd $(LIBRARYDIR) && $(MAKE) FLAGS='$(FLAGS)' DESTDIR='$(LIBDIR)' INCLUDES='$(INCLUDES)'
|
||||
cd $(LIBRARYDIR) && $(MAKE) FLAGS='$(FLAGS)' DESTDIR='$(LIBDIR)' LIBRARYDIR='$(LIBRARYDIR)' LIBS='$(LDFLAGDET)' INCLUDES='$(INCLUDES)' LIBDIR='$(LIBDIR)'
|
||||
|
||||
libreceiver:
|
||||
cd $(LIBRARYRXRDIR) && $(MAKE) FLAGS='$(FLAGS)' DESTDIR='$(LIBDIR)' INCLUDES='$(INCLUDESRXR)'
|
||||
cd $(LIBRARYRXRDIR) && $(MAKE) FLAGS='$(FLAGS)' DESTDIR='$(LIBDIR)' LIBS='$(LDFLAGRXR)' INCLUDES='$(INCLUDESRXR)' LIBDIR='$(LIBDIR)'
|
||||
|
||||
|
||||
stextclient: slsDetectorClient_static
|
||||
|
||||
slsDetectorClient: textclient
|
||||
|
||||
slsDetectorClient_static: lib
|
||||
cd $(CLIENTDIR) && $(MAKE) static_clients FLAGS='$(FLAGS)' LIBS='$(LDFLAGDET)' DESTDIR='$(BINDIR)' LIBDIR='$(LIBDIR)' INCLUDES='$(INCLUDES)'
|
||||
|
||||
textclient: lib
|
||||
cd $(CLIENTDIR) && $(MAKE) FLAGS='$(FLAGS)' DESTDIR='$(BINDIR)' LIBDIR='$(LIBDIR)' LIBS='$(LDFLAGDET)' INCLUDES='$(INCLUDES)'
|
||||
|
||||
|
||||
slsDetectorClient_static: #lib
|
||||
cd $(CLIENTDIR) && $(MAKE) static_clients FLAGS='$(FLAGS)' DESTDIR='$(BINDIR)' LIBRARYDIR='$(LIBRARYDIR)' LIBS='$(LDFLAGDET)' INCLUDES='$(INCLUDES)' LIBDIR='$(LIBDIR)'
|
||||
@echo ""
|
||||
@echo "#######################################"
|
||||
@echo "# Back in slsDetectorPackage Makefile #"
|
||||
@echo "#######################################"
|
||||
@echo ""
|
||||
|
||||
textclient: #lib
|
||||
cd $(CLIENTDIR) && $(MAKE) FLAGS='$(FLAGS)' DESTDIR='$(BINDIR)' LIBRARYDIR='$(LIBRARYDIR)' LIBS='$(LDFLAGDET)' INCLUDES='$(INCLUDES)' LIBDIR='$(LIBDIR)'
|
||||
@echo ""
|
||||
@echo "#######################################"
|
||||
@echo "# Back in slsDetectorPackage Makefile #"
|
||||
@echo "#######################################"
|
||||
@echo ""
|
||||
|
||||
slsReceiver: receiver
|
||||
|
||||
slsReceiver_static: receiver
|
||||
|
||||
receiver: libreceiver
|
||||
cd $(RECEIVERDIR) && $(MAKE) receiver FLAGS='$(FLAGS)' DESTDIR='$(BINDIR)' LIBDIR='$(LIBDIR)' LIBS='$(LDFLAGRXR)' INCLUDES='$(INCLUDESRXR)'
|
||||
|
||||
sreceiver: libreceiver
|
||||
cd $(RECEIVERDIR) && $(MAKE) static_receiver FLAGS='$(FLAGS)' DESTDIR='$(BINDIR)' LIBDIR='$(LIBDIR)' LIBS='$(LDFLAGRXR)' INCLUDES='$(INCLUDESRXR)'
|
||||
|
||||
|
||||
|
||||
slsDetectorGUI: lib
|
||||
cd $(GUIDIR) && $(MAKE) DESTDIR='$(BINDIR)' LIBDIR='$(LIBDIR)' INCLUDES='$(INCLUDES)' LDFLAGDET='-L$(LIBDIR) -lSlsDetector'
|
||||
|
||||
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)'
|
||||
@echo ""
|
||||
@echo "#######################################"
|
||||
@echo "# Back in slsDetectorPackage Makefile #"
|
||||
@echo "#######################################"
|
||||
@echo ""
|
||||
|
||||
sreceiver: #libreceiver
|
||||
cd $(RECEIVERDIR) && $(MAKE) static_receiver FLAGS='$(FLAGS)' DESTDIR='$(BINDIR)' LIBS='$(LDFLAGRXR)' INCLUDES='$(INCLUDESRXR)' LIBDIR='$(LIBDIR)'
|
||||
@echo ""
|
||||
@echo "#######################################"
|
||||
@echo "# Back in slsDetectorPackage Makefile #"
|
||||
@echo "#######################################"
|
||||
@echo ""
|
||||
|
||||
slsDetectorGUI: #lib
|
||||
cd $(GUIDIR) && $(MAKE) DESTDIR='$(BINDIR)' LIBRARYDIR='$(LIBRARYDIR)' INCLUDES='$(INCLUDES)' LDFLAGDET='$(LDFLAGDETONLY)' LIBDIR='$(LIBDIR)'
|
||||
@echo ""
|
||||
@echo "#######################################"
|
||||
@echo "# Back in slsDetectorPackage Makefile #"
|
||||
@echo "#######################################"
|
||||
@echo ""
|
||||
|
||||
calWiz:
|
||||
cd $(CALWIZDIR) && $(MAKE) DESTDIR=$(BINDIR) #FLAGS=$(FLAGS) LDFLAGDET=$(LDFLAGDET) INCLUDES=$(INCLUDES)
|
||||
|
||||
@ -91,6 +117,26 @@ htmldoc:
|
||||
make doc
|
||||
$(shell test -d $(DOCDIR) || mkdir -p $(DOCDIR))
|
||||
cd manual && make html DESTDIR=$(DOCDIR)
|
||||
|
||||
detaildoc: createdocs docspdf docshtml removedocs
|
||||
|
||||
createdocs: $(LIBRARYDIR)/doxy.config
|
||||
doxygen $(LIBRARYDIR)/doxy.config
|
||||
|
||||
docspdf:
|
||||
cd slsDetectorPackageDocs/latex && make
|
||||
$(shell test -d $(DETAILDOC) || mkdir -p $(DETAILDOC))
|
||||
$(shell test -d $(DETAILDOC)/pdf || mkdir -p $(DETAILDOC)/pdf)
|
||||
mv slsDetectorPackageDocs/latex/refman.pdf $(DETAILDOC)/pdf/slsDetectorPackageDocs.pdf
|
||||
|
||||
docshtml:
|
||||
$(shell test -d $(DETAILDOC) || mkdir -p $(DETAILDOC))
|
||||
$(shell test -d $(DETAILDOC)/html || mkdir -p $(DETAILDOC)/html)
|
||||
$(shell test -d $(DETAILDOC)/html/slsDetectorPackageDocs && rm -r $(DETAILDOC)/html/slsDetectorPackageDocs)
|
||||
mv slsDetectorPackageDocs/html $(DETAILDOC)/html/slsDetectorPackageDocs
|
||||
|
||||
removedocs:
|
||||
rm -rf slsDetectorPackageDocs;
|
||||
|
||||
|
||||
clean:
|
||||
@ -103,7 +149,8 @@ clean:
|
||||
cd $(CALWIZDIR) && $(MAKE) clean
|
||||
cd manual && $(MAKE) clean
|
||||
cd $(DOCDIR) && rm -rf *
|
||||
|
||||
rm -rf slsDetectorPackageDocs;
|
||||
rm -rf $(DETAILDOC)
|
||||
|
||||
|
||||
#install_lib:
|
||||
|
@ -5,19 +5,34 @@
|
||||
CC = g++
|
||||
CXX = $(CC)
|
||||
ASM=$(shell echo "/lib/modules/`uname -r`/build/include")
|
||||
LDFLAGDETONLY = -L$(LIBDIR) -Wl,-rpath=$(LIBDIR) -lSlsDetector
|
||||
LDFLAGDET = -L$(LIBDIR) -Wl,-rpath=$(LIBDIR) -lSlsDetector -L/usr/lib64/ -pthread
|
||||
LDFLAGRXR = -L$(LIBDIR) -Wl,-rpath=$(LIBDIR) -lSlsReceiver -L/usr/lib64/ -pthread
|
||||
FLAGS= -Wall -pthread #-DEIGER_DEBUG2 -DEIGER_DEBUG -DEIGER_DEBUG3 #-DFIFO_DEBUG
|
||||
FLAGS= -Wall -pthread #-DEIGER_DEBUG2
|
||||
# -DVERBOSE
|
||||
|
||||
# Setting up the verbose flags
|
||||
ifeq ($(DEBUG),1)
|
||||
FLAGS = -Wall -pthread -DVERBOSE
|
||||
FLAGS = -Wall -DVERBOSE
|
||||
endif
|
||||
ifeq ($(DEBUG),2)
|
||||
FLAGS = -Wall -pthread -DVERYVERBOSE
|
||||
FLAGS = -Wall -DVERYVERBOSE
|
||||
endif
|
||||
|
||||
##############################################################
|
||||
# HDF5 specific. Set this to yes, if you want to compile
|
||||
# HDF5 code: in this case, you need HDF5 libraries
|
||||
##############################################################
|
||||
|
||||
HDF5 = no
|
||||
HDF5_DIR = /opt/hdf5v1.10.0
|
||||
|
||||
ifeq ($(HDF5),yes)
|
||||
LDFLAGRXR = -L$(LIBDIR) -Wl,-rpath=$(LIBDIR) -lSlsReceiver -L$(HDF5_DIR)/lib -Wl,-rpath=$(HDF5_DIR)/lib -lhdf5 -lhdf5_cpp -lsz -lz -DHDF5C -L/usr/lib64/ -pthread
|
||||
INCLUDESRXR = -I$(HDF5_DIR)/include
|
||||
endif
|
||||
|
||||
|
||||
##############################################################
|
||||
# EigerSLS specific. Set this to yes, if you want to compile
|
||||
# EigerSLS code: in this case, you need also POCO and JsonBox
|
||||
@ -26,17 +41,14 @@ endif
|
||||
|
||||
REST = no
|
||||
|
||||
#POCODIR = /afs/psi.ch/user/s/sala/public/poco-slp_5.7-32bit
|
||||
#JSONBOXDIR = /afs/psi.ch/user/s/sala/public/JsonBox-slp_5.7-32bit
|
||||
POCODIR = /afs/psi.ch/user/s/sala/public/poco-slp_6.4-64bit
|
||||
JSONBOXDIR = /afs/psi.ch/user/s/sala/public/JsonBox-slp_6.4-64bit
|
||||
#POCODIR = /home/sala/Programs/poco-ubuntu_13.10-64bit
|
||||
#JSONBOXDIR = /home/sala/Programs/JsonBox-ubuntu_13.10-64bit
|
||||
|
||||
RESTFLAGS = -L$(POCODIR)/lib -Wl,-rpath=$(POCODIR)/lib -L$(JSONBOXDIR) -Wl,-rpath=$(JSONBOXDIR)/lib -lPocoNet -lPocoFoundation -lJsonBox
|
||||
POCODIR = /afs/psi.ch/user/s/sala/public/poco
|
||||
JSONBOXDIR = /opt/JsonBox-0.5
|
||||
|
||||
RESTFLAGS = -L$(POCODIR)/lib -Wl,-rpath=$(POCODIR)/lib -L$(JSONBOXDIR) -Wl,-rpath=$(JSONBOXDIR) -lPocoNet -lPocoFoundation -lJsonBox
|
||||
|
||||
ifeq ($(REST),yes)
|
||||
LDFLAGRXR = -L$(LIBDIR) -lSlsReceiver $(RESTFLAGS) -DREST
|
||||
LDFLAGRXR = -L$(LIBDIR) -Wl,-rpath=$(LIBDIR) -lSlsReceiver $(RESTFLAGS) -DREST
|
||||
INCLUDESRXR = $(EIGERFLAGS) -I$(POCODIR)/include -I$(JSONBOXDIR)/include
|
||||
endif
|
||||
|
||||
@ -55,6 +67,11 @@ ifeq ($(ROOTSLS),yes)
|
||||
endif
|
||||
|
||||
|
||||
define colorecho
|
||||
@tput setaf 6
|
||||
@echo $1
|
||||
@tput sgr0
|
||||
endef
|
||||
|
||||
|
||||
|
||||
|
@ -36,6 +36,10 @@ Use cmake to create out-of-source builds, by creating an build folder parallel t
|
||||
$ make
|
||||
```
|
||||
|
||||
Use the following as an example to compile statically and using specific hdf5 folder
|
||||
```
|
||||
$ HDF5_ROOT=/opt/hdf5v1.10.0 cmake -DHDF5_USE_STATIC_LIBRARIES=TRUE ../slsDetectorsPackage
|
||||
```
|
||||
The libraries and executables will be found at `bin` directory
|
||||
```
|
||||
$ ls bin/
|
||||
|
234
RELEASE.txt
@ -1,24 +1,35 @@
|
||||
SLS Detector Package 2.3.0 released on 2017-03-23
|
||||
SLS Detector Package 3.0.0 released on 2017-08-25
|
||||
================================================================================
|
||||
|
||||
|
||||
|
||||
|
||||
INTRODUCTION
|
||||
|
||||
This document describes the differences between previous versions and 2.3.0 releases.
|
||||
This document describes the differences between previous versions and 3.0.0 releases.
|
||||
|
||||
Manuals can be found under the 'manual' folder.
|
||||
Manual (both HTML and pdf versions) are provided in
|
||||
manual/docs/
|
||||
|
||||
User documentation and other help can be accessed directly at this location:
|
||||
Documentation from Source Code can be found for the Command Line and for the API in
|
||||
html:
|
||||
manual/docs/html/slsDetectorClientDocs/index.html
|
||||
manual/docs/html/slsDetectorUsersDocs/index.html
|
||||
pdf:
|
||||
manual/docs/pdf/slsDetectorClientDocs.pdf
|
||||
manual/docs/pdf/slsDetectorUsersDocs.pdf
|
||||
|
||||
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:
|
||||
|
||||
https://www.psi.ch/detectors/users-support
|
||||
|
||||
If you have any software related questions or comments, please send them to:
|
||||
|
||||
dhanya.thattil@psi.ch
|
||||
|
||||
|
||||
anna.bergamaschi@psi.ch
|
||||
|
||||
|
||||
CONTENTS
|
||||
@ -30,106 +41,189 @@ CONTENTS
|
||||
|
||||
|
||||
|
||||
|
||||
Changes in User Interface
|
||||
=========================
|
||||
This release has no changes in user interface from the previous 2.3 version.
|
||||
However, receiver data call backs have been redefined for the
|
||||
standard image header.
|
||||
|
||||
This release supports the following features:
|
||||
|
||||
Reiterating, both 2.3 and 3.0 supports the following features:
|
||||
|
||||
Receiver
|
||||
--------
|
||||
- The files will be written in this format in the default mode:
|
||||
* ASCII file header of 1024 bytes (only for EIGER detectors)
|
||||
* series of images, each preceded by a Standard Header image
|
||||
(header described below)
|
||||
--------
|
||||
1. The files will be written in this format in the binary mode:
|
||||
* 1 ASCII file per measurement: header with measurement parameters
|
||||
* binary files: series of images, each preceded by a
|
||||
Standard Image Header (header described below)
|
||||
|
||||
|
||||
- Stanard Header image header in file and call back
|
||||
arguments defined. It is in the following format defined as
|
||||
sls_detector_header defined in
|
||||
slsReceiverSoftware/include/sls_receiver_defs.h
|
||||
Mostly 0 if not applicatble or implemented, but updated in next release
|
||||
from firmware.
|
||||
2. Standard Image Header in file and call back
|
||||
arguments defined. It is in the following format defined as
|
||||
sls_detector_header defined in
|
||||
slsReceiverSoftware/include/sls_receiver_defs.h
|
||||
Mostly 0 if not applicatble or implemented, but updated in next release
|
||||
from firmware.
|
||||
|
||||
* Frame Number : 8 bytes # Image Number
|
||||
* Exposure Length : 4 bytes # sub frame number in 32 bit mode
|
||||
Eiger.
|
||||
* Packet Number : 4 bytes # Number of packets in an image
|
||||
* Bunch ID : 8 bytes # Bunch Id in beamline for jungfrau.
|
||||
* Timestamp : 8 bytes # Not implemened
|
||||
* Module Id : 2 bytes # Not implemented
|
||||
* X Coordinate : 2 bytes # Id of part of detector in 1D
|
||||
* Y Coordinate : 2 bytes # Not implemented
|
||||
* Exposure Length : 4 bytes # Sub frame number in 32 bit mode (Eiger)
|
||||
Real time exposre time in 100ns (Others)
|
||||
* Packet Number : 4 bytes # Number of packets caught in the image
|
||||
* Bunch ID : 8 bytes # Bunch Id in beamline (Jungfrau)
|
||||
* Timestamp : 8 bytes # Not implemened.
|
||||
Time stamp with 10MHz clock
|
||||
* Module Id : 2 bytes # Not implemented. Unique module ID.
|
||||
* X Coordinate : 2 bytes # Currently as Id of part of detector in 1D
|
||||
(Future Releases) as X coordinate
|
||||
in complete detector system
|
||||
* Y Coordinate : 2 bytes # Not implemented
|
||||
Y coordinate in complete detector system
|
||||
* Z Coordinate : 2 bytes # Not implemented
|
||||
Z coordinate in complete detector system
|
||||
* Debug : 4 bytes # Not implemented
|
||||
For debugging purposes
|
||||
* Round Robin Number : 2 bytes # Not implemented
|
||||
Round Robin Number
|
||||
* Detector Type : 1 byte # Detector type defined by enum
|
||||
detectorType in slsReceiverSoftware
|
||||
/include/sls_receiver_defs.h
|
||||
* Header Version : 1 byte # 1
|
||||
|
||||
|
||||
|
||||
- The call back value for Start Acquisition Call back is insignificant at the
|
||||
moment and left for future use. Instead, the following rules apply:
|
||||
detectorType in slsReceiverSoftware
|
||||
/include/sls_receiver_defs.h
|
||||
* Header Version : 1 byte # 1.0 currently
|
||||
|
||||
3. The call back value for Start Acquisition Call back is insignificant at the
|
||||
moment and left for future use. Instead, the following rules apply:
|
||||
* If file write is enabled from the client, we will write the files.
|
||||
* If callbacks are registered, they will be called.
|
||||
For example, the user prefers to write the data himself, one must disable
|
||||
file write (so we dont write) and register the callbacks (so the user gets
|
||||
the data).
|
||||
For example, the user prefers to write the data himself, one must disable
|
||||
file write (so we dont write) and register the callbacks (so the user gets
|
||||
the data).
|
||||
|
||||
4. Multiple Receivers have to be started as different processes, instead of threads
|
||||
due to static variables being used. Please refer example code provided in the
|
||||
slsDetectorsPackage/manual/manual-api folder (mainReceiver.cpp).
|
||||
|
||||
|
||||
|
||||
|
||||
New Features
|
||||
============
|
||||
Eiger
|
||||
-----
|
||||
- Tau is moved to settings file, Gain and offset are removed from calibration
|
||||
file. Put settings only sets client variable, whereas putting threshold loads
|
||||
settings files to the server.
|
||||
Package
|
||||
-------
|
||||
1. One can compile using cmake or the ./cmk.sh script(also uses cmake)
|
||||
Run ./cmk.sh -help to get more info. This method does not touch the
|
||||
source files. Please start off with ./cmk.sh -bj9, where (9 is #cores+1)
|
||||
|
||||
2. One can compile the normal way using Makefile (editing Makefile.include
|
||||
for the hdf5 options), but this will modify other gitInfo files.
|
||||
|
||||
- Mode argument in starting up receiver is removed. FlippedData command is used
|
||||
in config file to specify bottom.
|
||||
|
||||
|
||||
Receiver
|
||||
--------
|
||||
- Image Reconstruction from the files are different as packet headers are not
|
||||
stored and a standard image header is used.
|
||||
|
||||
|
||||
General
|
||||
-------
|
||||
-------
|
||||
3. UDP Packets from all the detectors will contain the standard sls detector header.
|
||||
Jungfrau will have an extra 6 bytes preceding the standard header in the udp packets
|
||||
only. X, Y and Z Coordinates define the position of the detector in 3d. These values
|
||||
are not filled in the udp header at the moment, but will be in the files and receiver
|
||||
call backs with only x in 1d at the moment.
|
||||
|
||||
4. When acquire has started, one can use sls_detector_get busy to check the status
|
||||
of the acquire. 1 is running 0 is idle. This way one can start acqusition with &,
|
||||
poll the busy command ( or framescaught or frameindex to get status from receiver).
|
||||
|
||||
|
||||
Receiver
|
||||
--------
|
||||
4. One can choose the file format using the command "fileformat binary/hdf5" from
|
||||
the client, but one must compile with the options as defined in README.md
|
||||
|
||||
- Users folder that gives an example on how to user the slsDetectorUsers and
|
||||
slsReceiverUsers class.
|
||||
5. Virtual HDF5 file maps all the files into a single file.
|
||||
|
||||
- Data is streamed from Receiver to Gui via ZMQ if gui call back defined.
|
||||
6. Gotthard, Propix and Moench also save data in the same way as Jungfrau and Eiger,
|
||||
as described above (ie. without any packet headers, only standard image headers
|
||||
for each image data)
|
||||
|
||||
7. (Eiger) The ascii part of the file (file header with acquisition parameters) moved to
|
||||
a separate file called the master file. So one master file per acquisition.
|
||||
|
||||
|
||||
Client
|
||||
------
|
||||
8. (Eiger) Can now set Threshold without uploading Trimbits.
|
||||
|
||||
9. (Eiger) Setting high voltage returns -999 for only slave and on the multi level gives
|
||||
the value of the master only.
|
||||
|
||||
10. StartAcquisition (or sls_detector_put status start) parallelized.
|
||||
|
||||
|
||||
Gui
|
||||
---
|
||||
10. Set the data streaming port (individually/ a single one that calculates for the other
|
||||
receiver streamer threads) via the command line
|
||||
|
||||
|
||||
Users-API
|
||||
-----
|
||||
11. manual-api example forks new child processes for every extra receiver object.
|
||||
|
||||
|
||||
|
||||
Resolved Issues
|
||||
===============
|
||||
Client
|
||||
------
|
||||
1. Memory Leak fixed when setting receiver parameters such as udp port or detector
|
||||
network parameter. The signature in slsDetector.cpp and corresponding files have
|
||||
changed, but does not change the slsDetectorUser API.
|
||||
|
||||
2. Bug Fix: Has been made more threadsafe (strtok). Removed bug of configuring MAC
|
||||
correctly even in multiple thread mode.
|
||||
|
||||
3. Bug Fix: Client crashing when rx_hostname is IP instead of a hostname has been fixed.
|
||||
|
||||
|
||||
|
||||
Server
|
||||
------
|
||||
4. (Eiger/Jungfrau) Bug Fix: Client crashing should not crash the server as SIGPIPE
|
||||
signal is caught.
|
||||
|
||||
5. (Eiger) Bug Fix: Front End Temperature read out conversion fixed.
|
||||
|
||||
6. (Eiger) Bug Fix: sls_detector_get trimval(get all trimbits) would return only the first pixel
|
||||
value. Now it returns -1 if all the pixels are different.
|
||||
|
||||
|
||||
Receiver
|
||||
--------
|
||||
6. Bug Fix: Ctrl+C kills the receiver properly calling the appropriate destructors.
|
||||
|
||||
7. Acquire & Unblocking acquire (receiver start, status start, receiver stop) can work
|
||||
also when switching from gui to command line and vice versa.
|
||||
|
||||
8. Bug Fix: sls_detector_get frameindex was always returning 0.
|
||||
|
||||
9. Bug Fix: In the rare chance that the shut down socket is still processing in
|
||||
the genericsocket class, but the object is being deleted.
|
||||
|
||||
10. (Eiger): When running independent(not slsReceiver) receiver, one needn't do receiver start
|
||||
to prepare acquisition. Prepare Acquisition has been moved to StartAcqusition and
|
||||
StartAndReadAll.
|
||||
|
||||
11. (Gotthard): 639 pixels in first packet and 641 pixels in second packet. The first pixel in second
|
||||
packet was unaccounted for. This is fixed now.
|
||||
|
||||
Eiger
|
||||
-----
|
||||
- Frame and packet counters in server to check delays were buggy.
|
||||
|
||||
|
||||
Known Issues
|
||||
============
|
||||
- X, Y and Z Coordinates do not exactly define the position of the
|
||||
detector in 3d. This will be defined in the next release. Other header
|
||||
parameters will be complete in the next release.
|
||||
Server
|
||||
------
|
||||
1. (Eiger) The hardware mac of the detector is used (not relayed back to the client).
|
||||
For 1 GbE, the hardware IP of the detector is used (also not relayed back to the
|
||||
client).
|
||||
|
||||
2. Standard header fills x-coord in 1D. y-coord and z-coord is not implemented (3D).
|
||||
|
||||
- Too many split files per detector especially for Eiger. Next Release will
|
||||
have a HDF5 version, with virtual file mapping all the split files in an
|
||||
acquisition.
|
||||
|
||||
- This version is tested only for Eiger and Jungfrau.
|
||||
3. HDF5 compression and filters are not implemented yet.
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
143
cmk.sh
Executable file
@ -0,0 +1,143 @@
|
||||
#!/bin/bash
|
||||
BUILDDIR="build"
|
||||
HDF5DIR="/opt/hdf5v1.10.0"
|
||||
HDF5=0
|
||||
COMPILERTHREADS=0
|
||||
|
||||
CLEAN=0
|
||||
REBUILD=0
|
||||
CMAKE_PRE=""
|
||||
CMAKE_POST=""
|
||||
|
||||
usage() { echo -e "
|
||||
Usage: $0 [-c] [-b] [-h] [-d <HDF5 directory>] [-j]
|
||||
-[no option]: only make
|
||||
-c: Clean
|
||||
-b: Builds/Rebuilds CMake files normal mode
|
||||
-h: Builds/Rebuilds Cmake files with HDF5 package
|
||||
-d: HDF5 Custom Directory
|
||||
-j: Number of threads to compile through
|
||||
|
||||
For only make:
|
||||
./cmk.sh
|
||||
|
||||
For make clean;make:
|
||||
./cmk.sh -c
|
||||
|
||||
For using hdf5 without default dir /opt/hdf5v1.10.0:
|
||||
./cmk.sh -h
|
||||
|
||||
For using hdf5 without custom dir /blabla:
|
||||
./cmk.sh -h -d /blabla
|
||||
|
||||
For rebuilding cmake without hdf5 (Use this if you had previously run with hdf5 and now you dont want it)
|
||||
./cmk.sh -b
|
||||
|
||||
For using multiple cores to compile faster:
|
||||
(all these options work)
|
||||
./cmk.sh -j9
|
||||
./cmk.sh -cj9 #with clean
|
||||
./cmk.sh -hj9 #with hdf5
|
||||
./cmk.sh -j9 -h #with hdf
|
||||
|
||||
" ; exit 1; }
|
||||
|
||||
while getopts ":bchd:j:" opt ; do
|
||||
case $opt in
|
||||
b)
|
||||
echo "Building of CMake files Required"
|
||||
REBUILD=1
|
||||
;;
|
||||
c)
|
||||
echo "Clean Required"
|
||||
CLEAN=1
|
||||
;;
|
||||
h)
|
||||
echo "Building of CMake files with HDF5 option Required"
|
||||
HDF5=1
|
||||
REBUILD=1
|
||||
;;
|
||||
d)
|
||||
echo "New HDF5 directory: $OPTARG"
|
||||
HDF5DIR=$OPTARG
|
||||
;;
|
||||
j)
|
||||
echo "Number of compiler threads: $OPTARG"
|
||||
COMPILERTHREADS=$OPTARG
|
||||
;;
|
||||
\?)
|
||||
echo "Invalid option: -$OPTARG"
|
||||
usage
|
||||
exit 1
|
||||
;;
|
||||
:)
|
||||
echo "Option -$OPTARG requires an argument."
|
||||
usage
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
#build dir doesnt exist
|
||||
if [ ! -d "$BUILDDIR" ] ; then
|
||||
echo "No Build Directory. Building of Cmake files required"
|
||||
mkdir $BUILDDIR;
|
||||
REBUILD=1
|
||||
else
|
||||
#rebuild not requested, but no makefile
|
||||
if [ $REBUILD -eq 0 ] && [ ! -f "$BUILDDIR/Makefile" ] ; then
|
||||
echo "No Makefile. Building of Cmake files required"
|
||||
REBUILD=1
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
#hdf5 rebuild
|
||||
if [ $HDF5 -eq 1 ]; then
|
||||
CMAKE_PRE+="HDF5_ROOT="$HDF5DIR
|
||||
CMAKE_POST+="-DUSE_HDF5=ON"
|
||||
#normal mode rebuild
|
||||
else
|
||||
CMAKE_POST+="-DUSE_HDF5=OFF"
|
||||
fi
|
||||
|
||||
|
||||
#enter build dir
|
||||
cd $BUILDDIR;
|
||||
echo "in "$PWD
|
||||
|
||||
|
||||
|
||||
#cmake
|
||||
if [ $REBUILD -eq 1 ]; then
|
||||
rm -f CMakeCache.txt
|
||||
BUILDCOMMAND="$CMAKE_PRE cmake $CMAKE_POST .."
|
||||
echo $BUILDCOMMAND
|
||||
eval $BUILDCOMMAND
|
||||
fi
|
||||
|
||||
#make clean
|
||||
if [ $CLEAN -eq 1 ]; then
|
||||
make clean;
|
||||
fi
|
||||
|
||||
|
||||
#make
|
||||
if [ $COMPILERTHREADS -gt 0 ]; then
|
||||
BUILDCOMMAND="make -j$COMPILERTHREADS"
|
||||
echo $BUILDCOMMAND
|
||||
eval $BUILDCOMMAND
|
||||
else
|
||||
make
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
22
evalVersionVariables.sh
Normal file
@ -0,0 +1,22 @@
|
||||
GITREPO1='git remote -v'
|
||||
GITREPO2=" | grep \"fetch\" | cut -d' ' -f1"
|
||||
BRANCH1='git branch -v'
|
||||
BRANCH2=" | grep '*' | cut -d' ' -f2"
|
||||
REPUID1='git log --pretty=format:"%H" -1'
|
||||
AUTH1_1='git log --pretty=format:"%cn" -1'
|
||||
AUTH1_2=" | cut -d' ' -f1"
|
||||
AUTH2_1='git log --pretty=format:"%cn" -1'
|
||||
AUTH2_2=" | cut -d' ' -f2"
|
||||
FOLDERREV1='git log --oneline . ' #used for all the individual server folders
|
||||
FOLDERREV2=" | wc -l" #used for all the individual server folders
|
||||
REV1='git log --oneline '
|
||||
REV2=" | wc -l"
|
||||
|
||||
GITREPO=`eval $GITREPO1 $GITREPO2`
|
||||
BRANCH=`eval $BRANCH1 $BRANCH2`
|
||||
REPUID=`eval $REPUID1`
|
||||
AUTH1=`eval $AUTH1_1 $AUTH1_2`
|
||||
AUTH2=`eval $AUTH2_1 $AUTH2_2`
|
||||
REV=`eval $REV1 $REV2`
|
||||
FOLDERREV=`eval $FOLDERREV1 $FOLDERREV2`
|
||||
|
33
examples/eiger_10Gb.config
Normal file
@ -0,0 +1,33 @@
|
||||
detsizechan 1024 512
|
||||
#detetctor geometry, long side of the module first
|
||||
hostname beb059+beb058+
|
||||
#1Gb detector hostname for controls
|
||||
|
||||
0:rx_tcpport 1991
|
||||
#tcpport for the first halfmodule
|
||||
0:rx_udpport 50011
|
||||
#udp port first quadrant, first halfmodule
|
||||
0:rx_udpport2 50012
|
||||
#udp port second quadrant, first halfmodule
|
||||
0:rx_udpip 10.0.30.210
|
||||
#udp IP of the receiver over 10Gb
|
||||
0:detectorip 10.0.30.100
|
||||
#first half module 10 Gb IP
|
||||
|
||||
1:rx_tcpport 1992
|
||||
#tcpport for the second halfmodule
|
||||
1:rx_udpport 50013
|
||||
#udp port first quadrant, second halfmodule
|
||||
1:rx_udpport2 50014
|
||||
#udp port second quadrant, second halfmodule
|
||||
1:rx_udpip 10.0.40.210
|
||||
#udp IP of the receiver over 10Gb,
|
||||
#can be the same or different from 0:rx_udpip
|
||||
1:detectorip 10.0.40.101
|
||||
#second half module 10 Gb IP
|
||||
|
||||
rx_hostname x12sa-vcons
|
||||
#1Gb receiver pc hostname
|
||||
|
||||
outdir /sls/X12SA/data/x12saop/Data10/Eiger0.5M
|
||||
threaded 1
|
24
examples/eiger_1Gb.config
Normal file
@ -0,0 +1,24 @@
|
||||
detsizechan 1024 512
|
||||
#detetctor geometry, long side of the module first
|
||||
hostname beb059+beb058+
|
||||
#1Gb detector hostname for controls
|
||||
|
||||
0:rx_tcpport 1991
|
||||
#tcpport for the first halfmodule
|
||||
0:rx_udpport 50011
|
||||
#udp port first quadrant, first halfmodule
|
||||
0:rx_udpport2 50012
|
||||
#udp port second quadrant, first halfmodule
|
||||
|
||||
1:rx_tcpport 1992
|
||||
#tcpport for the second halfmodule
|
||||
1:rx_udpport 50013
|
||||
#udp port first quadrant, second halfmodule
|
||||
1:rx_udpport2 50014
|
||||
#udp port second quadrant, second halfmodule
|
||||
|
||||
rx_hostname x12sa-vcons
|
||||
#1Gb receiver pc hostname
|
||||
|
||||
outdir /sls/X12SA/data/x12saop/Data10/Eiger0.5M
|
||||
threaded 1
|
@ -1,5 +1,5 @@
|
||||
type Gotthard+
|
||||
0:hostname bchip007
|
||||
hostname bchip007
|
||||
|
||||
#0:port 1952
|
||||
#0:stopport 1953
|
||||
#0:rx_tcpport 1956 must also have this in receiver config file
|
||||
|
18
examples/jungfrau.config
Normal file
@ -0,0 +1,18 @@
|
||||
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
|
||||
|
||||
outdir /external_pool/jungfrau_data/softwaretest
|
||||
threaded 1
|
||||
|
30
examples/jungfrau_two.config
Normal file
@ -0,0 +1,30 @@
|
||||
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
|
||||
0:detectorip 10.1.1.10
|
||||
0:detectormac 00:aa:bb:cc:dd:33
|
||||
|
||||
1:rx_tcpport 1955
|
||||
1:rx_udpport 50005
|
||||
1:rx_udpip 10.1.1.100
|
||||
1:rx_udpmac F4:52:14:2F:32:00
|
||||
1:detectorip 10.1.1.11
|
||||
1:detectormac 00:aa:bb:cc:dd:33
|
||||
|
||||
rx_hostname pcmoench01
|
||||
|
||||
powerchip 1
|
||||
extsig:0 trigger_in_rising_edge
|
||||
timing auto
|
||||
|
||||
outdir /external_pool/jungfrau_data/softwaretest
|
||||
threaded 1
|
||||
|
@ -2,7 +2,6 @@
|
||||
|
||||
detsizechan 2560 1
|
||||
|
||||
#type Gotthard+
|
||||
hostname bchip007+bchip009+
|
||||
|
||||
#0:hostname bchip007
|
||||
|
@ -15,8 +15,8 @@ fout=$3
|
||||
|
||||
#dat=echo "date '+%Y%m%d'"
|
||||
|
||||
|
||||
echo "in: $fin tmp: $ftmp out: $fout"
|
||||
echo "Updating $fout"
|
||||
#echo "in: $fin tmp: $ftmp out: $fout"
|
||||
|
||||
#awk 'NR==FNR {if ($3=="Date:") {l[FNR]=$4; gsub("-","",l[FNR]);} else { if (match($0,"Rev")) {l[FNR]=$(NF);} else {l[FNR]="\""$(NF)"\"";};};next} {$0=$1" "$2" "l[FNR]}1' $fin $ftmp > $fout
|
||||
|
||||
|
10
gitall.sh
@ -1,8 +1,8 @@
|
||||
#!/bin/bash
|
||||
git $1
|
||||
git $@
|
||||
for i in sls*/; do
|
||||
cd $i
|
||||
echo $i
|
||||
git $1
|
||||
cd ..
|
||||
cd $i
|
||||
echo $i
|
||||
git $@
|
||||
cd ..
|
||||
done
|
||||
|
@ -1,4 +1,4 @@
|
||||
DESTDIR?=../docs
|
||||
DESTDIR?=docs
|
||||
|
||||
|
||||
#manual-api manual-calwiz manual-client manual-gui manual-main
|
||||
@ -14,18 +14,18 @@ ALLDIRS=$(MAINDIRS:manual-%=all-%)
|
||||
|
||||
|
||||
all: $(ALLDIRS)
|
||||
$(shell test -d $(DESTDIR)/pdf && rm -fr $(DESTDIR)/pdf)
|
||||
mv pdf $(DESTDIR)
|
||||
$(shell test -d $(DESTDIR)/html && rm -fr $(DESTDIR)/html)
|
||||
mv html $(DESTDIR)
|
||||
|
||||
# $(shell test -d $(DESTDIR)/pdf && rm -fr $(DESTDIR)/pdf)
|
||||
# mv pdf $(DESTDIR)
|
||||
# $(shell test -d $(DESTDIR)/html && rm -fr $(DESTDIR)/html)
|
||||
# mv html $(DESTDIR)
|
||||
|
||||
pdf: $(PDFDIRS)
|
||||
$(shell test -d $(DESTDIR)/pdf && rm -fr $(DESTDIR)/pdf)
|
||||
mv pdf $(DESTDIR)
|
||||
# $(shell test -d $(DESTDIR)/pdf && rm -fr $(DESTDIR)/pdf)
|
||||
# mv pdf $(DESTDIR)
|
||||
|
||||
html: $(HTMLDIRS)
|
||||
$(shell test -d $(DESTDIR)/html && rm -fr $(DESTDIR)/html)
|
||||
mv html $(DESTDIR)
|
||||
# $(shell test -d $(DESTDIR)/html && rm -fr $(DESTDIR)/html)
|
||||
# mv html $(DESTDIR)
|
||||
|
||||
clean: $(CLEANDIRS)
|
||||
rm -fr $(DESTDIR)/pdf
|
||||
@ -45,7 +45,7 @@ clean-%:
|
||||
cd $(@:clean-%=manual-%) && make clean
|
||||
|
||||
|
||||
#<23><>$(@D)<29><> The directory part of the file name of the target, with the trailing slash removed. If the value of <20><>$@<40><> is dir/foo.o then <20><>$(@D)<29><> is dir. This value is . if <20><>$@<40><> does not contain a slash.
|
||||
#<23><>$(@F)<29><> The file-within-directory part of the file name of the target. If the value of <20><>$@<40><> is dir/foo.o then <20><>$(@F)<29><> is foo.o. <20><>$(@F)<29><> is equivalent to <20><>$(notdir $@)<29><>.
|
||||
#<23><>$(@D)<29><> The directory part of the file name of the target, with the trailing slash removed. If the value of <20><>$@<40><> is dir/foo.o then <20><>$(@D)<29><> is dir. This value is . if <20><>$@<40><> does not contain a slash.
|
||||
#<23><>$(@F)<29><> The file-within-directory part of the file name of the target. If the value of <20><>$@<40><> is dir/foo.o then <20><>$(@F)<29><> is foo.o. <20><>$(@F)<29><> is equivalent to <20><>$(notdir $@)<29><>.
|
||||
|
||||
|
||||
|
1
manual/docs/html/angularCalibrationHowTo/WARNINGS
Normal file
@ -0,0 +1 @@
|
||||
No implementation found for style `graphicx'
|
@ -0,0 +1,30 @@
|
||||
/* 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 */
|
@ -0,0 +1,84 @@
|
||||
<!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>August 24, 2017</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
|
||||
2017-08-24
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
116
manual/docs/html/angularCalibrationHowTo/images.pl
Normal file
@ -0,0 +1,116 @@
|
||||
# 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 \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;
|
||||
|
255
manual/docs/html/angularCalibrationHowTo/images.tex
Normal file
@ -0,0 +1,255 @@
|
||||
\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}
|
BIN
manual/docs/html/angularCalibrationHowTo/img1.png
Normal file
After Width: | Height: | Size: 206 B |
BIN
manual/docs/html/angularCalibrationHowTo/img10.png
Normal file
After Width: | Height: | Size: 184 B |
BIN
manual/docs/html/angularCalibrationHowTo/img11.png
Normal file
After Width: | Height: | Size: 223 B |
BIN
manual/docs/html/angularCalibrationHowTo/img12.png
Normal file
After Width: | Height: | Size: 159 B |
BIN
manual/docs/html/angularCalibrationHowTo/img13.png
Normal file
After Width: | Height: | Size: 365 B |
BIN
manual/docs/html/angularCalibrationHowTo/img14.png
Normal file
After Width: | Height: | Size: 39 KiB |
BIN
manual/docs/html/angularCalibrationHowTo/img15.png
Normal file
After Width: | Height: | Size: 37 KiB |
BIN
manual/docs/html/angularCalibrationHowTo/img16.png
Normal file
After Width: | Height: | Size: 70 KiB |
BIN
manual/docs/html/angularCalibrationHowTo/img17.png
Normal file
After Width: | Height: | Size: 21 KiB |
BIN
manual/docs/html/angularCalibrationHowTo/img18.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
manual/docs/html/angularCalibrationHowTo/img2.png
Normal file
After Width: | Height: | Size: 330 B |
BIN
manual/docs/html/angularCalibrationHowTo/img3.png
Normal file
After Width: | Height: | Size: 181 B |
BIN
manual/docs/html/angularCalibrationHowTo/img4.png
Normal file
After Width: | Height: | Size: 253 B |
BIN
manual/docs/html/angularCalibrationHowTo/img5.png
Normal file
After Width: | Height: | Size: 1.5 KiB |
BIN
manual/docs/html/angularCalibrationHowTo/img6.png
Normal file
After Width: | Height: | Size: 286 B |
BIN
manual/docs/html/angularCalibrationHowTo/img7.png
Normal file
After Width: | Height: | Size: 371 B |
BIN
manual/docs/html/angularCalibrationHowTo/img8.png
Normal file
After Width: | Height: | Size: 241 B |
BIN
manual/docs/html/angularCalibrationHowTo/img9.png
Normal file
After Width: | Height: | Size: 458 B |
84
manual/docs/html/angularCalibrationHowTo/index.html
Normal file
@ -0,0 +1,84 @@
|
||||
<!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>August 24, 2017</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
|
||||
2017-08-24
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
30
manual/docs/html/angularCalibrationHowTo/internals.pl
Normal file
@ -0,0 +1,30 @@
|
||||
# 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;
|
||||
|
61
manual/docs/html/angularCalibrationHowTo/labels.pl
Normal file
@ -0,0 +1,61 @@
|
||||
# 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;
|
||||
|
186
manual/docs/html/angularCalibrationHowTo/node1.html
Normal file
@ -0,0 +1,186 @@
|
||||
<!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 <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 mdeg at 12 keV and 0.5 mdeg at 30 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 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 <IMG
|
||||
WIDTH="14" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
|
||||
SRC="img11.png"
|
||||
ALT="$\mu$">m capillary with the detector shifted in 5 mdeg steps between 30.4 and 36.5 degrees. The 16 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 mdeg for the peak center and 0.22<IMG
|
||||
WIDTH="17" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
|
||||
SRC="img12.png"
|
||||
ALT="$\pm$">0.05 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 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
|
||||
2017-08-24
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
217
manual/docs/html/angularCalibrationHowTo/node2.html
Normal file
@ -0,0 +1,217 @@
|
||||
<!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 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 s, and position shift
|
||||
<PRE>
|
||||
#setup angular calibration log mode
|
||||
> sls_detector_put angcallog 1
|
||||
#set exposure time to 1s
|
||||
> sls_detector_put exptime 1.
|
||||
#setup threshold scan
|
||||
> sls_detector_put scan0script position
|
||||
#setup the precision for the scan variable in the file name
|
||||
> 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
|
||||
> sls_detector_put scan0range 20 -60 -0.1
|
||||
#acquire the data
|
||||
> sls_detector_acquire
|
||||
#unset angular calibration log mode
|
||||
> 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 <A HREF="#fig:guiangcallog">1</A>) and setting up the motor position scan in the Actions tab (see figure <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
|
||||
2017-08-24
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
186
manual/docs/html/angularCalibrationHowTo/node3.html
Normal file
@ -0,0 +1,186 @@
|
||||
<!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>
|
||||
> ./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 <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 <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 <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
|
||||
2017-08-24
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
68
manual/docs/html/angularCalibrationHowTo/node4.html
Normal file
@ -0,0 +1,68 @@
|
||||
<!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
|
||||
2017-08-24
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
71
manual/docs/html/angularCalibrationHowTo/node5.html
Normal file
@ -0,0 +1,71 @@
|
||||
<!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 © 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 © 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 2017-08-24
|
||||
<BR><HR>
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-08-24
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
1
manual/docs/html/energyCalibrationHowTo/WARNINGS
Normal file
@ -0,0 +1 @@
|
||||
No implementation found for style `graphicx'
|
@ -0,0 +1,30 @@
|
||||
/* 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 */
|
@ -0,0 +1,84 @@
|
||||
<!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>August 24, 2017</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
|
||||
2017-08-24
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
252
manual/docs/html/energyCalibrationHowTo/images.pl
Normal file
@ -0,0 +1,252 @@
|
||||
# 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 >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>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;
|
||||
|
391
manual/docs/html/energyCalibrationHowTo/images.tex
Normal file
@ -0,0 +1,391 @@
|
||||
\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}
|
BIN
manual/docs/html/energyCalibrationHowTo/img1.png
Normal file
After Width: | Height: | Size: 255 B |
BIN
manual/docs/html/energyCalibrationHowTo/img10.png
Normal file
After Width: | Height: | Size: 259 B |
BIN
manual/docs/html/energyCalibrationHowTo/img11.png
Normal file
After Width: | Height: | Size: 505 B |
BIN
manual/docs/html/energyCalibrationHowTo/img12.png
Normal file
After Width: | Height: | Size: 192 B |
BIN
manual/docs/html/energyCalibrationHowTo/img13.png
Normal file
After Width: | Height: | Size: 218 B |
BIN
manual/docs/html/energyCalibrationHowTo/img14.png
Normal file
After Width: | Height: | Size: 471 B |
BIN
manual/docs/html/energyCalibrationHowTo/img15.png
Normal file
After Width: | Height: | Size: 222 B |
BIN
manual/docs/html/energyCalibrationHowTo/img16.png
Normal file
After Width: | Height: | Size: 263 B |
BIN
manual/docs/html/energyCalibrationHowTo/img17.png
Normal file
After Width: | Height: | Size: 262 B |
BIN
manual/docs/html/energyCalibrationHowTo/img18.png
Normal file
After Width: | Height: | Size: 1.8 KiB |
BIN
manual/docs/html/energyCalibrationHowTo/img19.png
Normal file
After Width: | Height: | Size: 253 B |
BIN
manual/docs/html/energyCalibrationHowTo/img2.png
Normal file
After Width: | Height: | Size: 258 B |
BIN
manual/docs/html/energyCalibrationHowTo/img20.png
Normal file
After Width: | Height: | Size: 468 B |
BIN
manual/docs/html/energyCalibrationHowTo/img21.png
Normal file
After Width: | Height: | Size: 215 B |
BIN
manual/docs/html/energyCalibrationHowTo/img22.png
Normal file
After Width: | Height: | Size: 199 B |
BIN
manual/docs/html/energyCalibrationHowTo/img23.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
manual/docs/html/energyCalibrationHowTo/img24.png
Normal file
After Width: | Height: | Size: 514 B |
BIN
manual/docs/html/energyCalibrationHowTo/img25.png
Normal file
After Width: | Height: | Size: 228 B |
BIN
manual/docs/html/energyCalibrationHowTo/img26.png
Normal file
After Width: | Height: | Size: 229 B |
BIN
manual/docs/html/energyCalibrationHowTo/img27.png
Normal file
After Width: | Height: | Size: 248 B |
BIN
manual/docs/html/energyCalibrationHowTo/img28.png
Normal file
After Width: | Height: | Size: 539 B |
BIN
manual/docs/html/energyCalibrationHowTo/img29.png
Normal file
After Width: | Height: | Size: 181 B |
BIN
manual/docs/html/energyCalibrationHowTo/img3.png
Normal file
After Width: | Height: | Size: 357 B |
BIN
manual/docs/html/energyCalibrationHowTo/img30.png
Normal file
After Width: | Height: | Size: 254 B |
BIN
manual/docs/html/energyCalibrationHowTo/img31.png
Normal file
After Width: | Height: | Size: 252 B |
BIN
manual/docs/html/energyCalibrationHowTo/img32.png
Normal file
After Width: | Height: | Size: 482 B |
BIN
manual/docs/html/energyCalibrationHowTo/img33.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
manual/docs/html/energyCalibrationHowTo/img34.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
manual/docs/html/energyCalibrationHowTo/img35.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
manual/docs/html/energyCalibrationHowTo/img36.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
manual/docs/html/energyCalibrationHowTo/img37.png
Normal file
After Width: | Height: | Size: 20 KiB |
BIN
manual/docs/html/energyCalibrationHowTo/img38.png
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
manual/docs/html/energyCalibrationHowTo/img39.png
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
manual/docs/html/energyCalibrationHowTo/img4.png
Normal file
After Width: | Height: | Size: 300 B |
BIN
manual/docs/html/energyCalibrationHowTo/img40.png
Normal file
After Width: | Height: | Size: 24 KiB |
BIN
manual/docs/html/energyCalibrationHowTo/img5.png
Normal file
After Width: | Height: | Size: 281 B |
BIN
manual/docs/html/energyCalibrationHowTo/img6.png
Normal file
After Width: | Height: | Size: 242 B |
BIN
manual/docs/html/energyCalibrationHowTo/img7.png
Normal file
After Width: | Height: | Size: 269 B |
BIN
manual/docs/html/energyCalibrationHowTo/img8.png
Normal file
After Width: | Height: | Size: 357 B |
BIN
manual/docs/html/energyCalibrationHowTo/img9.png
Normal file
After Width: | Height: | Size: 251 B |
84
manual/docs/html/energyCalibrationHowTo/index.html
Normal file
@ -0,0 +1,84 @@
|
||||
<!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>August 24, 2017</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
|
||||
2017-08-24
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
50
manual/docs/html/energyCalibrationHowTo/internals.pl
Normal file
@ -0,0 +1,50 @@
|
||||
# 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;
|
||||
|
101
manual/docs/html/energyCalibrationHowTo/labels.pl
Normal file
@ -0,0 +1,101 @@
|
||||
# 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;
|
||||
|
383
manual/docs/html/energyCalibrationHowTo/node1.html
Normal file
@ -0,0 +1,383 @@
|
||||
<!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 <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 <IMG
|
||||
WIDTH="23" HEIGHT="19" ALIGN="BOTTOM" BORDER="0"
|
||||
SRC="img12.png"
|
||||
ALT="$e^-$">=3.6 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 <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>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 <A HREF="#fig:modulecalibration">4</A>. The experimental data are then fitted according to equation <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 <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 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 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 % 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 keV with the three different settings. In the inset the fit of the experimental data with the expected curve as in function <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 keV) when using X-rays of energy <IMG
|
||||
WIDTH="23" HEIGHT="30" ALIGN="MIDDLE" BORDER="0"
|
||||
SRC="img1.png"
|
||||
ALT="$E_0$">=12 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 >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 keV for one of the detector modules using <I>standard</I> settings. The solid line represents the fit of the experimental points with equation <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
|
||||
2017-08-24
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
186
manual/docs/html/energyCalibrationHowTo/node2.html
Normal file
@ -0,0 +1,186 @@
|
||||
<!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 s, and threshold scan range between 200 and 850 with a setp of 1 DAC unit.
|
||||
<PRE>
|
||||
> sls_detector_put encallog 1 #setup energy calibration
|
||||
> sls_detector_put exptime 1. #set exposure time to 1s
|
||||
> sls_detector_put scan0script threshold #setup threshold scan
|
||||
> sls_detector_put scan0range 200 850 1 #set scan range between 200 and 850, step of 1
|
||||
> sls_detector_acquire #acquire the data
|
||||
> 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 <A HREF="#fig:guiencallog">5</A>) and setting up the threshold scan in the Actions tab (see figure <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
|
||||
2017-08-24
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
190
manual/docs/html/energyCalibrationHowTo/node3.html
Normal file
@ -0,0 +1,190 @@
|
||||
<!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="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="node4.html">
|
||||
<LINK REL="previous" HREF="node2.html">
|
||||
<LINK REL="up" HREF="energyCalibrationHowTo.html">
|
||||
<LINK REL="next" HREF="node4.html">
|
||||
</HEAD>
|
||||
|
||||
<BODY >
|
||||
<!--Navigation Panel-->
|
||||
<A NAME="tex2html47"
|
||||
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="tex2html45"
|
||||
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="tex2html39"
|
||||
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="tex2html48"
|
||||
HREF="node4.html">Setup calibration files</A>
|
||||
<B> Up:</B> <A NAME="tex2html46"
|
||||
HREF="energyCalibrationHowTo.html">Energy calibration wizard manual</A>
|
||||
<B> Previous:</B> <A NAME="tex2html40"
|
||||
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="tex2html49"
|
||||
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 the S-curves obtained from the datasets acquired as above and then performing a linear fit between the energy values and the inflection points.
|
||||
|
||||
<P>
|
||||
|
||||
<H2><A NAME="SECTION00031000000000000000">
|
||||
Software</A>
|
||||
</H2>
|
||||
|
||||
<P>
|
||||
The software used for the energy 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>
|
||||
> ./energyCalibrationWizard
|
||||
</PRE>
|
||||
|
||||
<P>
|
||||
To add anew energy write the energy value and select (or digit) the name of the .encal file corresponding to that energy (see figure <A HREF="#fig:addenergy">7</A>).
|
||||
<BR>
|
||||
The software assumes that the data files (.raw) and the .encal file are in the same directory.
|
||||
Press <I>Preview</I> and a 2D color plot will be displayed, showing the channel numbers on the X-axis, the threshold on the Y-axis, and the number of counts as a color scale.
|
||||
By (right) clicking close to the axis you are able to zoom in/out, set the scale to logarithmic etc.
|
||||
<BR>
|
||||
If the plot corresponds to your expectations press <I>Add to list</I>. The energy value will be shown in the combo box on top and labels will display the settings of the detector, the number of modules, the number of channels per module and the modules serial numbers.
|
||||
|
||||
<P>
|
||||
Add then all the other energies to the calibration always by editing the energy value and .encal file name, pressing <I>preview</I> and <I>add to list</I>.
|
||||
<BR>
|
||||
If the settings, number of modules or serial numbers do not match, you will not be llowed to add the energy.
|
||||
<BR>
|
||||
By using the <I>selected energy actions</I> you can navigate in the combo box with list of energies, view the plots and eventually remove the ones you don't want to use in your calibration.
|
||||
<BR>
|
||||
Once you have uploaded at least 2 energies, you will be allowed to <I>proceed to module calibration</I>.
|
||||
|
||||
<P>
|
||||
|
||||
<DIV ALIGN="CENTER"><A NAME="fig:addenergy"></A><A NAME="94"></A>
|
||||
<TABLE>
|
||||
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 7:</STRONG>
|
||||
Window to add energies to the calibration.</CAPTION>
|
||||
<TR><TD><IMG
|
||||
WIDTH="555" HEIGHT="694" ALIGN="BOTTOM" BORDER="0"
|
||||
SRC="img39.png"
|
||||
ALT="\includegraphics[width=\textwidth]{addEnergy.eps}"></TD></TR>
|
||||
</TABLE>
|
||||
</DIV>
|
||||
|
||||
<P>
|
||||
In the module calibration window (see figure <A HREF="#fig:calibratemodule">8</A>), you are still able to look at the calibration summary, and eventually return to the previous windown by pressing <I>Back to energy setup</I>.
|
||||
<BR>
|
||||
The canvas will show the plot of the S-curves relative to the median of the selected module, fitted with equation <A HREF="node1.html#eq:thrscan">1</A> and the linear fit between the energy values and the fitted inflection points.
|
||||
Normally the points lie on a straight line (although often not perfect), therefore it should be simple to spot if there are problems in the fitting of some of the data.
|
||||
<BR>
|
||||
If <I>Manual save</I> is unclicked, the calibration files will be saved locally, with the extension automatically generated by using the modules serial numbers, every time a linear fit is performed (i.e. if you mess up wiht the linear fit you overwrite a previous good file!). If you click the checkbox, you need to save the calibration by pressing <I>Write to file</I> for each module once you are happy with the fit.
|
||||
|
||||
<P>
|
||||
To change the Y scale of the plot, edit the <I>Counts</I> entry. After clicking of the energy button (eventually twice) the maximum of the histogram will be set to three times the value.
|
||||
|
||||
<P>
|
||||
To re-fit one energy with modified range or start parameters, you should press the central button with the energy value once the energy is selected. The text color tells you which curve you are referring to.
|
||||
<BR>
|
||||
<P>
|
||||
You should set the range of the fit. In particular the maximum should be limited in order to avoid to enter the noise range (and can be pretty different for the various modules).
|
||||
<BR>
|
||||
Normally the data are acquired by collecting holes from the detector and therefore the <I>Invert axis</I> check button should be ckecked. Uncheck it in case your detector collects electrons (e.g. CdTe, Si n in p)
|
||||
|
||||
<P>
|
||||
You can change the start values of the parameters of the fits by editing the number eneries. The label nearby will show you the actual value of the fitted parameters.
|
||||
<BR>
|
||||
By checking the checkboxes you can fix the values to the ones you specify.
|
||||
<BR>
|
||||
Normally it can be useful to fix the pedestal and pedestal slope to 0, unless you have a lot of 3rd armnonics contribution, primary beam background or similar.
|
||||
<BR>
|
||||
Changing the starting value of the inflection point or of the number of counts can often help the fit to converge.
|
||||
<BR>
|
||||
Normally it is not very useful to change the starting value for the noise or charge sharing slope.
|
||||
|
||||
<P>
|
||||
The button <I>Finished</I> will be enebled only once the calibration files have been generated for all modules.
|
||||
|
||||
<P>
|
||||
|
||||
<DIV ALIGN="CENTER"><A NAME="fig:calibratemodule"></A><A NAME="107"></A>
|
||||
<TABLE>
|
||||
<CAPTION ALIGN="BOTTOM"><STRONG>Figure 8:</STRONG>
|
||||
Window to calibrate the modules.</CAPTION>
|
||||
<TR><TD><IMG
|
||||
WIDTH="555" HEIGHT="694" ALIGN="BOTTOM" BORDER="0"
|
||||
SRC="img40.png"
|
||||
ALT="\includegraphics[width=\textwidth]{calibrateModule.eps}"></TD></TR>
|
||||
</TABLE>
|
||||
</DIV>
|
||||
|
||||
<P>
|
||||
<HR>
|
||||
<!--Navigation Panel-->
|
||||
<A NAME="tex2html47"
|
||||
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="tex2html45"
|
||||
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="tex2html39"
|
||||
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="tex2html48"
|
||||
HREF="node4.html">Setup calibration files</A>
|
||||
<B> Up:</B> <A NAME="tex2html46"
|
||||
HREF="energyCalibrationHowTo.html">Energy calibration wizard manual</A>
|
||||
<B> Previous:</B> <A NAME="tex2html40"
|
||||
HREF="node2.html">Data acquisition</A>
|
||||
<!--End of Navigation Panel-->
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-08-24
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|
74
manual/docs/html/energyCalibrationHowTo/node4.html
Normal file
@ -0,0 +1,74 @@
|
||||
<!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="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="node5.html">
|
||||
<LINK REL="previous" HREF="node3.html">
|
||||
<LINK REL="up" HREF="energyCalibrationHowTo.html">
|
||||
<LINK REL="next" HREF="node5.html">
|
||||
</HEAD>
|
||||
|
||||
<BODY >
|
||||
<!--Navigation Panel-->
|
||||
<A NAME="tex2html58"
|
||||
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="tex2html56"
|
||||
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="tex2html50"
|
||||
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="tex2html59"
|
||||
HREF="node5.html">About this document ...</A>
|
||||
<B> Up:</B> <A NAME="tex2html57"
|
||||
HREF="energyCalibrationHowTo.html">Energy calibration wizard manual</A>
|
||||
<B> Previous:</B> <A NAME="tex2html51"
|
||||
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 genrated calibration files as default ones, copy them into your default <I>caldir/settings</I> renaming them calibration.snxxx, where snxxx is the extension that the genrated files already have, which corresponds to the module serial number.
|
||||
<BR>
|
||||
Fot this scope, a script as following can be used:
|
||||
<PRE>
|
||||
for i in $(ls newcal_standard.sn* | awk -F "." '{print $2}'); do \
|
||||
mv newcal_standard.$i caldir/standard/calibration.$i; \
|
||||
done
|
||||
</PRE>
|
||||
|
||||
<P>
|
||||
By reloading the default detector settings, the calibration coefficients will be automatically loaded.
|
||||
<BR><HR>
|
||||
<ADDRESS>
|
||||
Thattil Dhanya
|
||||
2017-08-24
|
||||
</ADDRESS>
|
||||
</BODY>
|
||||
</HTML>
|