快乐海洋论坛

 找回密码
 注册
查看: 4413|回复: 3

FVCOM安装

[复制链接]
graduation21zx 发表于 2019-1-15 20:14:18 | 显示全部楼层 |阅读模式
请问有人用FVCOM嘛 我想咨询一下怎么安装
葫芦爷儿 发表于 2019-6-11 20:21:28 | 显示全部楼层
第2课 安装基础软件
1.安装编译器
(1)安装Intel编译器
(2)设置环境变量
(3)检验编译器是否装好

2.安装MPI库
OpenMPI,MPICH,MVAPICH等
(1)编译安装OpenMPI
tar -xzvf openmpi-1.6.5.tar.gz --no-same-owner --no-same-permissions
cd openmpi-1.6.5
./configure --prefix=/opt/openmpi/1.6.5/intel CC=icc CXX=icpc FC=ifort F77=ifort --disable-vt
make
make install

(2)设置环境变量
将以下内容加入到 ~/.bashrc 中
OPENMPI=/opt/openmpi/1.6.5/intel
export PATH=$OPENMPI/binPATH
export LD_LIBRARY_PATH=$OPENMPI/libLD_LIBRARY_PATH
export MANPATH=$OPENMPI/share/manMANPATH

(3)检验MPI是否装好
mpicc -o pi pi.c
mpirun -np 2 ./pi


第3课 安装FVCOM

0.准备工作
检查intel编译器,MPI有没有配置好
which icc
which ifort
which mpicc
which mpif90

解压缩FVCOM软件包
tar -xzvf FVCOM3.2.1.tgz --no-same-owner --no-same-permissions
cd FVCOM3.2.1
各个目录的介绍

1.配置编译参数
以Esturay算例为例
cp Examples/Estuary/make.inc_example FVCOM_source/make.inc
cd FVCOM_source
编辑make.inc,第51行,设置TOPDIR
           TOPDIR        =/home/model/work/FVCOM3.2.1/FVCOM_source
注意,TOPDIR这一行最后面一定不能有空格

第78,79行去掉开头的#
             LIBDIR       =  -L$(INSTALLDIR)/lib
             INCDIR       =  -I$(INSTALLDIR)/include

2.编译libs目录的库文件
a.修改文件libs/makefile
第14行为:
cd proj && ./configure CC=$(CC) CFLAGS=-O3 CXX=$(CC) CXXFLAGS=-O3 F77=$(FC) FFLAGS=-O3 --prefix=$(MYINSTALLDIR)
将其中的CXX=$(CC)改为CXX=$(CXX),改完后为:
cd proj && ./configure CC=$(CC) CFLAGS=-O3 CXX=$(CXX) CXXFLAGS=-O3 F77=$(FC) FFLAGS=-O3 --prefix=$(MYINSTALLDIR)

第18行为:
cd netcdf && ./configure CC=$(CC) CFLAGS=-O3 CXX=$(CC) CXXFLAGS=-O3 F77=$(FC) F90=$(FC) FFLAGS=-O3 --prefix=$(MYINSTALLDIR) --build=$(MACHTYPE)
将其中的CXX=$(CC)改为CXX=$(CXX),并在行尾添加--disable-cxx,改完后为:
cd netcdf && ./configure CC=$(CC) CFLAGS=-O3 CXX=$(CXX) CXXFLAGS=-O3 F77=$(FC) F90=$(FC) FFLAGS=-O3 --prefix=$(MYINSTALLDIR) --build=$(MACHTYPE) --disable-cxx

b.修改metis库文件    没有metis库
解压库源程序
cd libs
./untar.sh cd
修改metis/rename.h
将第413行:
#define log2                            __log2
改为:
#define log2                            __intlog2

c.编译
键入如下命令编译libs目录下的库
cd libs
make CC=icc CXX=icpc FC=ifort
编译成功后在install/lib目录生成一些库文件(注意不要少文件),如下:
[model@centos libs]$ ls install/lib
libfproj4.a  libjulian.a    libnetcdf.a  libnetcdf.la  libproj.a  libproj.la  libproj.so  libproj.so.0  libproj.so.0.5.2

3.编译FVCOM
cd FVCOM_source
make
编译成功后会生成文件fvcom
[model@centos FVCOM_source]$ ls -l fvcom
-rwxrwxr-x. 1 model model 9516549 2月  16 21:34 fvcom

4.运行测试算例
cd FVCOM3.2.1/Examples/Estuary/run
ln -s ../../../FVCOM_source/fvcom .
mpirun -np 2 ./fvcom --casename=tst





第4课 Esturay算例介绍

0.FVCOM手册
  FVCOM3.2.1/Doc/FVCOM_User_Manual_v3.1.6.pdf
  Chapter 19: FVCOM Test Cases......................................................350
  Case 1: Tidally-driven flooding/drying process in a semi-enclosed channel.................350

1.先了解算例背景
  Tidally driven flooding/drying process in a semi-enclosed channel.
  潮汐传入半封闭渠道发生的漫滩过程

2.算例设计
  区域:渠道宽度、长度、水深、斜坡斜率
  网格:水平网格(三角形)、垂向分层(Sigma坐标)
  强迫:开边界处M2频率水位强迫
  时间:3天

3.算例准备
  数值模式特性:(make.inc)
  Table 17.1: Code Module Options to Select before Compilation (Page 242)
             直角坐标:#  FLAG_2 = -DSPHERICAL
             支持漫滩:   FLAG_3 = -DWET_DRY

  参数设置:
  Chapter 18: Model Setup (Page 253)
  参数文件:tst_run.nml (mpirun -np 2 ./fvcom --casename=tst)
  网格文件:tst_grd.dat
  水深文件:tst_dep.dat
  科氏力:  tst_cor.dat
  垂向分层:sigma.dat
  开边界:  tst_obc.dat
  海绵条件: tst_spg.dat
  开边界强迫:m2_only_1m.nc
  河流参数:RIVERS_NAMELIST.nml
  河流数据:River_data.nc

4.模拟结果
  tst_0001.nc
  查看模拟结果中的变量(ncdump)
  读取数据并画图
  anaconda(python + numpy + scipy + matplotlib + ...)
  https://store.continuum.io/cshop/anaconda
  http://continuum.io/downloads
回复 支持 1 反对 0

使用道具 举报

葫芦爷儿 发表于 2019-6-11 20:22:32 | 显示全部楼层
葫芦爷儿 发表于 2019-6-11 20:21
第2课 安装基础软件
1.安装编译器
(1)安装Intel编译器

这是之前网上有个视频里的,对应文档。其实你就按好这几个库,然后编译就好了,
shazhiju 发表于 2019-8-4 13:01:09 | 显示全部楼层
葫芦爷儿 发表于 2019-6-11 20:21
第2课 安装基础软件
1.安装编译器
(1)安装Intel编译器

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|小黑屋|手机版|Archiver|快乐海洋论坛 ( 浙ICP备11010086号 )

GMT+8, 2021-10-20 05:46

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表