Fortran Coder

查看: 5868|回复: 4
打印 上一主题 下一主题

[数值问题] fortran有没有像matlab的矩阵条件赋值操作?

[复制链接]

801

帖子

2

主题

0

精华

大宗师

F 币
3804 元
贡献
2273 点
楼主
发表于 2020-2-27 11:35:11 | 显示全部楼层
[Fortran] 纯文本查看 复制代码
where(a>0)
a=1
else where(a<0)
a=-1
end where


or

where(abs(a)>0) a=a/abs(a)

801

帖子

2

主题

0

精华

大宗师

F 币
3804 元
贡献
2273 点
沙发
发表于 2020-2-27 21:23:25 | 显示全部楼层
mmSCI 发表于 2020-2-27 11:53
那如果是大于0的+1,小于0的减1是不是这样?
where(a>0)
a=a+1

是的。如果a是实数,你需要考虑误差,即多小的数看作零? 比如:where(a>1.0e-6)
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2024-5-17 10:17

Powered by Tencent X3.4

© 2013-2024 Tencent

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