爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 10683|回复: 13

NCL脚本中怎么加入分段函数公式

[复制链接]
发表于 2014-12-11 15:41:25 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 lee309 于 2014-12-11 15:52 编辑

NCL脚本中需要对数据进行分段计算,但是有些数据比如温度是三维数据(经度,维度,高度),直接把分段函数加进去会报错,维度不一致???
      if(R.le.-3.7) then
      gama=0.05
      end if
      if(-3.75.lt.R.le.-0.12) then
      gama=0.065+0.004*R
      end if
      if(-0.12.lt.R.le.0.14)  then
      gama=0.109+0.367*R
      end if
      if(R.ge.0.14)           then
      gama=0.155+0.021*R
      end if
上面脚本中R包含经度和维度的,因此报错
fatal:Conditional statements (if and do while) require SCALAR logical values, see all and any functions
这个问题怎么解决?

密码修改失败请联系微信:mofangbao
发表于 2014-12-11 16:09:26 | 显示全部楼层
用where函数
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-12-11 16:21:21 | 显示全部楼层

能详细说下吗,对ncl的函数不了解
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-12-11 16:31:59 | 显示全部楼层
怎么去除经纬度信息,直接得到变量值?
密码修改失败请联系微信:mofangbao
发表于 2014-12-11 18:36:57 来自手机 | 显示全部楼层
看下官网where函数帮助吧,这个是最基本最常用的。
密码修改失败请联系微信:mofangbao
发表于 2014-12-11 18:40:39 来自手机 | 显示全部楼层
用(/.../)来去掉变量元数据。楼主最好抽空看看ncl 基础教程。
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-12-12 21:42:20 | 显示全部楼层
longlivehj 发表于 2014-12-11 18:36
看下官网where函数帮助吧,这个是最基本最常用的。

你说的where函数相当于C 里面的三目运算符,不是我需要的。
我的问题是判断语句中的量要求是标量,但是我不知道怎么把数据中带有经纬度的变量转化为标量。
比如温度T :     (35,46)      50       ;    (lat,lon)    温度值
因为if(T>0)中T要求是标量,所以我只需要提取后面的温度值,有没有这样的函数?
密码修改失败请联系微信:mofangbao
发表于 2014-12-12 23:17:18 | 显示全部楼层
lee309 发表于 2014-12-12 21:42
你说的where函数相当于C 里面的三目运算符,不是我需要的。
我的问题是判断语句中的量要求是标量,但是 ...

提取二维数组T里面的值还要函数么?直接用下标不就可以了!
非要用if语句么?你给出的代码,4个where函数就可以搞定!
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-12-12 23:52:55 | 显示全部楼层
longlivehj 发表于 2014-12-12 23:17
提取二维数组T里面的值还要函数么?直接用下标不就可以了!
非要用if语句么?你给出的代码,4个where函 ...

嗯,我尝试用where写了下,发现where只能有两个结果,比如where(a,b,c)结果是b/c
而我有四个if语句,有四段呢,能不能帮忙写下,谢谢
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2014-12-13 10:04:00 | 显示全部楼层
longlivehj 发表于 2014-12-12 23:17
提取二维数组T里面的值还要函数么?直接用下标不就可以了!
非要用if语句么?你给出的代码,4个where函 ...

请版主大人帮忙写下怎么用where写我的四段函数吧,这个问题怎么都解决不了。谢谢!
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

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