PyFishPack 0.1.0__cp313-cp313-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. PyFishPack/__init__.py +86 -0
  2. PyFishPack/__pycache__/__init__.cpython-313.pyc +0 -0
  3. PyFishPack/__pycache__/apps.cpython-313.pyc +0 -0
  4. PyFishPack/_dummy.c +23 -0
  5. PyFishPack/_dummy.cp313-win_amd64.pyd +0 -0
  6. PyFishPack/apps.py +3640 -0
  7. PyFishPack/fishpack.cp313-win_amd64.dll.a +0 -0
  8. PyFishPack/fishpack.cp313-win_amd64.pyd +0 -0
  9. PyFishPack/meson.build +213 -0
  10. PyFishPack/src/archive/f77/Makefile +19 -0
  11. PyFishPack/src/archive/f77/blktri.f +1404 -0
  12. PyFishPack/src/archive/f77/cblktri.f +1414 -0
  13. PyFishPack/src/archive/f77/cmgnbn.f +1592 -0
  14. PyFishPack/src/archive/f77/comf.f +186 -0
  15. PyFishPack/src/archive/f77/fftpack.f +2968 -0
  16. PyFishPack/src/archive/f77/genbun.f +1335 -0
  17. PyFishPack/src/archive/f77/gnbnaux.f +314 -0
  18. PyFishPack/src/archive/f77/hstcrt.f +443 -0
  19. PyFishPack/src/archive/f77/hstcsp.f +683 -0
  20. PyFishPack/src/archive/f77/hstcyl.f +485 -0
  21. PyFishPack/src/archive/f77/hstplr.f +538 -0
  22. PyFishPack/src/archive/f77/hstssp.f +634 -0
  23. PyFishPack/src/archive/f77/hw3crt.f +687 -0
  24. PyFishPack/src/archive/f77/hwscrt.f +512 -0
  25. PyFishPack/src/archive/f77/hwscsp.f +728 -0
  26. PyFishPack/src/archive/f77/hwscyl.f +538 -0
  27. PyFishPack/src/archive/f77/hwsplr.f +602 -0
  28. PyFishPack/src/archive/f77/hwsssp.f +780 -0
  29. PyFishPack/src/archive/f77/pois3d.f +550 -0
  30. PyFishPack/src/archive/f77/poistg.f +875 -0
  31. PyFishPack/src/archive/f77/sepaux.f +361 -0
  32. PyFishPack/src/archive/f77/sepeli.f +1029 -0
  33. PyFishPack/src/archive/f77/sepx4.f +958 -0
  34. PyFishPack/src/centered_axisymmetric_spherical_solver.f90 +1002 -0
  35. PyFishPack/src/centered_cartesian_helmholtz_solver_3d.f90 +819 -0
  36. PyFishPack/src/centered_cartesian_solver.f90 +583 -0
  37. PyFishPack/src/centered_cylindrical_solver.f90 +634 -0
  38. PyFishPack/src/centered_helmholtz_solvers.f90 +156 -0
  39. PyFishPack/src/centered_polar_solver.f90 +746 -0
  40. PyFishPack/src/centered_real_linear_systems_solver.f90 +280 -0
  41. PyFishPack/src/centered_spherical_solver.f90 +928 -0
  42. PyFishPack/src/complex_block_tridiagonal_linear_systems_solver.f90 +1947 -0
  43. PyFishPack/src/complex_linear_systems_solver.f90 +1787 -0
  44. PyFishPack/src/fftpack_c_api.f90 +86 -0
  45. PyFishPack/src/fishpack.f90 +191 -0
  46. PyFishPack/src/fishpack.pyf +504 -0
  47. PyFishPack/src/fishpack_c_api.f90 +365 -0
  48. PyFishPack/src/fishpack_original.pyf +2119 -0
  49. PyFishPack/src/fishpack_precision.f90 +53 -0
  50. PyFishPack/src/general_linear_systems_solver_3d.f90 +296 -0
  51. PyFishPack/src/iterative_solvers.f90 +969 -0
  52. PyFishPack/src/main.f90 +10 -0
  53. PyFishPack/src/pyfishpack_module.c +1302 -0
  54. PyFishPack/src/real_block_tridiagonal_linear_systems_solver.f90 +319 -0
  55. PyFishPack/src/sepeli.f90 +1454 -0
  56. PyFishPack/src/sepx4.f90 +1338 -0
  57. PyFishPack/src/staggered_axisymmetric_spherical_solver.f90 +908 -0
  58. PyFishPack/src/staggered_cartesian_solver.f90 +553 -0
  59. PyFishPack/src/staggered_cylindrical_solver.f90 +630 -0
  60. PyFishPack/src/staggered_helmholtz_solvers.f90 +172 -0
  61. PyFishPack/src/staggered_polar_solver.f90 +651 -0
  62. PyFishPack/src/staggered_real_linear_systems_solver.f90 +258 -0
  63. PyFishPack/src/staggered_spherical_solver.f90 +758 -0
  64. PyFishPack/src/three_dimensional_solvers.f90 +602 -0
  65. PyFishPack/src/type_CenteredCyclicReductionUtility.f90 +1714 -0
  66. PyFishPack/src/type_CyclicReductionUtility.f90 +472 -0
  67. PyFishPack/src/type_FishpackWorkspace.f90 +290 -0
  68. PyFishPack/src/type_GeneralizedCyclicReductionUtility.f90 +1980 -0
  69. PyFishPack/src/type_PeriodicFastFourierTransform.f90 +3789 -0
  70. PyFishPack/src/type_SepAux.f90 +586 -0
  71. PyFishPack/src/type_StaggeredCyclicReductionUtility.f90 +893 -0
  72. pyfishpack-0.1.0.dist-info/DELVEWHEEL +2 -0
  73. pyfishpack-0.1.0.dist-info/METADATA +81 -0
  74. pyfishpack-0.1.0.dist-info/RECORD +81 -0
  75. pyfishpack-0.1.0.dist-info/WHEEL +5 -0
  76. pyfishpack-0.1.0.dist-info/licenses/LICENSE +21 -0
  77. pyfishpack-0.1.0.dist-info/top_level.txt +1 -0
  78. pyfishpack.libs/libgcc_s_seh-1-25d59ccffa1a9009644065b069829e07.dll +0 -0
  79. pyfishpack.libs/libgfortran-5-08f2195cfa0d823e13371c5c3186a82a.dll +0 -0
  80. pyfishpack.libs/libquadmath-0-c5abb9113f1ee64b87a889958e4b7418.dll +0 -0
  81. pyfishpack.libs/libwinpthread-1-83908d14abfafb8b3bfa38cf51ecee56.dll +0 -0
@@ -0,0 +1,2119 @@
1
+ ! -*- f90 -*-
2
+ ! Note: the context of this file is case sensitive.
3
+
4
+ python module blktr1__user__routines
5
+ interface blktr1_user_interface
6
+ subroutine prdct(nm2,e_b_im2_err,nm3,e_b_im3_err,nm1,e_b_im1_err,e_0_err,dum,e_y_1_i2_err,w3,m,am,bm,cm,wd,ww,wu) ! in :fishpack:blktri.f:blktr1:unknown_interface
7
+ integer :: nm2
8
+ real :: e_b_im2_err
9
+ integer :: nm3
10
+ real :: e_b_im3_err
11
+ integer :: nm1
12
+ real :: e_b_im1_err
13
+ integer :: e_0_err
14
+ real :: dum
15
+ real :: e_y_1_i2_err
16
+ real dimension(*) :: w3
17
+ integer :: m
18
+ real dimension(*) :: am
19
+ real dimension(*) :: bm
20
+ real dimension(*) :: cm
21
+ real dimension(*) :: wd
22
+ real dimension(*) :: ww
23
+ real dimension(*) :: wu
24
+ end subroutine prdct
25
+ subroutine cprdct(e_nm_1_err,e_b_ip_err,nm1,e_b_im1_err,e_0_errrr,dum,e_0_errrrr,dum1,e_y_1_nm_1_errrr,e_y_1_nm_1_errrrr,m,am,bm,cm,w1,w3,ww) ! in :fishpack:blktri.f:blktr1:unknown_interface
26
+ real :: e_nm_1_err
27
+ real :: e_b_ip_err
28
+ integer :: nm1
29
+ real :: e_b_im1_err
30
+ integer :: e_0_errrr
31
+ real :: dum
32
+ integer :: e_0_errrrr
33
+ real :: dum1
34
+ real :: e_y_1_nm_1_errrr
35
+ real :: e_y_1_nm_1_errrrr
36
+ integer :: m
37
+ real dimension(*) :: am
38
+ real dimension(*) :: bm
39
+ real dimension(*) :: cm
40
+ real dimension(*) :: w1
41
+ real dimension(*) :: w3
42
+ real dimension(*) :: ww
43
+ end subroutine cprdct
44
+ end interface blktr1_user_interface
45
+ end python module blktr1__user__routines
46
+ python module cblkt1__user__routines
47
+ interface cblkt1_user_interface
48
+ subroutine prdct(nm2,e_b_im2_err,nm3,e_b_im3_err,nm1,e_b_im1_err,e_0_err,dum,e_y_1_i2_err,w3,m,am,bm,cm,wd,ww,wu) ! in :fishpack:cblktri.f:cblkt1:unknown_interface
49
+ integer :: nm2
50
+ real :: e_b_im2_err
51
+ integer :: nm3
52
+ real :: e_b_im3_err
53
+ integer :: nm1
54
+ real :: e_b_im1_err
55
+ integer :: e_0_err
56
+ real :: dum
57
+ complex :: e_y_1_i2_err
58
+ complex dimension(*) :: w3
59
+ integer :: m
60
+ complex dimension(*) :: am
61
+ complex dimension(*) :: bm
62
+ complex dimension(*) :: cm
63
+ complex dimension(*) :: wd
64
+ complex dimension(*) :: ww
65
+ complex dimension(*) :: wu
66
+ end subroutine prdct
67
+ subroutine cprdct(e_nm_1_err,e_b_ip_err,nm1,e_b_im1_err,e_0_errrr,dum,e_0_errrrr,dum1,e_y_1_nm_1_errrr,e_y_1_nm_1_errrrr,m,am,bm,cm,w1,w3,ww) ! in :fishpack:cblktri.f:cblkt1:unknown_interface
68
+ real :: e_nm_1_err
69
+ real :: e_b_ip_err
70
+ integer :: nm1
71
+ real :: e_b_im1_err
72
+ integer :: e_0_errrr
73
+ real :: dum
74
+ integer :: e_0_errrrr
75
+ real :: dum1
76
+ complex :: e_y_1_nm_1_errrr
77
+ complex :: e_y_1_nm_1_errrrr
78
+ integer :: m
79
+ complex dimension(*) :: am
80
+ complex dimension(*) :: bm
81
+ complex dimension(*) :: cm
82
+ complex dimension(*) :: w1
83
+ complex dimension(*) :: w3
84
+ complex dimension(*) :: ww
85
+ end subroutine cprdct
86
+ end interface cblkt1_user_interface
87
+ end python module cblkt1__user__routines
88
+ python module spelip__user__routines
89
+ interface spelip_user_interface
90
+ subroutine cofx(xi,ai,bi,ci) ! in :fishpack:sepeli.f:spelip:unknown_interface
91
+ real :: xi
92
+ real :: ai
93
+ real :: bi
94
+ real :: ci
95
+ end subroutine cofx
96
+ subroutine cofy(yj,dj,ej,fj) ! in :fishpack:sepeli.f:spelip:unknown_interface
97
+ real :: yj
98
+ real :: dj
99
+ real :: ej
100
+ real :: fj
101
+ end subroutine cofy
102
+ end interface spelip_user_interface
103
+ end python module spelip__user__routines
104
+ python module chkprm__user__routines
105
+ interface chkprm_user_interface
106
+ subroutine cofx(xi,ai,bi,ci) ! in :fishpack:sepeli.f:chkprm:unknown_interface
107
+ real :: xi
108
+ real :: ai
109
+ real :: bi
110
+ real :: ci
111
+ end subroutine cofx
112
+ subroutine cofy(yj,dj,ej,fj) ! in :fishpack:sepeli.f:chkprm:unknown_interface
113
+ real :: yj
114
+ real :: dj
115
+ real :: ej
116
+ real :: fj
117
+ end subroutine cofy
118
+ end interface chkprm_user_interface
119
+ end python module chkprm__user__routines
120
+ python module chksng__user__routines
121
+ interface chksng_user_interface
122
+ subroutine cofx(xi,ai,bi,ci) ! in :fishpack:sepeli.f:chksng:unknown_interface
123
+ real :: xi
124
+ real :: ai
125
+ real :: bi
126
+ real :: ci
127
+ end subroutine cofx
128
+ subroutine cofy(yj,dj,ej,fj) ! in :fishpack:sepeli.f:chksng:unknown_interface
129
+ real :: yj
130
+ real :: dj
131
+ real :: ej
132
+ real :: fj
133
+ end subroutine cofy
134
+ end interface chksng_user_interface
135
+ end python module chksng__user__routines
136
+ python module defer__user__routines
137
+ interface defer_user_interface
138
+ subroutine cofx(xi,ai,bi,ci) ! in :fishpack:sepeli.f:defer:unknown_interface
139
+ real :: xi
140
+ real :: ai
141
+ real :: bi
142
+ real :: ci
143
+ end subroutine cofx
144
+ subroutine cofy(yj,dj,ej,fj) ! in :fishpack:sepeli.f:defer:unknown_interface
145
+ real :: yj
146
+ real :: dj
147
+ real :: ej
148
+ real :: fj
149
+ end subroutine cofy
150
+ end interface defer_user_interface
151
+ end python module defer__user__routines
152
+ python module s4elip__user__routines
153
+ interface s4elip_user_interface
154
+ subroutine cofx(xi,ai,bi,ci) ! in :fishpack:sepx4.f:s4elip:unknown_interface
155
+ real :: xi
156
+ real :: ai
157
+ real :: bi
158
+ real :: ci
159
+ end subroutine cofx
160
+ end interface s4elip_user_interface
161
+ end python module s4elip__user__routines
162
+ python module c4kprm__user__routines
163
+ interface c4kprm_user_interface
164
+ subroutine cofx(xi,ai,bi,ci) ! in :fishpack:sepx4.f:c4kprm:unknown_interface
165
+ real :: xi
166
+ real :: ai
167
+ real :: bi
168
+ real :: ci
169
+ end subroutine cofx
170
+ end interface c4kprm_user_interface
171
+ end python module c4kprm__user__routines
172
+ python module c4ksng__user__routines
173
+ interface c4ksng_user_interface
174
+ subroutine cofx(xi,ai,bi,ci) ! in :fishpack:sepx4.f:c4ksng:unknown_interface
175
+ real :: xi
176
+ real :: ai
177
+ real :: bi
178
+ real :: ci
179
+ end subroutine cofx
180
+ end interface c4ksng_user_interface
181
+ end python module c4ksng__user__routines
182
+ python module d4fer__user__routines
183
+ interface d4fer_user_interface
184
+ subroutine cofx(xi,ai,bi,ci) ! in :fishpack:sepx4.f:d4fer:unknown_interface
185
+ real :: xi
186
+ real :: ai
187
+ real :: bi
188
+ real :: ci
189
+ end subroutine cofx
190
+ end interface d4fer_user_interface
191
+ end python module d4fer__user__routines
192
+ python module fishpack ! in
193
+ interface ! in :fishpack
194
+ subroutine blktri(iflg,np,n,an,bn,cn,mp,m,am,bm,cm,idimy,y,ierror,w) ! in :fishpack:blktri.f
195
+ integer :: iflg
196
+ integer :: np
197
+ integer :: n
198
+ real dimension(*) :: an
199
+ real dimension(*) :: bn
200
+ real dimension(*) :: cn
201
+ integer :: mp
202
+ integer :: m
203
+ real dimension(*) :: am
204
+ real dimension(*) :: bm
205
+ real dimension(*) :: cm
206
+ integer, optional,check(shape(y, 0) == idimy),depend(y) :: idimy=shape(y, 0)
207
+ real dimension(idimy,1) :: y
208
+ integer :: ierror
209
+ real dimension(*) :: w
210
+ integer :: npp
211
+ integer :: k
212
+ real :: eps
213
+ real :: cnv
214
+ integer :: nm
215
+ integer :: ncmplx
216
+ integer :: ik
217
+ common /cblkt/ npp,k,eps,cnv,nm,ncmplx,ik
218
+ end subroutine blktri
219
+ subroutine blktr1(n,an,bn,cn,m,am,bm,cm,idimy,y,b,w1,w2,w3,wd,ww,wu,prdct,cprdct) ! in :fishpack:blktri.f
220
+ use blktr1__user__routines
221
+ integer :: n
222
+ real dimension(*) :: an
223
+ real dimension(*) :: bn
224
+ real dimension(*) :: cn
225
+ integer :: m
226
+ real dimension(*) :: am
227
+ real dimension(*) :: bm
228
+ real dimension(*) :: cm
229
+ integer, optional,check(shape(y, 0) == idimy),depend(y) :: idimy=shape(y, 0)
230
+ real dimension(idimy,1) :: y
231
+ real dimension(*) :: b
232
+ real dimension(*) :: w1
233
+ real dimension(*) :: w2
234
+ real dimension(*) :: w3
235
+ real dimension(*) :: wd
236
+ real dimension(*) :: ww
237
+ real dimension(*) :: wu
238
+ external prdct
239
+ external cprdct
240
+ integer :: npp
241
+ integer :: k
242
+ real :: eps
243
+ real :: cnv
244
+ integer :: nm
245
+ integer :: ncmplx
246
+ integer :: ik
247
+ common /cblkt/ npp,k,eps,cnv,nm,ncmplx,ik
248
+ end subroutine blktr1
249
+ function bsrh(xll,xrr,iz,c,a,bh,f,sgn) ! in :fishpack:blktri.f
250
+ real :: xll
251
+ real :: xrr
252
+ integer :: iz
253
+ real dimension(*) :: c
254
+ real dimension(*) :: a
255
+ real dimension(*) :: bh
256
+ real :: f
257
+ real :: sgn
258
+ integer :: npp
259
+ integer :: k
260
+ real :: eps
261
+ real :: cnv
262
+ integer :: nm
263
+ integer :: ncmplx
264
+ integer :: ik
265
+ real :: bsrh
266
+ common /cblkt/ npp,k,eps,cnv,nm,ncmplx,ik
267
+ end function bsrh
268
+ subroutine compb(n,ierror,an,bn,cn,b,ah,bh) ! in :fishpack:blktri.f
269
+ integer :: n
270
+ integer :: ierror
271
+ real dimension(*) :: an
272
+ real dimension(*) :: bn
273
+ real dimension(*) :: cn
274
+ real dimension(*) :: b
275
+ real dimension(*) :: ah
276
+ real dimension(*) :: bh
277
+ integer :: npp
278
+ integer :: k
279
+ real :: eps
280
+ real :: cnv
281
+ integer :: nm
282
+ integer :: ncmplx
283
+ integer :: ik
284
+ common /cblkt/ npp,k,eps,cnv,nm,ncmplx,ik
285
+ end subroutine compb
286
+ subroutine cprod(nd,bd,nm1,bm1,nm2,bm2,na,aa,x,yy,m,a,b,c,d,w,y) ! in :fishpack:blktri.f
287
+ integer :: nd
288
+ complex dimension(*) :: bd
289
+ integer :: nm1
290
+ real dimension(*) :: bm1
291
+ integer :: nm2
292
+ real dimension(*) :: bm2
293
+ integer :: na
294
+ real dimension(*) :: aa
295
+ real dimension(*) :: x
296
+ real dimension(*) :: yy
297
+ integer :: m
298
+ real dimension(*) :: a
299
+ real dimension(*) :: b
300
+ real dimension(*) :: c
301
+ complex dimension(*) :: d
302
+ complex dimension(*) :: w
303
+ complex dimension(*) :: y
304
+ end subroutine cprod
305
+ subroutine cprodp(nd,bd,nm1,bm1,nm2,bm2,na,aa,x,yy,m,a,b,c,d,u,y) ! in :fishpack:blktri.f
306
+ integer :: nd
307
+ complex dimension(*) :: bd
308
+ integer :: nm1
309
+ real dimension(*) :: bm1
310
+ integer :: nm2
311
+ real dimension(*) :: bm2
312
+ integer :: na
313
+ real dimension(*) :: aa
314
+ real dimension(*) :: x
315
+ real dimension(*) :: yy
316
+ integer :: m
317
+ real dimension(*) :: a
318
+ real dimension(*) :: b
319
+ real dimension(*) :: c
320
+ complex dimension(*) :: d
321
+ complex dimension(*) :: u
322
+ complex dimension(*) :: y
323
+ end subroutine cprodp
324
+ subroutine indxa(i,ir,idxa,na) ! in :fishpack:blktri.f
325
+ integer :: i
326
+ integer :: ir
327
+ integer :: idxa
328
+ integer :: na
329
+ integer :: npp
330
+ integer :: k
331
+ real :: eps
332
+ real :: cnv
333
+ integer :: nm
334
+ integer :: ncmplx
335
+ integer :: ik
336
+ common /cblkt/ npp,k,eps,cnv,nm,ncmplx,ik
337
+ end subroutine indxa
338
+ subroutine indxb(i,ir,idx,idp) ! in :fishpack:blktri.f
339
+ integer :: i
340
+ integer :: ir
341
+ integer :: idx
342
+ integer :: idp
343
+ integer :: npp
344
+ integer :: k
345
+ real :: eps
346
+ real :: cnv
347
+ integer :: nm
348
+ integer :: ncmplx
349
+ integer :: ik
350
+ common /cblkt/ npp,k,eps,cnv,nm,ncmplx,ik
351
+ end subroutine indxb
352
+ subroutine indxc(i,ir,idxc,nc) ! in :fishpack:blktri.f
353
+ integer :: i
354
+ integer :: ir
355
+ integer :: idxc
356
+ integer :: nc
357
+ integer :: npp
358
+ integer :: k
359
+ real :: eps
360
+ real :: cnv
361
+ integer :: nm
362
+ integer :: ncmplx
363
+ integer :: ik
364
+ common /cblkt/ npp,k,eps,cnv,nm,ncmplx,ik
365
+ end subroutine indxc
366
+ subroutine ppadd(n,ierror,a,c,cbp,bp,bh) ! in :fishpack:blktri.f
367
+ integer :: n
368
+ integer :: ierror
369
+ real dimension(*) :: a
370
+ real dimension(*) :: c
371
+ complex dimension(*) :: cbp
372
+ real dimension(*) :: bp
373
+ real dimension(*) :: bh
374
+ integer :: npp
375
+ integer :: k
376
+ real :: eps
377
+ real :: cnv
378
+ integer :: nm
379
+ integer :: ncmplx
380
+ integer :: ik
381
+ common /cblkt/ npp,k,eps,cnv,nm,ncmplx,ik
382
+ end subroutine ppadd
383
+ subroutine prod(nd,bd,nm1,bm1,nm2,bm2,na,aa,x,y,m,a,b,c,d,w,u) ! in :fishpack:blktri.f
384
+ integer :: nd
385
+ real dimension(*) :: bd
386
+ integer :: nm1
387
+ real dimension(*) :: bm1
388
+ integer :: nm2
389
+ real dimension(*) :: bm2
390
+ integer :: na
391
+ real dimension(*) :: aa
392
+ real dimension(*) :: x
393
+ real dimension(*) :: y
394
+ integer :: m
395
+ real dimension(*) :: a
396
+ real dimension(*) :: b
397
+ real dimension(*) :: c
398
+ real dimension(*) :: d
399
+ real dimension(*) :: w
400
+ real dimension(*) :: u
401
+ end subroutine prod
402
+ subroutine prodp(nd,bd,nm1,bm1,nm2,bm2,na,aa,x,y,m,a,b,c,d,u,w) ! in :fishpack:blktri.f
403
+ integer :: nd
404
+ real dimension(*) :: bd
405
+ integer :: nm1
406
+ real dimension(*) :: bm1
407
+ integer :: nm2
408
+ real dimension(*) :: bm2
409
+ integer :: na
410
+ real dimension(*) :: aa
411
+ real dimension(*) :: x
412
+ real dimension(*) :: y
413
+ integer :: m
414
+ real dimension(*) :: a
415
+ real dimension(*) :: b
416
+ real dimension(*) :: c
417
+ real dimension(*) :: d
418
+ real dimension(*) :: u
419
+ real dimension(*) :: w
420
+ end subroutine prodp
421
+ subroutine tevls(n,d,e2,ierr) ! in :fishpack:blktri.f
422
+ integer, optional,check(shape(d, 0) == n),depend(d) :: n=shape(d, 0)
423
+ real dimension(n) :: d
424
+ real dimension(n),depend(n) :: e2
425
+ integer :: ierr
426
+ integer :: npp
427
+ integer :: k
428
+ real :: machep
429
+ real :: cnv
430
+ integer :: nm
431
+ integer :: ncmplx
432
+ integer :: ik
433
+ common /cblkt/ npp,k,machep,cnv,nm,ncmplx,ik
434
+ end subroutine tevls
435
+ subroutine cblktr(iflg,np,n,an,bn,cn,mp,m,am,bm,cm,idimy,y,ierror,w) ! in :fishpack:cblktri.f
436
+ integer :: iflg
437
+ integer :: np
438
+ integer :: n
439
+ real dimension(*) :: an
440
+ real dimension(*) :: bn
441
+ real dimension(*) :: cn
442
+ integer :: mp
443
+ integer :: m
444
+ complex dimension(*) :: am
445
+ complex dimension(*) :: bm
446
+ complex dimension(*) :: cm
447
+ integer, optional,check(shape(y, 0) == idimy),depend(y) :: idimy=shape(y, 0)
448
+ complex dimension(idimy,1) :: y
449
+ integer :: ierror
450
+ real dimension(*) :: w
451
+ integer :: npp
452
+ integer :: k
453
+ real :: eps
454
+ real :: cnv
455
+ integer :: nm
456
+ integer :: ncmplx
457
+ integer :: ik
458
+ common /ccblk/ npp,k,eps,cnv,nm,ncmplx,ik
459
+ end subroutine cblktr
460
+ subroutine cblkt1(n,an,bn,cn,m,am,bm,cm,idimy,y,b,w1,w2,w3,wd,ww,wu,prdct,cprdct) ! in :fishpack:cblktri.f
461
+ use cblkt1__user__routines
462
+ integer :: n
463
+ real dimension(*) :: an
464
+ real dimension(*) :: bn
465
+ real dimension(*) :: cn
466
+ integer :: m
467
+ complex dimension(*) :: am
468
+ complex dimension(*) :: bm
469
+ complex dimension(*) :: cm
470
+ integer, optional,check(shape(y, 0) == idimy),depend(y) :: idimy=shape(y, 0)
471
+ complex dimension(idimy,1) :: y
472
+ real dimension(*) :: b
473
+ complex dimension(*) :: w1
474
+ complex dimension(*) :: w2
475
+ complex dimension(*) :: w3
476
+ complex dimension(*) :: wd
477
+ complex dimension(*) :: ww
478
+ complex dimension(*) :: wu
479
+ external prdct
480
+ external cprdct
481
+ integer :: npp
482
+ integer :: k
483
+ real :: eps
484
+ real :: cnv
485
+ integer :: nm
486
+ integer :: ncmplx
487
+ integer :: ik
488
+ common /ccblk/ npp,k,eps,cnv,nm,ncmplx,ik
489
+ end subroutine cblkt1
490
+ function cbsrh(xll,xrr,iz,c,a,bh,f,sgn) ! in :fishpack:cblktri.f
491
+ real :: xll
492
+ real :: xrr
493
+ integer :: iz
494
+ real dimension(*) :: c
495
+ real dimension(*) :: a
496
+ real dimension(*) :: bh
497
+ real :: f
498
+ real :: sgn
499
+ integer :: npp
500
+ integer :: k
501
+ real :: eps
502
+ real :: cnv
503
+ integer :: nm
504
+ integer :: ncmplx
505
+ integer :: ik
506
+ real :: cbsrh
507
+ common /ccblk/ npp,k,eps,cnv,nm,ncmplx,ik
508
+ end function cbsrh
509
+ subroutine ccompb(n,ierror,an,bn,cn,b,ah,bh) ! in :fishpack:cblktri.f
510
+ integer :: n
511
+ integer :: ierror
512
+ real dimension(*) :: an
513
+ real dimension(*) :: bn
514
+ real dimension(*) :: cn
515
+ real dimension(*) :: b
516
+ real dimension(*) :: ah
517
+ real dimension(*) :: bh
518
+ integer :: npp
519
+ integer :: k
520
+ real :: eps
521
+ real :: cnv
522
+ integer :: nm
523
+ integer :: ncmplx
524
+ integer :: ik
525
+ common /ccblk/ npp,k,eps,cnv,nm,ncmplx,ik
526
+ end subroutine ccompb
527
+ subroutine cproc(nd,bd,nm1,bm1,nm2,bm2,na,aa,x,y,m,a,b,c,d,w,yy) ! in :fishpack:cblktri.f
528
+ integer :: nd
529
+ complex dimension(*) :: bd
530
+ integer :: nm1
531
+ real dimension(*) :: bm1
532
+ integer :: nm2
533
+ real dimension(*) :: bm2
534
+ integer :: na
535
+ real dimension(*) :: aa
536
+ complex dimension(*) :: x
537
+ complex dimension(*) :: y
538
+ integer :: m
539
+ complex dimension(*) :: a
540
+ complex dimension(*) :: b
541
+ complex dimension(*) :: c
542
+ complex dimension(*) :: d
543
+ complex dimension(*) :: w
544
+ real dimension(*) :: yy
545
+ end subroutine cproc
546
+ subroutine cprocp(nd,bd,nm1,bm1,nm2,bm2,na,aa,x,y,m,a,b,c,d,u,yy) ! in :fishpack:cblktri.f
547
+ integer :: nd
548
+ complex dimension(*) :: bd
549
+ integer :: nm1
550
+ real dimension(*) :: bm1
551
+ integer :: nm2
552
+ real dimension(*) :: bm2
553
+ integer :: na
554
+ real dimension(*) :: aa
555
+ complex dimension(*) :: x
556
+ complex dimension(*) :: y
557
+ integer :: m
558
+ complex dimension(*) :: a
559
+ complex dimension(*) :: b
560
+ complex dimension(*) :: c
561
+ complex dimension(*) :: d
562
+ complex dimension(*) :: u
563
+ real dimension(*) :: yy
564
+ end subroutine cprocp
565
+ subroutine cindxa(i,ir,idxa,na) ! in :fishpack:cblktri.f
566
+ integer :: i
567
+ integer :: ir
568
+ integer :: idxa
569
+ integer :: na
570
+ integer :: npp
571
+ integer :: k
572
+ real :: eps
573
+ real :: cnv
574
+ integer :: nm
575
+ integer :: ncmplx
576
+ integer :: ik
577
+ common /ccblk/ npp,k,eps,cnv,nm,ncmplx,ik
578
+ end subroutine cindxa
579
+ subroutine cindxb(i,ir,idx,idp) ! in :fishpack:cblktri.f
580
+ integer :: i
581
+ integer :: ir
582
+ integer :: idx
583
+ integer :: idp
584
+ integer :: npp
585
+ integer :: k
586
+ real :: eps
587
+ real :: cnv
588
+ integer :: nm
589
+ integer :: ncmplx
590
+ integer :: ik
591
+ common /ccblk/ npp,k,eps,cnv,nm,ncmplx,ik
592
+ end subroutine cindxb
593
+ subroutine cindxc(i,ir,idxc,nc) ! in :fishpack:cblktri.f
594
+ integer :: i
595
+ integer :: ir
596
+ integer :: idxc
597
+ integer :: nc
598
+ integer :: npp
599
+ integer :: k
600
+ real :: eps
601
+ real :: cnv
602
+ integer :: nm
603
+ integer :: ncmplx
604
+ integer :: ik
605
+ common /ccblk/ npp,k,eps,cnv,nm,ncmplx,ik
606
+ end subroutine cindxc
607
+ subroutine cppadd(n,ierror,a,c,cbp,bp,bh) ! in :fishpack:cblktri.f
608
+ integer :: n
609
+ integer :: ierror
610
+ real dimension(*) :: a
611
+ real dimension(*) :: c
612
+ complex dimension(*) :: cbp
613
+ real dimension(*) :: bp
614
+ real dimension(*) :: bh
615
+ integer :: npp
616
+ integer :: k
617
+ real :: eps
618
+ real :: cnv
619
+ integer :: nm
620
+ integer :: ncmplx
621
+ integer :: ik
622
+ common /ccblk/ npp,k,eps,cnv,nm,ncmplx,ik
623
+ end subroutine cppadd
624
+ subroutine proc(nd,bd,nm1,bm1,nm2,bm2,na,aa,x,y,m,a,b,c,d,w,u) ! in :fishpack:cblktri.f
625
+ integer :: nd
626
+ real dimension(*) :: bd
627
+ integer :: nm1
628
+ real dimension(*) :: bm1
629
+ integer :: nm2
630
+ real dimension(*) :: bm2
631
+ integer :: na
632
+ real dimension(*) :: aa
633
+ complex dimension(*) :: x
634
+ complex dimension(*) :: y
635
+ integer :: m
636
+ complex dimension(*) :: a
637
+ complex dimension(*) :: b
638
+ complex dimension(*) :: c
639
+ complex dimension(*) :: d
640
+ complex dimension(*) :: w
641
+ complex dimension(*) :: u
642
+ end subroutine proc
643
+ subroutine procp(nd,bd,nm1,bm1,nm2,bm2,na,aa,x,y,m,a,b,c,d,u,w) ! in :fishpack:cblktri.f
644
+ integer :: nd
645
+ real dimension(*) :: bd
646
+ integer :: nm1
647
+ real dimension(*) :: bm1
648
+ integer :: nm2
649
+ real dimension(*) :: bm2
650
+ integer :: na
651
+ real dimension(*) :: aa
652
+ complex dimension(*) :: x
653
+ complex dimension(*) :: y
654
+ integer :: m
655
+ complex dimension(*) :: a
656
+ complex dimension(*) :: b
657
+ complex dimension(*) :: c
658
+ complex dimension(*) :: d
659
+ complex dimension(*) :: u
660
+ complex dimension(*) :: w
661
+ end subroutine procp
662
+ subroutine ctevls(n,d,e2,ierr) ! in :fishpack:cblktri.f
663
+ integer, optional,check(shape(d, 0) == n),depend(d) :: n=shape(d, 0)
664
+ real dimension(n) :: d
665
+ real dimension(n),depend(n) :: e2
666
+ integer :: ierr
667
+ integer :: npp
668
+ integer :: k
669
+ real :: machep
670
+ real :: cnv
671
+ integer :: nm
672
+ integer :: ncmplx
673
+ integer :: ik
674
+ common /ccblk/ npp,k,machep,cnv,nm,ncmplx,ik
675
+ end subroutine ctevls
676
+ subroutine cmgnbn(nperod,n,mperod,m,a,b,c,idimy,y,ierror,w) ! in :fishpack:cmgnbn.f
677
+ integer :: nperod
678
+ integer :: n
679
+ integer :: mperod
680
+ integer :: m
681
+ complex dimension(*) :: a
682
+ complex dimension(*) :: b
683
+ complex dimension(*) :: c
684
+ integer, optional,check(shape(y, 0) == idimy),depend(y) :: idimy=shape(y, 0)
685
+ complex dimension(idimy,1) :: y
686
+ integer :: ierror
687
+ complex dimension(*) :: w
688
+ end subroutine cmgnbn
689
+ subroutine cmposd(mr,nr,istag,ba,bb,bc,q,idimq,b,w,d,tcos,p) ! in :fishpack:cmgnbn.f
690
+ integer :: mr
691
+ integer :: nr
692
+ integer :: istag
693
+ complex dimension(*) :: ba
694
+ complex dimension(*) :: bb
695
+ complex dimension(*) :: bc
696
+ complex dimension(idimq,1) :: q
697
+ integer, optional,check(shape(q, 0) == idimq),depend(q) :: idimq=shape(q, 0)
698
+ complex dimension(*) :: b
699
+ complex dimension(*) :: w
700
+ complex dimension(*) :: d
701
+ complex dimension(*) :: tcos
702
+ complex dimension(*) :: p
703
+ end subroutine cmposd
704
+ subroutine cmposn(m,n,istag,mixbnd,a,bb,c,q,idimq,b,b2,b3,w,w2,w3,d,tcos,p) ! in :fishpack:cmgnbn.f
705
+ integer :: m
706
+ integer :: n
707
+ integer :: istag
708
+ integer :: mixbnd
709
+ complex dimension(*) :: a
710
+ complex dimension(*) :: bb
711
+ complex dimension(*) :: c
712
+ complex dimension(idimq,*) :: q
713
+ integer, optional,check(shape(q, 0) == idimq),depend(q) :: idimq=shape(q, 0)
714
+ complex dimension(*) :: b
715
+ complex dimension(*) :: b2
716
+ complex dimension(*) :: b3
717
+ complex dimension(*) :: w
718
+ complex dimension(*) :: w2
719
+ complex dimension(*) :: w3
720
+ complex dimension(*) :: d
721
+ complex dimension(*) :: tcos
722
+ complex dimension(*) :: p
723
+ end subroutine cmposn
724
+ subroutine cmposp(m,n,a,bb,c,q,idimq,b,b2,b3,w,w2,w3,d,tcos,p) ! in :fishpack:cmgnbn.f
725
+ integer :: m
726
+ integer :: n
727
+ complex dimension(*) :: a
728
+ complex dimension(*) :: bb
729
+ complex dimension(*) :: c
730
+ complex dimension(idimq,1) :: q
731
+ integer, optional,check(shape(q, 0) == idimq),depend(q) :: idimq=shape(q, 0)
732
+ complex dimension(*) :: b
733
+ complex dimension(*) :: b2
734
+ complex dimension(*) :: b3
735
+ complex dimension(*) :: w
736
+ complex dimension(*) :: w2
737
+ complex dimension(*) :: w3
738
+ complex dimension(*) :: d
739
+ complex dimension(*) :: tcos
740
+ complex dimension(*) :: p
741
+ end subroutine cmposp
742
+ subroutine cmpcsg(n,ijump,fnum,fden,a) ! in :fishpack:cmgnbn.f
743
+ integer :: n
744
+ integer :: ijump
745
+ real :: fnum
746
+ real :: fden
747
+ complex dimension(*) :: a
748
+ end subroutine cmpcsg
749
+ subroutine cmpmrg(tcos,i1,m1,i2,m2,i3) ! in :fishpack:cmgnbn.f
750
+ complex dimension(*) :: tcos
751
+ integer :: i1
752
+ integer :: m1
753
+ integer :: i2
754
+ integer :: m2
755
+ integer :: i3
756
+ end subroutine cmpmrg
757
+ subroutine cmptrx(idegbr,idegcr,m,a,b,c,y,tcos,d,w) ! in :fishpack:cmgnbn.f
758
+ integer :: idegbr
759
+ integer :: idegcr
760
+ integer :: m
761
+ complex dimension(*) :: a
762
+ complex dimension(*) :: b
763
+ complex dimension(*) :: c
764
+ complex dimension(*) :: y
765
+ complex dimension(*) :: tcos
766
+ complex dimension(*) :: d
767
+ complex dimension(*) :: w
768
+ end subroutine cmptrx
769
+ subroutine cmptr3(m,a,b,c,k,y1,y2,y3,tcos,d,w1,w2,w3) ! in :fishpack:cmgnbn.f
770
+ integer :: m
771
+ complex dimension(*) :: a
772
+ complex dimension(*) :: b
773
+ complex dimension(*) :: c
774
+ integer dimension(4) :: k
775
+ complex dimension(*) :: y1
776
+ complex dimension(*) :: y2
777
+ complex dimension(*) :: y3
778
+ complex dimension(*) :: tcos
779
+ complex dimension(*) :: d
780
+ complex dimension(*) :: w1
781
+ complex dimension(*) :: w2
782
+ complex dimension(*) :: w3
783
+ end subroutine cmptr3
784
+ function epmach(dum) ! in :fishpack:comf.f
785
+ real :: dum
786
+ real :: v
787
+ real :: epmach
788
+ common /value/ v
789
+ end function epmach
790
+ subroutine strwrd(x) ! in :fishpack:comf.f
791
+ real :: x
792
+ real :: v
793
+ common /value/ v
794
+ end subroutine strwrd
795
+ function ppsgf(x,iz,c,a,bh) ! in :fishpack:comf.f
796
+ real :: x
797
+ integer :: iz
798
+ real dimension(*) :: c
799
+ real dimension(*) :: a
800
+ real dimension(*) :: bh
801
+ real :: ppsgf
802
+ end function ppsgf
803
+ function ppspf(x,iz,c,a,bh) ! in :fishpack:comf.f
804
+ real :: x
805
+ integer :: iz
806
+ real dimension(*) :: c
807
+ real dimension(*) :: a
808
+ real dimension(*) :: bh
809
+ real :: ppspf
810
+ end function ppspf
811
+ function psgf(x,iz,c,a,bh) ! in :fishpack:comf.f
812
+ real :: x
813
+ integer :: iz
814
+ real dimension(*) :: c
815
+ real dimension(*) :: a
816
+ real dimension(*) :: bh
817
+ real :: psgf
818
+ end function psgf
819
+ subroutine ezfftf(n,r,azero,a,b,wsave) ! in :fishpack:fftpack.f
820
+ integer :: n
821
+ real dimension(*) :: r
822
+ real :: azero
823
+ real dimension(*) :: a
824
+ real dimension(*) :: b
825
+ real dimension(*) :: wsave
826
+ end subroutine ezfftf
827
+ subroutine ezfftb(n,r,azero,a,b,wsave) ! in :fishpack:fftpack.f
828
+ integer :: n
829
+ real dimension(*) :: r
830
+ real :: azero
831
+ real dimension(*) :: a
832
+ real dimension(*) :: b
833
+ real dimension(*) :: wsave
834
+ end subroutine ezfftb
835
+ subroutine ezffti(n,wsave) ! in :fishpack:fftpack.f
836
+ integer :: n
837
+ real dimension(*) :: wsave
838
+ end subroutine ezffti
839
+ subroutine ezfft1(n,wa,ifac) ! in :fishpack:fftpack.f
840
+ integer :: n
841
+ real dimension(*) :: wa
842
+ integer dimension(*) :: ifac
843
+ end subroutine ezfft1
844
+ subroutine costi(n,wsave) ! in :fishpack:fftpack.f
845
+ integer :: n
846
+ real dimension(*) :: wsave
847
+ end subroutine costi
848
+ subroutine cost(n,x,wsave) ! in :fishpack:fftpack.f
849
+ integer :: n
850
+ real dimension(*) :: x
851
+ real dimension(*) :: wsave
852
+ end subroutine cost
853
+ subroutine sinti(n,wsave) ! in :fishpack:fftpack.f
854
+ integer :: n
855
+ real dimension(*) :: wsave
856
+ end subroutine sinti
857
+ subroutine sint(n,x,wsave) ! in :fishpack:fftpack.f
858
+ integer :: n
859
+ real dimension(*) :: x
860
+ real dimension(*) :: wsave
861
+ end subroutine sint
862
+ subroutine sint1(n,war,was,xh,x,ifac) ! in :fishpack:fftpack.f
863
+ integer :: n
864
+ real dimension(*) :: war
865
+ real dimension(*) :: was
866
+ real dimension(*) :: xh
867
+ real dimension(*) :: x
868
+ integer dimension(*) :: ifac
869
+ end subroutine sint1
870
+ subroutine cosqi(n,wsave) ! in :fishpack:fftpack.f
871
+ integer :: n
872
+ real dimension(*) :: wsave
873
+ end subroutine cosqi
874
+ subroutine cosqf(n,x,wsave) ! in :fishpack:fftpack.f
875
+ integer :: n
876
+ real dimension(*) :: x
877
+ real dimension(*) :: wsave
878
+ end subroutine cosqf
879
+ subroutine cosqf1(n,x,w,xh) ! in :fishpack:fftpack.f
880
+ integer :: n
881
+ real dimension(*) :: x
882
+ real dimension(*) :: w
883
+ real dimension(*) :: xh
884
+ end subroutine cosqf1
885
+ subroutine cosqb(n,x,wsave) ! in :fishpack:fftpack.f
886
+ integer :: n
887
+ real dimension(*) :: x
888
+ real dimension(*) :: wsave
889
+ end subroutine cosqb
890
+ subroutine cosqb1(n,x,w,xh) ! in :fishpack:fftpack.f
891
+ integer :: n
892
+ real dimension(*) :: x
893
+ real dimension(*) :: w
894
+ real dimension(*) :: xh
895
+ end subroutine cosqb1
896
+ subroutine sinqi(n,wsave) ! in :fishpack:fftpack.f
897
+ integer :: n
898
+ real dimension(*) :: wsave
899
+ end subroutine sinqi
900
+ subroutine sinqf(n,x,wsave) ! in :fishpack:fftpack.f
901
+ integer :: n
902
+ real dimension(*) :: x
903
+ real dimension(*) :: wsave
904
+ end subroutine sinqf
905
+ subroutine sinqb(n,x,wsave) ! in :fishpack:fftpack.f
906
+ integer :: n
907
+ real dimension(*) :: x
908
+ real dimension(*) :: wsave
909
+ end subroutine sinqb
910
+ subroutine cffti(n,wsave) ! in :fishpack:fftpack.f
911
+ integer :: n
912
+ real dimension(*) :: wsave
913
+ end subroutine cffti
914
+ subroutine cffti1(n,wa,ifac) ! in :fishpack:fftpack.f
915
+ integer :: n
916
+ real dimension(*) :: wa
917
+ integer dimension(*) :: ifac
918
+ end subroutine cffti1
919
+ subroutine cfftb(n,c,wsave) ! in :fishpack:fftpack.f
920
+ integer :: n
921
+ real dimension(*) :: c
922
+ real dimension(*) :: wsave
923
+ end subroutine cfftb
924
+ subroutine cfftb1(n,c,ch,wa,ifac) ! in :fishpack:fftpack.f
925
+ integer :: n
926
+ real dimension(*) :: c
927
+ real dimension(*) :: ch
928
+ real dimension(*) :: wa
929
+ integer dimension(*) :: ifac
930
+ end subroutine cfftb1
931
+ subroutine passb2(ido,l1,cc,ch,wa1) ! in :fishpack:fftpack.f
932
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
933
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
934
+ real dimension(ido,2,l1) :: cc
935
+ real dimension(ido,l1,2),depend(l1,ido) :: ch
936
+ real dimension(1) :: wa1
937
+ end subroutine passb2
938
+ subroutine passb3(ido,l1,cc,ch,wa1,wa2) ! in :fishpack:fftpack.f
939
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
940
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
941
+ real dimension(ido,3,l1) :: cc
942
+ real dimension(ido,l1,3),depend(l1,ido) :: ch
943
+ real dimension(*) :: wa1
944
+ real dimension(*) :: wa2
945
+ end subroutine passb3
946
+ subroutine passb4(ido,l1,cc,ch,wa1,wa2,wa3) ! in :fishpack:fftpack.f
947
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
948
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
949
+ real dimension(ido,4,l1) :: cc
950
+ real dimension(ido,l1,4),depend(l1,ido) :: ch
951
+ real dimension(*) :: wa1
952
+ real dimension(*) :: wa2
953
+ real dimension(*) :: wa3
954
+ end subroutine passb4
955
+ subroutine passb5(ido,l1,cc,ch,wa1,wa2,wa3,wa4) ! in :fishpack:fftpack.f
956
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
957
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
958
+ real dimension(ido,5,l1) :: cc
959
+ real dimension(ido,l1,5),depend(l1,ido) :: ch
960
+ real dimension(*) :: wa1
961
+ real dimension(*) :: wa2
962
+ real dimension(*) :: wa3
963
+ real dimension(*) :: wa4
964
+ end subroutine passb5
965
+ subroutine passb(nac,ido,ip,l1,idl1,cc,c1,c2,ch,ch2,wa) ! in :fishpack:fftpack.f
966
+ integer :: nac
967
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
968
+ integer, optional,check(shape(cc, 1) == ip),depend(cc) :: ip=shape(cc, 1)
969
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
970
+ integer, optional,check(shape(c2, 0) == idl1),depend(c2) :: idl1=shape(c2, 0)
971
+ real dimension(ido,ip,l1) :: cc
972
+ real dimension(ido,l1,ip),depend(ip,l1,ido) :: c1
973
+ real dimension(idl1,ip),depend(ip) :: c2
974
+ real dimension(ido,l1,ip),depend(ip,l1,ido) :: ch
975
+ real dimension(idl1,ip),depend(ip,idl1) :: ch2
976
+ real dimension(*) :: wa
977
+ end subroutine passb
978
+ subroutine cfftf(n,c,wsave) ! in :fishpack:fftpack.f
979
+ integer :: n
980
+ real dimension(*) :: c
981
+ real dimension(*) :: wsave
982
+ end subroutine cfftf
983
+ subroutine cfftf1(n,c,ch,wa,ifac) ! in :fishpack:fftpack.f
984
+ integer :: n
985
+ real dimension(*) :: c
986
+ real dimension(*) :: ch
987
+ real dimension(*) :: wa
988
+ integer dimension(*) :: ifac
989
+ end subroutine cfftf1
990
+ subroutine passf2(ido,l1,cc,ch,wa1) ! in :fishpack:fftpack.f
991
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
992
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
993
+ real dimension(ido,2,l1) :: cc
994
+ real dimension(ido,l1,2),depend(l1,ido) :: ch
995
+ real dimension(*) :: wa1
996
+ end subroutine passf2
997
+ subroutine passf3(ido,l1,cc,ch,wa1,wa2) ! in :fishpack:fftpack.f
998
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
999
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
1000
+ real dimension(ido,3,l1) :: cc
1001
+ real dimension(ido,l1,3),depend(l1,ido) :: ch
1002
+ real dimension(*) :: wa1
1003
+ real dimension(*) :: wa2
1004
+ end subroutine passf3
1005
+ subroutine passf4(ido,l1,cc,ch,wa1,wa2,wa3) ! in :fishpack:fftpack.f
1006
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
1007
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
1008
+ real dimension(ido,4,l1) :: cc
1009
+ real dimension(ido,l1,4),depend(l1,ido) :: ch
1010
+ real dimension(*) :: wa1
1011
+ real dimension(*) :: wa2
1012
+ real dimension(*) :: wa3
1013
+ end subroutine passf4
1014
+ subroutine passf5(ido,l1,cc,ch,wa1,wa2,wa3,wa4) ! in :fishpack:fftpack.f
1015
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
1016
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
1017
+ real dimension(ido,5,l1) :: cc
1018
+ real dimension(ido,l1,5),depend(l1,ido) :: ch
1019
+ real dimension(*) :: wa1
1020
+ real dimension(*) :: wa2
1021
+ real dimension(*) :: wa3
1022
+ real dimension(*) :: wa4
1023
+ end subroutine passf5
1024
+ subroutine passf(nac,ido,ip,l1,idl1,cc,c1,c2,ch,ch2,wa) ! in :fishpack:fftpack.f
1025
+ integer :: nac
1026
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
1027
+ integer, optional,check(shape(cc, 1) == ip),depend(cc) :: ip=shape(cc, 1)
1028
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
1029
+ integer, optional,check(shape(c2, 0) == idl1),depend(c2) :: idl1=shape(c2, 0)
1030
+ real dimension(ido,ip,l1) :: cc
1031
+ real dimension(ido,l1,ip),depend(ip,l1,ido) :: c1
1032
+ real dimension(idl1,ip),depend(ip) :: c2
1033
+ real dimension(ido,l1,ip),depend(ip,l1,ido) :: ch
1034
+ real dimension(idl1,ip),depend(ip,idl1) :: ch2
1035
+ real dimension(*) :: wa
1036
+ end subroutine passf
1037
+ subroutine rffti(n,wsave) ! in :fishpack:fftpack.f
1038
+ integer :: n
1039
+ real dimension(*) :: wsave
1040
+ end subroutine rffti
1041
+ subroutine rffti1(n,wa,ifac) ! in :fishpack:fftpack.f
1042
+ integer :: n
1043
+ real dimension(*) :: wa
1044
+ integer dimension(*) :: ifac
1045
+ end subroutine rffti1
1046
+ subroutine rfftb(n,r,wsave) ! in :fishpack:fftpack.f
1047
+ integer :: n
1048
+ real dimension(*) :: r
1049
+ real dimension(*) :: wsave
1050
+ end subroutine rfftb
1051
+ subroutine rfftb1(n,c,ch,wa,ifac) ! in :fishpack:fftpack.f
1052
+ integer :: n
1053
+ real dimension(*) :: c
1054
+ real dimension(*) :: ch
1055
+ real dimension(*) :: wa
1056
+ integer dimension(*) :: ifac
1057
+ end subroutine rfftb1
1058
+ subroutine radb2(ido,l1,cc,ch,wa1) ! in :fishpack:fftpack.f
1059
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
1060
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
1061
+ real dimension(ido,2,l1) :: cc
1062
+ real dimension(ido,l1,2),depend(l1,ido) :: ch
1063
+ real dimension(*) :: wa1
1064
+ end subroutine radb2
1065
+ subroutine radb3(ido,l1,cc,ch,wa1,wa2) ! in :fishpack:fftpack.f
1066
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
1067
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
1068
+ real dimension(ido,3,l1) :: cc
1069
+ real dimension(ido,l1,3),depend(l1,ido) :: ch
1070
+ real dimension(*) :: wa1
1071
+ real dimension(*) :: wa2
1072
+ end subroutine radb3
1073
+ subroutine radb4(ido,l1,cc,ch,wa1,wa2,wa3) ! in :fishpack:fftpack.f
1074
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
1075
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
1076
+ real dimension(ido,4,l1) :: cc
1077
+ real dimension(ido,l1,4),depend(l1,ido) :: ch
1078
+ real dimension(*) :: wa1
1079
+ real dimension(*) :: wa2
1080
+ real dimension(*) :: wa3
1081
+ end subroutine radb4
1082
+ subroutine radb5(ido,l1,cc,ch,wa1,wa2,wa3,wa4) ! in :fishpack:fftpack.f
1083
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
1084
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
1085
+ real dimension(ido,5,l1) :: cc
1086
+ real dimension(ido,l1,5),depend(l1,ido) :: ch
1087
+ real dimension(*) :: wa1
1088
+ real dimension(*) :: wa2
1089
+ real dimension(*) :: wa3
1090
+ real dimension(*) :: wa4
1091
+ end subroutine radb5
1092
+ subroutine radbg(ido,ip,l1,idl1,cc,c1,c2,ch,ch2,wa) ! in :fishpack:fftpack.f
1093
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
1094
+ integer, optional,check(shape(cc, 1) == ip),depend(cc) :: ip=shape(cc, 1)
1095
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
1096
+ integer, optional,check(shape(c2, 0) == idl1),depend(c2) :: idl1=shape(c2, 0)
1097
+ real dimension(ido,ip,l1) :: cc
1098
+ real dimension(ido,l1,ip),depend(ip,l1,ido) :: c1
1099
+ real dimension(idl1,ip),depend(ip) :: c2
1100
+ real dimension(ido,l1,ip),depend(ip,l1,ido) :: ch
1101
+ real dimension(idl1,ip),depend(ip,idl1) :: ch2
1102
+ real dimension(*) :: wa
1103
+ end subroutine radbg
1104
+ subroutine rfftf(n,r,wsave) ! in :fishpack:fftpack.f
1105
+ integer :: n
1106
+ real dimension(*) :: r
1107
+ real dimension(*) :: wsave
1108
+ end subroutine rfftf
1109
+ subroutine rfftf1(n,c,ch,wa,ifac) ! in :fishpack:fftpack.f
1110
+ integer :: n
1111
+ real dimension(*) :: c
1112
+ real dimension(*) :: ch
1113
+ real dimension(*) :: wa
1114
+ integer dimension(*) :: ifac
1115
+ end subroutine rfftf1
1116
+ subroutine radf2(ido,l1,cc,ch,wa1) ! in :fishpack:fftpack.f
1117
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
1118
+ integer, optional,check(shape(cc, 1) == l1),depend(cc) :: l1=shape(cc, 1)
1119
+ real dimension(ido,l1,2) :: cc
1120
+ real dimension(ido,2,l1),depend(l1,ido) :: ch
1121
+ real dimension(*) :: wa1
1122
+ end subroutine radf2
1123
+ subroutine radf3(ido,l1,cc,ch,wa1,wa2) ! in :fishpack:fftpack.f
1124
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
1125
+ integer, optional,check(shape(cc, 1) == l1),depend(cc) :: l1=shape(cc, 1)
1126
+ real dimension(ido,l1,3) :: cc
1127
+ real dimension(ido,3,l1),depend(l1,ido) :: ch
1128
+ real dimension(*) :: wa1
1129
+ real dimension(*) :: wa2
1130
+ end subroutine radf3
1131
+ subroutine radf4(ido,l1,cc,ch,wa1,wa2,wa3) ! in :fishpack:fftpack.f
1132
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
1133
+ integer, optional,check(shape(cc, 1) == l1),depend(cc) :: l1=shape(cc, 1)
1134
+ real dimension(ido,l1,4) :: cc
1135
+ real dimension(ido,4,l1),depend(l1,ido) :: ch
1136
+ real dimension(*) :: wa1
1137
+ real dimension(*) :: wa2
1138
+ real dimension(*) :: wa3
1139
+ end subroutine radf4
1140
+ subroutine radf5(ido,l1,cc,ch,wa1,wa2,wa3,wa4) ! in :fishpack:fftpack.f
1141
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
1142
+ integer, optional,check(shape(cc, 1) == l1),depend(cc) :: l1=shape(cc, 1)
1143
+ real dimension(ido,l1,5) :: cc
1144
+ real dimension(ido,5,l1),depend(l1,ido) :: ch
1145
+ real dimension(*) :: wa1
1146
+ real dimension(*) :: wa2
1147
+ real dimension(*) :: wa3
1148
+ real dimension(*) :: wa4
1149
+ end subroutine radf5
1150
+ subroutine radfg(ido,ip,l1,idl1,cc,c1,c2,ch,ch2,wa) ! in :fishpack:fftpack.f
1151
+ integer, optional,check(shape(cc, 0) == ido),depend(cc) :: ido=shape(cc, 0)
1152
+ integer, optional,check(shape(cc, 1) == ip),depend(cc) :: ip=shape(cc, 1)
1153
+ integer, optional,check(shape(cc, 2) == l1),depend(cc) :: l1=shape(cc, 2)
1154
+ integer, optional,check(shape(c2, 0) == idl1),depend(c2) :: idl1=shape(c2, 0)
1155
+ real dimension(ido,ip,l1) :: cc
1156
+ real dimension(ido,l1,ip),depend(ip,l1,ido) :: c1
1157
+ real dimension(idl1,ip),depend(ip) :: c2
1158
+ real dimension(ido,l1,ip),depend(ip,l1,ido) :: ch
1159
+ real dimension(idl1,ip),depend(ip,idl1) :: ch2
1160
+ real dimension(*) :: wa
1161
+ end subroutine radfg
1162
+ function pimach(dum) ! in :fishpack:fftpack.f
1163
+ real :: dum
1164
+ real :: pimach
1165
+ end function pimach
1166
+ subroutine genbun(nperod,n,mperod,m,a,b,c,idimy,y,ierror,w) ! in :fishpack:genbun.f
1167
+ integer :: nperod
1168
+ integer :: n
1169
+ integer :: mperod
1170
+ integer :: m
1171
+ real dimension(*) :: a
1172
+ real dimension(*) :: b
1173
+ real dimension(*) :: c
1174
+ integer, optional,check(shape(y, 0) == idimy),depend(y) :: idimy=shape(y, 0)
1175
+ real dimension(idimy,1) :: y
1176
+ integer :: ierror
1177
+ real dimension(*) :: w
1178
+ end subroutine genbun
1179
+ subroutine poisd2(mr,nr,istag,ba,bb,bc,q,idimq,b,w,d,tcos,p) ! in :fishpack:genbun.f
1180
+ integer :: mr
1181
+ integer :: nr
1182
+ integer :: istag
1183
+ real dimension(*) :: ba
1184
+ real dimension(*) :: bb
1185
+ real dimension(*) :: bc
1186
+ real dimension(idimq,1) :: q
1187
+ integer, optional,check(shape(q, 0) == idimq),depend(q) :: idimq=shape(q, 0)
1188
+ real dimension(*) :: b
1189
+ real dimension(*) :: w
1190
+ real dimension(*) :: d
1191
+ real dimension(*) :: tcos
1192
+ real dimension(*) :: p
1193
+ end subroutine poisd2
1194
+ subroutine poisn2(m,n,istag,mixbnd,a,bb,c,q,idimq,b,b2,b3,w,w2,w3,d,tcos,p) ! in :fishpack:genbun.f
1195
+ integer :: m
1196
+ integer :: n
1197
+ integer :: istag
1198
+ integer :: mixbnd
1199
+ real dimension(*) :: a
1200
+ real dimension(*) :: bb
1201
+ real dimension(*) :: c
1202
+ real dimension(idimq,*) :: q
1203
+ integer, optional,check(shape(q, 0) == idimq),depend(q) :: idimq=shape(q, 0)
1204
+ real dimension(*) :: b
1205
+ real dimension(*) :: b2
1206
+ real dimension(*) :: b3
1207
+ real dimension(*) :: w
1208
+ real dimension(*) :: w2
1209
+ real dimension(*) :: w3
1210
+ real dimension(*) :: d
1211
+ real dimension(*) :: tcos
1212
+ real dimension(*) :: p
1213
+ end subroutine poisn2
1214
+ subroutine poisp2(m,n,a,bb,c,q,idimq,b,b2,b3,w,w2,w3,d,tcos,p) ! in :fishpack:genbun.f
1215
+ integer :: m
1216
+ integer :: n
1217
+ real dimension(*) :: a
1218
+ real dimension(*) :: bb
1219
+ real dimension(*) :: c
1220
+ real dimension(idimq,1) :: q
1221
+ integer, optional,check(shape(q, 0) == idimq),depend(q) :: idimq=shape(q, 0)
1222
+ real dimension(*) :: b
1223
+ real dimension(*) :: b2
1224
+ real dimension(*) :: b3
1225
+ real dimension(*) :: w
1226
+ real dimension(*) :: w2
1227
+ real dimension(*) :: w3
1228
+ real dimension(*) :: d
1229
+ real dimension(*) :: tcos
1230
+ real dimension(*) :: p
1231
+ end subroutine poisp2
1232
+ subroutine cosgen(n,ijump,fnum,fden,a) ! in :fishpack:gnbnaux.f
1233
+ integer :: n
1234
+ integer :: ijump
1235
+ real :: fnum
1236
+ real :: fden
1237
+ real dimension(*) :: a
1238
+ end subroutine cosgen
1239
+ subroutine merge(tcos,i1,m1,i2,m2,i3) ! in :fishpack:gnbnaux.f
1240
+ real dimension(*) :: tcos
1241
+ integer :: i1
1242
+ integer :: m1
1243
+ integer :: i2
1244
+ integer :: m2
1245
+ integer :: i3
1246
+ end subroutine merge
1247
+ subroutine trix(idegbr,idegcr,m,a,b,c,y,tcos,d,w) ! in :fishpack:gnbnaux.f
1248
+ integer :: idegbr
1249
+ integer :: idegcr
1250
+ integer :: m
1251
+ real dimension(*) :: a
1252
+ real dimension(*) :: b
1253
+ real dimension(*) :: c
1254
+ real dimension(*) :: y
1255
+ real dimension(*) :: tcos
1256
+ real dimension(*) :: d
1257
+ real dimension(*) :: w
1258
+ end subroutine trix
1259
+ subroutine tri3(m,a,b,c,k,y1,y2,y3,tcos,d,w1,w2,w3) ! in :fishpack:gnbnaux.f
1260
+ integer :: m
1261
+ real dimension(*) :: a
1262
+ real dimension(*) :: b
1263
+ real dimension(*) :: c
1264
+ integer dimension(4) :: k
1265
+ real dimension(*) :: y1
1266
+ real dimension(*) :: y2
1267
+ real dimension(*) :: y3
1268
+ real dimension(*) :: tcos
1269
+ real dimension(*) :: d
1270
+ real dimension(*) :: w1
1271
+ real dimension(*) :: w2
1272
+ real dimension(*) :: w3
1273
+ end subroutine tri3
1274
+ subroutine hstcrt(a,b,m,mbdcnd,bda,bdb,c,d,n,nbdcnd,bdc,bdd,elmbda,f,idimf,pertrb,ierror,w) ! in :fishpack:hstcrt.f
1275
+ real :: a
1276
+ real :: b
1277
+ integer :: m
1278
+ integer :: mbdcnd
1279
+ real dimension(*) :: bda
1280
+ real dimension(*) :: bdb
1281
+ real :: c
1282
+ real :: d
1283
+ integer :: n
1284
+ integer :: nbdcnd
1285
+ real dimension(*) :: bdc
1286
+ real dimension(*) :: bdd
1287
+ real :: elmbda
1288
+ real dimension(idimf,1) :: f
1289
+ integer, optional,check(shape(f, 0) == idimf),depend(f) :: idimf=shape(f, 0)
1290
+ real :: pertrb
1291
+ integer :: ierror
1292
+ real dimension(*) :: w
1293
+ end subroutine hstcrt
1294
+ subroutine hstcsp(intl,a,b,m,mbdcnd,bda,bdb,c,d,n,nbdcnd,bdc,bdd,elmbda,f,idimf,pertrb,ierror,w) ! in :fishpack:hstcsp.f
1295
+ integer :: intl
1296
+ real :: a
1297
+ real :: b
1298
+ integer :: m
1299
+ integer :: mbdcnd
1300
+ real dimension(*) :: bda
1301
+ real dimension(*) :: bdb
1302
+ real :: c
1303
+ real :: d
1304
+ integer :: n
1305
+ integer :: nbdcnd
1306
+ real dimension(*) :: bdc
1307
+ real dimension(*) :: bdd
1308
+ real :: elmbda
1309
+ real dimension(idimf,1) :: f
1310
+ integer, optional,check(shape(f, 0) == idimf),depend(f) :: idimf=shape(f, 0)
1311
+ real :: pertrb
1312
+ integer :: ierror
1313
+ real dimension(*) :: w
1314
+ end subroutine hstcsp
1315
+ subroutine hstcs1(intl,a,b,m,mbdcnd,bda,bdb,c,d,n,nbdcnd,bdc,bdd,elmbda,f,idimf,pertrb,ierr1,am,bm,cm,an,bn,cn,snth,rsq,wrk) ! in :fishpack:hstcsp.f
1316
+ integer :: intl
1317
+ real :: a
1318
+ real :: b
1319
+ integer :: m
1320
+ integer :: mbdcnd
1321
+ real dimension(*) :: bda
1322
+ real dimension(*) :: bdb
1323
+ real :: c
1324
+ real :: d
1325
+ integer :: n
1326
+ integer :: nbdcnd
1327
+ real dimension(*) :: bdc
1328
+ real dimension(*) :: bdd
1329
+ real :: elmbda
1330
+ real dimension(idimf,1) :: f
1331
+ integer, optional,check(shape(f, 0) == idimf),depend(f) :: idimf=shape(f, 0)
1332
+ real :: pertrb
1333
+ integer :: ierr1
1334
+ real dimension(*) :: am
1335
+ real dimension(*) :: bm
1336
+ real dimension(*) :: cm
1337
+ real dimension(*) :: an
1338
+ real dimension(*) :: bn
1339
+ real dimension(*) :: cn
1340
+ real dimension(*) :: snth
1341
+ real dimension(*) :: rsq
1342
+ real dimension(*) :: wrk
1343
+ end subroutine hstcs1
1344
+ subroutine hstcyl(a,b,m,mbdcnd,bda,bdb,c,d,n,nbdcnd,bdc,bdd,elmbda,f,idimf,pertrb,ierror,w) ! in :fishpack:hstcyl.f
1345
+ real :: a
1346
+ real :: b
1347
+ integer :: m
1348
+ integer :: mbdcnd
1349
+ real dimension(*) :: bda
1350
+ real dimension(*) :: bdb
1351
+ real :: c
1352
+ real :: d
1353
+ integer :: n
1354
+ integer :: nbdcnd
1355
+ real dimension(*) :: bdc
1356
+ real dimension(*) :: bdd
1357
+ real :: elmbda
1358
+ real dimension(idimf,1) :: f
1359
+ integer, optional,check(shape(f, 0) == idimf),depend(f) :: idimf=shape(f, 0)
1360
+ real :: pertrb
1361
+ integer :: ierror
1362
+ real dimension(*) :: w
1363
+ end subroutine hstcyl
1364
+ subroutine hstplr(a,b,m,mbdcnd,bda,bdb,c,d,n,nbdcnd,bdc,bdd,elmbda,f,idimf,pertrb,ierror,w) ! in :fishpack:hstplr.f
1365
+ real :: a
1366
+ real :: b
1367
+ integer :: m
1368
+ integer :: mbdcnd
1369
+ real dimension(*) :: bda
1370
+ real dimension(*) :: bdb
1371
+ real :: c
1372
+ real :: d
1373
+ integer :: n
1374
+ integer :: nbdcnd
1375
+ real dimension(*) :: bdc
1376
+ real dimension(*) :: bdd
1377
+ real :: elmbda
1378
+ real dimension(idimf,1) :: f
1379
+ integer, optional,check(shape(f, 0) == idimf),depend(f) :: idimf=shape(f, 0)
1380
+ real :: pertrb
1381
+ integer :: ierror
1382
+ real dimension(*) :: w
1383
+ end subroutine hstplr
1384
+ subroutine hstssp(a,b,m,mbdcnd,bda,bdb,c,d,n,nbdcnd,bdc,bdd,elmbda,f,idimf,pertrb,ierror,w) ! in :fishpack:hstssp.f
1385
+ real :: a
1386
+ real :: b
1387
+ integer :: m
1388
+ integer :: mbdcnd
1389
+ real dimension(*) :: bda
1390
+ real dimension(*) :: bdb
1391
+ real :: c
1392
+ real :: d
1393
+ integer :: n
1394
+ integer :: nbdcnd
1395
+ real dimension(*) :: bdc
1396
+ real dimension(*) :: bdd
1397
+ real :: elmbda
1398
+ real dimension(idimf,1) :: f
1399
+ integer, optional,check(shape(f, 0) == idimf),depend(f) :: idimf=shape(f, 0)
1400
+ real :: pertrb
1401
+ integer :: ierror
1402
+ real dimension(*) :: w
1403
+ end subroutine hstssp
1404
+ subroutine hw3crt(xs,xf,l,lbdcnd,bdxs,bdxf,ys,yf,m,mbdcnd,bdys,bdyf,zs,zf,n,nbdcnd,bdzs,bdzf,elmbda,ldimf,mdimf,f,pertrb,ierror,w) ! in :fishpack:hw3crt.f
1405
+ real :: xs
1406
+ real :: xf
1407
+ integer :: l
1408
+ integer :: lbdcnd
1409
+ real dimension(mdimf,*) :: bdxs
1410
+ real dimension(mdimf,*),depend(mdimf) :: bdxf
1411
+ real :: ys
1412
+ real :: yf
1413
+ integer :: m
1414
+ integer :: mbdcnd
1415
+ real dimension(ldimf,*) :: bdys
1416
+ real dimension(ldimf,*),depend(ldimf) :: bdyf
1417
+ real :: zs
1418
+ real :: zf
1419
+ integer :: n
1420
+ integer :: nbdcnd
1421
+ real dimension(ldimf,*),depend(ldimf) :: bdzs
1422
+ real dimension(ldimf,*),depend(ldimf) :: bdzf
1423
+ real :: elmbda
1424
+ integer, optional,check(shape(bdys, 0) == ldimf),depend(bdys) :: ldimf=shape(bdys, 0)
1425
+ integer, optional,check(shape(bdxs, 0) == mdimf),depend(bdxs) :: mdimf=shape(bdxs, 0)
1426
+ real dimension(ldimf,mdimf,*),depend(ldimf,mdimf) :: f
1427
+ real :: pertrb
1428
+ integer :: ierror
1429
+ real dimension(*) :: w
1430
+ end subroutine hw3crt
1431
+ subroutine hwscrt(a,b,m,mbdcnd,bda,bdb,c,d,n,nbdcnd,bdc,bdd,elmbda,f,idimf,pertrb,ierror,w) ! in :fishpack:hwscrt.f
1432
+ real :: a
1433
+ real :: b
1434
+ integer :: m
1435
+ integer :: mbdcnd
1436
+ real dimension(*) :: bda
1437
+ real dimension(*) :: bdb
1438
+ real :: c
1439
+ real :: d
1440
+ integer :: n
1441
+ integer :: nbdcnd
1442
+ real dimension(*) :: bdc
1443
+ real dimension(*) :: bdd
1444
+ real :: elmbda
1445
+ real dimension(idimf,*) :: f
1446
+ integer, optional,check(shape(f, 0) == idimf),depend(f) :: idimf=shape(f, 0)
1447
+ real :: pertrb
1448
+ integer :: ierror
1449
+ real dimension(*) :: w
1450
+ end subroutine hwscrt
1451
+ subroutine hwscsp(intl,ts,tf,m,mbdcnd,bdts,bdtf,rs,rf,n,nbdcnd,bdrs,bdrf,elmbda,f,idimf,pertrb,ierror,w) ! in :fishpack:hwscsp.f
1452
+ integer :: intl
1453
+ real :: ts
1454
+ real :: tf
1455
+ integer :: m
1456
+ integer :: mbdcnd
1457
+ real dimension(*) :: bdts
1458
+ real dimension(*) :: bdtf
1459
+ real :: rs
1460
+ real :: rf
1461
+ integer :: n
1462
+ integer :: nbdcnd
1463
+ real dimension(*) :: bdrs
1464
+ real dimension(*) :: bdrf
1465
+ real :: elmbda
1466
+ real dimension(idimf,1) :: f
1467
+ integer, optional,check(shape(f, 0) == idimf),depend(f) :: idimf=shape(f, 0)
1468
+ real :: pertrb
1469
+ integer :: ierror
1470
+ real dimension(*) :: w
1471
+ end subroutine hwscsp
1472
+ subroutine hwscs1(intl,ts,tf,m,mbdcnd,bdts,bdtf,rs,rf,n,nbdcnd,bdrs,bdrf,elmbda,f,idimf,pertrb,w,s,an,bn,cn,r,am,bm,cm,sint,bmh) ! in :fishpack:hwscsp.f
1473
+ integer :: intl
1474
+ real :: ts
1475
+ real :: tf
1476
+ integer :: m
1477
+ integer :: mbdcnd
1478
+ real dimension(*) :: bdts
1479
+ real dimension(*) :: bdtf
1480
+ real :: rs
1481
+ real :: rf
1482
+ integer :: n
1483
+ integer :: nbdcnd
1484
+ real dimension(*) :: bdrs
1485
+ real dimension(*) :: bdrf
1486
+ real :: elmbda
1487
+ real dimension(idimf,*) :: f
1488
+ integer, optional,check(shape(f, 0) == idimf),depend(f) :: idimf=shape(f, 0)
1489
+ real :: pertrb
1490
+ real dimension(*) :: w
1491
+ real dimension(*) :: s
1492
+ real dimension(*) :: an
1493
+ real dimension(*) :: bn
1494
+ real dimension(*) :: cn
1495
+ real dimension(*) :: r
1496
+ real dimension(*) :: am
1497
+ real dimension(*) :: bm
1498
+ real dimension(*) :: cm
1499
+ real dimension(*) :: sint
1500
+ real dimension(*) :: bmh
1501
+ end subroutine hwscs1
1502
+ subroutine hwscyl(a,b,m,mbdcnd,bda,bdb,c,d,n,nbdcnd,bdc,bdd,elmbda,f,idimf,pertrb,ierror,w) ! in :fishpack:hwscyl.f
1503
+ real :: a
1504
+ real :: b
1505
+ integer :: m
1506
+ integer :: mbdcnd
1507
+ real dimension(*) :: bda
1508
+ real dimension(*) :: bdb
1509
+ real :: c
1510
+ real :: d
1511
+ integer :: n
1512
+ integer :: nbdcnd
1513
+ real dimension(*) :: bdc
1514
+ real dimension(*) :: bdd
1515
+ real :: elmbda
1516
+ real dimension(idimf,*) :: f
1517
+ integer, optional,check(shape(f, 0) == idimf),depend(f) :: idimf=shape(f, 0)
1518
+ real :: pertrb
1519
+ integer :: ierror
1520
+ real dimension(*) :: w
1521
+ end subroutine hwscyl
1522
+ subroutine hwsplr(a,b,m,mbdcnd,bda,bdb,c,d,n,nbdcnd,bdc,bdd,elmbda,f,idimf,pertrb,ierror,w) ! in :fishpack:hwsplr.f
1523
+ real :: a
1524
+ real :: b
1525
+ integer :: m
1526
+ integer :: mbdcnd
1527
+ real dimension(*) :: bda
1528
+ real dimension(*) :: bdb
1529
+ real :: c
1530
+ real :: d
1531
+ integer :: n
1532
+ integer :: nbdcnd
1533
+ real dimension(*) :: bdc
1534
+ real dimension(*) :: bdd
1535
+ real :: elmbda
1536
+ real dimension(idimf,*) :: f
1537
+ integer, optional,check(shape(f, 0) == idimf),depend(f) :: idimf=shape(f, 0)
1538
+ real :: pertrb
1539
+ integer :: ierror
1540
+ real dimension(*) :: w
1541
+ end subroutine hwsplr
1542
+ subroutine hwsssp(ts,tf,m,mbdcnd,bdts,bdtf,ps,pf,n,nbdcnd,bdps,bdpf,elmbda,f,idimf,pertrb,ierror,w) ! in :fishpack:hwsssp.f
1543
+ real :: ts
1544
+ real :: tf
1545
+ integer :: m
1546
+ integer :: mbdcnd
1547
+ real dimension(*) :: bdts
1548
+ real dimension(*) :: bdtf
1549
+ real :: ps
1550
+ real :: pf
1551
+ integer :: n
1552
+ integer :: nbdcnd
1553
+ real dimension(*) :: bdps
1554
+ real dimension(*) :: bdpf
1555
+ real :: elmbda
1556
+ real dimension(idimf,1) :: f
1557
+ integer, optional,check(shape(f, 0) == idimf),depend(f) :: idimf=shape(f, 0)
1558
+ real :: pertrb
1559
+ integer :: ierror
1560
+ real dimension(*) :: w
1561
+ end subroutine hwsssp
1562
+ subroutine hwsss1(ts,tf,m,mbdcnd,bdts,bdtf,ps,pf,n,nbdcnd,bdps,bdpf,elmbda,f,idimf,pertrb,am,bm,cm,sn,ss,sint,d) ! in :fishpack:hwsssp.f
1563
+ real :: ts
1564
+ real :: tf
1565
+ integer :: m
1566
+ integer :: mbdcnd
1567
+ real dimension(*) :: bdts
1568
+ real dimension(*) :: bdtf
1569
+ real :: ps
1570
+ real :: pf
1571
+ integer :: n
1572
+ integer :: nbdcnd
1573
+ real dimension(*) :: bdps
1574
+ real dimension(*) :: bdpf
1575
+ real :: elmbda
1576
+ real dimension(idimf,*) :: f
1577
+ integer, optional,check(shape(f, 0) == idimf),depend(f) :: idimf=shape(f, 0)
1578
+ real :: pertrb
1579
+ real dimension(*) :: am
1580
+ real dimension(*) :: bm
1581
+ real dimension(*) :: cm
1582
+ real dimension(*) :: sn
1583
+ real dimension(*) :: ss
1584
+ real dimension(*) :: sint
1585
+ real dimension(*) :: d
1586
+ end subroutine hwsss1
1587
+ subroutine pois3d(lperod,l,c1,mperod,m,c2,nperod,n,a,b,c,ldimf,mdimf,f,ierror,w) ! in :fishpack:pois3d.f
1588
+ integer :: lperod
1589
+ integer :: l
1590
+ real :: c1
1591
+ integer :: mperod
1592
+ integer :: m
1593
+ real :: c2
1594
+ integer :: nperod
1595
+ integer :: n
1596
+ real dimension(*) :: a
1597
+ real dimension(*) :: b
1598
+ real dimension(*) :: c
1599
+ integer, optional,check(shape(f, 0) == ldimf),depend(f) :: ldimf=shape(f, 0)
1600
+ integer, optional,check(shape(f, 1) == mdimf),depend(f) :: mdimf=shape(f, 1)
1601
+ real dimension(ldimf,mdimf,1) :: f
1602
+ integer :: ierror
1603
+ real dimension(*) :: w
1604
+ end subroutine pois3d
1605
+ subroutine pos3d1(lp,l,mp,m,n,a,b,c,ldimf,mdimf,f,xrt,yrt,t,d,wx,wy,c1,c2,bb) ! in :fishpack:pois3d.f
1606
+ integer :: lp
1607
+ integer :: l
1608
+ integer :: mp
1609
+ integer :: m
1610
+ integer :: n
1611
+ real dimension(*) :: a
1612
+ real dimension(*) :: b
1613
+ real dimension(*) :: c
1614
+ integer, optional,check(shape(f, 0) == ldimf),depend(f) :: ldimf=shape(f, 0)
1615
+ integer, optional,check(shape(f, 1) == mdimf),depend(f) :: mdimf=shape(f, 1)
1616
+ real dimension(ldimf,mdimf,1) :: f
1617
+ real dimension(*) :: xrt
1618
+ real dimension(*) :: yrt
1619
+ real dimension(*) :: t
1620
+ real dimension(*) :: d
1621
+ real dimension(*) :: wx
1622
+ real dimension(*) :: wy
1623
+ real :: c1
1624
+ real :: c2
1625
+ real dimension(*) :: bb
1626
+ end subroutine pos3d1
1627
+ subroutine trid(mr,a,b,c,y,d) ! in :fishpack:pois3d.f
1628
+ integer :: mr
1629
+ real dimension(*) :: a
1630
+ real dimension(*) :: b
1631
+ real dimension(*) :: c
1632
+ real dimension(*) :: y
1633
+ real dimension(*) :: d
1634
+ end subroutine trid
1635
+ subroutine poistg(nperod,n,mperod,m,a,b,c,idimy,y,ierror,w) ! in :fishpack:poistg.f
1636
+ integer :: nperod
1637
+ integer :: n
1638
+ integer :: mperod
1639
+ integer :: m
1640
+ real dimension(*) :: a
1641
+ real dimension(*) :: b
1642
+ real dimension(*) :: c
1643
+ integer, optional,check(shape(y, 0) == idimy),depend(y) :: idimy=shape(y, 0)
1644
+ real dimension(idimy,1) :: y
1645
+ integer :: ierror
1646
+ real dimension(*) :: w
1647
+ end subroutine poistg
1648
+ subroutine postg2(nperod,n,m,a,bb,c,idimq,q,b,b2,b3,w,w2,w3,d,tcos,p) ! in :fishpack:poistg.f
1649
+ integer :: nperod
1650
+ integer :: n
1651
+ integer :: m
1652
+ real dimension(*) :: a
1653
+ real dimension(*) :: bb
1654
+ real dimension(*) :: c
1655
+ integer, optional,check(shape(q, 0) == idimq),depend(q) :: idimq=shape(q, 0)
1656
+ real dimension(idimq,*) :: q
1657
+ real dimension(*) :: b
1658
+ real dimension(*) :: b2
1659
+ real dimension(*) :: b3
1660
+ real dimension(*) :: w
1661
+ real dimension(*) :: w2
1662
+ real dimension(*) :: w3
1663
+ real dimension(*) :: d
1664
+ real dimension(*) :: tcos
1665
+ real dimension(*) :: p
1666
+ end subroutine postg2
1667
+ subroutine seport(usol,idmn,zn,zm,pertrb) ! in :fishpack:sepaux.f
1668
+ real dimension(idmn,1) :: usol
1669
+ integer, optional,check(shape(usol, 0) == idmn),depend(usol) :: idmn=shape(usol, 0)
1670
+ real dimension(*) :: zn
1671
+ real dimension(*) :: zm
1672
+ real :: pertrb
1673
+ integer :: kswx
1674
+ integer :: kswy
1675
+ integer :: k
1676
+ integer :: l
1677
+ real :: ait
1678
+ real :: bit
1679
+ real :: cit
1680
+ real :: dit
1681
+ integer :: mit
1682
+ integer :: nit
1683
+ integer :: is
1684
+ integer :: ms
1685
+ integer :: js
1686
+ integer :: ns
1687
+ real :: dlx
1688
+ real :: dly
1689
+ real :: tdlx3
1690
+ real :: tdly3
1691
+ real :: dlx4
1692
+ real :: dly4
1693
+ common /splp/ kswx,kswy,k,l,ait,bit,cit,dit,mit,nit,is,ms,js,ns,dlx,dly,tdlx3,tdly3,dlx4,dly4
1694
+ end subroutine seport
1695
+ subroutine sepmin(usol,idmn,zn,zm,pertb) ! in :fishpack:sepaux.f
1696
+ real dimension(idmn,1) :: usol
1697
+ integer, optional,check(shape(usol, 0) == idmn),depend(usol) :: idmn=shape(usol, 0)
1698
+ real dimension(*) :: zn
1699
+ real dimension(*) :: zm
1700
+ real :: pertb
1701
+ integer :: kswx
1702
+ integer :: kswy
1703
+ integer :: k
1704
+ integer :: l
1705
+ real :: ait
1706
+ real :: bit
1707
+ real :: cit
1708
+ real :: dit
1709
+ integer :: mit
1710
+ integer :: nit
1711
+ integer :: is
1712
+ integer :: ms
1713
+ integer :: js
1714
+ integer :: ns
1715
+ real :: dlx
1716
+ real :: dly
1717
+ real :: tdlx3
1718
+ real :: tdly3
1719
+ real :: dlx4
1720
+ real :: dly4
1721
+ common /splp/ kswx,kswy,k,l,ait,bit,cit,dit,mit,nit,is,ms,js,ns,dlx,dly,tdlx3,tdly3,dlx4,dly4
1722
+ end subroutine sepmin
1723
+ subroutine septri(n,a,b,c,d,u,z) ! in :fishpack:sepaux.f
1724
+ integer, optional,check(shape(a, 0) == n),depend(a) :: n=shape(a, 0)
1725
+ real dimension(n) :: a
1726
+ real dimension(n),depend(n) :: b
1727
+ real dimension(n),depend(n) :: c
1728
+ real dimension(n),depend(n) :: d
1729
+ real dimension(n),depend(n) :: u
1730
+ real dimension(n),depend(n) :: z
1731
+ end subroutine septri
1732
+ subroutine sepdx(u,idmn,i,j,uxxx,uxxxx) ! in :fishpack:sepaux.f
1733
+ real dimension(idmn,1) :: u
1734
+ integer, optional,check(shape(u, 0) == idmn),depend(u) :: idmn=shape(u, 0)
1735
+ integer :: i
1736
+ integer :: j
1737
+ real :: uxxx
1738
+ real :: uxxxx
1739
+ integer :: kswx
1740
+ integer :: kswy
1741
+ integer :: k
1742
+ integer :: l
1743
+ real :: ait
1744
+ real :: bit
1745
+ real :: cit
1746
+ real :: dit
1747
+ integer :: mit
1748
+ integer :: nit
1749
+ integer :: is
1750
+ integer :: ms
1751
+ integer :: js
1752
+ integer :: ns
1753
+ real :: dlx
1754
+ real :: dly
1755
+ real :: tdlx3
1756
+ real :: tdly3
1757
+ real :: dlx4
1758
+ real :: dly4
1759
+ common /splp/ kswx,kswy,k,l,ait,bit,cit,dit,mit,nit,is,ms,js,ns,dlx,dly,tdlx3,tdly3,dlx4,dly4
1760
+ end subroutine sepdx
1761
+ subroutine sepdy(u,idmn,i,j,uyyy,uyyyy) ! in :fishpack:sepaux.f
1762
+ real dimension(idmn,*) :: u
1763
+ integer, optional,check(shape(u, 0) == idmn),depend(u) :: idmn=shape(u, 0)
1764
+ integer :: i
1765
+ integer :: j
1766
+ real :: uyyy
1767
+ real :: uyyyy
1768
+ integer :: kswx
1769
+ integer :: kswy
1770
+ integer :: k
1771
+ integer :: l
1772
+ real :: ait
1773
+ real :: bit
1774
+ real :: cit
1775
+ real :: dit
1776
+ integer :: mit
1777
+ integer :: nit
1778
+ integer :: is
1779
+ integer :: ms
1780
+ integer :: js
1781
+ integer :: ns
1782
+ real :: dlx
1783
+ real :: dly
1784
+ real :: tdlx3
1785
+ real :: tdly3
1786
+ real :: dlx4
1787
+ real :: dly4
1788
+ common /splp/ kswx,kswy,k,l,ait,bit,cit,dit,mit,nit,is,ms,js,ns,dlx,dly,tdlx3,tdly3,dlx4,dly4
1789
+ end subroutine sepdy
1790
+ subroutine sepeli(intl,iorder,a,b,m,mbdcnd,bda,alpha,bdb,beta,c,d,n,nbdcnd,bdc,gama,bdd,xnu,cofx,cofy,grhs,usol,idmn,w,pertrb,ierror) ! in :fishpack:sepeli.f
1791
+ integer :: intl
1792
+ integer :: iorder
1793
+ real :: a
1794
+ real :: b
1795
+ integer :: m
1796
+ integer :: mbdcnd
1797
+ real dimension(*) :: bda
1798
+ real :: alpha
1799
+ real dimension(*) :: bdb
1800
+ real :: beta
1801
+ real :: c
1802
+ real :: d
1803
+ integer :: n
1804
+ integer :: nbdcnd
1805
+ real dimension(*) :: bdc
1806
+ real :: gama
1807
+ real dimension(*) :: bdd
1808
+ real :: xnu
1809
+ external cofx
1810
+ external cofy
1811
+ real dimension(idmn,1) :: grhs
1812
+ real dimension(idmn,1),depend(idmn) :: usol
1813
+ integer, optional,check(shape(grhs, 0) == idmn),depend(grhs) :: idmn=shape(grhs, 0)
1814
+ real dimension(*) :: w
1815
+ real :: pertrb
1816
+ integer :: ierror
1817
+ end subroutine sepeli
1818
+ subroutine spelip(intl,iorder,a,b,m,mbdcnd,bda,alpha,bdb,beta,c,d,n,nbdcnd,bdc,gama,bdd,xnu,cofx,cofy,an,bn,cn,dn,un,zn,am,bm,cm,dm,um,zm,grhs,usol,idmn,w,pertrb,ierror) ! in :fishpack:sepeli.f
1819
+ use spelip__user__routines
1820
+ integer :: intl
1821
+ integer :: iorder
1822
+ real :: a
1823
+ real :: b
1824
+ integer :: m
1825
+ integer :: mbdcnd
1826
+ real dimension(*) :: bda
1827
+ real :: alpha
1828
+ real dimension(*) :: bdb
1829
+ real :: beta
1830
+ real :: c
1831
+ real :: d
1832
+ integer :: n
1833
+ integer :: nbdcnd
1834
+ real dimension(*) :: bdc
1835
+ real :: gama
1836
+ real dimension(*) :: bdd
1837
+ real :: xnu
1838
+ external cofx
1839
+ external cofy
1840
+ real dimension(*) :: an
1841
+ real dimension(*) :: bn
1842
+ real dimension(*) :: cn
1843
+ real dimension(*) :: dn
1844
+ real dimension(*) :: un
1845
+ real dimension(*) :: zn
1846
+ real dimension(*) :: am
1847
+ real dimension(*) :: bm
1848
+ real dimension(*) :: cm
1849
+ real dimension(*) :: dm
1850
+ real dimension(*) :: um
1851
+ real dimension(*) :: zm
1852
+ real dimension(idmn,1) :: grhs
1853
+ real dimension(idmn,1),depend(idmn) :: usol
1854
+ integer, optional,check(shape(grhs, 0) == idmn),depend(grhs) :: idmn=shape(grhs, 0)
1855
+ real dimension(*) :: w
1856
+ real :: pertrb
1857
+ integer :: ierror
1858
+ integer :: kswx
1859
+ integer :: kswy
1860
+ integer :: k
1861
+ integer :: l
1862
+ real :: ait
1863
+ real :: bit
1864
+ real :: cit
1865
+ real :: dit
1866
+ integer :: mit
1867
+ integer :: nit
1868
+ integer :: is
1869
+ integer :: ms
1870
+ integer :: js
1871
+ integer :: ns
1872
+ real :: dlx
1873
+ real :: dly
1874
+ real :: tdlx3
1875
+ real :: tdly3
1876
+ real :: dlx4
1877
+ real :: dly4
1878
+ common /splp/ kswx,kswy,k,l,ait,bit,cit,dit,mit,nit,is,ms,js,ns,dlx,dly,tdlx3,tdly3,dlx4,dly4
1879
+ end subroutine spelip
1880
+ subroutine chkprm(intl,iorder,a,b,m,mbdcnd,c,d,n,nbdcnd,cofx,cofy,idmn,ierror) ! in :fishpack:sepeli.f
1881
+ use chkprm__user__routines
1882
+ integer :: intl
1883
+ integer :: iorder
1884
+ real :: a
1885
+ real :: b
1886
+ integer :: m
1887
+ integer :: mbdcnd
1888
+ real :: c
1889
+ real :: d
1890
+ integer :: n
1891
+ integer :: nbdcnd
1892
+ external cofx
1893
+ external cofy
1894
+ integer :: idmn
1895
+ integer :: ierror
1896
+ end subroutine chkprm
1897
+ subroutine chksng(mbdcnd,nbdcnd,alpha,beta,gama,xnu,cofx,cofy,singlr) ! in :fishpack:sepeli.f
1898
+ use chksng__user__routines
1899
+ integer :: mbdcnd
1900
+ integer :: nbdcnd
1901
+ real :: alpha
1902
+ real :: beta
1903
+ real :: gama
1904
+ real :: xnu
1905
+ external cofx
1906
+ external cofy
1907
+ logical :: singlr
1908
+ integer :: kswx
1909
+ integer :: kswy
1910
+ integer :: k
1911
+ integer :: l
1912
+ real :: ait
1913
+ real :: bit
1914
+ real :: cit
1915
+ real :: dit
1916
+ integer :: mit
1917
+ integer :: nit
1918
+ integer :: is
1919
+ integer :: ms
1920
+ integer :: js
1921
+ integer :: ns
1922
+ real :: dlx
1923
+ real :: dly
1924
+ real :: tdlx3
1925
+ real :: tdly3
1926
+ real :: dlx4
1927
+ real :: dly4
1928
+ common /splp/ kswx,kswy,k,l,ait,bit,cit,dit,mit,nit,is,ms,js,ns,dlx,dly,tdlx3,tdly3,dlx4,dly4
1929
+ end subroutine chksng
1930
+ subroutine defer(cofx,cofy,idmn,usol,grhs) ! in :fishpack:sepeli.f
1931
+ use defer__user__routines
1932
+ external cofx
1933
+ external cofy
1934
+ integer, optional,check(shape(usol, 0) == idmn),depend(usol) :: idmn=shape(usol, 0)
1935
+ real dimension(idmn,1) :: usol
1936
+ real dimension(idmn,1),depend(idmn) :: grhs
1937
+ integer :: kswx
1938
+ integer :: kswy
1939
+ integer :: k
1940
+ integer :: l
1941
+ real :: ait
1942
+ real :: bit
1943
+ real :: cit
1944
+ real :: dit
1945
+ integer :: mit
1946
+ integer :: nit
1947
+ integer :: is
1948
+ integer :: ms
1949
+ integer :: js
1950
+ integer :: ns
1951
+ real :: dlx
1952
+ real :: dly
1953
+ real :: tdlx3
1954
+ real :: tdly3
1955
+ real :: dlx4
1956
+ real :: dly4
1957
+ common /splp/ kswx,kswy,k,l,ait,bit,cit,dit,mit,nit,is,ms,js,ns,dlx,dly,tdlx3,tdly3,dlx4,dly4
1958
+ end subroutine defer
1959
+ subroutine sepx4(iorder,a,b,m,mbdcnd,bda,alpha,bdb,beta,c,d,n,nbdcnd,bdc,bdd,cofx,grhs,usol,idmn,w,pertrb,ierror) ! in :fishpack:sepx4.f
1960
+ integer :: iorder
1961
+ real :: a
1962
+ real :: b
1963
+ integer :: m
1964
+ integer :: mbdcnd
1965
+ real dimension(*) :: bda
1966
+ real :: alpha
1967
+ real dimension(*) :: bdb
1968
+ real :: beta
1969
+ real :: c
1970
+ real :: d
1971
+ integer :: n
1972
+ integer :: nbdcnd
1973
+ real dimension(*) :: bdc
1974
+ real dimension(*) :: bdd
1975
+ real :: cofx
1976
+ real dimension(idmn,1) :: grhs
1977
+ real dimension(idmn,1),depend(idmn) :: usol
1978
+ integer, optional,check(shape(grhs, 0) == idmn),depend(grhs) :: idmn=shape(grhs, 0)
1979
+ real dimension(*) :: w
1980
+ real :: pertrb
1981
+ integer :: ierror
1982
+ end subroutine sepx4
1983
+ subroutine s4elip(iorder,a,b,m,mbdcnd,bda,alpha,bdb,beta,c,d,n,nbdcnd,bdc,bdd,cofx,an,bn,cn,dn,un,zn,am,bm,cm,dm,um,zm,grhs,usol,idmn,w,pertrb,ierror) ! in :fishpack:sepx4.f
1984
+ use s4elip__user__routines
1985
+ integer :: iorder
1986
+ real :: a
1987
+ real :: b
1988
+ integer :: m
1989
+ integer :: mbdcnd
1990
+ real dimension(*) :: bda
1991
+ real :: alpha
1992
+ real dimension(*) :: bdb
1993
+ real :: beta
1994
+ real :: c
1995
+ real :: d
1996
+ integer :: n
1997
+ integer :: nbdcnd
1998
+ real dimension(*) :: bdc
1999
+ real dimension(*) :: bdd
2000
+ external cofx
2001
+ real dimension(*) :: an
2002
+ real dimension(*) :: bn
2003
+ real dimension(*) :: cn
2004
+ real dimension(*) :: dn
2005
+ real dimension(*) :: un
2006
+ real dimension(*) :: zn
2007
+ real dimension(*) :: am
2008
+ real dimension(*) :: bm
2009
+ real dimension(*) :: cm
2010
+ real dimension(*) :: dm
2011
+ real dimension(*) :: um
2012
+ real dimension(*) :: zm
2013
+ real dimension(idmn,1) :: grhs
2014
+ real dimension(idmn,1),depend(idmn) :: usol
2015
+ integer, optional,check(shape(grhs, 0) == idmn),depend(grhs) :: idmn=shape(grhs, 0)
2016
+ real dimension(*) :: w
2017
+ real :: pertrb
2018
+ integer :: ierror
2019
+ integer :: kswx
2020
+ integer :: kswy
2021
+ integer :: k
2022
+ integer :: l
2023
+ real :: ait
2024
+ real :: bit
2025
+ real :: cit
2026
+ real :: dit
2027
+ integer :: mit
2028
+ integer :: nit
2029
+ integer :: is
2030
+ integer :: ms
2031
+ integer :: js
2032
+ integer :: ns
2033
+ real :: dlx
2034
+ real :: dly
2035
+ real :: tdlx3
2036
+ real :: tdly3
2037
+ real :: dlx4
2038
+ real :: dly4
2039
+ common /splp/ kswx,kswy,k,l,ait,bit,cit,dit,mit,nit,is,ms,js,ns,dlx,dly,tdlx3,tdly3,dlx4,dly4
2040
+ end subroutine s4elip
2041
+ subroutine c4kprm(iorder,a,b,m,mbdcnd,c,d,n,nbdcnd,cofx,idmn,e_ierr_or_er) ! in :fishpack:sepx4.f
2042
+ use c4kprm__user__routines
2043
+ integer :: iorder
2044
+ real :: a
2045
+ real :: b
2046
+ integer :: m
2047
+ integer :: mbdcnd
2048
+ real :: c
2049
+ real :: d
2050
+ integer :: n
2051
+ integer :: nbdcnd
2052
+ external cofx
2053
+ integer :: idmn
2054
+ real :: e_ierr_or_er
2055
+ end subroutine c4kprm
2056
+ subroutine c4ksng(mbdcnd,nbdcnd,alpha,beta,cofx,singlr) ! in :fishpack:sepx4.f
2057
+ use c4ksng__user__routines
2058
+ integer :: mbdcnd
2059
+ integer :: nbdcnd
2060
+ real :: alpha
2061
+ real :: beta
2062
+ external cofx
2063
+ logical :: singlr
2064
+ integer :: kswx
2065
+ integer :: kswy
2066
+ integer :: k
2067
+ integer :: l
2068
+ real :: ait
2069
+ real :: bit
2070
+ real :: cit
2071
+ real :: dit
2072
+ integer :: mit
2073
+ integer :: nit
2074
+ integer :: is
2075
+ integer :: ms
2076
+ integer :: js
2077
+ integer :: ns
2078
+ real :: dlx
2079
+ real :: dly
2080
+ real :: tdlx3
2081
+ real :: tdly3
2082
+ real :: dlx4
2083
+ real :: dly4
2084
+ common /splp/ kswx,kswy,k,l,ait,bit,cit,dit,mit,nit,is,ms,js,ns,dlx,dly,tdlx3,tdly3,dlx4,dly4
2085
+ end subroutine c4ksng
2086
+ subroutine d4fer(cofx,idmn,usol,grhs) ! in :fishpack:sepx4.f
2087
+ use d4fer__user__routines
2088
+ external cofx
2089
+ integer, optional,check(shape(usol, 0) == idmn),depend(usol) :: idmn=shape(usol, 0)
2090
+ real dimension(idmn,1) :: usol
2091
+ real dimension(idmn,1),depend(idmn) :: grhs
2092
+ integer :: kswx
2093
+ integer :: kswy
2094
+ integer :: k
2095
+ integer :: l
2096
+ real :: ait
2097
+ real :: bit
2098
+ real :: cit
2099
+ real :: dit
2100
+ integer :: mit
2101
+ integer :: nit
2102
+ integer :: is
2103
+ integer :: ms
2104
+ integer :: js
2105
+ integer :: ns
2106
+ real :: dlx
2107
+ real :: dly
2108
+ real :: tdlx3
2109
+ real :: tdly3
2110
+ real :: dlx4
2111
+ real :: dly4
2112
+ common /splp/ kswx,kswy,k,l,ait,bit,cit,dit,mit,nit,is,ms,js,ns,dlx,dly,tdlx3,tdly3,dlx4,dly4
2113
+ end subroutine d4fer
2114
+ end interface
2115
+ end python module fishpack
2116
+
2117
+ ! This file was auto-generated with f2py (version:2.3.2).
2118
+ ! See:
2119
+ ! https://web.archive.org/web/20140822061353/http://cens.ioc.ee/projects/f2py2e