리눅스

LINUX : WRF 모델 설치하기

이석사 중 2023. 6. 13. 03:25
728x90

이번 부터는 본격적으로 WRF설치입니다


cd $HOME/WRF/Downloads
wget -c https://github.com/wrf-model/WRF/archive/v4.1.2.tar.gz
tar -xvzf v4.1.2.tar.gz -C $HOME/WRF
cd $HOME/WRF/WRF-4.1.2
./clean
./configure # 34
./compile em_real

코드는 굉장히 간단합니다

 

앞에서 이용했던 wget으로 다운로드 받은 다음 압축을 풀고 순서대로 진행하면 됩니다

 

윗부분은 그대로 하면 되고 앞에서 많이 했기 때문에 잘 하실 수 있을거라 믿고 넘어가겠습니다

 

configure부터 보겠습니다

checking for perl5... no
checking for perl... found /usr/bin/perl (perl)
Will use NETCDF in dir: /home/lsh/WRF/Library
Will use HDF5 in dir: /home/lsh/WRF/Library
PHDF5 not set in environment. Will configure WRF for use without.
Will use 'time' to report timing information


If you REALLY want Grib2 output from WRF, modify the arch/Config.pl script.
Right now you are not getting the Jasper lib, from the environment, compiled into WRF.

------------------------------------------------------------------------
Please select from among the following Linux x86_64 options:

  1. (serial)   2. (smpar)   3. (dmpar)   4. (dm+sm)   PGI (pgf90/gcc)
  5. (serial)   6. (smpar)   7. (dmpar)   8. (dm+sm)   PGI (pgf90/pgcc): SGI MPT
  9. (serial)  10. (smpar)  11. (dmpar)  12. (dm+sm)   PGI (pgf90/gcc): PGI accelerator
 13. (serial)  14. (smpar)  15. (dmpar)  16. (dm+sm)   INTEL (ifort/icc)
                                         17. (dm+sm)   INTEL (ifort/icc): Xeon Phi (MIC architecture)
 18. (serial)  19. (smpar)  20. (dmpar)  21. (dm+sm)   INTEL (ifort/icc): Xeon (SNB with AVX mods)
 22. (serial)  23. (smpar)  24. (dmpar)  25. (dm+sm)   INTEL (ifort/icc): SGI MPT
 26. (serial)  27. (smpar)  28. (dmpar)  29. (dm+sm)   INTEL (ifort/icc): IBM POE
 30. (serial)               31. (dmpar)                PATHSCALE (pathf90/pathcc)
 32. (serial)  33. (smpar)  34. (dmpar)  35. (dm+sm)   GNU (gfortran/gcc)
 36. (serial)  37. (smpar)  38. (dmpar)  39. (dm+sm)   IBM (xlf90_r/cc_r)
 40. (serial)  41. (smpar)  42. (dmpar)  43. (dm+sm)   PGI (ftn/gcc): Cray XC CLE
 44. (serial)  45. (smpar)  46. (dmpar)  47. (dm+sm)   CRAY CCE (ftn $(NOOMP)/cc): Cray XE and XC
 48. (serial)  49. (smpar)  50. (dmpar)  51. (dm+sm)   INTEL (ftn/icc): Cray XC
 52. (serial)  53. (smpar)  54. (dmpar)  55. (dm+sm)   PGI (pgf90/pgcc)
 56. (serial)  57. (smpar)  58. (dmpar)  59. (dm+sm)   PGI (pgf90/gcc): -f90=pgf90
 60. (serial)  61. (smpar)  62. (dmpar)  63. (dm+sm)   PGI (pgf90/pgcc): -f90=pgf90
 64. (serial)  65. (smpar)  66. (dmpar)  67. (dm+sm)   INTEL (ifort/icc): HSW/BDW
 68. (serial)  69. (smpar)  70. (dmpar)  71. (dm+sm)   INTEL (ifort/icc): KNL MIC
 72. (serial)  73. (smpar)  74. (dmpar)  75. (dm+sm)   FUJITSU (frtpx/fccpx): FX10/FX100 SPARC64 IXfx/Xlfx

Enter selection [1-75] :

앞에서 본 것들과는 많이 다르고 입력하라는 커서도 깜빡입니다

 

여기서는 이제 모델을 어떤 방식으로 돌릴 건지 정하는 부분입니다

 

보통 3번이나 4번을 많이 고르지만 저희는 컴파일러가 gfortran과 gcc이기 때문에

 

34번을 골라주시고 엔터 하시면됩니다

 

Compile for nesting? (1=basic, 2=preset moves, 3=vortex following) [default 1]:

자 그러면 또 뭘 고르라고 나옵니다

 

nesting할 방식을 정하는 부분입니다

 

nesting은 안내서에 정의로는 하나의 격자체계 내에 또 다른 고해상도 격자체계를 구성하여 연결하는 것 입니다

 

쉽게 말해서 큰 격자를 작은 격자로 또 나누는 것을 의미합니다

 

1번은 고해상도 하부 도메인이 고정된 설정, 2번은 적분 시간에 따라, 3번은 태풍의 눈 위치에 따라 자동으로 

 

변하는 방식입니다

 

여기서는 1번을 골라주시면 됩니다

######################
------------------------------------------------------------------------
Settings listed above are written to configure.wrf.
If you wish to change settings, please edit that file.
If you wish to change the default options, edit the file:
     arch/configure.defaults
NetCDF users note:
 This installation of NetCDF supports large file support.  To DISABLE large file
 support in NetCDF, set the environment variable WRFIO_NCD_NO_LARGE_FILE_SUPPORT
 to 1 and run configure again. Set to any other value to avoid this message.


Testing for NetCDF, C and Fortran compiler

This installation of NetCDF is 64-bit
                 C compiler is 64-bit
           Fortran compiler is 64-bit
              It will build in 64-bit

*****************************************************************************
This build of WRF will use NETCDF4 with HDF5 compression
*****************************************************************************

그러면 잘 빌드를 하고 이렇게 예쁜 결과물이 출력이 됩니다

 

다음은 컴파일입니다

 

wrf 안에는 다양한 케이스에 따라 모의를 하기 위해서 케이스 모형 컴파일을 가능하게 만들어놨습니다

 

그중에서 저희가 볼 em_real은 실제 사례 모의를 위한 케이스입니다

 

compile em_real을 실행하면

==========================================================================
build started:   Tue Jun 13 03:22:58 KST 2023
build completed: Tue Jun 13 03:23:00 KST 2023

--->                  Executables successfully built                  <---

-rwxr-xr-x 1 lsh lsh 41812264 Jun 13 03:23 main/ndown.exe
-rwxr-xr-x 1 lsh lsh 41689288 Jun 13 03:23 main/real.exe
-rwxr-xr-x 1 lsh lsh 41177768 Jun 13 03:23 main/tc.exe
-rwxr-xr-x 1 lsh lsh 45618032 Jun 13 03:22 main/wrf.exe

==========================================================================

(lncl) lsh@DESKTOP-8N2HJ5V:~/WRF/WRF-4.1.2$

이렇게 보기만 해도 기분이 좋은 성공했다는 결과가 나옵니다

 

wrf모델은 wrf pre-processing system이라는 전처리 툴과 한 세트이기 때문에

 

다음 포스팅에 나올 WPS에서 WRF를 인식하게 해주기 위해

 

export WRF_DIR=$HOME/WRF/WRF-4.1.2

요렇게 환경변수 설정만 해주시면 끝납니다

 

WRF 모델 설치는 여기까지면 끝입니다

 

다음은 WPS를 설치해보겠습니다

728x90

'리눅스' 카테고리의 다른 글

LINUX : WRF, Single case 실행해보기1 (link 방식 수정 사항 있음)  (2) 2023.06.19
LINUX : WPS 설치하기  (4) 2023.06.13
LINUX : Jasper 설치하기  (0) 2023.06.13
LINUX : libpng 설치하기  (0) 2023.06.13
LINUX : MPICH 설치하기  (0) 2023.06.13