Page History
Content
Table of Contents |
---|
Problem
Meng sees a problem with interpretation of data. She observes in data large sample of events which have 2-peaks in the qH around two most probable positions 1.1 and 1.7 1/Å. In contrast, our model of lattice does not show these peaks simultaneously.
...
A few crosschecks are presented below in order to address this issue.
Lattice
Triclinic crystal cell primitive vectors
We use a few methods from pyimgalgos.FiberIndexing
to generate lattice:
...
Test print shows that everything looks as expected:
Code Block |
---|
# Triclinic3-d crystalspace cellprimitive parametersvectors: # aa1 = ( 18.55550000, A # 0.000000, b = 27.19 A0.000000) # ca2 = ( 4-5.86435624, A # 26.645524, alpha = 90.00 deg0.000000) # beta a3 = 90.00 deg # gamma = 78.47 deg # 3-d space primitive vectors: # a1 = (18.55, 0.0, 0.0) # a2 = (-5.435623727109098, 26.645523961582906, 0.0) # a3 = (0.0, 0.0, 4.8601) |
Reciprocal space primitive vectors
( 0.000000, 0.000000, 4.860100) |
Reciprocal space primitive vectors
b1, b1, b2, b3 = reciprocal_from_bravias(a1, a2, a3)
- converts 3-d primitive vectors to reciprocal space primitive vectors.
...
Code Block |
---|
# reciprocal space primitive vectors: # b1 = [( 0.05390836053908, 0.01099718010997, -0. ]000000) # b2 = [( 0.000000, 0.03752976037530, 0. ]000000) # b3 = ( [ 0. 000000, -0. 000000, 0.20575708]205757) |
Lattice generator and test
Then, call to method
x, y, z, r, h, k, l = lattice(b1, b2, b3, hmax, kmax, lmax, cdtype)
...
Code Block |
---|
hmax, kmax, lmax = 4, 6, 0 # size of lattice to consider
# 2-d lattice test
test_lattice (b1, b2, b3, hmax, kmax, lmax, cdtype=np.float32, do_plot=True, evald_rad=evald_rad, prefix=prefix)
lattice_node_radius(b1, b2, b3, hmax, kmax, lmax, cdtype=np.float32) |
Output of this 2-d test looks as expected:
Code Block | ||
---|---|---|
| ||
h.shape: (13, 9) row: -4 -3 -2 -1 0 1 2 3 4 row: -4 -3 -2 -1 0 1 2 3 4 row: -4 -3 -2 -1 0 1 2 3 4 row: -4 -3 -2 -1 0 1 2 3 4 row: -4 -3 -2 -1 0 1 2 3 4 row: -4 -3 -2 -1 0 1 2 3 4 row: -4 -3 -2 -1 0 1 2 3 4 row: -4 -3 -2 -1 0 1 2 3 4 row: -4 -3 -2 -1 0 1 2 3 4 row: -4 -3 -2 -1 0 1 2 3 4 row: -4 -3 -2 -1 0 1 2 3 4 row: -4 -3 -2 -1 0 1 2 3 4 row: -4 -3 -2 -1 0 1 2 3 4 k.shape: (13, 9) row: -6 -6 -6 -6 -6 -6 -6 -6 -6 row: -5 -5 -5 -5 -5 -5 -5 -5 -5 row: -4 -4 -4 -4 -4 -4 -4 -4 -4 row: -3 -3 -3 -3 -3 -3 -3 -3 -3 row: -2 -2 -2 -2 -2 -2 -2 -2 -2 row: -1 -1 -1 -1 -1 -1 -1 -1 -1 row: 0 0 0 0 0 0 0 0 0 row: 1 1 1 1 1 1 1 1 1 row: 2 2 2 2 2 2 2 2 2 row: 3 3 3 3 3 3 3 3 3 row: 4 4 4 4 4 4 4 4 4 row: 5 5 5 5 5 5 5 5 5 row: 6 6 6 6 6 6 6 6 6 l.shape: (13, 9) row: 0 0 0 0 0 0 0 0 0 row: 0 0 0 0 0 0 0 0 0 row: 0 0 0 0 0 0 0 0 0 row: 0 0 0 0 0 0 0 0 0 row: 0 0 0 0 0 0 0 0 0 row: 0 0 0 0 0 0 0 0 0 row: 0 0 0 0 0 0 0 0 0 row: 0 0 0 0 0 0 0 0 0 row: 0 0 0 0 0 0 0 0 0 row: 0 0 0 0 0 0 0 0 0 row: 0 0 0 0 0 0 0 0 0 row: 0 0 0 0 0 0 0 0 0 row: 0 0 0 0 0 0 0 0 0 x coords.shape: (13, 9) row: -0.2156 -0.1617 -0.1078 -0.0539 0.0000 0.0539 0.1078 0.1617 0.2156 row: -0.2156 -0.1617 -0.1078 -0.0539 0.0000 0.0539 0.1078 0.1617 0.2156 row: -0.2156 -0.1617 -0.1078 -0.0539 0.0000 0.0539 0.1078 0.1617 0.2156 row: -0.2156 -0.1617 -0.1078 -0.0539 0.0000 0.0539 0.1078 0.1617 0.2156 row: -0.2156 -0.1617 -0.1078 -0.0539 0.0000 0.0539 0.1078 0.1617 0.2156 row: -0.2156 -0.1617 -0.1078 -0.0539 0.0000 0.0539 0.1078 0.1617 0.2156 row: -0.2156 -0.1617 -0.1078 -0.0539 0.0000 0.0539 0.1078 0.1617 0.2156 row: -0.2156 -0.1617 -0.1078 -0.0539 0.0000 0.0539 0.1078 0.1617 0.2156 row: -0.2156 -0.1617 -0.1078 -0.0539 0.0000 0.0539 0.1078 0.1617 0.2156 row: -0.2156 -0.1617 -0.1078 -0.0539 0.0000 0.0539 0.1078 0.1617 0.2156 row: -0.2156 -0.1617 -0.1078 -0.0539 0.0000 0.0539 0.1078 0.1617 0.2156 row: -0.2156 -0.1617 -0.1078 -0.0539 0.0000 0.0539 0.1078 0.1617 0.2156 row: -0.2156 -0.1617 -0.1078 -0.0539 0.0000 0.0539 0.1078 0.1617 0.2156 y coords.shape: (13, 9) row: -0.2692 -0.2582 -0.2472 -0.2362 -0.2252 -0.2142 -0.2032 -0.1922 -0.1812 row: -0.2316 -0.2206 -0.2096 -0.1986 -0.1876 -0.1767 -0.1657 -0.1547 -0.1437 row: -0.1941 -0.1831 -0.1721 -0.1611 -0.1501 -0.1391 -0.1281 -0.1171 -0.1061 row: -0.1566 -0.1456 -0.1346 -0.1236 -0.1126 -0.1016 -0.0906 -0.0796 -0.0686 row: -0.1190 -0.1081 -0.0971 -0.0861 -0.0751 -0.0641 -0.0531 -0.0421 -0.0311 row: -0.0815 -0.0705 -0.0595 -0.0485 -0.0375 -0.0265 -0.0155 -0.0045 0.0065 row: -0.0440 -0.0330 -0.0220 -0.0110 0.0000 0.0110 0.0220 0.0330 0.0440 row: -0.0065 0.0045 0.0155 0.0265 0.0375 0.0485 0.0595 0.0705 0.0815 row: 0.0311 0.0421 0.0531 0.0641 0.0751 0.0861 0.0971 0.1081 0.1190 row: 0.0686 0.0796 0.0906 0.1016 0.1126 0.1236 0.1346 0.1456 0.1566 row: 0.1061 0.1171 0.1281 0.1391 0.1501 0.1611 0.1721 0.1831 0.1941 row: 0.1437 0.1547 0.1657 0.1767 0.1876 0.1986 0.2096 0.2206 0.2316 row: 0.1812 0.1922 0.2032 0.2142 0.2252 0.2362 0.2472 0.2582 0.2692 z coords.shape: (13, 9) row: 0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 row: 0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 row: 0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 row: 0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 row: 0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 row: 0.0000 0.0000 0.0000 0.0000 -0.0000 -0.0000 -0.0000 -0.0000 -0.0000 row: 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 row: 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 row: 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 row: 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 row: 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 row: 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 row: 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 r of lattice nodes.shape: (13, 9) row: 0.3449 0.3046 0.2697 0.2423 0.2252 0.2209 0.2300 0.2512 0.2817 row: 0.3165 0.2736 0.2357 0.2058 0.1876 0.1847 0.1977 0.2238 0.2591 row: 0.2901 0.2443 0.2031 0.1699 0.1501 0.1492 0.1675 0.1997 0.2403 row: 0.2665 0.2176 0.1724 0.1348 0.1126 0.1150 0.1408 0.1803 0.2263 row: 0.2463 0.1945 0.1451 0.1015 0.0751 0.0837 0.1202 0.1671 0.2179 row: 0.2305 0.1764 0.1232 0.0725 0.0375 0.0601 0.1089 0.1618 0.2157 row: 0.2201 0.1651 0.1100 0.0550 0.0000 0.0550 0.1100 0.1651 0.2201 row: 0.2157 0.1618 0.1089 0.0601 0.0375 0.0725 0.1232 0.1764 0.2305 row: 0.2179 0.1671 0.1202 0.0837 0.0751 0.1015 0.1451 0.1945 0.2463 row: 0.2263 0.1803 0.1408 0.1150 0.1126 0.1348 0.1724 0.2176 0.2665 row: 0.2403 0.1997 0.1675 0.1492 0.1501 0.1699 0.2031 0.2443 0.2901 row: 0.2591 0.2238 0.1977 0.1847 0.1876 0.2058 0.2357 0.2736 0.3165 row: 0.2817 0.2512 0.2300 0.2209 0.2252 0.2423 0.2697 0.3046 0.3449 |
...
Table of
...
lattice node parameters sorted by radius
Code Block | ||
---|---|---|
| ||
( h, k) R(h,k)[1/A]
( 0, 0) 0.0000
( 0, 1) 0.0375
( 1, 0) 0.0550
(-1, 1) 0.0601
( 1, 1) 0.0725
( 0, 2) 0.0751
(-1, 2) 0.0837
( 1, 2) 0.1015
(-2, 1) 0.1089
( 2, 0) 0.1100
( 0, 3) 0.1126
(-1, 3) 0.1150
(-2, 2) 0.1202
( 2, 1) 0.1232
( 1, 3) 0.1348
(-2, 3) 0.1408
( 2, 2) 0.1451
(-1, 4) 0.1492
( 0, 4) 0.1501
(-3, 1) 0.1618
( 3, 0) 0.1651
(-3, 2) 0.1671
(-2, 4) 0.1675
( 1, 4) 0.1699
( 2, 3) 0.1724
( 3, 1) 0.1764
(-3, 3) 0.1803
(-1, 5) 0.1847
( 0, 5) 0.1876
( 3, 2) 0.1945
(-2, 5) 0.1977
(-3, 4) 0.1997
( 2, 4) 0.2031
( 1, 5) 0.2058
(-4, 1) 0.2157
( 3, 3) 0.2176
(-4, 2) 0.2179
( 4, 0) 0.2201
(-1, 6) 0.2209
(-3, 5) 0.2238
( 0, 6) 0.2252
(-4, 3) 0.2263
(-2, 6) 0.2300
( 4, 1) 0.2305
( 2, 5) 0.2357
(-4, 4) 0.2403
( 1, 6) 0.2423
( 3, 4) 0.2443
( 4, 2) 0.2463
(-3, 6) 0.2512
(-4, 5) 0.2591
( 4, 3) 0.2665
( 2, 6) 0.2697
( 3, 5) 0.2736
(-4, 6) 0.2817
( 4, 4) 0.2901
( 3, 6) 0.3046
( 4, 5) 0.3165
( 4, 6) 0.3449 |
Rotation of the crystal lattice
Both in test_lattice
and make_lookup_table
methods crystal lattice in reciprocal space is rotated around Z and Y axes by omega_deg and beta_deg, respectively using calls:
Code Block |
---|
xrot1, yrot1 = rotation(x, y, omega_deg)
xrot2, zrot2 = rotation(xrot1, z, beta_deg) |
Rotation in test_lattice
for omega_deg = 30; beta_deg = 15
gives consistent results:
Code Block | ||
---|---|---|
| ||
xrot2.shape: (13, 9)
row: -0.0504 -0.0106 0.0292 0.0690 0.1088 0.1485 0.1883 0.2281 0.2679 |
Both in test_lattice
and make_lookup_table
methods crystal lattice in reciprocal space is rotated around Z and Y axes by
Code Block |
---|
xrot1, yrot1 = rotation(x, y, omega_deg)
xrot2, zrot2 = rotation(xrot1, z, beta_deg) |
Rotation in test_lattice
for omega_deg = 30; beta_deg = 15
gives consistent results:
Code Block |
---|
xrot2.shape: (13, 9) row: -0.0504 -0.0106 0.0292 0.0690 0.1088 0.1485 0.1883 0.2281 0.2679 row: -0.0685 -0.0287 0.0111 0.0508 0.0906 0.1304 0.1702 0.2100 0.2498 row: -0.0866 -0.0469 -0.0071 0.0327 0.0725 0.1123 0.1521 0.1919 0.2316 row: -0.1048 -0.0650 -0.0252 0.0146 0.0544 0.0942 0.1339 0.1737 0.2135 row: -0.1229 -0.0831 -0.0433 -0.0035 0.0363 0.0760 0.1158 0.1556 0.1954 row: -0.1410 -0.1012 -0.0614 -0.0217 0.0181 0.0579 0.0977 0.1375 0.1773 row: -0.1591 -0.1194 -0.0796 -0.0398 0.0000 0.0398 0.0796 0.1194 0.1591 row: -0.1773 -0.1375 -0.0977 -0.0579 -0.0181 0.0217 0.0614 0.1012 0.1410 row: -0.19540685 -0.15560287 -0.11580111 -0.07600508 -0.03630906 0.00351304 0.04331702 0.08312100 0.12292498 row: -0.21350866 -0.17370469 -0.13390071 -0.09420327 -0.05440725 -0.01461123 0.02521521 0.06501919 0.10482316 row: -0.23161048 -0.19190650 -0.15210252 -0.11230146 -0.07250544 -0.03270942 0.00711339 0.04691737 0.08662135 row: -0.24981229 -0.21000831 -0.17020433 -0.13040035 -0.09060363 -0.05080760 -0.01111158 0.02871556 0.06851954 row: -0.26791410 -0.22811012 -0.18830614 -0.14850217 -0.10880181 -0.06900579 -0.02920977 0.01061375 0.05041773 yrot1.shaperow: (13, 9) row: -0.34091591 -0.30441194 -0.26800796 -0.23150398 -0.19500000 -0.15850398 -0.12210796 -0.08561194 -0.04911591 row: -0.30841773 -0.27191375 -0.23550977 -0.19900579 -0.16250181 -0.12600217 -0.08960614 -0.05311012 -0.01661410 row: -0.27591954 -0.23941556 -0.20301158 -0.16650760 -0.13000363 -0.09350035 -0.05710433 -0.02060831 0.01591229 row: -0.24342135 -0.20691737 -0.17051339 -0.13400942 -0.09750544 -0.06100146 -0.02450252 0.01190650 0.04841048 row: -0.21092316 -0.17441919 -0.13801521 -0.10151123 -0.06500725 -0.02850327 0.00800071 0.04440469 0.08090866 row: -0.17842498 -0.14192100 -0.10551702 -0.06901304 -0.03250906 -0.00400508 -0.04050111 0.07690287 0.11340685 row: -0.14592679 -0.10942281 -0.07301883 -0.03651485 -0.00001088 -0.03650690 -0.07300292 0.10940106 0.1459.0504 yrot1.shape: (13, 9) row: -0.11343409 -0.07693044 -0.04052680 -0.00402315 -0.03251950 -0.06901585 -0.10551221 -0.14190856 -0.17840491 row: -0.08093084 -0.04442719 -0.00802355 -0.02851990 -0.06501625 -0.10151260 -0.13800896 -0.17440531 -0.21090166 row: -0.04842759 -0.01192394 -0.02452030 -0.06101665 -0.09751300 -0.13400935 -0.17050571 -0.20690206 0.24340159 row: -0.01592434 -0.02062069 -0.05711705 -0.09351340 -0.13000975 -0.16650610 -0.20300245 0.23940119 0.27590484 row: -0.01662109 -0.05311744 -0.08961380 -0.12601015 -0.16250650 -0.19900285 0.23550080 0.27190444 0.30840809 row: -0.04911784 -0.08561419 -0.12211055 -0.15850690 -0.19500325 0.23150040 0.26800405 0.30440769 0.3409 zrot2.shape: (13, 9) 1134 row: -0.01351459 -0.00281094 -0.00780730 -0.01850365 0.02910000 0.03980365 0.05050730 0.06111094 0.07181459 row: -0.01841134 -0.00770769 -0.00300405 -0.01360040 0.02430325 0.03490690 0.04561055 0.05631419 0.06691784 row: -0.02320809 -0.01260444 -0.00190080 0.00880285 0.01940650 0.03011015 0.04071380 0.05141744 0.06212109 row: -0.02810484 -0.01740119 -0.00680245 0.00390610 0.01460975 0.02521340 0.03591705 0.04662069 0.05722434 row: -0.03290159 -0.02230206 -0.01160571 -0.00090935 0.00971300 0.02041665 0.03102030 0.04172394 0.05242759 row: -0.03780166 -0.02710531 -0.01650896 -0.00581260 0.00491625 0.01551990 0.02622355 0.03682719 0.04753084 row: -0.04260491 -0.03200856 -0.02131221 -0.01071585 0.00001950 0.01072315 0.02132680 0.03203044 0.0426.3409 zrot2.shape: (13, 9) row: -0.04750135 -0.03680028 -0.02620078 -0.01550185 -0.00490291 0.00580398 0.01650505 0.02710611 0.03780718 row: -0.05240184 -0.04170077 -0.03100030 -0.02040136 -0.00970243 0.00090349 0.01160456 0.02230563 0.03290669 row: -0.05720232 -0.04660126 -0.03590019 -0.02520088 -0.01460194 -0.00390301 0.00680407 0.01740514 0.02810621 row: -0.06210281 -0.05140174 -0.04070068 -0.03010039 -0.01940146 -0.00880252 0.00190359 0.01260466 0.02320572 row: -0.06690329 -0.05630223 -0.04560116 -0.03490009 -0.02430097 -0.01360204 -0.00300310 0.00770417 0.01840524 row: -0.07180378 -0.0271 -0.06110165 -0.05050.0058 0.0049 0.0155 0.0262 0.0368 0.0475 row: -0.03980426 -0.02910320 -0.01850213 -0.00780107 0.00280000 0.0135 |
Look-up table
Look-up table is generated in method make_lookup_table
called as
lut = make_lookup_table(b1, b2, b3, hmax, kmax, lmax, np.float32, evald_rad, sigma_ql,
sigma_qt,
fout, bpq, bpomega, bpbeta)
NOTE: In order to tune tolerance separately for angle and detector plane (qh, qv) parameter sigma_q is split for sigma_ql and sigma_qt
for each crystal orientation in omega_deg and beta_deg method
dr, qv, qh = radial_distance(xrot2, yrot1, zrot2, evald_rad)
evaluates
dr [1/A] - distance between lattice node and Evald's sphere
qv, qh [1/A] - vertical and horizontal components of scattering vector q
in a simple code:
Code Block |
---|
def radial_distance(X, Y, Z, evald_rad=0.5) :
DX = X + evald_rad
L = np.sqrt(DX*DX + Y*Y + Z*Z)
dr = L - evald_rad
qv = evald_rad * Z/L
ql = evald_rad * (DX/L-1)
qy = evald_rad * Y/L
qh = np.sqrt(ql*ql + qy*qy) * np.select([Y<0], [-1], default=1)
return dr, qv, qh |
Finally, in method make_lookup_table
txt = str_omega_drhkl(ind, beta_deg, omega_deg, dr, r, qv, qh, h, k, l, sigma_ql)
generates text record for file with look-up table, and
lut[iomega,:] += fill_row(dr, qv, qh, h, k, l, sigma_ql
, sigma_qt
, bpq)
generates 2-d array, which presents look-up table in 2-d plot and its projection:
0107 0.0213 0.0320 0.0426
row: -0.0475 -0.0368 -0.0262 -0.0155 -0.0049 0.0058 0.0165 0.0271 0.0378
row: -0.0524 -0.0417 -0.0310 -0.0204 -0.0097 0.0009 0.0116 0.0223 0.0329
row: -0.0572 -0.0466 -0.0359 -0.0252 -0.0146 -0.0039 0.0068 0.0174 0.0281
row: -0.0621 -0.0514 -0.0407 -0.0301 -0.0194 -0.0088 0.0019 0.0126 0.0232
row: -0.0669 -0.0563 -0.0456 -0.0349 -0.0243 -0.0136 -0.0030 0.0077 0.0184
row: -0.0718 -0.0611 -0.0505 -0.0398 -0.0291 -0.0185 -0.0078 0.0028 0.0135 |
Rotation in test_lattice
for omega_deg = 0; beta_deg = 9 produces the plot
Movies with frame delay 50, 100, 200, 400ms:
Look-up table
Look-up table is generated in method make_lookup_table
_v2 called as
lut = make_lookup_table_v2(b1, b2, b3, hmax, kmax, lmax, np.float32, evald_rad, sigma_ql,
sigma_qt,
fout, bpq, bpomega, bpbeta)
NOTE v2
: In order to tune tolerance separately for angle and detector plane (qh, qv) parameter sigma_q in v2 is split for sigma_ql and sigma_qt
using parameters
Code Block |
---|
# photon energy = 6003.1936 eV
# wavelength = 2.0653 A
# wave number/Evald radius k = 1/lambda = 0.484187 1/A
# sigma_ql = 0.001453 1/A (approximately = k * <pixel size>/
# sigma_qt = 0.000484 1/A (approximately = k * <pixel size>/<sample-to-detector distance> = k*100um/100mm)
# 3*sigma_ql = 0.004358 1/A
# 3*sigma_qt = 0.001453 1/A |
for each crystal orientation in omega_deg and beta_deg method
dr, qv, qh = radial_distance(xrot2, yrot1, zrot2, evald_rad)
evaluates
dr [1/A] - distance between lattice node and Evald's sphere along the scattered photon propagation,
qv, qh [1/A] - vertical and horizontal components of scattering vector q.
using a simple code:
Code Block |
---|
# NOTE: X, Y, Z, DX, L, dr, qv, qh, ql are the numpy arrays with shape=(2*hmax+1, 2*kmax+1, 2*lmax+1), evald_rad is a scalar
def radial_distance(X, Y, Z, evald_rad=0.5) :
DX = X + evald_rad
L = np.sqrt(DX*DX + Y*Y + Z*Z)
dr = L - evald_rad
qv = evald_rad * Z/L
ql = evald_rad * (DX/L-1)
qy = evald_rad * Y/L
qh = np.sqrt(ql*ql + qy*qy) * np.select([Y<0], [-1], default=1)
return dr, qv, qh |
Finally, in method make_lookup_table
there are two calls:
txt = str_omega_drhkl(ind, beta_deg, omega_deg, dr, r, qv, qh, h, k, l, sigma_ql)
generates text record for file with look-up table, and
lut[iomega,:] += fill_row(dr, qv, qh, h, k, l, sigma_ql
, sigma_qt
, bpq)
generates 2-d array, which presents look-up table in 2-d plot and its projection:
Look-up table is generated for bpomega = BinPars((0., 180.), 360,...)
work/lut-cxif5315-r0169-2016-02-03T15:10:48.txt:
Code Block |
---|
# file name: ./v02-lut-cxif5315-r0169-2016-02-03T15:10:48.txt
# photon energy = 6003.1936 eV
# wavelength = 2.0653 A
# wave number/Evald radius k = 1/lambda = 0.484187 1/A
# sigma_ql = 0.001453 1/A (approximately = k * <pixel size>/
# sigma_qt = 0.000484 1/A (approximately = k * <pixel size>/<sample-to-detector distance> = k*100um/100mm)
# 3*sigma_ql = 0.004358 1/A
# 3*sigma_qt = 0.001453 1/A
# Triclinic crystal cell parameters:
# a = 18.55 A
# b = 27.19 A
# c = 4.86 A
# alpha = 90.00 deg
# beta = 90.00 deg
# gamma = 78.47 deg
# 3-d space primitive vectors:
# a1 = ( 18.550000, 0.000000, 0.000000)
# a2 = ( -5.435624, 26.645524, 0.000000)
# a3 = ( 0.000000, 0.000000, 4.860100)
# reciprocal space primitive vectors:
# b1 = ( 0.053908, 0.010997, -0.000000)
# b2 = ( 0.000000, 0.037530, 0.000000)
# b3 = ( 0.000000, -0.000000, 0.205757)
# _________________________________________________________________________________________
# beta 0.00 omega 0.00 degree
# index beta omega h k l dr[1/A] R(h,k,l) qv[1/A] qh[1/A] P(omega)
1 0.00 0.00 0 -1 0 0.001452 0.037530 0.000000 -0.037446 0.606641
1 0.00 0.00 0 1 0 0.001452 0.037530 0.000000 0.037446 0.606641
1 0.00 0.00 -1 6 0 -0.003549 0.220861 0.000000 0.221647 0.050590
# beta 0.00 omega 0.50 degree
# index beta omega h k l dr[1/A] R(h,k,l) qv[1/A] qh[1/A] P(omega)
2 0.00 0.50 0 -1 0 0.001779 0.037530 0.000000 -0.037419 0.472496
2 0.00 0.50 0 1 0 0.001126 0.037530 0.000000 0.037469 0.740615
... |
Check for look-up table
Method cxif5315/plot-lattice-from-data.py generates two plots from look-up table;
- intensities for omega vs. qh
- reconstructed lattice from measured omega and qh
- the same image convolved with 2-d gaussian weight matrix arr_2d_gauss(2, 1.5)
Lattice reconstructed by Meng
Original and convoluted images