سلام دوست عزیز من مشکلی در اجرای یک فایل فرترن دارم خواستم ببینم شما میتونید کمک کنید؟
PROGRAM CFD_PROJECT2
IMPLICIT NONE
INTEGER::a,b,c,d,n,i,j,Alpha=7,L=1,t=25,Imesh,tmesh,a0=20,ts=10,Number,v=30
REAL::Fo,dx,dt
REAL,ALLOCATABLE::Temp
,
,U
,
Open(10,File="Temp_Distribution.dat")
PRINT*,"Which Project do you want? 1.Temperature distribution 2.Wave equation"
READ*,a
IF(a==1) then
PRINT*,"Please choose your DATA:"
PRINT*,"1.DELTA t=0.00125 sec & DELTA x=0.001 meter"
PRINT*,"2.DELTA t=0.01 sec & DELTA x=0.001 meter"
PRINT*,"3.DELTA t=0.001 sec & DELTA x=0.01 meter"
READ*,b
IF(b==1) then
dt=0.00125
dx=0.001
ELSE IF(b==2) then
dt=0.01
dx=0.001
ELSE IF(b==3) then
dt=0.001
dx=0.01
END IF
Imesh=L/dx
tmesh=t/dt
n=ts/dt
ALLOCATE(Temp(Imesh,tmesh))
DO j=0,Imesh
Temp(j,0)=300
END DO
DO i=1,tmesh
IF(i<n) then
Temp(0,i)=(a0)*(i*dt)
ELSE IF(i>=n) then
Temp(0,i)=200
END IF
END DO
PRINT*,"With which method you want to proceed? 1.FTCS 2.LASONEN"
READ*,c
IF(c==1) then
Fo=(Alpha*dt)/dx**2
IF(Fo>0.5) then
PRINT*,"The Problem is unstable,Please determine the number of repetition to show the Error increase:"
READ*,Number
DO i=0,Number
DO j=1,Imesh-1
Temp(j,i+1)=Alpha*(Temp(j-1,i)-2*Temp(j,i)+Temp(j+1,i))+Temp(j,i)
END DO
END DO
ELSE IF(Fo<=0.5) then
DO i=0,tmesh
DO j=1,Imesh-1
Temp(j,i+1)=Alpha*(Temp(j-1,i)-2*Temp(j,i)+Temp(j+1,i))+Temp(j,i)
END DO
END DO
DO i=1,tmesh
Temp(Imesh,i)=Temp(Imesh-1,i)
END DO
END IF
ELSE IF(c==2) then
END IF
ELSE IF(a==2) then
PRINT*,"Please choose your DATA:"
PRINT*,"1.DELTA t=0.002 sec & DELTA x=0.1 meter"
PRINT*,"2.DELTA t=0.001 sec & DELTA x=0.1 meter"
PRINT*,"3.DELTA t=0.0005 sec & DELTA x=0.1 meter"
READ*,d
IF(d==1) then
dt=0.002
dx=0.1
ELSE IF(d==2) then
dt=0.001
dx=0.1
ELSE IF(d==3) then
dt=0.0005
dx=0.1
END IF
END IF
END PROGRAM