less..
1.
%setenv MOMpath /usr1/ocean/MOM/MOM_3
%mkdir $MOMpath/EXP/GLOBE
%mkdir $MOMpath/EXP/GLOBE/MOM_UPDATES $MOMpath/EXP/GLOBE/PREP_UPDATES
2.
%cd $MOMpath/EXP/GLOBE/MOM_UPDATES
%cp $MOMpath/grids.F .
%cp $MOMpath/run_grids .
-> run_grids를 편집하여 "OPTIONS" 변수의 마지막에 "-Dsgi"를 추가한다.
-> run_grids를 편집하여 "MOM2" 변수를 위의 "MOMpath"와 같게 고쳐준다.
-> grid resolution과 region을 바꾸려면 grids.F를 알맞게 편집한다 (manual의 7장 p79 참조).
%./run_grids
-> 제대로 결과가 나왔는지 results_grids를 확인한다.
%cp $MOMpath/size.h .
-> results_grids의 맨뒤에 나오는 해상도(imt,jmt,km)에 맞추어서 방금 카피한 size.h를 고친다.
3.
%cp $MOMpath/topog.F .
%cp $MOMpath/run_topog .
-> run_topog를 편집하여 "MOMpath" 변수를 위의 "MOMpath"와 같게 고쳐준다.
-> NetCDF를 사용한다면 알맞은 library path와 include path를 정해 주어야 하는데 자세한 내용은 netCDF-3.4 와 udunits-1.11.6 을 참조하면 된다.
$MOMpath/NETCDF에 있는 ncsetup.F, nctfind.F, ncymdhms.F, sincestr.F에 "/usr/local/etc/udunits.dat"의 부분도 알맞게 고쳐준다.
-> run_topog를 편집하여 "PLATFORM" 변수를 "-Dsgi"에 맞게 uncomment한다.
-> topography를 바꾸려면 topog.F를 편집해야되는데 manual의 9장을 참조하면 된다.
-> run_topog를 실행하여 results_topog의 결과를 확인한다.
4.
%cp $MOMpath/run_mom_sgi .
-> run_mom_sgi를 편집하여 "myEXP = GLOBE"로 고친다.
-> datainpath는 PREP_UPDATES에서 만들어준 data의 path를 가리킨다.
-> DATABASE는 GFDL에서 제공하는 database들이 들어있는 path를 가리킨다.
-> MOMpath에서 NETCDFlib까지도 알맞게 고쳐주는데 WORKDIR 변수의 디렉토리는 고친후에 직접 자신이 만들어 주어야 한다.
-> PLATFORM_OPTION을 sgi에 맞춘다. (Digital Unix용 옵션은 아래항목 참조)
%./run_mom_sgi
less.. less..
1. $MOMpath/run_mom_sgi를 $MOMpath/run_mom_dec로 카피한다.
2. run_mom_dec를 편집하여 "COMPILER_OPTIONS"의 "-r8"과 "-mips2", "-align64"를 빼고 다음을 추가한다.
"-convert big_endian"
3. run_mom_dec를 편집하여 "COMPILER_SINGLE"에 "-convert big_endian"을 추가한다.
4. Digital Unix f90 에서는 run_mom_dec안의 인자들이 너무 많아 컴파일이 되지 않으므로 run_mom_dec를 편집하여 f90으로 직접 컴파일 하는 부분을 -P로 우선 preprocessor를 실행 후 -c로 컴파일 한다.
### Note : 현재('98. 7) MOM3는 공식적이지는 않지만 alpha 버전을 구할 수 있는데 이것을 테스트 해 본 바로는 아직 완벽하게 세팅되어 있지 않아서 TEST run 결과도 없으므로 Digital Unix에 Proting하기는 아직 이른 감이 있어 현재 보류 중에 있다. 당분간 MOM3에 관하여 alpha 버전이라도 정식으로 발표될 때 까지 기다리는 것이 좋지 않은가 생각된다 ('98. 7). ###
less..