Top/研究のページ/領域気象モデル

領域気象モデル

WRF

WRFについての情報

WRF 導入手順

  1. 導入の前に
    1. ハードウエア環境
      • CPU
        AMD Phenom(tm) II X6 1065T Processor : 6コア, 2.90 GHz

      • GPGPU
        Nvidia "Geforce GTX 660" with compute capability 3.0

        ※ なお、GPGPU を WRF に使うことについてのここの記述を見ると、一見、圧倒的なパフォーマンスを示しているように見える。
        しかし、よく見ると、Micro Physics のプログラムについてであり、全体のパフォーマンスは 1.25倍であるときちんと書いてある。
        現時点では、WRF 全体で速くなることはほとんどなさそうである。

        ※ ただし、Smiling Life の記事は期待を持たせる。
    2. ソフトウエア環境
      Debian GNU/Linux (squeeze) で、主な導入済みパッケージは次のとおり。
      • gfortran 4:4.4.5-1 The GNU Fortran 95 compiler
      • gcc 4:4.4.5-1 The GNU C compiler
      • libnetcdf-dev 1:4.1.1-5 Development kit for NetCDF
      • libnetcdf6 1:4.1.1-5 An interface for scientific data access to large binary data

    3. コンパイラの選択

      WRF を Linux 上で動作させるとき、標準でサポートされているコンパイラは、PGI, Intel, Pathscale, gfortran である。
      このうち、無料で利用できるのは Intel と gfortran であり、さらに、「何の対価もなくプログラム開発するときだけ無償」
      とする Intel のコンパイラは使えない。そこで gfortran を使うことになる。(※ ベンチマークで比較することは、いつかやってみよう。)

      Open64 というコンパイラの選択肢もある。しかし、情報が極端に少ない。

      ここでは、gfortran と Open64 について、可能な範囲で試してみる。

  2. ソースプログラムの取得
    1. ユーザー登録
      WRF は無償で手に入れることができる。しかし、ユーザー登録は必要である。
      http://www.mmm.ucar.edu/wrf/users/download/get_source.html にアクセスしてユーザー登録をする。
      二度目からは、Returning User をクリックすれば、メールアドレスを入力するだけでダウンロードページへつながる。
      (更新 : 2013-03-25 (月) 14:11:54)

    2. プログラムの種類
      WRF を利用するために、ソースプログラムをダウンロードしようとすると、いくつかの種類のファイルに分かれている
      ことに気づいて戸惑う。これらのソースプログラムはそれぞれ役割がある。(更新 : 2013-03-25 (月) 14:41:27)
      • ARW : Advanced Research WRF
        力学計算や放射計算などが組み込まれたソースプログラム。WRF の中核的なプログラム。

      • WPS : WRF Preprocessor System
        現実のデータを ARW に与えるための前処理プログラム。 理想的な地形、簡単な初期条件を用いて計算する場合には不必要である。

      • WRF-DA : WRF Data Assimilation
        データ同化システムのようである。詳しくはわからない。

      • WRF-Chem :
        大気中の化学物質の輸送を計算するプログラムのようである。詳しくはわからないが、現在は ARW に組み込んで使うようだ。

      • Post-Processing Software :
        WRF から出力されたものを図にするためのソフトウエア

      • Utilities :
        その他の補助的なソフトウエア

    3. ダウンロード
      • 本体
        ソフトウエアの種類は上述のとおりなので、とりあえず必要なのは、ARW と Post-Processing Software である。
        とりあえずコンパイルできること、実行できることを確かめるためには、ARW だけでよい。
        http://www.mmm.ucar.edu/wrf/users/download/get_sources.html#V341 から ARW をダウンロードする。
        現時点で、Ver 3.4.1 が最新である。30MB 弱の大きさである。
        (更新 : 2013-03-25 (月) 14:41:27)

      • 更新ファイル
        いくつかの必要な更新ファイルが出ている(cf. Known Problems)。
        対策のとられた日付けが、Ver 3.4.1 のリリースの日(2012年8月16日)よりも前であっても安心してはいけない。
        それほど親切ではないので、確認しながら自分で対策をとる。具体的にはファイルをダウンロードして入れ換える。
        今回の場合( module_mp_radar.F と input_wrf.F )は、全体にあまり影響を与えないように思われるが、気持ちよくするために入れ換える。

        また、WRF では実行する度にソースツリーが変更される。そこで、入れ換えた状態のソースツリーを別途保存しておく。
        (更新 : 2013-03-25 (月) 14:58:36)

    4. 試しのコンパイルと実行( gfortran serial で )
      1. configure
        コンパイラとして gfortran を選ぶ。また、CPU は一つのコアだけを用いるとして、serial を選択する。
        実際の入力と出力結果
         [localhost] ~/WRFV3 15:34:15 $ ./configure 
         checking for perl5... no
         checking for perl... found /usr/bin/perl (perl)
         ** WARNING: No path to NETCDF and environment variable NETCDF not set.
         ** would you like me to try to fix? [y]
         y
         Enter full path to NetCDF include directory on your system
         /usr/include
         Enter full path to NetCDF library directory on your system
         /usr/lib

         ...(中略)
         ------------------------------------------------------------------------
         Please select from among the following supported platforms.
         
            1.  Linux x86_64, PGI compiler with gcc  (serial)
           ...(中略)
           23.  x86_64 Linux, gfortran compiler with gcc   (serial)
           ...(中略)
         
         Enter selection [1-34] : 23
         ------------------------------------------------------------------------
         Compile for nesting? (0=no nesting, 1=basic, 2=preset moves, 3=vortex following) [default 0]: 0
         
         Configuration successful. To build the model type compile .
         ...(以下省略)
        (更新 : 2013-03-25 (月) 15:48:29)

      2. compile
        具体的に実行可能プログラムを作るには、compile コマンドを実行する。
         ./compile
        すると、こんな理想化条件が実行できます、というメッセージが出てくるので、2次元の海陸風モデルを選んで実行する。
         ./compile em_seabreeze2d_x
        結構な時間をかけてコンパイルすることになる。一番最後に、コンパイルの所要時間が表示された。
         build started:   2013年  3月 25日 月曜日 15:46:02 JST
         build completed: 2013年 3月 25日 月曜日 15:57:42 JST

      3. 実行
         cd test/em_seabreeze2d_x
         csh ./run_me_first.csh
         ./ideal.exe
         time ./wrf.exe
        最後に
        d01 2007-06-01_17:00:00 wrf: SUCCESS COMPLETE WRF
        と表示されて実行も終了。time で測った所要時間は次のとおり。
         real	4m59.360s
         user	4m50.266s
        (更新 : 2013-03-25 (月) 16:15:02)


トップ   新規 検索 最終更新   ヘルプ   最終更新のRSS