関数ray_z_1Dscalar マニュアル

(The documentation of function ray_z_1Dscalar)

Last Update: 2021/12/6


◆機能・用途(Purpose)

与えられた1次元速度構造のもとで波線パラメータを指定して波線を計算する。 終点位置を\(x\)座標のみで指定するバージョン。
Calculate the ray for a given ray parameter using a given 1D velocity structure. In this function, the destination point is specified by \(x\) alone.


◆形式(Format)

#include <ray/calculate1Dscalar.h>
inline double ∗ray_z_1Dscalar
(const double z0,const double p,const struct _1DvelocityStructure structure,
 const double xmax,const int Nx)


◆引数(Arguments)

z0 波線の起点の深さ。
The depth of the origin of the ray.
p 波線パラメータ。
A ray parameter.
structure 1次元速度構造。
A 1D velocity structure.
xmax 波線の終点の水平位置(起点からの水平距離)。
The horizontal location of the destination point of the ray, which is the horizontal distance from the origin to the destination.
Nx 波線計算における水平位置の分割数。
The number of subsections of the horizontal locations for the ray computation.


◆戻り値(Return value)

計算した波線。 水平位置\(x=0\)から\(x=x_{max}\)までを 距離\(x_{max}/N_x\)の間隔で区切って 計\(N_x+1\)個の地点での波線の深さを計算し、 それらを並べた配列を返す。
The ray computed; an array composed of the depth of the ray at evenly spaced \(N_x+1\) nodes for the horizontal locations from \(x=0\) to \(x=x_{max}\) at an interval of \(x_{max}/N_x\).


◆使用例(Example)

struct _1DvelocityStructure structure;
double ∗ray_depths=ray_z_1Dscalar(0.0,0.001,structure,10000.0,0.1);


◆使用上の注意(Note)

\(x_{max}/N_x\)の水平距離ごとに波線を直線近似して計算を行うので \(N_x\)が小さいと誤差が大きくなる。
As the ray is approximated by a straight line in each subsection of the horizontal length \(x_{max}/N_x\), a small \(N_x\) results in a large error in the ray.