Functions/runave_n - NCL tips

配列の指定した次元について,重みなし移動平均を計算する関数。runaveにおいて計算される移動平均は最も右の次元についてだが,次元の順番を入れ替えるのは面倒なので,こっちを使うと良い。

val = runave_n(x, run, opt, dim)

〔入力変数〕

x

移動平均したい変数。

run

移動平均に用いるデータ数。例えば run=5 のとき,前後2点ずつを含む計5点の移動平均となる。偶数で指定した場合には,移動平均の中心が1/2だけ後ろにずれるような平均を行う。つまり,run=4 とすると,val(i) = ( x(i-1) + x(i) + x(i+1) + x(i+2) ) /4.0 のようになる。

opt

移動平均の境界条件。
opt < 0 の場合 : 周期境界条件, run=3 のとき val(0) = ( x(N-1) + x(0) + x(1) ) /3.0 のようになる。
opt = 0 の場合 : 計算せず両端はx@_FillValueで埋める, run=3 のとき val(0) = x@_FillValue となる。
opt > 0 の場合 : 反射境界条件, run=3 のとき val(0) = ( x(1) + x(0) + x(1) ) /3.0 のようになる。

dim

xの移動平均を計算したい次元。例えば,x(time,lat,lon)から時間移動平均を求めたければ dim=0 とし,経度移動平均を求めたければ dim=2 とする。

〔出力変数〕

val

xと同じ大きさの配列。xをrun点移動平均したもの。


トップ   編集 凍結 添付 名前変更   新規