Fortran Coder

标题: 有没有类似matlab里的find()函数的fortran函数? [打印本页]

作者: 静待花开    时间: 2022-11-2 17:17
标题: 有没有类似matlab里的find()函数的fortran函数?
在matlab里,常用find(A)就可以找到矩阵A中满足一定条件的元素的位置索引,即行号和列号。找了fortran的库函数,也了解了where和forall的用法,感觉没有找到这样的简便、经典算法,在FORTRAN里实现这样的功能。
当然,用Do循环我可以实现,就是想了解下,有没有同学看到过,用forall 和 where 实现这种功能的FORTRAN代码。虽然有人说forall的计算速度还没有do快。自己就想了解下,见识见识。请高手指点。感觉这种功能很实用的。

作者: 青衣巷    时间: 2022-11-2 17:37
RESULT = FINDLOC(ARRAY, VALUE, DIM [, MASK] [,KIND] [,BACK])

https://gcc.gnu.org/onlinedocs/gfortran/FINDLOC.html
作者: 静待花开    时间: 2022-11-2 19:39
青衣巷 发表于 2022-11-2 17:37
RESULT = FINDLOC(ARRAY, VALUE, DIM [, MASK] [,KIND] [,BACK])

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

非常感谢。一直看的是彭国伦的Fortra95,真不知道2008已经有这个库函数了,谢谢指点!




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2