-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathinput.f90
More file actions
101 lines (73 loc) · 2.68 KB
/
input.f90
File metadata and controls
101 lines (73 loc) · 2.68 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
!==============================================================================
subroutine input
!==============================================================================
use global
use material
implicit none
namelist /shoot/ mattyp, Ma, Re, Pr, T0, ny, ymax, ievec, &
betar, betai, omegar, omegai, npcalc, &
efun_out, maxIter, curve, useParallel
!==============================================================================
write (*,"('SHOOT Compressible Flow Linear Stability Solver')")
!.... Constant mu or Sutherland's law
write (*,"('(0) for constant Mu, (1) for Sutherland ==> ',$)")
read (*,*) mattyp
if (mattyp .eq. 1) then ! for Sutherland's law (AIR)
!.... get the freestream stagnation temperature
write (*,"('Enter the freestream T0 (K) ==> ',$)")
read (*,*) T0
te = t0 / ( one + pt5 * gamma1 * Ma**2 )
!.... set fluid properties
datmat(1) = 1.715336725523065e-05
datmat(2) = 273.0
datmat(3) = 110.4
else ! constant viscosity
datmat(1) = one
datmat(2) = zero
datmat(3) = zero
end if
write (*,"('Enter Ma, Re, Pr ==> ',$)")
read (*,*) Ma, Re, Pr
!.... get the fluid properties at the reference state
call sgetmat(te, rmue, rlme, cone, dmue, d2mue, &
dlme, d2lme, dcone, d2cone)
write (*,"('Enter ny, Ymax ==> ',$)")
read (*,*) ny, ymax
write (*,"('Compute eigenfuntions (0/1) ==> ',$)")
read (*,*) ievec
!write (*,"('Enter alphar, alphai ==> ',$)")
!read (*,*) alphar, alphai
alphar = 0; alphai = 0
write (*,"('Enter betar, betai ==> ',$)")
read (*,*) betar, betai
write (*,"('Enter omegar, omegai ==> ',$)")
read (*,*) omegar, omegai
!.... set alpha and beta and omega
alpha = alphar + im * alphai
beta = betar + im * betai
omega = omegar + im * omegai
!.... These two variables are now read from the parm.dat file
!.... along with alphar, alphai
iver = 0
!write (*,"('Enter profile index ==> ',$)")
!read (*,*) iver
sl = 0
!write(*,"('Enter s (-1 = no curvature) ==> ',$)")
!read(*,*) sl
write(*,"('Use curvative (0/1) ==> ',$)")
read(*,*) curve
write(*,"('Use parallel flow (T/F) ==> ',$)")
read(*,*) useParallel
!.... npcalc = 0 --> polish eigenvalues, solve adjoint, compute nonparallel
!.... npcalc = 1 --> compute nonparallel terms assuming output.dat is avail
!.... npcalc = 2 --> polish, solve adjoint, write output.dat
write(*,"('Enter npcalc ==> ',$)")
read(*,*) npcalc
!.... output efunctions
write(*,"('Enter efun_out ==> ',$)")
read(*,*) efun_out
!.... echo input using Namelist format
write(*,*)
write(*,NML=shoot)
return
end subroutine input