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.
- PyFishPack/__init__.py +86 -0
- PyFishPack/__pycache__/__init__.cpython-313.pyc +0 -0
- PyFishPack/__pycache__/apps.cpython-313.pyc +0 -0
- PyFishPack/_dummy.c +23 -0
- PyFishPack/_dummy.cp313-win_amd64.pyd +0 -0
- PyFishPack/apps.py +3640 -0
- PyFishPack/fishpack.cp313-win_amd64.dll.a +0 -0
- PyFishPack/fishpack.cp313-win_amd64.pyd +0 -0
- PyFishPack/meson.build +213 -0
- PyFishPack/src/archive/f77/Makefile +19 -0
- PyFishPack/src/archive/f77/blktri.f +1404 -0
- PyFishPack/src/archive/f77/cblktri.f +1414 -0
- PyFishPack/src/archive/f77/cmgnbn.f +1592 -0
- PyFishPack/src/archive/f77/comf.f +186 -0
- PyFishPack/src/archive/f77/fftpack.f +2968 -0
- PyFishPack/src/archive/f77/genbun.f +1335 -0
- PyFishPack/src/archive/f77/gnbnaux.f +314 -0
- PyFishPack/src/archive/f77/hstcrt.f +443 -0
- PyFishPack/src/archive/f77/hstcsp.f +683 -0
- PyFishPack/src/archive/f77/hstcyl.f +485 -0
- PyFishPack/src/archive/f77/hstplr.f +538 -0
- PyFishPack/src/archive/f77/hstssp.f +634 -0
- PyFishPack/src/archive/f77/hw3crt.f +687 -0
- PyFishPack/src/archive/f77/hwscrt.f +512 -0
- PyFishPack/src/archive/f77/hwscsp.f +728 -0
- PyFishPack/src/archive/f77/hwscyl.f +538 -0
- PyFishPack/src/archive/f77/hwsplr.f +602 -0
- PyFishPack/src/archive/f77/hwsssp.f +780 -0
- PyFishPack/src/archive/f77/pois3d.f +550 -0
- PyFishPack/src/archive/f77/poistg.f +875 -0
- PyFishPack/src/archive/f77/sepaux.f +361 -0
- PyFishPack/src/archive/f77/sepeli.f +1029 -0
- PyFishPack/src/archive/f77/sepx4.f +958 -0
- PyFishPack/src/centered_axisymmetric_spherical_solver.f90 +1002 -0
- PyFishPack/src/centered_cartesian_helmholtz_solver_3d.f90 +819 -0
- PyFishPack/src/centered_cartesian_solver.f90 +583 -0
- PyFishPack/src/centered_cylindrical_solver.f90 +634 -0
- PyFishPack/src/centered_helmholtz_solvers.f90 +156 -0
- PyFishPack/src/centered_polar_solver.f90 +746 -0
- PyFishPack/src/centered_real_linear_systems_solver.f90 +280 -0
- PyFishPack/src/centered_spherical_solver.f90 +928 -0
- PyFishPack/src/complex_block_tridiagonal_linear_systems_solver.f90 +1947 -0
- PyFishPack/src/complex_linear_systems_solver.f90 +1787 -0
- PyFishPack/src/fftpack_c_api.f90 +86 -0
- PyFishPack/src/fishpack.f90 +191 -0
- PyFishPack/src/fishpack.pyf +504 -0
- PyFishPack/src/fishpack_c_api.f90 +365 -0
- PyFishPack/src/fishpack_original.pyf +2119 -0
- PyFishPack/src/fishpack_precision.f90 +53 -0
- PyFishPack/src/general_linear_systems_solver_3d.f90 +296 -0
- PyFishPack/src/iterative_solvers.f90 +969 -0
- PyFishPack/src/main.f90 +10 -0
- PyFishPack/src/pyfishpack_module.c +1302 -0
- PyFishPack/src/real_block_tridiagonal_linear_systems_solver.f90 +319 -0
- PyFishPack/src/sepeli.f90 +1454 -0
- PyFishPack/src/sepx4.f90 +1338 -0
- PyFishPack/src/staggered_axisymmetric_spherical_solver.f90 +908 -0
- PyFishPack/src/staggered_cartesian_solver.f90 +553 -0
- PyFishPack/src/staggered_cylindrical_solver.f90 +630 -0
- PyFishPack/src/staggered_helmholtz_solvers.f90 +172 -0
- PyFishPack/src/staggered_polar_solver.f90 +651 -0
- PyFishPack/src/staggered_real_linear_systems_solver.f90 +258 -0
- PyFishPack/src/staggered_spherical_solver.f90 +758 -0
- PyFishPack/src/three_dimensional_solvers.f90 +602 -0
- PyFishPack/src/type_CenteredCyclicReductionUtility.f90 +1714 -0
- PyFishPack/src/type_CyclicReductionUtility.f90 +472 -0
- PyFishPack/src/type_FishpackWorkspace.f90 +290 -0
- PyFishPack/src/type_GeneralizedCyclicReductionUtility.f90 +1980 -0
- PyFishPack/src/type_PeriodicFastFourierTransform.f90 +3789 -0
- PyFishPack/src/type_SepAux.f90 +586 -0
- PyFishPack/src/type_StaggeredCyclicReductionUtility.f90 +893 -0
- pyfishpack-0.1.0.dist-info/DELVEWHEEL +2 -0
- pyfishpack-0.1.0.dist-info/METADATA +81 -0
- pyfishpack-0.1.0.dist-info/RECORD +81 -0
- pyfishpack-0.1.0.dist-info/WHEEL +5 -0
- pyfishpack-0.1.0.dist-info/licenses/LICENSE +21 -0
- pyfishpack-0.1.0.dist-info/top_level.txt +1 -0
- pyfishpack.libs/libgcc_s_seh-1-25d59ccffa1a9009644065b069829e07.dll +0 -0
- pyfishpack.libs/libgfortran-5-08f2195cfa0d823e13371c5c3186a82a.dll +0 -0
- pyfishpack.libs/libquadmath-0-c5abb9113f1ee64b87a889958e4b7418.dll +0 -0
- 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
|