[GrADS] 오프라인 리눅스 (Linux) 환경에서 그라즈 (GrADS) 설치 및 공용 라이브러리 (Library) 설정

 정보

  • 업무명    : 오프라인 리눅스 (Linux) 환경에서그라즈 (GrADS) 설치 및 공용 라이브러리 (Library) 설정

  • 작성자    : 이상호

  • 작성일    : 2020-07-05

  • 설   명    :

  • 수정이력 :

 

 내용

[개요]

  • 안녕하세요? 기상 연구 및 웹 개발을 담당하고 있는 해솔입니다.

  • GrADS (Grid Analysis and Display System)는 지구 과학 데이터의 쉬운 접근, 조작 및 시각화에 사용되는 대화식 데스크탑 도구입니다.

  • 또한 그리드 및 스테이션 데이터를 처리하기 위한 2가지 데이터 모델이 있고 이진 (스트림 또는 순차), GRIB (버전 1 및 2), NetCDF, HDF (버전 4 및 5) 및 BUFR (방송국 데이터)을 포함한 많은 데이터 파일 형식을 지원합니다.

  • 아울러 전 세계적으로 널리 사용되는 다양한 운영 체제에서 구현되었으며 인터넷을 통해 자유롭게 배포됩니다.

  • 그리고 4가지 기존 차수 (경도, 위도, 수직 레벨. 시간)와 일반적으로 구현되고 앙상블에 사용할 경우 5 차원 (선택 사항)도 가능합니다.

  • 격자 자료의 경우 일반, 비선형, 가우시안 또는 가변 해상도를 처리할 뿐만 아니라 명령 행에 Fortran 유사 표현식을 입력하여 대화식으로 조작 가능합니다.

  • 그 밖에 다양한 내장 기능이 제공되나 사용자는 자신의 기능을 프로그래밍 언어로 작성된 외부 루틴으로 추가 할 수도 있습니다.

  • 선 및 막대 그래프, 산점도, 스무딩 된 윤곽선, 음영 처리 된 윤곽선, 유선형, 바람 벡터, 격자 상자, 음영 처리 된 격자 상자 및 관측 지점 등 다양한 그래픽 기술을 사용하여 데이터를 표시할 수 있습니다. 그래픽의 경우 포스트 스크립트 (PostScript) 또는 이미지 형식으로 출력될 수 있습니다.

  • GrADS에는 프로그래밍 가능한 인터페이스(스크립트 언어)가 있어 정교한 분석 및 디스플레이 어플리케이션이 가능합니다. 또한 배치 모드로 실행할 수 있으며 스크립팅 언어는 GrADS를 사용하여 장시간 밤새 배치 작업을 수행할 수 있습니다.

  • 따라서 이러한 GrADS를 사용하기 앞서 오프라인 리눅스 (Linux) 환경에서 그라즈 (GrADS) 설치 공용 라이브러리 설정 방법을 소개해 드리고자 합니다.

 

 

[특징]

  • GrADS를 사용하기 위해서 리눅스 환경에서 설치 및 공요 라이브러리 설정이 요구되며 이 프로그램은 이러한 목적을 달성하기 위해서 고안된 소프트웨어

 

[기능]

  • 오프라인 환경에서 GrADS 설치

  • 공용 라이브러리 (Library) 설정

 

[활용 자료]

  • 없음

 

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

  • 없음

 

[사용법]

  • 세부 내용 참조

 

[사용 OS]

  • Linux (CentOS v7.3)

  • VMware Workstation Pro v15.5

 

[사용 언어]

  • GrADS v2.1.1

 

 세부 내용

[오프라인 환경]

  • 온라인 (인터넷 가능)에서 yum을 이용하면 이전 버전의 GrADS 밖에 없습니다.

     

  • 따라서 최신 버전을 이용할 경우 직접  패키지 다운로드하여 컴파일 및 실행해야 합니다.

 

  • [1 단계] GrADS 다운로드

    • ftp://cola.gmu.edu/grads/2.1/에서 grads-2.1.1.b0-bin-CentOS6-x86_64.tar.gz를 다운로드합니다.

 

 

 

 

  • [2 단계] GrADS 설치

    • grads-2.1.1.b0-bin-CentOS6-x86_64.tar.gz/SYSTEM/LINUX/grads/grads-2.1.1으로 업로드합니다.

    • cd /SYSTEM/LINUX/grads/grads-2.1.1를 통해 해당 디렉터리로 이동합니다.

    • tar -xvf grads-2.1.1.b0-bin-CentOS6-x86_64.tar.gz를 통해 압축 해제합니다.

    • cp -rf /SYSTEM/LINUX/grads/grads-2.1.1/grads-2.1.1.b0 /usr/local/.를 통해 디렉터리를 이동합니다.

 

 

 

cd /SYSTEM/LINUX/grads/grads-2.1.1

tar -xvf grads-2.1.1.b0-bin-CentOS6-x86_64.tar.gz

cp -rf /SYSTEM/LINUX/grads/grads-2.1.1/grads-2.1.1.b0 /usr/local/.

 

  • [3 단계] 환경 변수 설정

    • 프롬프트 상에서 which grads을 입력해도 확인할 수 없습니다.

    • 이는 리눅스 환경에서 GrADS 설치 폴더를 찾을 수 없기 때문입니다.

    • 따라서 vi ~/.bashrc에서 GRADS 및 arrRootConfig 환경 변수를 추가합니다.

    • source ~/.bashrc를 통해 재 실행합니다.

    • GrADS 설치 버전 확인합니다.

 

#==========================================
#  Configure
#==========================================
# GrADS v2.1.1
export GRADS=/usr/local/grads-2.1.1.b0

# kwgrib2
export KWGRIB2=/SYSTEM/LINUX/kwgrib2/kwgrib2

arrRootConfig=($GRADS $KWGRIB2)

for i in ${arrRootConfig[*]}; do
   if [ ! -z $i ]; then
      if [ -d $i/bin ]; then PATH=$i/bin:$PATH ; fi
      if [ -d $i/lib ]; then LD_LIBRARY_PATH=$i/lib:$LD_LIBRARY_PATH ; fi
      if [ -d $i/sbin -a `id -u` = 0 ]; then PATH=$i/sbin:$PATH ; fi
      if [ -d $i/man ]; then MANPATH=$MANPATH:$i/man ; fi
      if [ -d $i/config/lib ]; then PATH=$i/config/lib:$PATH ; fi
      if [ -d $i/config/map ]; then PATH=$i/config/map:$PATH ; fi
   fi
done

 

 

 

[공용 라이브러리 설정]

  • kodama Library

    • 해당 링크에서 청색 박스를 따라 유용한 GrADS 스크립트 다운로드

 

スクリプト礁

笆布のスクリプトのライセンスはGPLです。拒嘿はGPLの链矢を徊救して暮くとして、泼に脚妥な爬は、 スクリプトを蝗うことで栏じるいかなるトラブルも、侯荚は勒扦を砷わない。 スクリプ��

kodama.fubuki.info

 

 

  • 라이브러리 설정

    • 해당 release-20200624.zip 파일을 압축 해제하고 /usr/local/grads-2.1.1.b0/config/lib으로 업로드합니다.

    • 해당 경로에서 chmod -R 755 *를 통해 실행 권한을 부여합니다.

    • 앞서 환경 변수에서 /config/lib 디렉터리를 설정했기 때문에 source ~/.bashrc를 통해 재 실행합니다.

    • 홈 디렉터리에서 color.gs 명령어로 접근 여부를 확인한다.

 

 

 

  • 각 스크립트에 대한 세부 설명은 다음과 같다.

  • 색상 컬러바

color.gs 그릴 때 색 테이블을 설정
allcolor.gs 모든 색상과 색상 번호를 표시한다
xcbar.gs 색상 막대를 원하는 위치로 그리기

 

  • 화면 설정

mul.gs 화면을 분할했을 때의 위치를 ​​설정하는
mul2.gs 화면을 분할했을 때의 위치를 ​​설정하는
mulval.gs 변수의 최대 값과 최소값을 표시한다 (mul과 함께 사용)

 

  • 데이터 조작

clave.gs 기후 값을 만들
lreg.gs 선형 회귀 계수 · 상관 계수를
max.gs 2 변수의 최대 값을 얻을
min.gs 2 변수의 최소값을 얻을
dlev.gs lev에서 미분
shift.gs 변수를 수평으로 이동
cutdata.gs 데이터를 잘라 바이너리로 저장

 

  • 도형 문자 그리기

arrow.gs 화살표를 그린다
drawline.gs 선 그리기
drawmark.gs 마크를 그리기
drawpoly.gs 다각형 그리기
draws.gs 그림에 대한 상대적 위치를 지정하여 문자열을 표시하는
tbox.gs 텍스트 상자에 문자를 그릴
grid.gs 화면에 눈금을 표시하는
ico.gs 정 이십 면체 모델의 그리드를 그린다

 

  • 기타

xopen.gs open / sdfopen / xdfopen을 자동 선택하고 open하기
allclose.gs 컨트롤 파일을 모두 닫기
dshade.gs 2 개의 음영 그림을 거듭
tile.gs 타일 ​​(해치)를 표시하는
shade.gs 지정한 범위의 영역을 채울
zero.gs 0 선을 끈다
setshift.gs 현재 차원에 대한 상대적인 차원을 설정한다.
loglabel.gs 그리기 범위에 맞게 적절한 수직 라벨링
setlabs.gs 축 레이블을 설정
setfont.gs 글꼴 설정
save.gs 현재 표시되는 이미지를 저장
saveanim.gs 현재 볼 수있는 동영상을 애니메이션 gif로 저장

 

  • NOAA GSHHG 지도

    • 해당 링크에서 청색 박스를 따라 세계 지도 정보 다운로드

 

 

Index of /mgg/shorelines/data/gshhg/latest

 

www.ngdc.noaa.gov

 

 

  • 라이브러리 설정

    • 해당 gshhg-bin-2.3.7.zip 파일을 압축 해제하고 /usr/local/grads-2.1.1.b0/config/map으로 업로드합니다.

    • 해당 경로에서 chmod -R 755 *를 통해 실행 권합을 부여합니다.

    • 앞서 환경 변수에서 /config/map 디렉터리를 설정했기 때문에 source ~/.bashrc를 통해 재 실행합니다.

    • 홈 디렉터리에서 basemap.gs 명령어로 접근 여부를 확인한다.

 

 

 

 참고 문헌

[논문]

  • 없음

[보고서]

  • 없음

[URL]

  • 없음

 

 문의사항

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

  • sangho.lee.1990@gmail.com

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

  • saimang0804@gmail.com

 

 

 

 

 

 

 

 

 

 

본 블로그는 파트너스 활동을 통해 일정액의 수수료를 제공받을 수 있음