3次元回転行列(二次元配列)演算関数一覧

関数名 dmat_rx
概略 回転行列
ヘッダ matrot.h
書式 double **dmat_rx(double **mat, double rad)
機能説明 x軸まわりに角度radの回転行列を求める
引き数 mat: 2次元配列へのポインタ
rad: x軸まわりの回転角度[単位rad]
戻り値 matへのポインタ

関数名 dmat_ry
概略 回転行列
ヘッダ matrot.h
書式 double **dmat_ry(double **mat, double rad)
機能説明 y軸まわりに角度radの回転行列を求める
引き数 mat: 2次元配列へのポインタrad: y軸まわりの回転角度[単位rad]
戻り値 matへのポインタ

関数名 dmat_rz
概略 回転行列
ヘッダ matrot.h
書式 double **dmat_rz(double **mat, double rad)
機能説明 z軸まわりに角度radの回転行列を求める
引き数 mat: 2次元配列へのポインタrad: z軸まわりの回転角度[単位rad]
戻り値 matへのポインタ

関数名 dmat_from_RollPitchYaw
概略 ロール・ピッチ・ヨー角から回転行列を求める
ヘッダ matrot.h
書式 double **dmat_from_RollPitchYaw(double **mat, double *rad)
機能説明 mat := Rz(rad[2]).Ry(rad[1]).Rx(rad[0])
引き数 rad: ロール・ピッチ・ヨー角[rad]
mat: 3行3列の2次元配列へのポインタ
戻り値 matへのポインタ

関数名 dmat_to_RollPitchYaw
概略 回転行列からロール・ピッチ・ヨー角を求める
ヘッダ matrot.h
書式 double *dmat_to_RollPitchYaw(double *rad, double **mat)
機能説明
引き数 rad: ロール・ピッチ・ヨー角[rad]
mat: 3行3列の2次元配列へのポインタ
戻り値 radへのポインタ

関数名 dmat_to_AxisAngle
概略 回転行列から回転軸とその周りの回転角を求める
ヘッダ matrot.h
書式 double *dmat_to_AxisAngle(double *rad, double **mat)
機能説明 2乗ノルム
引き数 rad: 回転軸の単位ベクトルと回転角[rad]の積で得られる3次元ベクトル
mat: 3行3列の回転行列へのポインタ
戻り値 radへのポインタ

関数名 dmat_from_AxisAngle
概略 回転軸とその周りの回転角から回転行列を求める
ヘッダ matrot.h
書式 double **dmat_from_AxisAngle(double **mat, double *rad)
機能説明
引き数 mat: 3行3列の回転行列へのポインタ
rad: 回転軸の単位ベクトルと回転角[rad]の積で得られる3次元ベクトル
戻り値 matへのポインタ

関数名 dmat_is_rot
概略 回転行列か否かを評価する
ヘッダ matrot.h
書式 int dmat_is_rot(double **mat, int n, double eps)
機能説明
引き数 mat: 2次元配列へのポインタn: 行列のサイズeps: 評価の閾値
戻り値 TRUE / FALSE

関数名 dmat_is_orthogonal
概略 直行行列か否かを評価する
ヘッダ matrot.h
書式 int dmat_is_orthogonal(double **u, int m, int n, double eps)
機能説明
引き数 mat: 2次元配列へのポインタ
m: 行サイズ n: 列サイズ
eps: 評価の閾値
戻り値 TRUE / FALSE

関数名 dmat_is_identity
概略 単位行列か否かを評価する
ヘッダ matrot.h
書式 int dmat_is_identity( double **mat, int n, double eps )
機能説明
引き数 mat: 2次元配列へのポインタ
n: 行列サイズ
eps: 評価の閾値
戻り値 TRUE / FALSE

関数名
概略
ヘッダ
書式
機能説明
引き数
戻り値