постфикс 'd+0' в реальных литеральных выражениях Фортрана

StackOverflow https://stackoverflow.com/questions/913816

Вопрос

Кто-нибудь знает, что такое постфикс "д+0" означает в заданиях для M1, M2 и M4 ниже, или есть ли какой-нибудь ресурс в Интернете или книга, где с большой вероятностью можно найти эту информацию?


      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
Это было полезно?

Решение

Это означает «двойную точность», а +0 означает 10 в нулевой степени (ноль — это показатель степени).

Вот цитата из первая ссылка Я мог найти:

Число, хранящееся в компьютере, ограничено по величине и точностью.Ограничения зависят от конкретного компьютера.Таким образом, реальное число имеет только определенное количество значительных цифр.Если для расчета требуются более значимые цифры, необходимо использовать двойные точные числа.Двойная точность постоянная записывается в той же экспоненциальной форме, что и единственная точность реальная постоянная, за исключением D, а вместо E отделяет мантиссу от показателя.

А вот цитата из лучшего источника: www.fortran.com, в частности стандарт F77.

4.5.2. Константа двойной точности.

Формы двойной точной константы:

  1. Основная реальная константа с последующей двойной точностью.
  2. Целочисленная константа с последующей двойной точностью.

Значение двойной точной постоянной является продуктом постоянной, которая предшествует D и мощности десяти, указанной целым числом после D.Постоянная целочисленная часть формы (2) может быть записана с большим количеством цифр, чем процессор, будет использовать для аппроксимации значения постоянной.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top