PyFishPack 0.1.0__cp312-cp312-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-312.pyc +0 -0
- PyFishPack/__pycache__/apps.cpython-312.pyc +0 -0
- PyFishPack/_dummy.c +23 -0
- PyFishPack/_dummy.cp312-win_amd64.pyd +0 -0
- PyFishPack/apps.py +3640 -0
- PyFishPack/fishpack.cp312-win_amd64.dll.a +0 -0
- PyFishPack/fishpack.cp312-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
PyFishPack/__init__.py
ADDED
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"""
|
|
2
|
+
PyFishPack - Python wrapper for FISHPACK Fortran library
|
|
3
|
+
|
|
4
|
+
FISHPACK is a collection of Fortran routines for solving separable
|
|
5
|
+
elliptic partial differential equations.
|
|
6
|
+
"""
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
# start delvewheel patch
|
|
10
|
+
def _delvewheel_patch_1_13_0():
|
|
11
|
+
import os
|
|
12
|
+
if os.path.isdir(libs_dir := os.path.abspath(os.path.join(os.path.dirname(__file__), os.pardir, 'pyfishpack.libs'))):
|
|
13
|
+
os.add_dll_directory(libs_dir)
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
_delvewheel_patch_1_13_0()
|
|
17
|
+
del _delvewheel_patch_1_13_0
|
|
18
|
+
# end delvewheel patch
|
|
19
|
+
|
|
20
|
+
__version__ = "0.1.0"
|
|
21
|
+
|
|
22
|
+
try:
|
|
23
|
+
# Import the compiled fishpack extension
|
|
24
|
+
from . import fishpack
|
|
25
|
+
from .apps import (
|
|
26
|
+
invert_3DOcean,
|
|
27
|
+
invert_BrethertonHaidvogel,
|
|
28
|
+
invert_Eliassen,
|
|
29
|
+
invert_Fofonoff,
|
|
30
|
+
invert_GillMatsuno,
|
|
31
|
+
invert_GillMatsuno_test,
|
|
32
|
+
invert_MultiGrid,
|
|
33
|
+
invert_PV2D,
|
|
34
|
+
invert_Poisson,
|
|
35
|
+
invert_RefState,
|
|
36
|
+
invert_RefStateSWM,
|
|
37
|
+
invert_Stommel,
|
|
38
|
+
invert_StommelArons,
|
|
39
|
+
invert_StommelMunk,
|
|
40
|
+
invert_Stommel_test,
|
|
41
|
+
invert_geostrophic,
|
|
42
|
+
invert_omega,
|
|
43
|
+
spectral_transform,
|
|
44
|
+
)
|
|
45
|
+
|
|
46
|
+
# Make commonly used functions available at package level
|
|
47
|
+
# These will be available as PyFishPack.genbun, etc.
|
|
48
|
+
from .fishpack import *
|
|
49
|
+
|
|
50
|
+
__all__ = [name for name in dir(fishpack) if not name.startswith('_')]
|
|
51
|
+
__all__.extend([
|
|
52
|
+
"invert_3DOcean",
|
|
53
|
+
"invert_BrethertonHaidvogel",
|
|
54
|
+
"invert_Eliassen",
|
|
55
|
+
"invert_Fofonoff",
|
|
56
|
+
"invert_GillMatsuno",
|
|
57
|
+
"invert_GillMatsuno_test",
|
|
58
|
+
"invert_MultiGrid",
|
|
59
|
+
"invert_PV2D",
|
|
60
|
+
"invert_Poisson",
|
|
61
|
+
"invert_RefState",
|
|
62
|
+
"invert_RefStateSWM",
|
|
63
|
+
"invert_Stommel",
|
|
64
|
+
"invert_StommelArons",
|
|
65
|
+
"invert_StommelMunk",
|
|
66
|
+
"invert_Stommel_test",
|
|
67
|
+
"invert_geostrophic",
|
|
68
|
+
"invert_omega",
|
|
69
|
+
"spectral_transform",
|
|
70
|
+
])
|
|
71
|
+
|
|
72
|
+
except ImportError as e:
|
|
73
|
+
import warnings
|
|
74
|
+
print(f"Warning: Could not import fishpack extension: {e}")
|
|
75
|
+
print("Make sure the extension is compiled correctly.")
|
|
76
|
+
warnings.warn(f"Could not import fishpack extension: {e}. "
|
|
77
|
+
f"Make sure the extension is compiled correctly.",
|
|
78
|
+
ImportWarning)
|
|
79
|
+
|
|
80
|
+
# Fallback - define empty __all__
|
|
81
|
+
__all__ = []
|
|
82
|
+
|
|
83
|
+
# Package metadata
|
|
84
|
+
__author__ = "Qianye Su"
|
|
85
|
+
__email__ = "suqianye2000@gmail.com"
|
|
86
|
+
__url__ = "https://github.com/QianyeSu/PyFishPack"
|
|
Binary file
|
|
Binary file
|
PyFishPack/_dummy.c
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/* Dummy C extension for Windows compatibility */
|
|
2
|
+
#include <Python.h>
|
|
3
|
+
|
|
4
|
+
static PyObject* dummy_function(PyObject* self, PyObject* args) {
|
|
5
|
+
return Py_None;
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
static PyMethodDef DummyMethods[] = {
|
|
9
|
+
{"dummy", dummy_function, METH_VARARGS, "Dummy function"},
|
|
10
|
+
{NULL, NULL, 0, NULL}
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
static struct PyModuleDef dummymodule = {
|
|
14
|
+
PyModuleDef_HEAD_INIT,
|
|
15
|
+
"_dummy",
|
|
16
|
+
NULL,
|
|
17
|
+
-1,
|
|
18
|
+
DummyMethods
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
PyMODINIT_FUNC PyInit__dummy(void) {
|
|
22
|
+
return PyModule_Create(&dummymodule);
|
|
23
|
+
}
|
|
Binary file
|