반응형

     정보

    • 업무명    : 그라즈 Grib 형식인 ECMWF 모델 결과를 이용한 가시화

    • 작성자    : 이상호

    • 작성일    : 2019-09-07

    • 설   명     :

    • 수정이력 :

     

     내용

    [특징]

    • ECMWF 모델 결과를 이해하기 위해 가시화 도구가 필요하며 이 프로그램은 이러한 목적을 달성하기 위해 고안된 소프트웨어

     

    [기능]

    • grib 자료를 다른 형식으로 변환

      • [방법 1] wgrib 배치 파일을 이용하여 grib → ctl 변환

      • [방법 2] ncl 라이브러리 이용하여 grib → NetCDF 변환

    • ctl 또는 NetCDF 형식으로 가시화

     

    [활용 자료]

    • 자료 : ECMWF 모델에서 지표면 온도

    • 기간 : 2016년 06월

     

    [자료 처리 방안 및 활용 분석 기법]

    • 없음

     

    [사용법]

    • GrADS 가시화에 필요한 라이브러리를 동일 디렉터리 위치

      • xcbar.gs (제공처 :  http://kodama.fubuki.info/wiki/wiki.cgi/GrADS/script?lang=jp)

      • worldmap (제공처 :  ftp://cola.gmu.edu/grads/boundaries/worldmap)

    • grib 자료를 ctl로 변환

    • [방법 1] wgrib 배치 파일을 이용하여 grib → ctl 변환

    • [1 단계] grib2ctl.pl 소스 코드 다운로드

    wget "ftp://ftp.cpc.ncep.noaa.gov/wd51we/wgrib.scripts/grib2ctl.pl"

     

    • [2 단계] wgib.c 소스 코드 다운로드
    wget "ftp://ftp.cpc.ncep.noaa.gov/wd51we/wgrib/wgrib.c"

     

    • [3 단계] wgrib.c를 이용하여 컴파일

    gcc wgrib.c -o wgrib

     

    • [4 단계] wgrib 및 GrADS 환경변수 설정 및 권한 부여

    open grib2ctl.pl
    $wgrib=’wgrib’
    $wgrib=’/usr/local/bin/wgrib
    $pdef_dir=’/usr/local/lib/grads
    chmod 755 grib2ctl.pl

     

    • [5 단계] 분석장 및 예측장에 따라 ctl 변환

    • 분석장

    grib2ctl.pl grib_file > grib_file.ctl
    gribmap -i grib_file.ctl -0

     

    • 예측장

    grib2ctl.pl -verf grib_file > grib_file.ctl
    gribmap -i grib_file.ctl

     

    • [방법 2] ncl 라이브러리 이용하여 grib → NetCDF 변환

    ncl_convert2nc grib_file > input.nc

     

    • 소스 코드를 실행(csh Visualization_Using_Grib_Form_of_ECMEF_Model_Result.csh)

    • 가시화 결과를 확인

     

    [사용 OS]

    • Linux

     

    [사용 언어]

    • GrADS

    • ShellScript (csh)

     

     소스 코드

    [명세]

    #!/bin/csh
    
    #===========================================
    #     Method 1 : grib -> ctl (recommend !)
    #============================================
    # Reference : https://tuxcoder.wordpress.com/2011/04/11/how-to-install-grib2ctl-pl-and-wgrib-in-linux/
    # wget "ftp://ftp.cpc.ncep.noaa.gov/wd51we/wgrib.scripts/grib2ctl.pl"
    # wget "ftp://ftp.cpc.ncep.noaa.gov/wd51we/wgrib/wgrib.c"
    # gcc wgrib.c -o wgrib
    
    # open grib2ctl.pl
    # $wgrib=’wgrib’
    # $wgrib=’/usr/local/bin/wgrib
    # $pdef_dir=’/usr/local/lib/grads
    # chmod 755 grib2ctl.pl
    
    # For analyses: 
    # grib2ctl.pl grib_file > grib_file.ctl
    # gribmap -i grib_file.ctl -0
    # grads
    # ga-> open grib_file.ctl
    
    
    # For forecasts:
    # grib2ctl.pl -verf grib_file > grib_file.ctl
    # gribmap -i grib_file.ctl
    # grads
    # ga-> open grib_file.ctl
    
    #===========================================
    #     Method 2
    #============================================
    # ncl_convert2nc [input.*] > input.nc
    
    foreach fn (`seq 0 5`)
    
    cat >! 1.bat << EOF
    reinit
    xopen grib_file.ctl
    set display color white
    set mpdset worldmap
    set lon 0 360
    set lat -90 90
    set xlint 60
    set ylint 30
    set font ${fn}
    *set xlab %0.0f\`3.\`n
    *set ylab %0.0f\`3.\`n
    set parea 1 10.5 0.5 8.5
    set xlopts 1 6 0.18
    set ylopts 1 6 0.18
    set t 1
    set gxout shaded
    set grads off
    set grid off
    color 200 310 1 -kind rainbow
    d no2tsfc
    
    set gxout contour
    set clopts 1 6 0.125
    set cint 20
    d no2dsfc
    
    xcbar 1 10.5 0.4 0.65 -fwidth 0.18 -fheight 0.18 -edge circle -fstep 10 -line off
    
    draw title ERA_interim-sfc-201606\
    set string 1 tc
    set strsiz 0.18 0.18
    draw string 5.5 1.05  Surface  2  Meter  Temperature  [K]
    
    gxprint 1.png
    quit
    
    EOF
    
    grads -blc "exec 1.bat"
    
    mv -f 1.png OUTPUT/${fn}.png
    #rm -f 1.bat
    #display 1.png
    
    end

     

    [GitHub Gist]

     

     결과

    • GrADS에 필요한 worldmap 가시화

     

    그림. GrADS에 필요한 worldmap 가시화.
     
     
    • ECMWF 모델 결과를 이용하여 지표면 온도 가시화

    그림. ECMWF 모델 결과를 이용하여 지표면 온도 가시화.
     

     참고문헌

     

    スクリプト集

    以下のスクリプトのライセンスはGPLです。詳細はGPLの全文を参照して頂くとして、特に重要な点は、 スクリプトを使うことで生じるいかなるトラブルも、作者は責任を負わない。 スクリプトをそのまま、もしくは改変を加えて新たに配布することができる。その際はGPLに従う必要がある。 です。もちろん、本スクリプトで作成した図を論文・発表等で使用する場合は特に許諾・謝辞等は必要ありません。 なお、リリース版よりもマニュアルを先に更新しているため、一部でずれが生じる場合があります。マニュアル通りのスクリプトが欲しい場合は

    kodama.fubuki.info

     

    How to install grib2ctl.pl and wgrib in linux

    Dear All, Now we are going to see how to install wgrib and grib2ctl in our linux machine. step 1: First of we need to install GRADS From the above link we can get the source. In ubuntu $ sudo apt-g…

    tuxcoder.wordpress.com

     

     문의사항

    [기상학/프로그래밍 언어]

    • sangho.lee.1990@gmail.com

    [해양학/천문학/빅데이터]

    • saimang0804@gmail.com
    반응형
    • 네이버 블러그 공유하기
    • 네이버 밴드에 공유하기
    • 페이스북 공유하기
    • 카카오스토리 공유하기