source: CIVL/examples/fortran/nek5000/core/zero.usr

main
Last change on this file was ea777aa, checked in by Alex Wilton <awilton@…>, 3 years ago

Moved examples, include, build_default.properties, common.xml, and README out from dev.civl.com into the root of the repo.

git-svn-id: svn://vsl.cis.udel.edu/civl/trunk@5704 fb995dde-84ed-4084-dfe6-e5aef3e2452c

  • Property mode set to 100755
File size: 3.5 KB
Line 
1c-----------------------------------------------------------------------
2c nek5000 user-file template
3c
4c user specified routines:
5c - uservp : variable properties
6c - userf : local acceleration term for fluid
7c - userq : local source term for scalars
8c - userbc : boundary conditions
9c - useric : initial conditions
10c - userchk : general purpose routine for checking errors etc.
11c - userqtl : thermal divergence for lowMach number flows
12c - usrdat : modify element vertices
13c - usrdat2 : modify mesh coordinates
14c - usrdat3 : general purpose routine for initialization
15c
16c-----------------------------------------------------------------------
17 subroutine uservp(ix,iy,iz,eg) ! set variable properties
18
19c implicit none
20
21 integer ix,iy,iz,eg
22
23 include 'SIZE'
24 include 'TOTAL'
25 include 'NEKUSE'
26
27 integer e
28c e = gllel(eg)
29
30 udiff = 0.0
31 utrans = 0.0
32
33 return
34 end
35c-----------------------------------------------------------------------
36 subroutine userf(ix,iy,iz,eg) ! set acceleration term
37c
38c Note: this is an acceleration term, NOT a force!
39c Thus, ffx will subsequently be multiplied by rho(x,t).
40c
41c implicit none
42
43 integer ix,iy,iz,eg
44
45 include 'SIZE'
46 include 'TOTAL'
47 include 'NEKUSE'
48
49 integer e
50c e = gllel(eg)
51
52 ffx = 0.0
53 ffy = 0.0
54 ffz = 0.0
55
56 return
57 end
58c-----------------------------------------------------------------------
59 subroutine userq(ix,iy,iz,eg) ! set source term
60
61c implicit none
62
63 integer ix,iy,iz,eg
64
65 include 'SIZE'
66 include 'TOTAL'
67 include 'NEKUSE'
68
69 integer e
70c e = gllel(eg)
71
72 qvol = 0.0
73
74 return
75 end
76c-----------------------------------------------------------------------
77 subroutine userbc(ix,iy,iz,iside,eg) ! set up boundary conditions
78c
79c NOTE ::: This subroutine MAY NOT be called by every process
80c
81c implicit none
82
83 integer ix,iy,iz,iside,eg
84
85 include 'SIZE'
86 include 'TOTAL'
87 include 'NEKUSE'
88
89c if (cbc(iside,gllel(eg),ifield).eq.'v01')
90
91 ux = 0.0
92 uy = 0.0
93 uz = 0.0
94 temp = 0.0
95
96 return
97 end
98c-----------------------------------------------------------------------
99 subroutine useric(ix,iy,iz,eg) ! set up initial conditions
100
101c implicit none
102
103 integer ix,iy,iz,eg
104
105 include 'SIZE'
106 include 'TOTAL'
107 include 'NEKUSE'
108
109 ux = 0.0
110 uy = 0.0
111 uz = 0.0
112 temp = 0.0
113
114 return
115 end
116c-----------------------------------------------------------------------
117 subroutine userchk()
118
119c implicit none
120
121 include 'SIZE'
122 include 'TOTAL'
123
124 return
125 end
126c-----------------------------------------------------------------------
127 subroutine userqtl ! Set thermal divergence
128
129 call userqtl_scig
130
131 return
132 end
133c-----------------------------------------------------------------------
134 subroutine usrdat() ! This routine to modify element vertices
135
136c implicit none
137
138 include 'SIZE'
139 include 'TOTAL'
140
141 return
142 end
143c-----------------------------------------------------------------------
144 subroutine usrdat2() ! This routine to modify mesh coordinates
145
146c implicit none
147
148 include 'SIZE'
149 include 'TOTAL'
150
151 return
152 end
153c-----------------------------------------------------------------------
154 subroutine usrdat3()
155
156c implicit none
157
158 include 'SIZE'
159 include 'TOTAL'
160
161 return
162 end
Note: See TracBrowser for help on using the repository browser.