onclick如何调用含参函数_如何使用NCL调用Fortran子函数

98aa70a24b0a571c114586dbcc50952a.gif

点击上方蓝字,关注我们

NCL读取netcdf文件并进行绘图十分方便,此外还可以进行循环等计算,但是NCL是解释性的语言,在循环计算等方面的效率十分低。这里介绍如何调用Fortran中的子函数进行计算来提高效率:

1. 步骤:

1a6e45eaddf4ac2b299b9e69f54a1a62.png

注:

① stub声明变量的格式

② so文件可以理解为让NCL可以读懂的媒介

C NCLFORTSTART
subroutine f1 (x, y, z)integer
real
C NCLEND

或者:

C NCLFORTSTARTfunction f2 (x, y, z)integer
real
C NCLEND

③ abc是调用函数的“引子”,告诉NCL我们要调用Fortran啦

2. 示范:

a) 提前准备好要调用的子函数,用Fortran写好,保存为ex01.F90:

92401a9d2e3710d42e43f25207f4a5ce.png

b) 为F90文件写好变量声明,保存为ex01.stub:

6562a17c6f1ee75b483015c3cbc6175f.png

c) 按照步骤的方式,在NCL脚本中加入Fortran函数调用申明并调用子函数:

2728f617f448373317954e6abeb0d66e.png

d) 运行:

① 先产生so文件:WRAPIT ex01.stub  ex01.f90

01362d9d6c04e39599bfd4a8176b5310.png

② 运行ncl:ncl ex01.ncl

刚开始y是没有值的,由new函数初始化,最后输出到屏幕可以看出试验成功。

bcbccb4b553fa506677e0af194033802.png

参考:NCL官网范例

http://www.ncl.ucar.edu/Document/Manuals/

PS. 感谢小婷同学提供的材料

dacf090cf2e1c513c839fae95f10866e.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值