'D + 0' dans les expressions littérales réelles Fortran postfix
-
06-09-2019 - |
Question
Quelqu'un knwow ce que le postfix « d + 0 » signifie dans les missions à M1, M2 et M4 ci-dessous ou est-il une ressource sur le Web ou un livre où l'on est susceptible de trouver cette information?
subroutine plot( t, x, p, q, nga, nt, wron,
& ngq, gq, ngaq1, ngaq2, gaq, rwh, iwh )
implicit none
integer*4 nga, nt, ngq, ngaq1, ngaq2, iwh(*)
real*8 t, x(*), p(*), q(*), wron(nga,*),
& gq(ngq,*), gaq(ngaq1,ngaq2,*), rwh(*)
real*8 M1, M2, M3, M4, mr, mst, h3, Tc
integer*8 iflag
c DISCRETIZE1( Tc, rwh, iwh )
M1 = 0.1362d+0
M2 = 0.09806d+0
M3 = M1 + M2
M4 = 0.236d+0
mr = M1*x(1) + M2*x(2) + M3*x(3) + M4*x(4)
mst = M1*q(1) + M2*q(2) + M4*q(3)
call mess3( t, x, h3, p, q, rwh, iwh, iflag )
write (10,100) t, x(1), x(2), x(3), x(4), Tc, h3, mr-mst
100 format( e20.10, 7(1x,e20.10) )
end
La solution
Cela signifie « double précision » et le moyen de 10 0 à la puissance zéro (zéro est l'exposant).
Voici une citation de première référence je pouvais trouver:
A numéro stocké dans un ordinateur est limitée en amplitude et en précision. Les limites dépendent du particulier ordinateur. Ainsi, un nombre réel a seulement un certain nombre d'importants chiffres. Si les chiffres sont plus importants requis pour un calcul, puis numéros DOUBLE PRECISION doivent être utilisés. Une constante DOUBLE PRECISION est écrit sous la même forme exponentielle en simple précision constante réelle, sauf avec un D au lieu d'une séparation E la mantisse de l'exposant.
Et voici une citation d'une meilleure référence, www.fortran.com , en particulier la norme F77.
4.5.2 Double précision constante.
Les formes d'une double précision constant sont les suivantes:
- base constante réelle suivie d'une double précision exposant
- constant entier suivi un exposant double précision
La valeur d'une constante double précision est la produit de la constante qui précède la D et la puissance de dix indiquée par le nombre entier suivant D. La une partie de forme constante entière (2) peut être écrit avec plus de chiffres qu'un le processeur utilise pour approcher la La valeur de la constante.