欢迎光临散文网 会员登陆 & 注册

学习记录十:VIC模型—全局参数文件的制作及陆面模型的运行

2023-08-28 01:21 作者:学习好难啊__  | 我要投稿

1.建立文件夹,将①"官网的小例子\params\vic\global_param.STEHE"(文件后缀改为“txt”)+②"官网的小例子\params\vic\veglib\LDAS"+③制备好的"土壤参数文件"+④"植被参数文件"文件后缀改为“txt”)拷贝param文件夹中;将制备好的"气象驱动数据"拷贝forcing文件夹中,result为输出文件存储位置。

2.修改全局参数文件:打开“global_param.txt”,修改输入数据路径、起止时间、输出数据路径等。(注意:文件路径中的"\"均需改为"/")

修改1:起止时间


修改2:气象驱动数据

修改3:植被数据

修改4:输出路径


3.使用Cygwin软件,运行VIC模型

Cygwin

①将VIC模型源代码"VIC_4.1.2.g",拷贝至“vic”文件夹中。

②修改"VIC_4.1.2.g"文件夹中的"Makefile"文件。

修改1:第50行(bash)

③打开Cygwin,进行编译,输入make后回车运行即可。

编译内容

④将Cygwin运行出的结果,拷贝至Cygwin安装软件目录bin

VIC_4.1.2.g文件夹
Cygwin-bin文件夹

打开Cygwin,继续编译。


Error1: layer 0 mineral bulk density (0.000000) must be > 0

Error1

原因:土壤参数文件错误,但代码中6对应的bulk density本来就是0,而vic模型要求此指标值必须大于0,重新制备土壤数据也依然如此

输出bulk density的代码

输出结果


解决方法:将6对应的bulk density值改为了0.1(治标不治本,因为这个错误停滞了一周,实在不想继续耗时间了,所以直接粗暴的改了数据,不知道这样改会不会对后面造成较大影响,但模型确实能运行了,后期如果结果有问题再纠正吧)

(备注:代码中的参数是教程作者自己算出来的,说可以直接用,但至于为什么会与vic模型有如此出入,我也还没搞懂,目前还没找到真正原因和解决方法,后期有时间自己算一遍参数,好像还挺复杂的......)


Error2:HHY_global_param.txt文件中输出文件路径错误,多了引号" ",删除即可

Error2
错误示例


终于,运行成功了!!!!!!逐网格输出,可能有些慢,耐心等待即可!!!

运行成功!!!
结果展示
结果展示


太难啦,真的太难啦,每一步走的都很不容易,一个小问题,对我来说就是大问题,我需要很久去理解去解决,今天从15点到24点不吃不喝,就耗在上面两个小问题,最后还是请了外援才得以解决,其中一个问题还没有彻底解决。代码顺利运行不报错的时候,我真的要哭出来了!!!VIC模型真的好折磨人!!!有没有大佬带带我啊,求求了!!!


学习记录十:VIC模型—全局参数文件的制作及陆面模型的运行的评论 (共 条)

分享到微博请遵守国家法律