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,156 @@
1
+ module centered_helmholtz_solvers
2
+
3
+ use fishpack_precision, only: &
4
+ wp, & ! Working precision
5
+ ip, & ! Integer precision
6
+ PI, &
7
+ TWO_PI
8
+
9
+ use type_FishpackWorkspace, only: &
10
+ FishpackWorkspace
11
+
12
+ use type_CenteredCyclicReductionUtility, only: &
13
+ CenteredCyclicReductionUtility
14
+
15
+ use type_GeneralizedCyclicReductionUtility, only:&
16
+ GeneralizedCyclicReductionUtility
17
+
18
+ ! Explicit typing only
19
+ implicit none
20
+
21
+ ! Everything is private unless stated otherwise
22
+ private
23
+ public :: hwscrt ! Centered cartesian solver
24
+ public :: hwsplr ! Centered polar solver
25
+ public :: hwscyl ! Centered cylindrical solver
26
+ public :: hwsssp ! Centered spherical solver
27
+ public :: hwscsp ! Centered axisymmetric spherical solver
28
+
29
+ ! Parameters confined to the module
30
+ real(wp), parameter :: ZERO = 0.0_wp
31
+ real(wp), parameter :: HALF = 0.5_wp
32
+ real(wp), parameter :: ONE = 1.0_wp
33
+ real(wp), parameter :: TWO = 2.0_wp
34
+
35
+ ! Declare module subroutine interfaces
36
+ interface
37
+ module subroutine hwscrt(a, b, m, mbdcnd, bda, bdb, c, d, n, nbdcnd, bdc, &
38
+ bdd, elmbda, f, idimf, pertrb, ierror)
39
+
40
+ ! Dummy arguments
41
+ integer(ip), intent(in) :: m
42
+ integer(ip), intent(in) :: mbdcnd
43
+ integer(ip), intent(in) :: n
44
+ integer(ip), intent(in) :: nbdcnd
45
+ integer(ip), intent(in) :: idimf
46
+ integer(ip), intent(out) :: ierror
47
+ real(wp), intent(in) :: a
48
+ real(wp), intent(in) :: b
49
+ real(wp), intent(in) :: c
50
+ real(wp), intent(in) :: d
51
+ real(wp), intent(in) :: elmbda
52
+ real(wp), intent(out) :: pertrb
53
+ real(wp), intent(in) :: bda(:)
54
+ real(wp), intent(in) :: bdb(:)
55
+ real(wp), intent(in) :: bdc(:)
56
+ real(wp), intent(in) :: bdd(:)
57
+ real(wp), intent(inout) :: f(:,:)
58
+ end subroutine hwscrt
59
+
60
+ module subroutine hwsplr(a, b, m, mbdcnd, bda, bdb, c, d, n, nbdcnd, bdc, &
61
+ bdd, elmbda, f, idimf, pertrb, ierror)
62
+
63
+ ! Dummy arguments
64
+ integer(ip), intent(in) :: m
65
+ integer(ip), intent(in) :: mbdcnd
66
+ integer(ip), intent(in) :: n
67
+ integer(ip), intent(in) :: nbdcnd
68
+ integer(ip), intent(in) :: idimf
69
+ integer(ip), intent(out) :: ierror
70
+ real(wp), intent(in) :: a
71
+ real(wp), intent(in) :: b
72
+ real(wp), intent(in) :: c
73
+ real(wp), intent(in) :: d
74
+ real(wp), intent(in) :: elmbda
75
+ real(wp), intent(out) :: pertrb
76
+ real(wp), intent(in) :: bda(:)
77
+ real(wp), intent(in) :: bdb(:)
78
+ real(wp), intent(in) :: bdc(:)
79
+ real(wp), intent(in) :: bdd(:)
80
+ real(wp), intent(inout) :: f(:,:)
81
+ end subroutine hwsplr
82
+
83
+ module subroutine hwscyl(a, b, m, mbdcnd, bda, bdb, c, d, n, nbdcnd, bdc, &
84
+ bdd, elmbda, f, idimf, pertrb, ierror)
85
+
86
+ ! Dummy arguments
87
+ integer(ip), intent(in) :: m
88
+ integer(ip), intent(in) :: mbdcnd
89
+ integer(ip), intent(in) :: n
90
+ integer(ip), intent(in) :: nbdcnd
91
+ integer(ip), intent(in) :: idimf
92
+ integer(ip), intent(out) :: ierror
93
+ real(wp), intent(in) :: a
94
+ real(wp), intent(in) :: b
95
+ real(wp), intent(in) :: c
96
+ real(wp), intent(in) :: d
97
+ real(wp), intent(in) :: elmbda
98
+ real(wp), intent(out) :: pertrb
99
+ real(wp), intent(in) :: bda(:)
100
+ real(wp), intent(in) :: bdb(:)
101
+ real(wp), intent(in) :: bdc(:)
102
+ real(wp), intent(in) :: bdd(:)
103
+ real(wp), intent(inout) :: f(:,:)
104
+ end subroutine hwscyl
105
+
106
+ module subroutine hwsssp(ts, tf, m, mbdcnd, bdts, bdtf, ps, pf, n, nbdcnd, &
107
+ bdps, bdpf, elmbda, f, idimf, pertrb, ierror)
108
+
109
+ ! Dummy arguments
110
+ integer(ip), intent(in) :: m
111
+ integer(ip), intent(in) :: mbdcnd
112
+ integer(ip), intent(in) :: n
113
+ integer(ip), intent(in) :: nbdcnd
114
+ integer(ip), intent(in) :: idimf
115
+ integer(ip), intent(out) :: ierror
116
+ real(wp), intent(in) :: ts
117
+ real(wp), intent(in) :: tf
118
+ real(wp), intent(in) :: ps
119
+ real(wp), intent(in) :: pf
120
+ real(wp), intent(in) :: elmbda
121
+ real(wp), intent(out) :: pertrb
122
+ real(wp), intent(in) :: bdts(:)
123
+ real(wp), intent(in) :: bdtf(:)
124
+ real(wp), intent(in) :: bdps(:)
125
+ real(wp), intent(in) :: bdpf(:)
126
+ real(wp), intent(inout) :: f(:,:)
127
+
128
+ end subroutine hwsssp
129
+
130
+ module subroutine hwscsp(intl, ts, tf, m, mbdcnd, bdts, bdtf, rs, rf, n, &
131
+ nbdcnd, bdrs, bdrf, elmbda, f, idimf, pertrb, ierror, workspace)
132
+
133
+ ! Dummy arguments
134
+ integer(ip), intent(in) :: intl
135
+ integer(ip), intent(in) :: m
136
+ integer(ip), intent(in) :: mbdcnd
137
+ integer(ip), intent(in) :: n
138
+ integer(ip), intent(in) :: nbdcnd
139
+ integer(ip), intent(in) :: idimf
140
+ integer(ip), intent(out) :: ierror
141
+ real(wp), intent(in) :: ts
142
+ real(wp), intent(in) :: tf
143
+ real(wp), intent(in) :: rs
144
+ real(wp), intent(in) :: rf
145
+ real(wp), intent(in) :: elmbda
146
+ real(wp), intent(out) :: pertrb
147
+ real(wp), intent(in) :: bdts(:)
148
+ real(wp), intent(in) :: bdtf(:)
149
+ real(wp), intent(in) :: bdrs(:)
150
+ real(wp), intent(in) :: bdrf(:)
151
+ real(wp), intent(inout) :: f(:,:)
152
+ class(FishpackWorkspace), intent(inout) :: workspace
153
+ end subroutine hwscsp
154
+ end interface
155
+
156
+ end module centered_helmholtz_solvers