728x90

netcdf 5

Fortran으로 netCDF 파일 작성 (nf90_def_dim, def_var, put_att, put_var)

이번 포스팅부터는 제목 앞에 작업이란 단어를 지우기로 했습니다 저는 나름대로 몇 가지 일을 했고 하나 하나가 제가 계획을 꾸려서 하는 작업이라고 생각했는데 논문을 써보면서 작업이라고 할 만한 것들이 아니라고 생각했습니다 앞으로는 제목을 간단하게 적고 중요했던 키포인트를 뒤쪽 괄호에 적는 식으로 제목을 바꿔보려고 합니다 오늘은 포트란으로 NetCDF 파일을 작성해보겠습니다 먼저 코드입니다 PROGRAM net2 2 use netcdf 3 4 IMPLICIT NONE 5 6 INTEGER :: status, ncid 7 INTEGER :: nx, ny, ii, jj, x, y, xx, yy 8 REAL, DIMENSION(239, 239) :: field 9 REAL, DIMENSION(239, 239) :..

Fortran 2023.08.31

LINUX : WRF(Weather Research & Forecasting Model) 기본 설정

저는 지금 연구실에 들어왔습니다 수치모델이 하고 싶었기 때문에 수치 모델 연구실에 들어왔습니다 교수님께서 처음으로 과제를 내주셨습니다 개인 컴퓨터에 WRF모델을 설치하고 모의를 한 가지 돌려본 후에 시각화 하는 과정이었습니다 그래서 WRF를 설치해보려고 합니다 설치는 저희 교수님(최석진 교수님)이 쓰신 안내서와 구글링을 해가면서 진행했습니다 작업 환경 : Window 11 WSL2 Ubuntu-20.04 먼저 wrf설치를 위한 기본 라이브러리들을 설치해야합니다 앞에서 아나콘다를 설치하신 분이면 sudo update와 upgrade를 안해주셔도 되지만 이 글부터 보고 계시다면 sudo apt update sudo apt upgrade 이 코드부터 실행해주시기 바랍니다 다음은 라이브러리 설치입니다 sudo ..

리눅스 2023.06.11

작업7: NCL로 netCDF 파일 시각화하기3

오늘은 NCL로 0 ~ 23시까지 시간별로 그림을 한 번에 그려보겠습니다 오늘의 코드입니다 fi = addfile("/home/lee/MERRA2_400.tavg1_2d_rad_Nx.20220331.nc4", "r") time = fi->time lat = fi->lat lon = fi->lon ts = fi->TS ;resorece res = True res@gsnRightString = "Temperature unis : K" res@mpCenterLonF = 180 res@cnFillOn = True res@cnLinesOn = False res@cnLevels = ispan(200, 340, 10) res@cnLevelSelectionMode = "ExplicitLevels" ;res@cnMinL..

NCL 2023.05.03

작업6: NCL로 netCDF 파일 시각화하기2

오늘도 NCL입니다 그동안은 한 프레임에 1가지 그림만 들어갔지만 이번에는 파이썬에서 ax[2,2]처럼 여러 가지 그림을 한 번에 그려보겠습니다 추가로 반복문을 이용해서 0 ~ 23까지 시간별로 있는 그림들을 한 번에 그려보는 것도 해보겠습니다 오늘 코드입니다 fi = addfile("/home/lee/MERRA2_400.tavg1_2d_rad_Nx.20220331.nc4", "r") time = fi->time lat = fi->lat lon = fi->lon ts = fi->TS ;wks open plt = new(4, graphic) wks = gsn_open_wks("png", "surface_tem") hour = (/"0H", "1H", "2H", "3H"/) ;resorece res = Tr..

NCL 2023.05.02

작업5: NCL로 netCDF 파일 시각화하기1

오늘은 오랜만에 NCL 포스팅 입니다 기상학에서 많이 사용하는 데이터 포맷인 netCDF 자료를 시각화 해보겠습니다 먼저 코드입니다 fi = addfile("/home/lee/MERRA2_400.tavg1_2d_rad_Nx.20220331.nc4", "r") time = fi->time ts = fi->TS({0},:,:) lat = fi->lat lon = fi->lon wks = gsn_open_wks("png", "surface_tem") res = True res@gsnLeftString = "Surface Skin Temperature" res@gsnRightString = "Temperature unis : K" res@mpCenterLonF = 180 res@cnFillOn = True re..

NCL 2023.05.01