関数tws_set_MandFandT_axi_symmetric マニュアル

(The documentation of function tws_set_MandFandT_axi_symmetric)

Last Update: 2021/12/8


◆機能・用途(Purpose)

大きさと向きで与えられた地震波動ソースを 直交座標に沿った行列成分表記に変換する。 2つの固有値が縮退したモーメントテンソルのメカニズム用。
Convert the mechanism of a seismic wave source, given by the magnitude and orientation, to matrix representations based on a cartesian coordinate, for a source mechanism of a moment tensor which has a pair of degenerated eigenvalues.

2つの固有値が縮退したモーメントテンソルのメカニズムの代表例として がある。 いずれも縮退していない方の固有ベクトルに関して軸対称であることから axi_symmetricという名前を付けている。
Typical examples of the source mechanisms of a moment tensor which has a pair of degenerated eigenvalues are: These source mechanisms are axi-symmetric with regard to the non-degenerated eigenvector. The function name axi_symmetric was taken after this aspect.


◆形式(Format)

#include <tws/source.h>
inline void TF_set_MandFandT_axi_symmetric
(const char ∗mechanism,const double intensity,
 const double theta,const double phi,const double lambda, const double mu,
 struct matrix ∗M,struct columnvector ∗F, struct columnvector ∗T)


◆引数(Arguments)

mechanism ソースメカニズムを表す文字列で、以下のいずれかを指定可能である。
A string which indicates the source mechanism, which can be one of the followings.
  • "dipole" :
    ダイポール
    A dipole.

  • "tensile" :
    有限サイズの開口クラック
    A tensile crack of a finite size.

  • "point_tensile" :
    開口クラックの点ソース
    A point source tensile crack.

  • "cylinder" :
    円筒。
    A cylinder.

intensity ソースの強さ。 ダイポールおよび円筒では縮退していない方の固有値を、 開口クラックでは縮退している方の固有値を指定する。
The intensity of the source, which is the non-degenerated eigenvalue for a dipole and a cylinder and the degenerated eigenvalue for a tensile crack.
theta 縮退していない固有ベクトル(対称軸)の方向と\(z\)軸のなす角(rad)。
Angle (rad) between the non-degenerated eigenvector (symmetry axis) and the \(z\)-axis.
phi 縮退していない固有ベクトル(対称軸)の\(xy\)平面への投影と \(x\)軸のなす角(rad単位、反時計回り)。
Angle (rad) between projection of the non-degenerated eigenvector (symmetry axis) on the \(x\)-\(y\) plane and the \(x\)-axis, measured counterclockwise.
lambda ラメ定数\(\lambda\)。
The Lame constant \(\lambda\).
mu ラメ定数\(\mu\)。
The Lame constant \(\mu\).
M 計算したモーメントテンソル成分から成る行列の代入先。 宣言しただけの構造体を渡す。 関数内で\(3\times 3\)行列として動的メモリの確保と値の設定が行われる。 モーメントテンソル成分\(M_{ij}\)が (∗M).main[i][j]に代入される。 ここで\(i,j=0,1,2\)はそれぞれ\(x\), \(y\), \(z\)成分を表す。
A memory into which a matrix composed of the moment tensor components is inserted. Give a structure which is only declared (without setting the values). In the function, the dynamic memories for a \(3\times 3\) is allocated and the values are set. Each moment tensor component \(M_{ij}\) is inserted into (∗M).main[i][j]. Here, \(i,j=\) 0, 1, and 2 represent \(x\)-, \(y\)-, and \(z\)-components, respectively.
F 計算したシングルフォース成分から成る行列の代入先。 宣言しただけの構造体を渡す。 関数内で3成分の列ベクトルとして動的メモリの確保と値の設定が行われる。 シングルフォース成分\(F_i\)が (∗F).main[i]に代入される。 ここで\(i=0,1,2\)はそれぞれ\(x\), \(y\), \(z\)成分を表す。
A memory into which a matrix composed of the single force components is inserted. Give a structure which is only declared (without setting the values). In the function, the dynamic memories for a 3-component column vector is allocated and the values are set. Each single force component \(F_i\) is inserted into (∗F).main[i]. Here, \(i=\) 0, 1, and 2 represent \(x\)-, \(y\)-, and \(z\)-components, respectively.
T 傾斜変動を相反定理を用いて計算するために観測点の位置に置く 仮想的なソース成分 ( 利用できるメカニズム一覧のtilt, tilt2の説明参照) から成る行列の代入先。 宣言しただけの構造体を渡す。 関数内で6成分の列ベクトルとして動的メモリの確保と値の設定が行われる。 水管傾斜計用の仮想ソースの3成分\(T_i\)が(∗T).main[i]に、 ボアホール型傾斜計用の仮想ソースの3成分\(T_{2i}\)が (∗T).main[i+3]に代入される。 ここで\(i=0,1,2\)はそれぞれ\(x\), \(y\), \(z\)成分を表す。
A memory into which a matrix composed of virtual source components, exerted at the station location to compute tilt based on the reciprocity theorem (see the descriptions for tilt and tilt2 in List of mechanisms available), is inserted. Give a structure which is only declared (without setting the values). In the function, the dynamic memories for a 6-component column vector is allocated and the values are set. The three components of the virtual source for a water tube tiltmeter (\(T_i\)) are inserted into (∗T).main[i], and that for a borehole tiltmeter (\(T_{2i}\)) are inserted into (∗T).main[i+3]. Here, \(i=\) 0, 1, and 2 represent \(x\)-, \(y\)-, and \(z\)-components, respectively.


◆使用例(Example)

double dV=100.0;
double theta=30.0∗pi/180.0;
double phi=60.0∗pi/180.0;
double lambda=1.0e+10;
double mu=1.0e+10;
struct matrix M;
struct columnvector F;
struct columnvector T;
tws_set_MandFandT_axi_symmetric ("point_tensile",lambda∗dV,theta,phi,lambda,mu, &M,&F,&T);


◆代入される値(Values inserted)

以下で\(m\), \(\theta\), \(\phi\), \(\lambda\), \(\mu\)はそれぞれ 引数intensity, theta, phi, lambda, muの値を表す。 また\(M_1\), \(M_2\)はそれぞれ 縮退していない方の固有値と縮退している方の固有値で、 ソースメカニズムに応じて以下のように与えられる。
Below, \(m\), \(\theta\), \(\phi\), \(\lambda\), and \(\mu\) represent the values of arguments intensity, theta, phi, lambda, and mu, respectively. The values \(M_1\) and \(M_2\) are non-degenerated and degenerated eigenvalues, respectively, given as below depending on the source mechanism.


\(M_1\), \(M_2\)の定義 (Definitions of \(M_1\) and \(M_2\))
引数mechanismの値
Value of argument mechanism
\(M_1\) \(M_2\)
dipole \(m\) 0.0
tensile \(m\frac{\lambda+2\mu}{\lambda}\) \(m\)
point_tensile \(m\frac{\lambda+2\mu}{\lambda}\) \(m\)
cylinder \(m\) \(m\frac{\lambda+\mu}{\lambda}\)


代入される値 (Values inserted)
代入先
Place to insert
代入先の意味
Meaning of the place to insert
代入される値
The value inserted
(∗)M.main[0][0] \(M_{xx}\) (\(M_1-M_2)\sin^2\theta\cos^2\phi+M_2\)
(∗)M.main[0][1] \(M_{xy}\) (\(M_1-M_2)\sin^2\theta\sin\phi\cos\phi\)
(∗)M.main[0][2] \(M_{xz}\) (\(M_1-M_2)\sin\theta\cos\theta\cos\phi\)
(∗)M.main[1][0] \(M_{yx}\) (\(M_1-M_2)\sin^2\theta\sin\phi\cos\phi\)
(∗)M.main[1][1] \(M_{yy}\) (\(M_1-M_2)\sin^2\theta\sin^2\phi+M_2\)
(∗)M.main[1][2] \(M_{yz}\) (\(M_1-M_2)\sin\theta\cos\theta\sin\phi\)
(∗)M.main[2][0] \(M_{zx}\) (\(M_1-M_2)\sin\theta\cos\theta\cos\phi\)
(∗)M.main[2][1] \(M_{zy}\) (\(M_1-M_2)\sin\theta\cos\theta\sin\phi\)
(∗)M.main[2][2] \(M_{zz}\) (\(M_1-M_2)\cos^2\theta+M_2\)
(∗)F.main[0] \(F_{x}\) 0.0
(∗)F.main[1] \(F_{y}\) 0.0
(∗)F.main[2] \(F_{z}\) 0.0
(∗)T.main[0] \(T_{x}\) 0.0
(∗)T.main[1] \(T_{y}\) 0.0
(∗)T.main[2] \(T_{z}\) 0.0
(∗)T.main[3] \(T_{2x}\) 0.0
(∗)T.main[4] \(T_{2y}\) 0.0
(∗)T.main[5] \(T_{2z}\) 0.0