• 締切済み

結晶面(h, k, l)について

結晶面(h, k, l)についての質問をさせて頂きます。 上記式をxyz空間で空間で記述したいのですがどのように座標を取っていいのか分からなく困っています。 ご回答よろしくお願いします。

みんなの回答

  • inara
  • ベストアンサー率72% (293/404)
回答No.3

>X線を当てる対象の結晶のブラック反射面(上記格子面)の法線軸とそれを映し出すフィルムの法線軸を一致させる予定なのですが、どうやって定義しようか考えあぐねている所なんです。 (x,y,z)座標系で、(h,k,l)面の方程式を h*(x-u0+k*(y-v0+l*(z-w0=0 --- (1) とします。(u0,v0,w0)はこの格子面を通る点ですから、例えば実際の格子点になります。 フィルム面はこの格子面と平行ですから、その方程式は h*(x-u1)+k*(y-v1)+l*(z-w1)=0 --- (2) と書けます。 格子面の法線の方程式は、x/h=y/k=z/l ですが、t という媒介変数を使うと、 x=h*t, y=k*t, z=l*t --- (3) で表されます(t=0のときx=y=z=0となって座標原点になる)。これを式(1)に代入して、t ついて解くと、 t0 = (h*u0+k*v0+l*w0)/(h^2+k^2+l^2) ---(4) このt0を式(3)に代入したときの(x,y,z)が、法線ベクトル(h,k,l)と格子面との交点の座標になります。 同様に、式(3)を式(2)に代入して、t について解けば t1 = (h*u1+k*v1+l*w1)/(h^2+k^2+l^2) --- (5) このt1を式(3)に代入したときの(x,y,z)が、法線ベクトル(h,k,l)とフィルム面との交点の座標になります。 したがって、格子面(1)とフィルム面(2)の距離が L なので L^2 = (h*t1-h*t0)^2+(k*t1-k*t0)^2+(l*t1-l*t0)^2 = (h^2+k^2+l^2)*(t1-t0) = h*(u1-u0)+k*(v1-v0)+l*(w1-w0) (u0,v0,w0)は分かっているので、これが成り立つようなu1,v1,w1を見つければいいわけですが、(5)を(3)に代入した交点を(u1,v1,w1)としたほうが楽かもしれません。 >やっぱりベクトルを座標に直す場合、球座標で考えるのがベターなんでしょうか・・・ ベクトルだけでも計算できるでしょうが、x軸となす角とか、現実的に知りたい量を考えると、球面座標にしたほうがいいかもしれません。たとえば、原点からLの距離にあるフィルム面が格子面と平行なとき、法線ベクトルは同じ(h,k,l)ですが、その法線ベクトルがx軸となす角をθ、z軸となす角をφとすれば、h = L*sinθ*cosφ、k = L*sinθ*sinφ、l = L*cosθ (ただしh^2+k^2+l^2=L^2)ですから、(h,k,l)が分かればθとφが分かります(θ=arccos(l/L)、φ=arctan(k/h))。 なお、通常d << L なので、反射点(格子面)を座標原点(0,0,0)上におくと計算しやすいと思います。その場合、u-=v0=w0=0となって、ベクトル(h,k,l)も原点を通りますので。

  • inara
  • ベストアンサー率72% (293/404)
回答No.2

>コッセル線の時はお世話になりました。 コッセル線もそうでしたが、結晶学関係は回答がつきませんね。 今日はもう遅いので、明日お答えまします(日中は仕事ですので明日の夜になりますが)。

  • inara
  • ベストアンサー率72% (293/404)
回答No.1

コッセル線でお答えしたinaraです。 konnyamoさんがお聞きしたいのは、その格子面の方程式でしょうか?xyz座標系なら、点(u,v,w)を通る平面は h*(x-u) + k*(y-v) +l*(z-w) = 0 であらわされます。格子定数がa,b,cの基本格子内なら、0=<u=<a, 0=<v=<b, 0=<w=<c となります。 正方晶系・立方晶系・斜方晶系ではxyz軸は互いに直角ですが、それ以外は直角ではありません。

konnyamo
質問者

お礼

どうも、コッセル線の時はお世話になりました。 よろしくお願いします。 今回の質問はそのコッセル線の話の延長になります。 そもそもコッセル線とは結晶にX線をあて、ブラック反射角を満たす角度で入射した光をフィルムに映したときに現れる現象なのですが、プログラムを作る時に、予定ではX線を当てる対象の結晶のブラック反射面(上記格子面)の法線軸とそれを映し出すフィルムの法線軸を一致させる予定なのですが、どうやって定義しようか考えあぐねている所なんです。 理想ではフィルムに映し出されるコッセル線の式を関数表示したいのですが、それには結晶の構成や格子面を表す基本並進ベクトルを(xyz)座標軸の表記に直さなければなりません。 一応自分の中の計算の流れはと言いますと (1) 各辺の長さ、各辺の角度を設定(基本並進ベクトル) (2)基本並進ベクトルが決まる。 (3)入射光線の波長を入力 (4)格子面(h,k,l)を指定この場合反射波の方向ベクトルでもある。 (5) Aを設定(A・・・ブラッグ角) (6)2dsin A=nλ(n=0・1・2・・・n、d・・・格子間距離)を満たす d=nλ/2dsin A を求める。ここではn=1として扱う 格子面の法線軸をフィルムの法線軸と結び、二平面を平行にする。 (7)結晶面とフィルムの距離をLとする。 まだ考え途中ですが、やっぱりベクトルを座標に直す場合、球座標で考えるのがベターなんでしょうか・・・ 回答よろしくお願いします。

関連するQ&A