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,186 @@
|
|
|
1
|
+
C
|
|
2
|
+
C file comf.f
|
|
3
|
+
C
|
|
4
|
+
C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
|
5
|
+
C * *
|
|
6
|
+
C * copyright (c) 1999 by UCAR *
|
|
7
|
+
C * *
|
|
8
|
+
C * UNIVERSITY CORPORATION for ATMOSPHERIC RESEARCH *
|
|
9
|
+
C * *
|
|
10
|
+
C * all rights reserved *
|
|
11
|
+
C * *
|
|
12
|
+
C * FISHPACK version 4.1 *
|
|
13
|
+
C * *
|
|
14
|
+
C * A PACKAGE OF FORTRAN SUBPROGRAMS FOR THE SOLUTION OF *
|
|
15
|
+
C * *
|
|
16
|
+
C * SEPARABLE ELLIPTIC PARTIAL DIFFERENTIAL EQUATIONS *
|
|
17
|
+
C * *
|
|
18
|
+
C * BY *
|
|
19
|
+
C * *
|
|
20
|
+
C * JOHN ADAMS, PAUL SWARZTRAUBER AND ROLAND SWEET *
|
|
21
|
+
C * *
|
|
22
|
+
C * OF *
|
|
23
|
+
C * *
|
|
24
|
+
C * THE NATIONAL CENTER FOR ATMOSPHERIC RESEARCH *
|
|
25
|
+
C * *
|
|
26
|
+
C * BOULDER, COLORADO (80307) U.S.A. *
|
|
27
|
+
C * *
|
|
28
|
+
C * WHICH IS SPONSORED BY *
|
|
29
|
+
C * *
|
|
30
|
+
C * THE NATIONAL SCIENCE FOUNDATION *
|
|
31
|
+
C * *
|
|
32
|
+
C * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
|
|
33
|
+
C
|
|
34
|
+
C
|
|
35
|
+
C PACKAGE COMF THE ENTRIES IN THIS PACKAGE ARE LOWLEVEL
|
|
36
|
+
C ENTRIES, SUPPORTING FISHPACK ENTRIES BLKTRI
|
|
37
|
+
C AND CBLKTRI. THAT IS, THESE ROUTINES ARE
|
|
38
|
+
C NOT CALLED DIRECTLY BY USERS, BUT RATHER
|
|
39
|
+
C BY ENTRIES WITHIN BLKTRI AND CBLKTRI.
|
|
40
|
+
C DESCRIPTION OF ENTRIES EPMACH AND PIMACH
|
|
41
|
+
C FOLLOW BELOW.
|
|
42
|
+
C
|
|
43
|
+
C LATEST REVISION NOVEMBER 1988
|
|
44
|
+
C
|
|
45
|
+
C SPECIAL CONDITIONS NONE
|
|
46
|
+
C
|
|
47
|
+
C I/O NONE
|
|
48
|
+
C
|
|
49
|
+
C PRECISION SINGLE
|
|
50
|
+
C
|
|
51
|
+
C REQUIRED LIBRARY NONE
|
|
52
|
+
C FILES
|
|
53
|
+
C
|
|
54
|
+
C LANGUAGE FORTRAN
|
|
55
|
+
C ********************************************************************
|
|
56
|
+
C
|
|
57
|
+
C FUNCTION EPMACH (DUM)
|
|
58
|
+
C
|
|
59
|
+
C PURPOSE TO COMPUTE AN APPROXIMATE MACHINE ACCURACY
|
|
60
|
+
C EPSILON ACCORDING TO THE FOLLOWING DEFINITION:
|
|
61
|
+
C EPSILON IS THE SMALLEST NUMBER SUCH THAT
|
|
62
|
+
C (1.+EPSILON).GT.1.)
|
|
63
|
+
C
|
|
64
|
+
C USAGE EPS = EPMACH (DUM)
|
|
65
|
+
C
|
|
66
|
+
C ARGUMENTS
|
|
67
|
+
C ON INPUT DUM
|
|
68
|
+
C DUMMY VALUE
|
|
69
|
+
C
|
|
70
|
+
C ARGUMENTS
|
|
71
|
+
C ON OUTPUT NONE
|
|
72
|
+
C
|
|
73
|
+
C HISTORY THE ORIGINAL VERSION, WRITTEN WHEN THE
|
|
74
|
+
C BLKTRI PACKAGE WAS CONVERTED FROM THE
|
|
75
|
+
C CDC 7600 TO RUN ON THE CRAY-1, CALCULATED
|
|
76
|
+
C MACHINE ACCURACY BY SUCCESSIVE DIVISIONS
|
|
77
|
+
C BY 10. USE OF THIS CONSTANT CAUSED BLKTRI
|
|
78
|
+
C TO COMPUTE SOLUTIONS ON THE CRAY-1 WITH FOUR
|
|
79
|
+
C FEWER PLACES OF ACCURACY THAN THE VERSION
|
|
80
|
+
C ON THE 7600. IT WAS FOUND THAT COMPUTING
|
|
81
|
+
C MACHINE ACCURACY BY SUCCESSIVE DIVISIONS
|
|
82
|
+
C OF 2 PRODUCED A MACHINE ACCURACY 29% LESS
|
|
83
|
+
C THAN THE VALUE GENERATED BY SUCCESSIVE
|
|
84
|
+
C DIVISIONS BY 10, AND THAT USE OF THIS
|
|
85
|
+
C MACHINE CONSTANT IN THE BLKTRI PACKAGE
|
|
86
|
+
C RECOVERED THE ACCURACY THAT APPEARED TO
|
|
87
|
+
C BE LOST ON CONVERSION.
|
|
88
|
+
C
|
|
89
|
+
C ALGORITHM COMPUTES MACHINE ACCURACY BY SUCCESSIVE
|
|
90
|
+
C DIVISIONS OF TWO.
|
|
91
|
+
C
|
|
92
|
+
C PORTABILITY THIS CODE WILL EXECUTE ON MACHINES OTHER
|
|
93
|
+
C THAN THE CRAY1, BUT THE RETURNED VALUE MAY
|
|
94
|
+
C BE UNSATISFACTORY. SEE HISTORY ABOVE.
|
|
95
|
+
C ********************************************************************
|
|
96
|
+
C
|
|
97
|
+
C 11/26/2011
|
|
98
|
+
C This routine commented out because it also appears in fftpack
|
|
99
|
+
C giving a compile-time conflict when making libfishpack.a.
|
|
100
|
+
C
|
|
101
|
+
C FUNCTION PIMACH (DUM)
|
|
102
|
+
C
|
|
103
|
+
C PURPOSE TO SUPPLY THE VALUE OF THE CONSTANT PI
|
|
104
|
+
C CORRECT TO MACHINE PRECISION WHERE
|
|
105
|
+
C PI=3.141592653589793238462643383279502884197
|
|
106
|
+
C 1693993751058209749446
|
|
107
|
+
C
|
|
108
|
+
C USAGE PI = PIMACH (DUM)
|
|
109
|
+
C
|
|
110
|
+
C ARGUMENTS
|
|
111
|
+
C ON INPUT DUM
|
|
112
|
+
C DUMMY VALUE
|
|
113
|
+
C
|
|
114
|
+
C ARGUMENTS
|
|
115
|
+
C ON OUTPUT NONE
|
|
116
|
+
C
|
|
117
|
+
C ALGORITHM THE VALUE OF PI IS SET TO 4.*ATAN(1.0)
|
|
118
|
+
C
|
|
119
|
+
C PORTABILITY THIS ENTRY IS PORTABLE, BUT USERS SHOULD
|
|
120
|
+
C CHECK TO SEE WHETHER GREATER ACCURACY IS
|
|
121
|
+
C REQUIRED.
|
|
122
|
+
C
|
|
123
|
+
C***********************************************************************
|
|
124
|
+
FUNCTION EPMACH (DUM)
|
|
125
|
+
COMMON /VALUE/ V
|
|
126
|
+
EPS = 1.
|
|
127
|
+
101 EPS = EPS/2.
|
|
128
|
+
CALL STRWRD (EPS+1.)
|
|
129
|
+
IF (V-1.) 102,102,101
|
|
130
|
+
102 EPMACH = 100.*EPS
|
|
131
|
+
RETURN
|
|
132
|
+
END
|
|
133
|
+
SUBROUTINE STRWRD (X)
|
|
134
|
+
COMMON /VALUE/ V
|
|
135
|
+
V = X
|
|
136
|
+
RETURN
|
|
137
|
+
END
|
|
138
|
+
C FUNCTION PIMACH (DUM)
|
|
139
|
+
C PI=3.1415926535897932384626433832795028841971693993751058209749446
|
|
140
|
+
C
|
|
141
|
+
C PIMACH = 4.*ATAN(1.0)
|
|
142
|
+
C RETURN
|
|
143
|
+
C END
|
|
144
|
+
FUNCTION PPSGF (X,IZ,C,A,BH)
|
|
145
|
+
DIMENSION A(*) ,C(*) ,BH(*)
|
|
146
|
+
SUM = 0.
|
|
147
|
+
DO 101 J=1,IZ
|
|
148
|
+
SUM = SUM-1./(X-BH(J))**2
|
|
149
|
+
101 CONTINUE
|
|
150
|
+
PPSGF = SUM
|
|
151
|
+
RETURN
|
|
152
|
+
END
|
|
153
|
+
FUNCTION PPSPF (X,IZ,C,A,BH)
|
|
154
|
+
DIMENSION A(*) ,C(*) ,BH(*)
|
|
155
|
+
SUM = 0.
|
|
156
|
+
DO 101 J=1,IZ
|
|
157
|
+
SUM = SUM+1./(X-BH(J))
|
|
158
|
+
101 CONTINUE
|
|
159
|
+
PPSPF = SUM
|
|
160
|
+
RETURN
|
|
161
|
+
END
|
|
162
|
+
FUNCTION PSGF (X,IZ,C,A,BH)
|
|
163
|
+
DIMENSION A(*) ,C(*) ,BH(*)
|
|
164
|
+
FSG = 1.
|
|
165
|
+
HSG = 1.
|
|
166
|
+
DO 101 J=1,IZ
|
|
167
|
+
DD = 1./(X-BH(J))
|
|
168
|
+
FSG = FSG*A(J)*DD
|
|
169
|
+
HSG = HSG*C(J)*DD
|
|
170
|
+
101 CONTINUE
|
|
171
|
+
IF (MOD(IZ,2)) 103,102,103
|
|
172
|
+
102 PSGF = 1.-FSG-HSG
|
|
173
|
+
RETURN
|
|
174
|
+
103 PSGF = 1.+FSG+HSG
|
|
175
|
+
RETURN
|
|
176
|
+
C
|
|
177
|
+
C REVISION HISTORY---
|
|
178
|
+
C
|
|
179
|
+
C SEPTEMBER 1973 VERSION 1
|
|
180
|
+
C APRIL 1976 VERSION 2
|
|
181
|
+
C JANUARY 1978 VERSION 3
|
|
182
|
+
C DECEMBER 1979 VERSION 3.1
|
|
183
|
+
C FEBRUARY 1985 DOCUMENTATION UPGRADE
|
|
184
|
+
C NOVEMBER 1988 VERSION 3.2, FORTRAN 77 CHANGES
|
|
185
|
+
C-----------------------------------------------------------------------
|
|
186
|
+
END
|