ホーム  •  ニュース  •  フォーラム  •  アカウント情報  •  サイト内検索  •  新規登録
 ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
 カウントダウンブロック
カウントダウンイベントはありません
 メニュー

メイン
   地球科学のための R
     COWL Index の計算(Jones のデータを使用 )
投稿するにはまず登録を

フラット表示 前のトピック | 次のトピック
投稿者 スレッド
投稿日時: 2005-7-21 19:17
登録日: 2004-7-29
居住地: 地球
投稿: 303
COWL Index の計算(Jones のデータを使用 )
NCEP/NCAR の再解析データから計算された COWL Index では、近年の温暖化の様子が表現できていない。一方、陸上の気温データでは、Jones のデータが良く使われるようである。そこで、Jones のデータを利用して COWL Index を計算する。なお、欠損値の扱い方はこれではまずいような気がするので、後日工夫したい。

1. Jones データセットのページから、ASCII データの crutem2.dat.gz をダウンロードする。
2. 以下、R で次のように処理する。
JonesData <- scan("crutem2.dat")
JonesData <- matrix(JonesData,75*36)
JonesData <- JonesData[,JonesData[1,] > 1949 ]           # 1950 -
JonesData <- JonesData[,JonesData[1,] < 2003 ]           # - 2002
JonesData <- JonesData[,JonesData[3,]==1]                # データ
JonesData <- JonesData[ rep(c(rep(F,3),rep(T,72)),36), ] # remove header
dim(JonesData) <- c(72,36,12,53)
JonesData <- JonesData[,seq(36,1,-1),,]                  # y reverse

#
#  重みづけを計算する。
#      この時、北緯20°以北だけ計算するので、より南の部分は0とする。
#

th              <- seq(-90,90,5) / 180 * pi
JDweight        <- sin(th[2:37]) - sin(th[1:36])
JDweight        <- t(matrix(rep(JDweight,72),36))
JDweight[,1:22] <- 0

#
#  LANDMASK を作りながら平均をとる。
#

for(year in 1:53){
  for( month in 1:12 ){
    JDLmask <- JonesData[,,month,year]
    JDLmask <- c(JDLmask)
    JDLmask[JDLmask == -9999 ] <- 0
    JDLmask[JDLmask != 0 ]     <- 1
    dim(JDLmask) <- c(72,36)

    WeightMask <- JDweight * JDLmask

    write(
          sum( JonesData[,,month,year] * WeightMask ) / sum( WeightMask ),
          file="COWLJD.txt", append=T)

  }
}

COWLJD    <- t(matrix( scan("COWLJD.txt"), 12 ))

#
#  3 桁で保存する。
#

options(digits=3)
write(COWLJD,file="COWLJD4.txt",ncolumns=12)
フラット表示 前のトピック | 次のトピック

題名 投稿者 日時
 » COWL Index の計算(Jones のデータを使用 ) 2005-7-21 19:17
     Re: COWL Index の計算(Jones のデータを使用 ) 2005-7-22 15:18
       Re: COWL Index の計算(Jones のデータを使用 ) 2005-7-22 15:19

投稿するにはまず登録を
 


WWW を検索 meteorology.jp を検索

Powered by XOOPS 2.0 © 2001-2006 The XOOPS Project, Maitained by A. Mori
FI Theme :: XOOPS 2 Theme by ImageSquare :: Costomized by matchan and A.Mori