Fortran Coder

查看: 456|回复: 2

[数值问题] 有没有类似matlab里的find()函数的fortran函数?

[复制链接]

24

帖子

8

主题

0

精华

入门

F 币
99 元
贡献
54 点
发表于 2022-11-2 17:17:35 | 显示全部楼层 |阅读模式
在matlab里,常用find(A)就可以找到矩阵A中满足一定条件的元素的位置索引,即行号和列号。找了fortran的库函数,也了解了where和forall的用法,感觉没有找到这样的简便、经典算法,在FORTRAN里实现这样的功能。
当然,用Do循环我可以实现,就是想了解下,有没有同学看到过,用forall 和 where 实现这种功能的FORTRAN代码。虽然有人说forall的计算速度还没有do快。自己就想了解下,见识见识。请高手指点。感觉这种功能很实用的。

77

帖子

0

主题

0

精华

专家

F 币
452 元
贡献
226 点

规矩勋章新人勋章元老勋章

QQ
发表于 2022-11-2 17:37:18 | 显示全部楼层
RESULT = FINDLOC(ARRAY, VALUE, DIM [, MASK] [,KIND] [,BACK])

https://gcc.gnu.org/onlinedocs/gfortran/FINDLOC.html
彼岸,有永恒的守候...

24

帖子

8

主题

0

精华

入门

F 币
99 元
贡献
54 点
 楼主| 发表于 2022-11-2 19:39:54 | 显示全部楼层
青衣巷 发表于 2022-11-2 17:37
RESULT = FINDLOC(ARRAY, VALUE, DIM [, MASK] [,KIND] [,BACK])

https://gcc.gnu.org/onlinedocs/gfortra ...

非常感谢。一直看的是彭国伦的Fortra95,真不知道2008已经有这个库函数了,谢谢指点!
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

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

GMT+8, 2022-12-9 05:08

Powered by Tencent X3.4

© 2013-2022 Tencent

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