VMEC 8.52
3D Equilibrium solver with nested flux surfaces.
Loading...
Searching...
No Matches
vacmod.f90
Go to the documentation of this file.
1
2MODULE vacmod
3
4 USE vacmod0
6 USE vparams, ONLY: zero, one, c2p0, cp5, mu0
7 use vmec_input, only: vac_1_2
8
9 IMPLICIT NONE
10
11 ! integer, save :: icall = 0
12
13 REAL(rprec), PARAMETER :: p5 = cp5
14 REAL(rprec), PARAMETER :: two = c2p0
15
16 REAL(rprec) :: bsubvvac
17 REAL(rprec) :: pi2
18 REAL(rprec) :: pi3
19 REAL(rprec) :: pi4
20 REAL(rprec) :: alp
21 REAL(rprec) :: alu
22 REAL(rprec) :: alv
23 REAL(rprec) :: alvp
24 REAL(rprec) :: onp
25 REAL(rprec) :: onp2
26
27 logical :: precal_done
28
29 REAL(rprec), DIMENSION(:), ALLOCATABLE, TARGET :: potvac
30
31 real(rprec), dimension(:), allocatable :: m_map_wrt
32 real(rprec), dimension(:), allocatable :: n_map_wrt
33
34 REAL(rprec), DIMENSION(:), ALLOCATABLE :: bvecsav
35 REAL(rprec), DIMENSION(:), ALLOCATABLE :: amatsav
36
37 REAL(rprec), DIMENSION(:), ALLOCATABLE :: bexni
38
39 REAL(rprec), DIMENSION(:), ALLOCATABLE :: brv
40 REAL(rprec), DIMENSION(:), ALLOCATABLE :: bphiv
41 REAL(rprec), DIMENSION(:), ALLOCATABLE :: bzv
42
43 REAL(rprec), DIMENSION(:), ALLOCATABLE :: bsqvac
44
45 REAL(rprec), DIMENSION(:), ALLOCATABLE :: r1b
46 REAL(rprec), DIMENSION(:), ALLOCATABLE :: rub
47 REAL(rprec), DIMENSION(:), ALLOCATABLE :: rvb
48 REAL(rprec), DIMENSION(:), ALLOCATABLE :: z1b
49 REAL(rprec), DIMENSION(:), ALLOCATABLE :: zub
50 REAL(rprec), DIMENSION(:), ALLOCATABLE :: zvb
51
52 REAL(rprec), DIMENSION(:), ALLOCATABLE :: bexu
53 REAL(rprec), DIMENSION(:), ALLOCATABLE :: bexv
54 REAL(rprec), DIMENSION(:), ALLOCATABLE :: bexn
55
56 REAL(rprec), DIMENSION(:), ALLOCATABLE :: auu
57 REAL(rprec), DIMENSION(:), ALLOCATABLE :: auv
58 REAL(rprec), DIMENSION(:), ALLOCATABLE :: avv
59
60 REAL(rprec), DIMENSION(:), ALLOCATABLE :: snr
61 REAL(rprec), DIMENSION(:), ALLOCATABLE :: snv
62 REAL(rprec), DIMENSION(:), ALLOCATABLE :: snz
63
64 REAL(rprec), DIMENSION(:), ALLOCATABLE :: drv
65
66 REAL(rprec), DIMENSION(:), ALLOCATABLE :: guu_b
67 REAL(rprec), DIMENSION(:), ALLOCATABLE :: guv_b
68 REAL(rprec), DIMENSION(:), ALLOCATABLE :: gvv_b
69
70 REAL(rprec), DIMENSION(:), ALLOCATABLE :: rzb2
71
72 REAL(rprec), DIMENSION(:), ALLOCATABLE :: rcosuv
73 REAL(rprec), DIMENSION(:), ALLOCATABLE :: rsinuv
74
75 REAL(rprec), DIMENSION(:), ALLOCATABLE :: raxis_nestor
76 REAL(rprec), DIMENSION(:), ALLOCATABLE :: zaxis_nestor
77
78 ! from vacuum
79 REAL(rprec), ALLOCATABLE :: bsubu(:)
80 REAL(rprec), ALLOCATABLE :: bsubv(:)
81 REAL(rprec), ALLOCATABLE :: potu(:)
82 REAL(rprec), ALLOCATABLE :: potv(:)
83 REAL(rprec), ALLOCATABLE :: amatrix(:)
84
85 ! from surface
86 REAL(rprec), ALLOCATABLE, DIMENSION(:) :: ruu
87 REAL(rprec), ALLOCATABLE, DIMENSION(:) :: ruv
88 REAL(rprec), ALLOCATABLE, DIMENSION(:) :: rvv
89 REAL(rprec), ALLOCATABLE, DIMENSION(:) :: zuu
90 REAL(rprec), ALLOCATABLE, DIMENSION(:) :: zuv
91 REAL(rprec), ALLOCATABLE, DIMENSION(:) :: zvv
92
93 ! from bextern
94 REAL(rprec), ALLOCATABLE :: brad(:)
95 REAL(rprec), ALLOCATABLE :: bphi(:)
96 REAL(rprec), ALLOCATABLE :: bz(:)
97
98 ! from tolicu
99 REAL(rprec), DIMENSION(:,:), ALLOCATABLE :: xpts
100
101 ! from scalpot
102 REAL(rprec), ALLOCATABLE :: grpmn(:)
103 real(rprec), dimension(:), allocatable :: grpmn_m_map_wrt
104 real(rprec), dimension(:), allocatable :: grpmn_n_map_wrt
105
106 REAL(rprec), ALLOCATABLE :: gstore(:)
107 REAL(rprec), ALLOCATABLE :: green(:,:)
108 REAL(rprec), ALLOCATABLE :: greenp(:,:)
109
110 ! from analyt
111 REAL(rprec), DIMENSION(:), ALLOCATABLE :: r0p
112 REAL(rprec), DIMENSION(:), ALLOCATABLE :: r1p
113 REAL(rprec), DIMENSION(:), ALLOCATABLE :: r0m
114 REAL(rprec), DIMENSION(:), ALLOCATABLE :: r1m
115 REAL(rprec), DIMENSION(:), ALLOCATABLE :: sqrtc
116 REAL(rprec), DIMENSION(:), ALLOCATABLE :: sqrta
117 REAL(rprec), DIMENSION(:), ALLOCATABLE :: tlp2
118 REAL(rprec), DIMENSION(:), ALLOCATABLE :: tlp1
119 REAL(rprec), DIMENSION(:), ALLOCATABLE :: tlp
120 REAL(rprec), DIMENSION(:), ALLOCATABLE :: tlm2
121 REAL(rprec), DIMENSION(:), ALLOCATABLE :: tlm1
122 REAL(rprec), DIMENSION(:), ALLOCATABLE :: tlm
123 REAL(rprec), DIMENSION(:), ALLOCATABLE :: adp
124 REAL(rprec), DIMENSION(:), ALLOCATABLE :: adm
125 REAL(rprec), DIMENSION(:), ALLOCATABLE :: cma
126 REAL(rprec), DIMENSION(:), ALLOCATABLE :: ra1p
127 REAL(rprec), DIMENSION(:), ALLOCATABLE :: ra1m
128 REAL(rprec), DIMENSION(:), ALLOCATABLE :: slm
129 REAL(rprec), DIMENSION(:), ALLOCATABLE :: slp
130 REAL(rprec), DIMENSION(:), ALLOCATABLE :: tlpm
131 REAL(rprec), DIMENSION(:), ALLOCATABLE :: slpm
132 REAL(rprec), DIMENSION(:), ALLOCATABLE :: delt1u
133 REAL(rprec), DIMENSION(:), ALLOCATABLE :: azp1u
134 REAL(rprec), DIMENSION(:), ALLOCATABLE :: azm1u
135 REAL(rprec), DIMENSION(:), ALLOCATABLE :: cma11u
136 REAL(rprec), DIMENSION(:), ALLOCATABLE :: sqad1u
137 REAL(rprec), DIMENSION(:), ALLOCATABLE :: sqad2u
138
139 real(rprec), dimension(:,:), allocatable :: all_tlp
140 real(rprec), dimension(:,:), allocatable :: all_tlm
141 real(rprec), dimension(:,:), allocatable :: all_slp
142 real(rprec), dimension(:,:), allocatable :: all_slm
143
144 ! from greenf
145 REAL(rprec), DIMENSION(:), ALLOCATABLE :: gsave
146 REAL(rprec), DIMENSION(:,:), ALLOCATABLE :: ga1
147 REAL(rprec), DIMENSION(:,:), ALLOCATABLE :: ga2
148 REAL(rprec), DIMENSION(:), ALLOCATABLE :: dsave
149
150 ! from fourp
151 REAL(rprec), ALLOCATABLE, DIMENSION(:,:,:) :: g1
152 REAL(rprec), ALLOCATABLE, DIMENSION(:,:,:) :: g2
153
154 ! from fouri
155 REAL(rprec), ALLOCATABLE, DIMENSION(:,:,:) :: bcos
156 REAL(rprec), ALLOCATABLE, DIMENSION(:,:,:) :: bsin
157 REAL(rprec), ALLOCATABLE, DIMENSION(:,:,:) :: source
158
159 REAL(rprec), ALLOCATABLE :: actemp(:,:,:,:)
160 REAL(rprec), ALLOCATABLE :: astemp(:,:,:,:)
161
162contains
163
165 integer :: istat = 0
166 integer :: istat1 = 0
167 integer :: istat2 = 0
168 integer :: i = 0
169 integer :: l = 0
170 integer :: m = 0
171 integer :: ip = 0
172
173 precal_done = .false.
174
175 ALLOCATE (amatsav(mnpd2*mnpd2), bvecsav(mnpd2), &
176 potvac(2*mnpd), &
177 raxis_nestor(nv), zaxis_nestor(nv), stat=istat1)
178 IF (istat1.ne.0) stop 'allocation error #3 in allocate_nestor'
179
180 allocate(m_map_wrt(mnpd2), n_map_wrt(mnpd2), stat=istat1)
181 if (istat1 .ne. 0) then
182 stop 'could not allocate m_map, n_map'
183 end if
184
185 ALLOCATE (brv(nuv2), bphiv(nuv2), bzv(nuv2), bsqvac(nuv2), stat=istat2)
186 IF (istat2.ne.0) stop 'allocation error #2 in allocate_nestor'
187
188 brv=0
189 bphiv=0
190 bzv=0
191
192 bsqvac=0
193
194 ! from vacuum()
195 ALLOCATE (amatrix(mnpd2*mnpd2), bsubu(nuv2), bsubv(nuv2), potu(nuv2), potv(nuv2), stat = i)
196 IF (i .ne. 0) stop 'Allocation error in vacuum'
197
198 ALLOCATE (bexu(nuv2), bexv(nuv2), bexn(nuv2), bexni(nuv2), &
199 r1b(nuv), rub(nuv2), rvb(nuv2), z1b(nuv), zub(nuv2), zvb(nuv2), &
200 auu(nuv2), auv(nuv2), avv(nuv2), snr(nuv2), snv(nuv2), snz(nuv2), &
202 rzb2(nuv), rcosuv(nuv), rsinuv(nuv), stat=i)
203 IF (i .ne. 0) stop 'Allocation error in vacuum'
204
205 ! from precal
206 allocate(tanu_1d(2*nu))
207 if (nv .eq. 1) then
208 allocate(tanv_1d(nvper))
209 else
210 allocate(tanv_1d(nv))
211 end if
212
213 ALLOCATE (tanu(nuv_tan), tanv(nuv_tan), &
215 sinu(0:mf,nu), cosu(0:mf,nu), sinv(-nf:nf,nv), &
216 cosv(-nf:nf,nv), sinui(0:mf,nu2), cosui(0:mf,nu2), &
217 cmns(0:(mf+nf),0:mf,0:nf), csign(-nf:nf), &
218 sinu1(nuv2,0:mf), cosu1(nuv2,0:mf), &
219 sinv1(nuv2,0:nf), cosv1(nuv2,0:nf), imirr(nuv), &
220 xmpot(mnpd), xnpot(mnpd), stat=istat1)
221 IF (istat1.ne.0) stop 'allocation error in precal'
222
223 ! from surface()
224 ALLOCATE (ruu(nuv2), ruv(nuv2), rvv(nuv2), zuu(nuv2), zuv(nuv2), zvv(nuv2), stat = i)
225 IF (i .NE. 0) stop 'Allocation error in SURFACE'
226
227 ! from bextern
228 ALLOCATE (brad(nuv2), bphi(nuv2), bz(nuv2), stat=i)
229 IF (i .ne. 0) stop 'allocation error in bextern'
230
231 ! from tolicu
232 ! need nvp+1 for "virtual" point at last index,
233 ! which is equal to first point for a closed curve
234 ALLOCATE (xpts(3,nvp+1), stat=i)
235 IF (i .ne. 0) stop ' allocation error in tolicu'
236
237 ! from scalpot
238 ALLOCATE (grpmn(nuv2*mnpd2), stat=ip)
239 IF (ip .ne. 0) stop 'GRPMN: Allocation error in scalpot'
240
241 ALLOCATE (grpmn_m_map_wrt(nuv2*mnpd2), grpmn_n_map_wrt(nuv2*mnpd2), stat=ip)
242 IF (ip .ne. 0) stop 'GRPMN: Allocation error in scalpot'
243
244 ALLOCATE (gstore(nuv), green(nuv,nuv2), greenp(nuv,nuv2), stat=istat)
245 if (istat.ne.0) then
246 ! Below loop over nuv2 was previously chunked.
247 ! Therefore, some extra care shall be used here to make sure
248 ! everything still fits into memory...
249 stop 'green allocation error in scalpot.'
250 end if
251
252 ! from analyt
253 ALLOCATE (r0p(nuv2), r1p(nuv2), r0m(nuv2), r1m(nuv2), &
255 tlp(nuv2), tlm2(nuv2), tlm1(nuv2), tlm(nuv2), adp(nuv2),&
256 adm(nuv2), cma(nuv2), ra1p(nuv2), ra1m(nuv2), slm(nuv2),&
257 slp(nuv2), tlpm(nuv2), slpm(nuv2), delt1u(nuv2), &
259 sqad2u(nuv2), stat = l)
260 IF (l .ne. 0) stop 'Allocation error in SUBROUTINE analyt'
261
262 allocate(all_tlp(0:mf+nf, nuv2), all_tlm(0:mf+nf, nuv2), &
263 all_slp(0:mf+nf, nuv2), all_slm(0:mf+nf, nuv2), stat=l)
264 IF (l .ne. 0) stop 'Allocation error for debugging analyt'
265
266 ! from greenf
267 ALLOCATE (gsave(nuv), ga1(nvper,nuv), ga2(nvper,nuv), dsave(nuv), stat=i)
268 IF (i .ne. 0) stop 'allocation error in greenf'
269
270 ! print *, "allocations; ndim=",ndim
271
272 ! from fourp
273 ALLOCATE (g1(nuv2,0:nf,ndim), g2(nuv2,0:nf,ndim), stat=m)
274 IF (m .NE. 0) stop 'Allocation error in fourp'
275
276 ! from fouri
277 ALLOCATE (bcos(nu2,-nf:nf,ndim), bsin(nu2,-nf:nf,ndim), &
279 source(nv,nu2,ndim), stat = i)
280 IF (i .ne. 0) stop 'allocation error in fouri'
281
282end subroutine allocate_nestor
283
284
285
287
288 integer :: istat1 = 0
289 integer :: istat3 = 0
290 integer :: istat4 = 0
291 integer :: i = 0
292 integer :: l = 0
293 integer :: m = 0
294
295 IF (ALLOCATED(amatsav)) then
296 DEALLOCATE (amatsav, bvecsav, potvac, &
297 raxis_nestor, zaxis_nestor, stat=istat3)
298 IF (istat3.ne.0) stop 'dealloc error #3 in free_mem_nestor'
299 end if
300
301 if (allocated(m_map_wrt)) then
302 deallocate(m_map_wrt, n_map_wrt, stat=istat3)
303 if (istat3 .ne. 0) stop 'could not deallocate m_map, n_map'
304 end if
305
306 IF (ALLOCATED(brv)) then
307 DEALLOCATE (brv, bphiv, bzv, bsqvac, stat=istat4)
308 IF (istat4.ne.0) stop 'dealloc error #4 in free_mem_nestor'
309 end if
310
311 ! from vacuum()
312 IF (ALLOCATED(bexu)) then
313 DEALLOCATE (bexu, bexv, bexn, bexni, &
314 r1b, rub, rvb, z1b, zub, zvb, &
315 auu, auv, avv, snr, snv, snz, &
316 drv, guu_b, guv_b, gvv_b, &
317 rzb2, rcosuv, rsinuv, stat=i)
318 IF (i .ne. 0) stop 'Deallocation error in vacuum'
319 end if
320
321 if (allocated(amatrix)) then
322 DEALLOCATE (amatrix, bsubu, bsubv, potu, potv, stat = i)
323 IF (i .ne. 0) stop 'Deallocation error in vacuum'
324 end if
325
326 if (allocated(tanu_1d)) then
327 deallocate(tanu_1d)
328 deallocate(tanv_1d)
329 end if
330
331 IF (ALLOCATED(tanu)) then
332 DEALLOCATE(tanu, tanv, sinper, cosper, sinuv, cosuv, cmns, &
334 cosu1, sinv1, cosv1, imirr, xmpot, xnpot, stat=istat1)
335 IF (istat1 .ne. 0) stop 'Deallocation error in vacuum'
336 end if
337
338 ! from surface
339 if (allocated(ruu)) then
340 DEALLOCATE (ruu, ruv, rvv, zuu, zuv, zvv, stat=i)
341 end if
342
343 ! from bextern
344 if (allocated(brad)) then
345 DEALLOCATE (brad, bphi, bz)
346 end if
347
348 ! added for tolicu
349 if (allocated(xpts)) then
350 deallocate(xpts)
351 end if
352
353 ! from scalpot
354 if (allocated(grpmn)) then
355 DEALLOCATE (grpmn)
356 DEALLOCATE (green, greenp, gstore)
357 end if
358
359 if (allocated(grpmn_m_map_wrt)) then
361 end if
362
363 ! from analyt
364 if (allocated(r0p)) then
365 DEALLOCATE (r0p, r1p, r0m, r1m, sqrtc, sqrta, tlp2, tlp1, &
366 tlp, tlm2, tlm1, tlm, adp, adm, cma, ra1p, ra1m, slm, &
368 sqad2u, stat = l)
369 end if
370
371 ! from greenf
372 if (allocated(gsave)) then
373 DEALLOCATE (gsave, ga1, ga2, dsave, stat=i)
374 end if
375
376 ! from fourp
377 if (allocated(g1)) then
378 DEALLOCATE (g1, g2, stat=m)
379 end if
380
381 ! from fouri
382 if (allocated(bcos)) then
383 DEALLOCATE (bcos, bsin, actemp, astemp, source, stat=i)
384 end if
385
386
387end subroutine free_mem_nestor
388
389
390END MODULE vacmod
real(rprec), dimension(:), allocatable tanv
real(rprec), dimension(:,:), allocatable cosv1
real(rprec), dimension(:,:), allocatable sinv
real(rprec), dimension(:), allocatable xnpot
real(rprec), dimension(:), allocatable cosuv
real(rprec), dimension(:,:), allocatable sinui
real(rprec), dimension(:), allocatable sinuv
real(rprec), dimension(:), allocatable tanv_1d
real(rprec), dimension(:,:,:), allocatable cmns
real(rprec), dimension(:,:), allocatable cosui
real(rprec), dimension(:), allocatable xmpot
real(rprec), dimension(:), allocatable csign
real(rprec), dimension(:,:), allocatable cosu
integer, dimension(:), allocatable imirr
real(rprec), dimension(:), allocatable sinper
real(rprec), dimension(:,:), allocatable sinv1
real(rprec), dimension(:), allocatable cosper
real(rprec), dimension(:), allocatable tanu_1d
real(rprec), dimension(:), allocatable tanu
real(rprec), dimension(:,:), allocatable sinu1
real(rprec), dimension(:,:), allocatable sinu
real(rprec), dimension(:,:), allocatable cosu1
real(rprec), dimension(:,:), allocatable cosv
integer mnpd2
Definition vacmod0.f90:12
integer nu3
Definition vacmod0.f90:15
integer mnpd
Definition vacmod0.f90:11
integer nuv_tan
Definition vacmod0.f90:20
integer nvper
Definition vacmod0.f90:19
integer nf
Definition vacmod0.f90:6
integer ndim
Definition vacmod0.f90:23
integer nuv
Definition vacmod0.f90:13
integer nu2
Definition vacmod0.f90:14
integer nvp
Definition vacmod0.f90:21
integer nu
Definition vacmod0.f90:7
integer nuv2
Definition vacmod0.f90:16
integer nv
Definition vacmod0.f90:8
integer mf
Definition vacmod0.f90:5
real(rprec), dimension(:), allocatable tlm2
Definition vacmod.f90:120
real(rprec), dimension(:), allocatable bsubv
Definition vacmod.f90:80
real(rprec), dimension(:,:), allocatable all_slp
Definition vacmod.f90:141
real(rprec), dimension(:), allocatable bsqvac
Definition vacmod.f90:43
real(rprec), dimension(:,:), allocatable all_tlp
Definition vacmod.f90:139
real(rprec), dimension(:), allocatable auu
Definition vacmod.f90:56
real(rprec), dimension(:), allocatable zuu
Definition vacmod.f90:89
real(rprec), dimension(:), allocatable cma
Definition vacmod.f90:125
real(rprec) alv
Definition vacmod.f90:22
real(rprec), dimension(:), allocatable zvb
Definition vacmod.f90:50
real(rprec), dimension(:), allocatable r1b
Definition vacmod.f90:45
real(rprec), dimension(:), allocatable r0m
Definition vacmod.f90:113
real(rprec), dimension(:), allocatable bvecsav
Definition vacmod.f90:34
real(rprec), dimension(:), allocatable ruv
Definition vacmod.f90:87
real(rprec), dimension(:), allocatable sqad1u
Definition vacmod.f90:136
real(rprec), dimension(:), allocatable zub
Definition vacmod.f90:49
real(rprec), dimension(:,:,:), allocatable g1
Definition vacmod.f90:151
real(rprec), dimension(:), allocatable bphi
Definition vacmod.f90:95
real(rprec), dimension(:,:), allocatable greenp
Definition vacmod.f90:108
real(rprec) pi4
Definition vacmod.f90:19
real(rprec), dimension(:), allocatable grpmn_m_map_wrt
Definition vacmod.f90:103
real(rprec), dimension(:), allocatable z1b
Definition vacmod.f90:48
subroutine allocate_nestor
Definition vacmod.f90:165
real(rprec), dimension(:), allocatable tlp
Definition vacmod.f90:119
real(rprec), dimension(:), allocatable gsave
Definition vacmod.f90:145
real(rprec), dimension(:), allocatable r1p
Definition vacmod.f90:112
real(rprec), dimension(:,:,:), allocatable g2
Definition vacmod.f90:152
real(rprec), dimension(:), allocatable zvv
Definition vacmod.f90:91
real(rprec), dimension(:), allocatable bexni
Definition vacmod.f90:37
real(rprec), dimension(:), allocatable bzv
Definition vacmod.f90:41
real(rprec), dimension(:), allocatable amatsav
Definition vacmod.f90:35
real(rprec), dimension(:), allocatable azp1u
Definition vacmod.f90:133
real(rprec), dimension(:), allocatable tlp1
Definition vacmod.f90:118
real(rprec), dimension(:), allocatable snz
Definition vacmod.f90:62
real(rprec), dimension(:,:,:,:), allocatable actemp
Definition vacmod.f90:159
real(rprec), dimension(:,:), allocatable xpts
Definition vacmod.f90:99
real(rprec), dimension(:), allocatable snr
Definition vacmod.f90:60
real(rprec), dimension(:), allocatable grpmn
Definition vacmod.f90:102
real(rprec), dimension(:), allocatable ra1m
Definition vacmod.f90:127
real(rprec), dimension(:), allocatable slpm
Definition vacmod.f90:131
real(rprec), dimension(:), allocatable, target potvac
Definition vacmod.f90:29
real(rprec), dimension(:), allocatable sqad2u
Definition vacmod.f90:137
real(rprec) onp2
Definition vacmod.f90:25
real(rprec), dimension(:), allocatable adm
Definition vacmod.f90:124
real(rprec), dimension(:,:), allocatable all_tlm
Definition vacmod.f90:140
real(rprec), dimension(:), allocatable sqrtc
Definition vacmod.f90:115
real(rprec), dimension(:,:), allocatable ga2
Definition vacmod.f90:147
real(rprec), dimension(:), allocatable tlm1
Definition vacmod.f90:121
real(rprec), dimension(:), allocatable r1m
Definition vacmod.f90:114
real(rprec), dimension(:), allocatable cma11u
Definition vacmod.f90:135
real(rprec), dimension(:), allocatable ruu
Definition vacmod.f90:86
real(rprec), dimension(:), allocatable brv
Definition vacmod.f90:39
real(rprec), dimension(:), allocatable rzb2
Definition vacmod.f90:70
real(rprec), dimension(:), allocatable rub
Definition vacmod.f90:46
real(rprec), dimension(:), allocatable gstore
Definition vacmod.f90:106
real(rprec) bsubvvac
Definition vacmod.f90:16
real(rprec), dimension(:), allocatable grpmn_n_map_wrt
Definition vacmod.f90:104
real(rprec), dimension(:), allocatable rsinuv
Definition vacmod.f90:73
real(rprec), dimension(:,:), allocatable ga1
Definition vacmod.f90:146
real(rprec), dimension(:,:,:), allocatable source
Definition vacmod.f90:157
real(rprec), dimension(:), allocatable slp
Definition vacmod.f90:129
real(rprec), dimension(:,:,:), allocatable bcos
Definition vacmod.f90:155
real(rprec), dimension(:), allocatable rvb
Definition vacmod.f90:47
real(rprec), dimension(:), allocatable sqrta
Definition vacmod.f90:116
real(rprec), dimension(:), allocatable azm1u
Definition vacmod.f90:134
real(rprec) alu
Definition vacmod.f90:21
real(rprec), dimension(:), allocatable dsave
Definition vacmod.f90:148
real(rprec), dimension(:), allocatable snv
Definition vacmod.f90:61
real(rprec), dimension(:), allocatable raxis_nestor
Definition vacmod.f90:75
real(rprec), dimension(:), allocatable tlp2
Definition vacmod.f90:117
real(rprec), dimension(:), allocatable rvv
Definition vacmod.f90:88
real(rprec), dimension(:), allocatable guu_b
Definition vacmod.f90:66
real(rprec) pi3
Definition vacmod.f90:18
real(rprec), dimension(:,:,:,:), allocatable astemp
Definition vacmod.f90:160
real(rprec), dimension(:,:), allocatable all_slm
Definition vacmod.f90:142
real(rprec), parameter two
Definition vacmod.f90:14
real(rprec), dimension(:), allocatable adp
Definition vacmod.f90:123
real(rprec), dimension(:), allocatable tlm
Definition vacmod.f90:122
real(rprec), dimension(:), allocatable bphiv
Definition vacmod.f90:40
real(rprec), dimension(:), allocatable auv
Definition vacmod.f90:57
real(rprec), dimension(:), allocatable avv
Definition vacmod.f90:58
real(rprec), dimension(:,:), allocatable green
Definition vacmod.f90:107
real(rprec), dimension(:), allocatable zaxis_nestor
Definition vacmod.f90:76
real(rprec), dimension(:), allocatable gvv_b
Definition vacmod.f90:68
real(rprec), dimension(:), allocatable delt1u
Definition vacmod.f90:132
real(rprec) alp
Definition vacmod.f90:20
real(rprec), dimension(:), allocatable bexv
Definition vacmod.f90:53
real(rprec), parameter p5
Definition vacmod.f90:13
real(rprec), dimension(:), allocatable guv_b
Definition vacmod.f90:67
real(rprec), dimension(:), allocatable bsubu
Definition vacmod.f90:79
real(rprec) pi2
Definition vacmod.f90:17
real(rprec), dimension(:), allocatable r0p
Definition vacmod.f90:111
real(rprec) alvp
Definition vacmod.f90:23
real(rprec), dimension(:), allocatable n_map_wrt
Definition vacmod.f90:32
real(rprec), dimension(:,:,:), allocatable bsin
Definition vacmod.f90:156
real(rprec), dimension(:), allocatable m_map_wrt
Definition vacmod.f90:31
real(rprec), dimension(:), allocatable bz
Definition vacmod.f90:96
real(rprec), dimension(:), allocatable zuv
Definition vacmod.f90:90
logical precal_done
Definition vacmod.f90:27
real(rprec), dimension(:), allocatable tlpm
Definition vacmod.f90:130
real(rprec), dimension(:), allocatable ra1p
Definition vacmod.f90:126
subroutine free_mem_nestor
Definition vacmod.f90:287
real(rprec), dimension(:), allocatable amatrix
Definition vacmod.f90:83
real(rprec), dimension(:), allocatable slm
Definition vacmod.f90:128
real(rprec), dimension(:), allocatable brad
Definition vacmod.f90:94
real(rprec), dimension(:), allocatable potv
Definition vacmod.f90:82
real(rprec), dimension(:), allocatable bexu
Definition vacmod.f90:52
real(rprec), dimension(:), allocatable rcosuv
Definition vacmod.f90:72
real(rprec) onp
Definition vacmod.f90:24
real(rprec), dimension(:), allocatable potu
Definition vacmod.f90:81
real(rprec), dimension(:), allocatable bexn
Definition vacmod.f90:54
real(rprec), dimension(:), allocatable drv
Definition vacmod.f90:64
integer vac_1_2
switch between implementations of NESTOR: vac1 (magnetic scalar potential, both Stellarator and Tokam...
real(rprec), parameter cp5
Definition vparams.f90:37
real(rprec), parameter c2p0
Definition vparams.f90:40