そのため、Fortran 95 コードを基本的な関数とプログラムの定義だけで機能させようとしています。「Unexpected」または「Unclassified」という行ごとに実質的にエラーが発生します。それは私のコンパイラ(cygwinターミナルで使用されるgfortran)なのか、それともファイルの先頭に何かを入れることになっているのだろうか?誰かが私に何か言うことができるなら、ここにいます。
double precision :: pi = 3.14159265359
PROGRAM Diffraction
write (*,*) sinc(0)
write (*,*) sinc(pi)
write (*,*) 1_Slit(0, 1, 550E-9)
end PROGRAM Diffraction
function SINC(angle) result(sinc)
double precision :: sinc
double precision :: angle
if angle == 0.0 then
sinc == 1
else
sinc = (sin(angle)/angle)
endif
end function SINC
function I(angle, d, wl) result(I)
double precision :: I_0 = 0.01
double precision :: angle, d, wl, I
A = (d * pi)/wl
B = SIN(angle)
I = I_0 * (SINC(A*B)**f2)
return
end function I
私がコンパイルする方法は次のとおりです: gfortran Diffraction.f95