Professional Documents
Culture Documents
CFD 2
CFD 2
RODRIGO PRADO
TRABALHO II
CURITIBA
06 de Setembro de 2019
1. Questão 2.1
N P Q T T real
0 0 0 0 0
10 0 1 1.0000000000000000 1.0000000000000000
Program Q1
integer N, pp
double precision a_e, a_P, T_0, b_P, T_L
double precision, allocatable, dimension(:) :: P, Q, T_p, T_a
!Questão 2.1
N=9
allocate (P(N+2), Q(N+2), T_p(N+2), T_a(N+2))
!P=0
a_e=0.0
a_P=1.0
P(1)=a_e/a_P
T_0=0.0
b_P=T_0
Q(1)=b_P/a_P
!P=0,1,2,...,N
do pp=2, N+1
a_e=1.0
a_P=2.0
a_w=1.0
P(pp)=a_e/(a_P-a_w*P(pp-1))
b_P=0.0
Q(pp)=(b_P+a_w*Q(pp-1))/(a_P-a_w*Q(pp-1))
end do
!P=N+1
a_e=0.0
a_P=1.0
a_w=0.0
P(N+2)=a_e/(a_P-a_w*P(N+1))
T_L=1.0
b_p=T_L
Q(N+2)=(b_P+a_w*Q(N+1))/(a_P-a_w*Q(N+1))
T_p(N+2)=Q(N+2)
do pp=N+1, 2, -1
a_e=1.0
a_P=2.0
a_w=1.0
T_p(pp)=(a_e/(a_P-a_w*P(pp-1)))*T_p(pp+1)+(b_P+a_w*Q(pp-1))/(a
P-a_w*Q(pp-1))
end do
T_p(1)=T_0
!Solução analítica
do pp=1, N+2
T_a(pp)=(pp-1)/(N*1.0+1.0)
end do
do pp=1, N+2
end do
End Program Q1
2. Questão 2.2
N P Q T T real
0 0 0 0 0
Program Q2
integer N, pp
double precision a_e, a_P, T_0, b_P, T_L
double precision, allocatable, dimension(:) :: P, Q, T_p, T_a
!Questão 2.2
N=9
allocate (P(N+2), Q(N+2), T_p(N+2), T_a(N+2))
!P=0
a_e=0.0
a_P=1.0
P(1)=a_e/a_P
T_0=0.0
b_P=T_0
Q(1)=b_P/a_P
!P=0,1,2,...,N
do pp=2, N+1
a_e=1.0
a_P=2.0
a_w=1.0
P(pp)=a_e/(a_P-a_w*P(pp-1))
b_P=-2.0/((N+1.0)**2)
Q(pp)=(b_P+a_w*Q(pp-1))/(a_P-a_w*Q(pp-1))
end do
!P=N+1
a_e=0.0
a_P=1.0
a_w=0.0
P(N+2)=a_e/(a_P-a_w*P(N+1))
T_L=1.0
b_p=T_L
Q(N+2)=(b_P+a_w*Q(N+1))/(a_P-a_w*Q(N+1))
T_p(N+2)=Q(N+2)
do pp=N+1, 2, -1
a_e=1.0
a_P=2.0
a_w=1.0
T_p(pp)=(a_e/(a_P-a_w*P(pp-1)))*T_p(pp+1)+(b_P+a_w*Q(pp-1))/(a
P-a_w*Q(pp-1))
end do
T_p(1)=T_0
!Solução analítica
do pp=1, N+2
T_a(pp)=((pp-1)/(N*1.0+1.0))**2
end do
do pp=1, N+2
write(*,*) "N=", pp-1 , "Pp=",P(pp),"Qp=", Q(pp),"Tp=", T_p(pp),"Te=",
T_a(pp)
end do
End Program Q2
3. Questão 2.3
N P Q T T real
0 0 0 0 0
Program Q3
integer N, pp
double precision a_e, a_P, T_0, b_P, T_L
double precision, allocatable, dimension(:) :: P, Q, T_p, T_a
!Questão 2.3
N=3
allocate (P(N+2), Q(N+2), T_p(N+2), T_a(N+2))
!P=0
a_e=0.0
a_P=1.0
P(1)=a_e/a_P
T_0=0.0
b_P=T_0
Q(1)=b_P/a_P
!P=0,1,2,...,N
do pp=2, N+1
a_e=2.0
a_P=9.0
a_w=7.0
P(pp)=a_e/(a_P-a_w*P(pp-1))
b_P=0.0
Q(pp)=(b_P+a_w*Q(pp-1))/(a_P-a_w*Q(pp-1))
end do
!P=N+1
a_e=0.0
a_P=1.0
a_w=0.0
P(N+2)=a_e/(a_P-a_w*P(N+1))
T_L=1.0
b_p=T_L
Q(N+2)=(b_P+a_w*Q(N+1))/(a_P-a_w*Q(N+1))
T_p(N+2)=Q(N+2)
do pp=N+1, 2, -1
a_e=2.0
a_P=9.0
a_w=7.0
T_p(pp)=(a_e/(a_P-a_w*P(pp-1)))*T_p(pp+1)+(b_P+a_w*Q(pp-1))/(a_
P-a_w*Q(pp-1))
end do
T_p(1)=T_0
!Solução analítica
do pp=1, N+2
T_a(pp)=((pp-1)/(N*1.0+1.0))**2
end do
do pp=1, N+2
write(*,*) "N=", pp-1 , "Pp=",P(pp),"Qp=", Q(pp),"Tp=", T_p(pp),"Ta=",
T_a(pp)
end do
End Program Hello