2010-01-20 5 views
0

J'ai rencontré la déclaration suivante en Fortran:type logique et sélectionnez dans 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) 

Eh bien, je peux comprendre ce que integer, Double precision est.

Mais qu'en est-il de logicalselect? Que signifient-ils?

Répondre

1

ou fausse. La déclaration crée un tableau 1D de nom "select" de longueur "maxncv", tout comme la déclaration précédente crée un entier 1D tableau "iparam" de longueur "11".

La mise en page (par exemple, le symbole de continuation au début des lignes continues) et l'utilisation de Double Precision suggèrent Fortran 77. Pour le nouveau code, je recommande Fortran 95/2003.

0

logique est un type de données tout comme la double précision. select est une variable comme d. maxncv est un tableau lié comme maxncv. "Logical" est un type booléen, qui ne prend que les valeurs .TRUE.