정보
-
업무명 : 오프라인 리눅스 (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 스크립트 다운로드
-
-
라이브러리 설정
-
해당 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 지도
-
해당 링크에서 청색 박스를 따라 세계 지도 정보 다운로드
-
-
라이브러리 설정
-
해당 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
본 블로그는 파트너스 활동을 통해 일정액의 수수료를 제공받을 수 있음
최근댓글