関数TF_calculate_source_intensity マニュアル

(The documentation of function TF_calculate_source_intensity)

Last Update: 2024/2/19


◆機能・用途(Purpose)

各格子セルに与える地震波動ソースの強度を設定する。
Determine the intensity of a seismic wave source assigned to each grid cell.

地震波動ソースの設定ファイルには (例えば鉛直シングルフォースと等方モーメントテンソルソースのように) 複数のソース要素が定義される場合がある。 この関数ではそのうちの1つのソース要素について処理を行う。 ソース要素が複数ある場合はその数だけこの関数を繰り返し呼び出す。
The configuration file for the seismic wave source may have multiple source elements; for example, a vertical single force and an isotropic moment tensor source. This function processes a source element; if there are multiple source elements, this function is called repeatedly for each element.

点ソースの場合には「地震波動ソースの強度」とは 設定ファイル のパラメータintensityの値のことであり、 これを設定ファイルで指定したソース位置の最寄りの格子セルに与える。 空間的な広がりを持つソースには現在のバージョンでは未対応である。
In case of a point source, the “intensity of a seismic wave source” is the value of parameter intensity in a configuration file, which is assigned to the grid cell that is closest to the specified source location. The current version of this program does not support a spatially extended source.


◆形式(Format)

#include "waterPML_sub/source.h"
inline int TF_calculate_source_intensity
(const struct waterPML_parameters parameters,const struct tws_source source,
char ∗const ∗type,_Bool ∗∗source_grid_flag, double ∗∗source_intensity)


◆引数(Arguments)

parameters 関数TF_set_parameters によってメンバの値の設定を済ませた構造体。
A structure whose members were set by function TF_set_parameters.
source ファイルから読み込んだ地震波動ソースの設定(1つのソース要素に関するもの)。 関数tws_set_source の戻り値を与える。
The configuration of a seismic wave source read from a file; use the return value of function tws_set_source.
type 関数TF_set_type, TF_set_material_type によって値を設定した 2次元配列type
A 2-D array type whose values have been set by functions TF_set_type and TF_set_material_type.
source_grid_flag 各格子セルがノンゼロのソース強度を持つか否かを示すフラグの代入先。 宣言しただけの_Bool ∗型変数に&を付けて与える。 関数内で格子セルの通し番号(1) を引数とする1次元配列が用意され、 各要素にフラグが設定される。
A memory for a flag indicating whether each grid cell has non-zero source intensity. Give an empty _Bool ∗-type variable with &. Within the function, a 1-D array is allocated and the flags are set to the array components. The argument of the array is a consecutive index of grid cells (1).
source_intensity 各格子セルに与えるソース強度の代入先。 宣言しただけのdouble ∗型変数に&を付けて与える。 関数内で格子セルの通し番号(1) を引数とする1次元配列が用意され、 各要素にソース強度が設定される。
A memory for the source intensity to be assigned to each cell. Give an empty double ∗-type variable with &. Within the function, a 1-D array is allocated and the intensities are set to the array components. The argument of the array is a consecutive index of grid cells (1).

  1. 半格子点の通し番号 と同様の考え方で、半格子点ではなく格子セル(物理領域内)に対して 連続かつ一意に割り当てた番号。
    An index that is consecutively and uniquely assigned to each grid cell in the physical volume (not to each half-grid node) with the same manner as a consecutive index of half-grid nodes.


◆戻り値(Return value)

ノンゼロのソース強度を与える格子セルの個数。 点ソースの場合は1となる。
The number of grid cells with non-zero source intensity; it is 1 in case of a point source.