---
title: POM2K模型运行
description: "1. 使用PuTTY工具，以root用户登录服务器。"
url: https://www.hikunpeng.com/document/detail/zh/kunpenghpcs/hpcindapp/prtg-osc/kunpengpom_02_0008.html
sourcePath: /source/zh/kunpenghpcs/hpcindapp/prtg-osc/kunpengpom_02_0008.html
indexId: a0c2a2710af1d4d0139e7fea97ed0b2f0071c890bc701b35236a2c0e05ca1bf165
---
# POM2K模型运行

#### 操作步骤

1. 使用PuTTY工具，以root用户登录服务器。
2. 执行以下命令，进入POM安装目录。

```
cd
/path/to/POM
/POM2K
```


3. 执行以下命令解压POM2K安装包。

```
unzip
POM2K.zip
```


4. 执行以下命令进入压缩路径。

```
cd
POM2K
```


5. 执行以下命令修改“pom2k.f”文件。

  a. 打开“pom2k.f”文件。

```
vi pom2k.f
```


  b. 按“i”进入编辑模式，将模式“1”改为模式“3”。
    修改前：

```
iproblem=1
```


    修改后：

```
iproblem=3
```


  c. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
6. 执行以下命令拷贝安装包中的头文件“gridcom”。

```
cp
/path/to/POM
/GRID-DATA/IC/include/gridcom ./
```


7. 执行以下命令修改“runpom2k”文件。

  a. 打开“runpom2k”文件。

```
vi runpom2k
```


  b. 按“i”进入编辑模式，将模式“1”改为模式“3”。
    修改前：

```
#
# Runscript for pom2k with example of reading IC from file.
#  IC file generated by /GRID-DATA/GRID.f     (T.E. Dec04)
#
# Note: if "grid" not created here you can put it in pom2k.c
#       "params" replaces default values set in pom2k.f
#
# ------------------ PARAMETER FILES FOR EACH CASE -----------
#
# -- SEAMOUNT TEST CASE (initial cond. calc. in pom2k.f)
#
echo '      parameter(im=65, jm=49, kb=21)' >  grid
echo '      iproblem=  1                  ' >  params
echo '      days=      0.025              ' >> params
echo '      prtd1=     0.0125             ' >> params
echo '      dte=       6.                 ' >> params
#
# -- COAST TEST CASE (initial cond. from file)
#
#echo '      parameter(im=41, jm=61, kb=16)' >  grid
#echo '      iproblem=  3                  ' >  params
#echo '      days=      0.50               ' >> params
#echo '      prtd1=     0.25               ' >> params
#echo '      dte=      12.                 ' >> params
#cp IC.dat fort.40            # Initial Condition file
#
# ------------------ COMPILE & RUN ----------------------------
#
# g77 -O3 pom2k.f /usr/local/lib/libnetcdf.a
# ---- now netCDF output not used (see "CDF" in pom2k.f)
gfortran -O3 pom2k.f
# f90 -O3 pom2k.f  # or any other compiler you wish to use
#
# ------------------ OUTPUT FILES -----------------------------
#
a.out > pom2k.out        # printout file
#
#       pom2k.nc         # netCDF file for MATLAB plotting
```


    修改后：

```
#
# Runscript for pom2k with example of reading IC from file.
#  IC file generated by /GRID-DATA/GRID.f     (T.E. Dec04)
#
# Note: if "grid" not created here you can put it in pom2k.c
#       "params" replaces default values set in pom2k.f
#
# ------------------ PARAMETER FILES FOR EACH CASE -----------
#
# -- SEAMOUNT TEST CASE (initial cond. calc. in pom2k.f)
#
# echo '      parameter(im=65, jm=49, kb=21)' >  grid
# echo '      iproblem=  1                  ' >  params
# echo '      days=      0.025              ' >> params
# echo '      prtd1=     0.0125             ' >> params
# echo '      dte=       6.                 ' >> params
#
# -- COAST TEST CASE (initial cond. from file)
#
echo '      parameter(im=41, jm=61, kb=16)' >  grid
echo '      iproblem=  3                  ' >  params
echo '      days=      0.50               ' >> params
echo '      prtd1=     0.25               ' >> params
echo '      dte=      12.                 ' >> params
cp IC.dat fort.40            # Initial Condition file
#
# ------------------ COMPILE & RUN ----------------------------
#
# g77 -O3 pom2k.f /usr/local/lib/libnetcdf.a
# ---- now netCDF output not used (see "CDF" in pom2k.f)
gfortran -O3 pom2k.f
/path/to/NETCDF
/netcdf-4.4.1.1/lib/libnetcdf.a -I
/path/to/NETCDF
/netcdf-4.4.1.1/include
# f90 -O3 pom2k.f  # or any other compiler you wish to use
#
# ------------------ OUTPUT FILES -----------------------------
#
./a.out > pom2k.out        # printout file
#
#       pom2k.nc         # netCDF file for MATLAB plotting
```


  c. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
8. 执行以下命令赋予runpom2k权限并运行。

```
chmod 755 runpom2k
./runpom2k
```


  显示结果样例如下所示。 图1 结果样例 运行完后会在当前目录下生成“fort.71”文件，此文件为所需的nc文件。
