Fortran 中的逻辑类型和选择
我在fortran中遇到过以下语句:
integer iparam(11), ipntr(14)
logical select(maxncv)
Double precision
& ax(maxn), d(maxncv,3), resid(maxn),
& v(ldv,maxncv), workd(3*maxn),
& workev(3*maxncv),
& workl(3*maxncv*maxncv+6*maxncv)
嗯,我能理解什么是integer
,Double precision
。
但是 逻辑
select
又如何呢?它们是什么意思?
I have encountered the following statement in fortran:
integer iparam(11), ipntr(14)
logical select(maxncv)
Double precision
& ax(maxn), d(maxncv,3), resid(maxn),
& v(ldv,maxncv), workd(3*maxn),
& workev(3*maxncv),
& workl(3*maxncv*maxncv+6*maxncv)
Well, I can understand what integer
, Double precision
is.
But what about logical
select
? What do they mean?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
“逻辑”是布尔类型,仅采用值 .TRUE。或.FALSE。该声明创建一个名称为“select”、长度为“maxncv”的一维数组,就像前面的声明创建一个长度为“11”的整数一维数组“iparam”一样。
布局(例如,连续行开头的连续符号)和双精度的使用建议使用 Fortran 77。对于新代码,我建议使用 Fortran 95/2003。
"logical" is a boolean type, which takes on only the values .TRUE. or .FALSE. The declaration creates a 1D array of name "select" of length "maxncv", just as the previous declaration creates an integer 1D array "iparam" of length "11".
The layout (e.g., the continuation symbol on the start of continued lines) and the use of Double Precision suggest Fortran 77. For new code I recommend Fortran 95/2003.
逻辑是一种数据类型,就像双精度一样。 select 是一个变量,就像 d 一样。 maxncv 是一个数组边界,就像 maxncv 一样。
logical is a datatype just like double precision is. select is a variable just like d is. maxncv is an array bound just like maxncv is.