From b2c5aa8c0006e457fa7bad4661af08aa3043bc8f Mon Sep 17 00:00:00 2001 From: "Per.Andreas.Brodtkorb" Date: Fri, 9 Jul 2010 18:26:23 +0000 Subject: [PATCH] Added build_all.py that compiles all f2py extensions WAFO now works! --- pywafo/setup.py | 8 +- pywafo/src/Wafo.egg-info/PKG-INFO | 118 ++--- pywafo/src/Wafo.egg-info/SOURCES.txt | 235 ++++++++- pywafo/src/wafo/c_library.pyd | Bin 58077 -> 58077 bytes pywafo/src/wafo/diffsumfunq.pyd | Bin 50146 -> 0 bytes pywafo/src/wafo/diffsumfunq.pyf | 30 -- pywafo/src/wafo/disufq.pyf | 30 -- pywafo/src/wafo/disufq1.c | 446 ------------------ pywafo/src/wafo/findrfc.c | 117 ----- pywafo/src/wafo/misc.py | 87 +++- pywafo/src/wafo/mvn.pyd | Bin 81286 -> 81181 bytes pywafo/src/wafo/mvn1.pyf | 129 ----- pywafo/src/wafo/mvnprdmod.pyd | Bin 129230 -> 129125 bytes pywafo/src/wafo/rfcmodule.pyf | 14 - pywafo/src/wafo/rindmod.pyd | Bin 389140 -> 388523 bytes pywafo/src/wafo/source/c_codes/build_all.py | 6 +- pywafo/src/wafo/source/c_codes/c_library.pyd | Bin 58077 -> 58077 bytes .../old/{build_all.py => build_all_.py} | 0 .../mreg/{build_all.py => build_all_.py} | 0 pywafo/src/wafo/source/mvnprd/build_all.py | 19 +- pywafo/src/wafo/source/mvnprd/mvnprdmod.pyd | Bin 129230 -> 129125 bytes pywafo/src/wafo/source/rind2007/build_all.py | 28 +- pywafo/src/wafo/source/rind2007/quad.mod | 2 +- pywafo/src/wafo/source/rind2007/rind71mod.mod | 12 +- pywafo/src/wafo/source/rind2007/rindmod.mod | 2 +- pywafo/src/wafo/source/rind2007/rindmod.pyd | Bin 389140 -> 388523 bytes pywafo/src/wafo/stats/core.py | 4 +- pywafo/src/wafo/stats/distributions.py | 2 +- 28 files changed, 402 insertions(+), 887 deletions(-) delete mode 100644 pywafo/src/wafo/diffsumfunq.pyd delete mode 100644 pywafo/src/wafo/diffsumfunq.pyf delete mode 100644 pywafo/src/wafo/disufq.pyf delete mode 100644 pywafo/src/wafo/disufq1.c delete mode 100644 pywafo/src/wafo/findrfc.c delete mode 100644 pywafo/src/wafo/mvn1.pyf delete mode 100644 pywafo/src/wafo/rfcmodule.pyf rename pywafo/src/wafo/source/c_codes/old/{build_all.py => build_all_.py} (100%) rename pywafo/src/wafo/source/mreg/{build_all.py => build_all_.py} (100%) diff --git a/pywafo/setup.py b/pywafo/setup.py index 0c288aa..0bcdcd3 100644 --- a/pywafo/setup.py +++ b/pywafo/setup.py @@ -16,7 +16,7 @@ python setup.py sdist bdist_wininst upload --show-response #!/usr/bin/env python import os, sys -sys.argv.append("develop") +#sys.argv.append("develop") #sys.argv.append("install") DISTUTILS_DEBUG = True pkg_name = 'wafo' @@ -33,9 +33,9 @@ if True: #__file__ == 'setupegg.py': else: from distutils.core import setup - +t = find_packages('src') subpackages = ('spectrum','data','transform','covariance') -subpackagesfull = [os.path.join(pkg_name,f) for f in subpackages] +#subpackagesfull = [os.path.join(pkg_name,f) for f in subpackages] subtests = [os.path.join(subpkg,'test') for subpkg in subpackages] @@ -58,7 +58,7 @@ setup( author_email='wafo@maths.lth.se', decription = 'Statistical analysis and simulation of random waves and random loads', long_description = info.__doc__, - install_requires = ['numpy>=1.3'], + install_requires = ['numpy>=1.4'], license = "GPL", url='http://www.maths.lth.se/matstat/wafo/', name = pkg_name, diff --git a/pywafo/src/Wafo.egg-info/PKG-INFO b/pywafo/src/Wafo.egg-info/PKG-INFO index 74427fd..d936183 100644 --- a/pywafo/src/Wafo.egg-info/PKG-INFO +++ b/pywafo/src/Wafo.egg-info/PKG-INFO @@ -9,9 +9,9 @@ License: GPL Description: WAFO ===== - WAFO is a toolbox Python routines for statistical analysis and simulation of random waves and random loads. - WAFO is freely redistributable software, see WAFO licence, cf. the GNU General Public License (GPL) and - contain tools for: + WAFO is a toolbox Python routines for statistical analysis and simulation of random waves and random loads. + WAFO is freely redistributable software, see WAFO licence, cf. the GNU General Public License (GPL) and + contain tools for: Fatigue Analysis ---------------- @@ -30,63 +30,63 @@ Description: -Kernel density estimation -Hidden markov models - WAFO consists of several modules with short descriptions below. - The modules SPECTRUM, COVARIANCE, TRANSFORM, WAVEMODELS, and MULTIDIM are - mainly for oceanographic applications. - The modules CYCLES, MARKOV, and DAMAGE are mainly for fatigue problems. - The contents file for each module is shown by typing 'help module-name' - Type 'help fatigue' for a presentation of all routines related to fatigue. + WAFO consists of several modules with short descriptions below. + The modules SPECTRUM, COVARIANCE, TRANSFORM, WAVEMODELS, and MULTIDIM are + mainly for oceanographic applications. + The modules CYCLES, MARKOV, and DAMAGE are mainly for fatigue problems. + The contents file for each module is shown by typing 'help module-name' + Type 'help fatigue' for a presentation of all routines related to fatigue. - The paths to the modules are initiated by the function 'initwafo'. + The paths to the modules are initiated by the function 'initwafo'. - ONEDIM - Data analysis of time series. Example: extraction of - turning points, estimation of spectrum and covariance function. - Estimation transformation used in transformed Gaussian model. - COVARIANCE - Computation of spectral functions, linear - and non-linear time series simulation. - SPECTRUM - Computation of spectral moments and covariance functions, linear - and non-linear time series simulation. - Ex: common spectra implemented, directional spectra, - bandwidth measures, exact distributions for wave characteristics. - TRANSFORM - Modelling with linear or transformed Gaussian waves. Ex: - - WAVEMODELS - Models for distributions of wave characteristics found in - the literature. Ex: parametric models for breaking - limited wave heights. - MULTIDIM - Multi-dimensional time series analysis. (Under construction) - CYCLES - Cycle counting, discretization, and crossings, calculation of - damage. Simulation of discrete Markov chains, switching Markov - chains, harmonic oscillator. Ex: Rainflow cycles and matrix, - discretization of loads. Damage of a rainflow count or - matrix, damage matrix, S-N plot. - MARKOV - Routines for Markov loads, switching Markov loads, and - their connection to rainflow cycles. - DAMAGE - Calculation of damage. Ex: Damage of a rainflow count or - matrix, damage matrix, S-N plot. - SIMTOOLS - Simulation of random processes. Ex: spectral simulation, - simulation of discrete Markov chains, switching Markov - chains, harmonic oscillator - STATISTICS - Statistical tools and extreme-value distributions. - Ex: generation of random numbers, estimation of parameters, - evaluation of pdf and cdf - KDETOOLS - Kernel-density estimation. - MISC - Miscellaneous routines. Ex: numerical integration, smoothing - spline, binomial coefficient, water density. - WDEMOS - WAFO demos. - DOCS - Documentation of toolbox, definitions. An overview is given - in the routine wafomenu. - DATA - Measurements from marine applications. - PAPERS - Commands that generate figures in selected scientific - publications. - SOURCE - Fortran and C files. Information on compilation. - EXEC - Executable files (cf. SOURCE), pre-compiled for Solaris, - Alpha-Dec or Windows. - - WAFO homepage: - On the WAFO home page you will find: - - The WAFO Tutorial - - New versions of WAFO to download. - - Reported bugs. - - List of publications related to WAFO. + ONEDIM - Data analysis of time series. Example: extraction of + turning points, estimation of spectrum and covariance function. + Estimation transformation used in transformed Gaussian model. + COVARIANCE - Computation of spectral functions, linear + and non-linear time series simulation. + SPECTRUM - Computation of spectral moments and covariance functions, linear + and non-linear time series simulation. + Ex: common spectra implemented, directional spectra, + bandwidth measures, exact distributions for wave characteristics. + TRANSFORM - Modelling with linear or transformed Gaussian waves. Ex: + + WAVEMODELS - Models for distributions of wave characteristics found in + the literature. Ex: parametric models for breaking + limited wave heights. + MULTIDIM - Multi-dimensional time series analysis. (Under construction) + CYCLES - Cycle counting, discretization, and crossings, calculation of + damage. Simulation of discrete Markov chains, switching Markov + chains, harmonic oscillator. Ex: Rainflow cycles and matrix, + discretization of loads. Damage of a rainflow count or + matrix, damage matrix, S-N plot. + MARKOV - Routines for Markov loads, switching Markov loads, and + their connection to rainflow cycles. + DAMAGE - Calculation of damage. Ex: Damage of a rainflow count or + matrix, damage matrix, S-N plot. + SIMTOOLS - Simulation of random processes. Ex: spectral simulation, + simulation of discrete Markov chains, switching Markov + chains, harmonic oscillator + STATISTICS - Statistical tools and extreme-value distributions. + Ex: generation of random numbers, estimation of parameters, + evaluation of pdf and cdf + KDETOOLS - Kernel-density estimation. + MISC - Miscellaneous routines. Ex: numerical integration, smoothing + spline, binomial coefficient, water density. + WDEMOS - WAFO demos. + DOCS - Documentation of toolbox, definitions. An overview is given + in the routine wafomenu. + DATA - Measurements from marine applications. + PAPERS - Commands that generate figures in selected scientific + publications. + SOURCE - Fortran and C files. Information on compilation. + EXEC - Executable files (cf. SOURCE), pre-compiled for Solaris, + Alpha-Dec or Windows. + + WAFO homepage: + On the WAFO home page you will find: + - The WAFO Tutorial + - New versions of WAFO to download. + - Reported bugs. + - List of publications related to WAFO. Platform: UNKNOWN diff --git a/pywafo/src/Wafo.egg-info/SOURCES.txt b/pywafo/src/Wafo.egg-info/SOURCES.txt index 741d609..9a68a5c 100644 --- a/pywafo/src/Wafo.egg-info/SOURCES.txt +++ b/pywafo/src/Wafo.egg-info/SOURCES.txt @@ -1,14 +1,21 @@ +.project +.pydevproject +gendocwafo.py +manifest setup.py setup_old.py -src/WAFO.egg-info/SOURCES.txt +src/epydoc_wafo.prj src/Wafo.egg-info/PKG-INFO src/Wafo.egg-info/SOURCES.txt src/Wafo.egg-info/dependency_links.txt src/Wafo.egg-info/top_level.txt +src/wafo/SpecData1D.mm src/wafo/__init__.py +src/wafo/c_library.pyd src/wafo/data_structures.py src/wafo/dctpack.py src/wafo/definitions.py +src/wafo/definitions.~py src/wafo/demo_sg.py src/wafo/gaussian.py src/wafo/info.py @@ -17,23 +24,247 @@ src/wafo/interpolate.py src/wafo/kdetools.py src/wafo/meshgrid.py src/wafo/misc.py +src/wafo/mvn.pyd +src/wafo/mvn.pyf +src/wafo/mvndst.f +src/wafo/mvnprdmod.pyd src/wafo/namedtuple.py src/wafo/objects.py src/wafo/plotbackend.py src/wafo/polynomial.py src/wafo/polynomial_old.py +src/wafo/ppimport.py +src/wafo/rindmod.pyd src/wafo/sg_filter.py +src/wafo/test_ppimport.py src/wafo/wafodata.py +src/wafo/weaver.py src/wafo.egg-info/SOURCES.txt src/wafo/covariance/__init__.py src/wafo/covariance/core.py src/wafo/data/__init__.py +src/wafo/data/atlantic.dat +src/wafo/data/gfaks89.dat +src/wafo/data/gfaksr89.dat src/wafo/data/info.py +src/wafo/data/info.~py +src/wafo/data/japansea.dat +src/wafo/data/northsea.dat +src/wafo/data/sea.dat +src/wafo/data/sea.m +src/wafo/data/sfa89.dat +src/wafo/data/sn.dat +src/wafo/data/wafoLogoNewWithBorder.png +src/wafo/data/wafoLogoNewWithBorder.svg +src/wafo/data/wafoLogoNewWithoutBorder.png +src/wafo/data/wafoLogoNewWithoutBorder.svg +src/wafo/data/wafologoWithBorder.png +src/wafo/data/yura87.dat +src/wafo/source/c_codes/build_all.py +src/wafo/source/c_codes/c_functions.c +src/wafo/source/c_codes/c_library.pyd +src/wafo/source/c_codes/c_library.pyf +src/wafo/source/c_codes/old/diffsumfunq.pyd +src/wafo/source/c_codes/old/diffsumfunq.pyf +src/wafo/source/c_codes/old/disufq.pyf +src/wafo/source/c_codes/old/disufq1.c +src/wafo/source/c_codes/old/findcross.c +src/wafo/source/c_codes/old/findrfc.c +src/wafo/source/c_codes/old/rfc.pyd +src/wafo/source/c_codes/old/rfc.pyf +src/wafo/source/cov2XXXpdf/cov2acdf.f +src/wafo/source/cov2XXXpdf/cov2mmpdf.f +src/wafo/source/cov2XXXpdf/cov2mmtpdf.f +src/wafo/source/cov2XXXpdf/cov2tccpdf.f +src/wafo/source/cov2XXXpdf/cov2tcpdf.f +src/wafo/source/cov2XXXpdf/cov2thpdf.f +src/wafo/source/cov2XXXpdf/cov2thpdfalan.f +src/wafo/source/cov2XXXpdf/cov2tthpdf.f +src/wafo/source/cov2XXXpdf/bounds/cov2acdfb.f +src/wafo/source/cov2XXXpdf/bounds/cov2mmpdfb.f +src/wafo/source/cov2XXXpdf/bounds/cov2tccpdfb.f +src/wafo/source/cov2XXXpdf/bounds/cov2tthpdfb.f +src/wafo/source/mreg/checkmod.mod +src/wafo/source/mreg/cov2mmpdfmod.mod +src/wafo/source/mreg/cov2mmpdfreg.f +src/wafo/source/mreg/cov2mmpdfreg_intfc.f +src/wafo/source/mreg/dsvdc.f +src/wafo/source/mreg/epsmod.mod +src/wafo/source/mreg/expaccmod.mod +src/wafo/source/mreg/infcmod.mod +src/wafo/source/mreg/mregmod.mod +src/wafo/source/mreg/mregmodule.f +src/wafo/source/mreg/quadrmod.mod +src/wafo/source/mreg/rintmod.mod +src/wafo/source/mreg/sizemod.mod +src/wafo/source/mreg/svd.mod +src/wafo/source/mreg/tbrmod.mod +src/wafo/source/mvnprd/adaptivegausskronrod.mod +src/wafo/source/mvnprd/build_all.py +src/wafo/source/mvnprd/erfcoremod.mod +src/wafo/source/mvnprd/functioninterface.mod +src/wafo/source/mvnprd/integration1dmodule.mod +src/wafo/source/mvnprd/mvnprd.dsp +src/wafo/source/mvnprd/mvnprd.dsw +src/wafo/source/mvnprd/mvnprd.f +src/wafo/source/mvnprd/mvnprd.pyf +src/wafo/source/mvnprd/mvnprd_interface.f +src/wafo/source/mvnprd/mvnprdmod.pyd +src/wafo/source/mvnprd/mvnprodcorrprb.f +src/wafo/source/mvnprd/mvnprodcorrprb_interface.f +src/wafo/source/mvnprd/mvnprodcorrprbmod.mod +src/wafo/source/mvnprd/old/mvnprodcorrprb/adaptivegausskronrod.mod +src/wafo/source/mvnprd/old/mvnprodcorrprb/build_all.py +src/wafo/source/mvnprd/old/mvnprodcorrprb/erfcoremod.mod +src/wafo/source/mvnprd/old/mvnprodcorrprb/functioninterface.mod +src/wafo/source/mvnprd/old/mvnprodcorrprb/integration1dmodule.mod +src/wafo/source/mvnprd/old/mvnprodcorrprb/mvnprdmod.pyd +src/wafo/source/mvnprd/old/mvnprodcorrprb/mvnprodcorrprb.f +src/wafo/source/mvnprd/old/mvnprodcorrprb/mvnprodcorrprb_interface.f +src/wafo/source/mvnprd/old/mvnprodcorrprb/mvnprodcorrprbmod.mod +src/wafo/source/mvnprd/old/mvnprodcorrprb/Debug/DF60.PDB +src/wafo/source/mvnprd/old/mvnprodcorrprb/Debug/adaptivegausskronrod.mod +src/wafo/source/mvnprd/old/mvnprodcorrprb/Debug/erfcoremod.mod +src/wafo/source/mvnprd/old/mvnprodcorrprb/Debug/functioninterface.mod +src/wafo/source/mvnprd/old/mvnprodcorrprb/Debug/integration1dmodule.mod +src/wafo/source/mvnprd/old/mvnprodcorrprb/Debug/mvnprodcorrprb.obj +src/wafo/source/mvnprd/old/mvnprodcorrprb/Debug/mvnprodcorrprbmod.mod +src/wafo/source/mvnprd/old/mvnprodcorrprb/Debug/test_mvnprodcorrprb.exe +src/wafo/source/mvnprd/old/mvnprodcorrprb/Debug/test_mvnprodcorrprb.ilk +src/wafo/source/mvnprd/old/mvnprodcorrprb/Debug/test_mvnprodcorrprb.obj +src/wafo/source/mvnprd/old/mvnprodcorrprb/Debug/test_mvnprodcorrprb.pdb +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/AdaptiveGaussKronrod.f90 +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/adaptivegausskronrod.mod +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/adaptivegausskronrod.pyf +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/adaptivegausskronrod.pyfo +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/dea.f +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/deamod.pyf +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/erfcore.f90 +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/erfcore.pyd +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/erfcoremod.mod +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/functioninterface.mod +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/integration1Dmodule.f +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/integration1Dmodule.f90 +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/integration1dmodule.mod +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/mvn.exe +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/mvnprodcorrprb.f90 +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/mvnprodcorrprb.pyf +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/mvnprodcorrprbmod.f90 +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/test_mvnprodcorrprb.dsp +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/test_mvnprodcorrprb.dsw +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/test_mvnprodcorrprb.f +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/test_mvnprodcorrprb.opt +src/wafo/source/mvnprd/old/mvnprodcorrprb/old/test_mvnprodcorrprb.plg +src/wafo/source/old/adaptivegausskronrod.mod +src/wafo/source/old/dunnettprb.f +src/wafo/source/old/erfcore.f +src/wafo/source/old/erfcore.pyd +src/wafo/source/old/erfcore.pydold +src/wafo/source/old/erfcore.pyf +src/wafo/source/old/erfcoremod.f +src/wafo/source/old/erfcoremod.f90 +src/wafo/source/old/erfcoremod.mod +src/wafo/source/old/erfcoremod.pyd +src/wafo/source/old/erfcoremod.pyf +src/wafo/source/old/erfcoremod.pyfold +src/wafo/source/old/erfcoremod0.f90 +src/wafo/source/old/erfcoremod1.pyf +src/wafo/source/old/erfcoremod_interface.f90 +src/wafo/source/old/functioninterface.mod +src/wafo/source/old/integration1dmodule.mod +src/wafo/source/rind2007/.cproject +src/wafo/source/rind2007/.project +src/wafo/source/rind2007/New File.txt +src/wafo/source/rind2007/adaptmod.mod +src/wafo/source/rind2007/build_all.py +src/wafo/source/rind2007/c1c2mod.mod +src/wafo/source/rind2007/dkbvrcmod.mod +src/wafo/source/rind2007/erfcoremod.f +src/wafo/source/rind2007/fimod.f +src/wafo/source/rind2007/fimod.mod +src/wafo/source/rind2007/funcmod.mod +src/wafo/source/rind2007/globalconst.mod +src/wafo/source/rind2007/globaldata.mod +src/wafo/source/rind2007/intmodule.f +src/wafo/source/rind2007/jacobmod.f +src/wafo/source/rind2007/jacobmod.mod +src/wafo/source/rind2007/krbvrcmod.mod +src/wafo/source/rind2007/krobovmod.mod +src/wafo/source/rind2007/precisionmod.mod +src/wafo/source/rind2007/quad.mod +src/wafo/source/rind2007/rcrudemod.mod +src/wafo/source/rind2007/rind71mod.f +src/wafo/source/rind2007/rind71mod.mod +src/wafo/source/rind2007/rind_interface.f +src/wafo/source/rind2007/rindmod.f +src/wafo/source/rind2007/rindmod.mod +src/wafo/source/rind2007/rindmod.pyd +src/wafo/source/rind2007/ssobolmod.mod +src/wafo/source/rind2007/swapmod.f +src/wafo/source/rind2007/swapmod.mod +src/wafo/source/rind2007/test_fimod.dsp +src/wafo/source/rind2007/test_fimod.dsw +src/wafo/source/rind2007/test_fimod.exe +src/wafo/source/rind2007/test_fimod.f +src/wafo/source/rind2007/test_rind71mod.exe +src/wafo/source/rind2007/test_rind71mod.f +src/wafo/source/rind2007/test_rindmod.exe +src/wafo/source/rind2007/test_rindmod.f +src/wafo/source/rind2007/test_rindmod2007.exe +src/wafo/source/rind2007/test_rindmod2007.opt +src/wafo/source/rind2007/test_rindmod2007.plg +src/wafo/source/rind2007/trivariatevar.mod +src/wafo/source/rind2007/Debug/DF60.PDB +src/wafo/source/rind2007/Debug/adaptmod.mod +src/wafo/source/rind2007/Debug/c1c2mod.mod +src/wafo/source/rind2007/Debug/dkbvrcmod.mod +src/wafo/source/rind2007/Debug/erfcoremod.mod +src/wafo/source/rind2007/Debug/erfcoremod.obj +src/wafo/source/rind2007/Debug/fimod.mod +src/wafo/source/rind2007/Debug/fimod.obj +src/wafo/source/rind2007/Debug/funcmod.mod +src/wafo/source/rind2007/Debug/globaldata.mod +src/wafo/source/rind2007/Debug/intmodule.obj +src/wafo/source/rind2007/Debug/jacobmod.mod +src/wafo/source/rind2007/Debug/jacobmod.obj +src/wafo/source/rind2007/Debug/krbvrcmod.mod +src/wafo/source/rind2007/Debug/krobovmod.mod +src/wafo/source/rind2007/Debug/makefile +src/wafo/source/rind2007/Debug/objects.mk +src/wafo/source/rind2007/Debug/precisionmod.mod +src/wafo/source/rind2007/Debug/quad.mod +src/wafo/source/rind2007/Debug/rcrudemod.mod +src/wafo/source/rind2007/Debug/rind71.obj +src/wafo/source/rind2007/Debug/rindmod.mod +src/wafo/source/rind2007/Debug/sources.mk +src/wafo/source/rind2007/Debug/ssobolmod.mod +src/wafo/source/rind2007/Debug/subdir.mk +src/wafo/source/rind2007/Debug/test_rind71.exe +src/wafo/source/rind2007/Debug/test_rind71.ilk +src/wafo/source/rind2007/Debug/test_rind71.obj +src/wafo/source/rind2007/Debug/test_rind71.pdb +src/wafo/source/rind2007/Debug/trivariatevar.mod +src/wafo/source/test_f90/hello.f90 +src/wafo/source/test_f90/hello.mod +src/wafo/source/test_f90/hello.pyd +src/wafo/source/test_f90/hello.txt +src/wafo/source/test_f90/hello_interface.f90 +src/wafo/source/test_f90/mymod.f90 +src/wafo/source/test_f90/mymod.pyd +src/wafo/source/test_f90/types.f90 +src/wafo/source/test_f90/types.mod src/wafo/spectrum/__init__.py src/wafo/spectrum/core.py src/wafo/spectrum/dispersion_relation.py src/wafo/spectrum/models.py +src/wafo/stats/__init__.py +src/wafo/stats/core.py +src/wafo/stats/distributions.py +src/wafo/stats/estimation.py +src/wafo/stats/misc.py +src/wafo/stats/plotbackend.py src/wafo/test/__init__.py src/wafo/transform/__init__.py src/wafo/transform/core.py -src/wafo/transform/models.py \ No newline at end of file +src/wafo/transform/models.py +src/wafo/transform/models.~py \ No newline at end of file diff --git a/pywafo/src/wafo/c_library.pyd b/pywafo/src/wafo/c_library.pyd index 933ba8e35efc136abe4091e9531d1cf991b45ba9..c0af1f9358457cb0b80b74ffa673dd1cd39d9f2b 100644 GIT binary patch delta 9361 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 lm8BIXxA6NY&4joz1N_tCxr3ah^E_+M&{{rdm_ diff --git a/pywafo/src/wafo/diffsumfunq.pyd b/pywafo/src/wafo/diffsumfunq.pyd deleted file mode 100644 index 663281993ddb4a55a03d47c26ec2e8841bcd9bb1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 50146 zcmeHw4SW>Ux%UJXi5lEgLmPclT{UQE0e3f>kA)!lT0Shn2*lD#x(UgKMDt~`E5Qm7cnJZt5ot{{i_vPEn6!<+MXa=W|IaxyyE8ip zLfYH=>+kLSn9Q7Kp7VU2=RD7uGiMJuUvCyB3xZ(4IXWr`?YPpB&i-EdPXiubcgvpZ zgk4v^dTV>c(pPU?Sz1f>-Df`|Pri!X!*PLn7 zu8EgP=Q;#oX~a~)KIN0ef?E(o2-7cIb^EmulTw9yfK-ihk{}dB<4R`%PQg^f?g1yc zBXH7{9Ub_K!jugWOfTT_dQ^ex<6xI&L0C?O7MziEGtSW_2t8z=zw$B1?W%*i!mh>m zLjsYmK_zgHqX7Tr6c@S+ao;_a1DLGKaIZSj1)*b34M&VN;z2b|qIo|~)sc>7owKI4 zmOy4QS_9qbj|QUW;`Eq}nt=mb3ng0IbfQ-#3rIF>!AaLroT?+8$>%DsDw1v4hKHmp z$*DTh1tC*a{KxIzzyf*V2P+zf4bpU>!Bpfs>0TgxF&cN`dH>!!iGAac!Tv_gjnZUa zhx_bkH^*bZ+9ALD4nd5GAGnY%2$qu~BhhJyr)mRzfUSBU{}AZk4+hbaC#vz!5$;8z zJKi8UqQ&g^NXZc?8sZ0zWuey}Y8u_4J&SzjJyFs$CRmqeq2+C{ z$M3rEz&G*_MhRfkKy3VA^BlwIaDTZI5EM!N0b4en8u4eyKM*@QIy&^C|7Y}c;94r| z9$1<#2%SO{AeN4yR{tY{tZ!aBQ~!g;;aHNfooM3*GBaWSv_KHL8ZSiL*l~!{`waY7 z3I9-Y=zu-)2iHL^8H6&i%0DN*A=Y0MJGW;)3x=Kx(sG0Sp!;*g8YUi{z5!q~!55^g zNO5XAbzUj|oCG{n8qPl?#sOy~!x4|TZq!otk z7q^>=#-jZIi0m;|gZ;{Q!|3!?3bortr$^(SEN})5CSDj=1RMG~JU^5KE1a_lf=^&KR>7@V-u1D?dX0*c4j*uQt z2mMoLzcf_3g#7|pk%3#rv0p9|f$SGZ2i8RFx1ZS$KK{RIzba%y?@0M z!+r3n?VDhNPRB5Ag+N}j=x7xkJ4HvE=-4GX+C|4+(a|9~4*MO4(L%HQC}hVc_yNw2 zkM}#;1NmDz9RuW?osNFA+i0ibeSYcTmp*>!=9g3aa+F_A@QasUn)qcSNz&=qK^HJF z`5{Ple4HO5Wyi<*AzXHRj2~iV$49ppl(4=U)jpe?m_-;0H0ZlgaLdu@!*G1dN%W%I z5I&XyN6LdLI|k}5j*g0s0m(4{r@ldQ3`=>#PaGzDh}{o-!Sk( z-TgYAonp`0{f_2=3iY$yct#OMlI6?bN<_6&E+zT=j&71~;NNEn0=nuUqxWS(Pme^! z*oR5J4$iAk52eHF~FmEF!IU8m`i0iWHNLJ`4dzr7Qz=$lTb$Gk->@zS~}Z)Sb)t z>}e*7hz=n>8xSLR6BK$3{j(AWjJ}_tZu?>R0jnIWGx!5M6YHBK$1d4Gs2trMv<~?X zw@wqYj`(GieXB{{4x{&B7*DMCN{%*ZGr^?gk>geOikl07K}2Lm1M?ZJVwu(?M(e2L zBfv{c0MCg%)H)PEm&Qjy*GSPqOFKf{LC# zMZTq6D|O@dh?}bkNhRMlMzBsMcmtEKU-A(^^t{hKgIr4VZ2*XIV%m>Ey`M?Aln6Q+ z$Z~}cFW}fBIU1zg$iV7&ljPVDa5N*m0CSe)*a%oGyvT-Pg5+bSbH|%eijkNNa2GB4 zWRasJ=9z#+N=z8s8AkJB6c=z$MJRxz@P2eFqwiL5=SG>Ax6}PO3^k@nlgRBR8NDA9 z8f%1kjy88JdT5MzP!bl4lh7frmNHoi%#D?p6U=k$GJ5UkXQY#b`kR7k^xcMH5PdKP zB}E+1zqZHJa5vR@gF>IPc&r5A#bqzwD)pxQ`;6xQ$fpbZjD5L7L$K9;u}bDkbm$kJLf|9>ISHE(rcD zxFGm%#Rb8C3og;^E!+wiRYt>VQGksd_dCeGdEm2Ypy52}D98QJD{-F;CC7c(6D?wJ zQ;nT|N7KMlABSqVUy}oZBul{JM|Qlrhj)+|14r*r!uwA_n|I>HjA*Oq%Z2)WN5ep( zinM3ey!3-$f&jXSw|db{cn|&yQTWW_WHf_OWhiAxF_Plm+a~dkSXE8pn zP|DbE@c=a}KN%z+;el=B(6`00TxNznx04wbqe#}J z(W3Yme1QNg1&8S8waaE$%1CczL75Bz7UTnp1xi5?iR6gU+s{&56Y`tvTpQw3ff*xh zrf!CMX_8|T0MU{%GO+RFh18c2K)lV4H%mU!gy>63dXAHPBm(73o-L7zsL_FrG)Th( z+>M|7+^LXs0lI+VL#ufWBvbMRu!@q03+M|dg~I(j&sO*6edpcREAJv#2j79X#pXF$ zE|o8-z2-S~7`;0&cqDW0ph09PUv5S*l!3mDQmC`9M`?dHbzI~^ZOja{t+a+gaq1y9?i2)C>-_3&%z`O z;2F(Nged)pD9u_YQ~EL}(eu3a|EB(pm+%B|h-R;zQS5JIyNLpv=K{T#zJRc0A{Bg8O&54!vI3-lhI zWpIB*iS6Fa6b1NOyZf>2-5`tc&-~HpCJ=n7mFUoDeillS5Hy&69$*B7pQGAC&o_@o z&%YWor0x<%Za>|>+)X+}(<_3w8p9ko@pf~FW(;nJq@bU%6c9={`LLTTqS40^lQOw5 zNbylIxBI$1adnUv&OG=PfWT4!lpob;_yu8g8jjONbRRcl*pG@it&jKgPRWH%0f*_W!FT$9 zX#Ca^3cC*5Jz`#~{h-l*7ZvkbB~Pl99|xMo7k&k%0mE@jj%~XLA;rxX@HgV5-AAQB zUVk9J-RSp$i=_+imeJ{=U!dmLX29P7d*Ac#!tg{;=D$W+MQIz6kv!3oBSy-J3K&iY z3_V%B2Sf(%J@9pY2)_eT)vD5G2+SSw1m($7jFF6E>e zUpNrRYZG6W@>2USBjF=CjV~ONcGFG3(bjuRJb1bbQn=cCyTqdr$7YUj_JREVzGPTq2=xU%pBX8Id+H4F*Hrpy3Nh9Js5c@KYElg3>ePB=2Cu4?}45!6fn7oGR$%U za-Kex(RaM}VDGCC<3!J|dykzy1lyeGJ=Als_ju2%>|{ndar(X9V+80kyvZ<*G1I|r ztkl(K_*Ee8SG`@CeTL3JTxXx*NFeS=I@iXyv4|S5C(twM*eQ8zb{KPG2ep}Fqm*aE zDBj*}-1s_PfSx!^uF0k`q#W)@$Lc=}I1>7DOo99cvTa^mz;IB?i-oTQ9PI=*91P@l z1oBz}aq$Cl@yZPJ-htj@fxMocqpODpe zkDcyf+|V9@{2t!EeL1KU$Uhozu*&#D4%FvKz@K_>2;_GM97HnzXz!GjV8*+{x3di- zOMCC{QK19*x)+Y$11ddzE>t)Qo1cN4$Dsn)4)q=Gn^sMdo&dP(^m~NoY41G_R{-g4 zv9KUrDU*|;_u*AJ!1FqDSTc<#H86#d=sJB2-q)AY-8%q6K34Y_dUs!azjzS+&Chxt z^N!O8`dmHW!TVic$|{HuoUc^(EbdIae-S4`PwxSVv4%Ac;6&Hz?SKn)F&Col26NI$ zj&ck>#r)_P{D(P>+}-*N?*!uB$+Dm29caTwaue3hwsg_4(cXDOR`Jq~%TFNZltH*fI6Oqw20$Mc@Uq~uZ1-$o-uYP_Q$ zcN}hlJMuqATOTk?FwWW2XVH#IlLB>HDmCr41i7K9(E{5d@pr(LptN=GfYO?$kIRna zqiS%P5BuO!$EmrAbzcQ+box_8_8w^JfYT)ed_+IsBf8M|H@&X~@|*iU>^UBoLg9wA z1f-wze--vQarziZ?P?>-fIJjItrNW`m=17!ls-EB5i>=|H+SP>jM_JQ2jGnm7uJMZ zu*OA7py-I60N@~iIXfXgVxxGFhso0)@hGW|icq1?)ok=1zEnt*1N1ADCjOq{VLHtQ zspFv$fCFjq=d zP0((Pybo?l-lvM=<$W`1BMzdGRC#{`D#&@?rpfy}!5kkm@grsM#J`2)yu8G}>NX{~ zN^mgv)f844DIc1n1zA8PH>>a0_9nS2@zFrn>4QLKnZN$gz?25?M;euK$dj1w^x`{| z#KsBSt9p)MfIX2s&s?KB5Z4V?c`Xq4T88}-kG9d zFr#q2h%XFzQ6kFIXtJVf^j(@PY;Q&5(-ek!4*mQWF=CR}MtG)nwWFhq9^&&kd{M>F zP}ut>_|bYCOq2Apxuj-rpl{aVA@|Lr(<7BqRkRUvKkO z%P1|m!56(K3^^e2q|t6YJ2!=xZR1mGK+5v=;4Tyz_fBTRBBS@ayhM{E*BiYD zaIthC-b|<2Dj3hyK4}U-UAT?I_kvhyVU*-$busf54QLF9P<@o5P>Sej?4Yj!k@O^c zGEHY0q)b|@Gy04hBEWQ=?t2vk!({e+VKkdQqvnGKqmB_i{WC9T#P}3_i6UAnCmS07 zIBN7QK$}JM(2P+5@+^__{M2%?@$fA9Bax-!9%-6Jez1s>9*goDXg*JfxFBW6l7wn) zpb49@if+F?qzcWJh1AJlI((OO7)*f-zEMmAPo*!WQ}Io7k%6Yva$`x3Gs@>Gn$MKi zbLB@$E28m{^=kPetNS_;plOStF_vYGz8jqN)q-h0i~I)d>yE)fp6vzHFwN9@`G;tH z!~j_AC4++VUvUr<_)=yx=GuIB@{;9kw$eu276XsI}a;jrs`vi6i7`(muMk@1t6eA0yKL4QSbJg0kn1NNE+?{bobsg;ArohpKG6 znbsF_x1@k8{ZoosDsyqNk8x_QZ98qrFix_ma??I4x36r>j*m?HfJlAlG zj|xL?u&0OUDRo|YYV(;AsMBaGfO46BGgJ^><%AV%c!ZU|ADAj;sQ z5Mzw~N&d~eH&)gX1bFB4-pqO?W~qS_<k2k!t)68r1SU>Sp5&=s722@x&l zcMVIG1BNeP9x#XRAZ1$hI#sY=Z(HR41Tbr zWq*0$n(~3?Vrk-aa%GjN_@%0%TGO7wM+(ctr3f4=C*%EWa#TrY_T*?6RTx+Y+!7#P z!%Af+*)JHsy$6j)D`fZtHXHmA@|iEdn44*i!M~3rfJ>9lj83nnre{74BTJi^L+3^s zpV|UCWena9)%MUI@}zsCEbQx3#8K)Sem1*6(dQ)Si~ESaW?(6L{|Hsx5FbS=qsTZ#O6m2JnY)?*wpMpd zDdmsgDK)Dbb=Au6$NKxifi^rP1I#j2zEqA?*n0}yu41^l0d9})jgzB}z~hC%Yfw3) zU$U%UEw5Z#R9H?u!%$cQ?5l*qzKirZg+3s$o){%HP`rZ?N2i~|_a`#5$buUp+n9az z7L2jPw+3TrN(G5US$`|9hrK}Kt^8=wb5Xi43X!kzQNySwMS7A#JN$mR^dt|j?pq)N z`Yn$*VidAIp-A}`BoA8|i{-t6{VSbu;f^ zFnk9qn2k@Lg7lK(eb9eP%z2+4Z+MrL>#oO|EmZve$A6ac-Um0)@K5tR14i$?RHJ^N zeIqw#B=sIpXU|1a%QF~az-9Sb8I{r0nu4@)`2k|$DfKXuV}zV2#!PQUT#R*;}Mw0WN4`ZenJRr{xp z#gdsbqZ`4~_|$Kps{K>r)3mMtCZ<>|NKtJVqBi{j_q-WiH~J<+6^vn{$sRdqh8G#) z*P<4J!-gMAo?-jh$8zc6(ibmYir@VZjQFj>l`#{KE;PP?uPKq@0jwwzmp*xslwB1C z#SU4{GqVh_ydCu-5DyT$kLEdG+%u2>z8ov%^h;>OrSUN+Vcq-yb*1)U#W~5;aOEgi zlCS7|=5vtXbp2giO6D^^U&!jDe^Yj7Rr3@Bn|Qv7oSTj3EEIBD$k^@I!Cb5^nS+{k z;47#=8q`JkMjtbyy+&Rpx-ht8Xj@4ApYYW$JrPtRXT<(+)Z?@|c7?*_C74`*Uc6B# zhmZ!~I`G?QgxyXGlED--Ot`c*i)=UeJp>!BA8X~OZ$fZdWdHQ>j|O8YDCdlbe_SMG zL`yNv)U8-^i=U$>81tgj#{3tEEF8QQ5PSwD)!^(#|8Cq61LlcCbJ+Y}u%8~qL-bQ4 z2+EyQ>7hN;kv5Q_vAWanv=s9cx=<%PR_qpIo*D|!tBQorLWoN*uc9WPUIII*Z4|)I zbOwJ3t-w*oLPf53eN9g$cN^;b4>Hip3(kR+3~ zpCAZqJ-Awd7&ZWcr7r}fmK`id5+;Cu5mkw4w-ExxKjvbz&IV~scCy(d?+lRQ@$iY^ zS+Js%7enT*k2-%4<1`wgQ^ejJjT@sc3mxM8!Dypz25uVm5l~nUYsT8A&=}b0y$x`Q z)e5yb4Lqd97^;hY`kZ3?S^BglwvZBUF|-)e==}zTpqyAXP?7F4Na>OINx^gyTlF&u zqnB1!o%az_^q^RyH;JmdAy9x(Wu zNB{iiKY!eP>%k}9Yrx?i{PnhY}3mw{CZCG&Lo=cWtG*QJ*KKk7XWb#qt>++_cSbOuW(hmac{#t2I#wH zvUi%TGwB1BxM?Ph#hSb`Q*n_tlbT#{`#mxBU*{5+G)tE!Gp`SErOX%@AFH6Ky^wxU zh-`0>J!xRhG}wZTiK)A9PYq>XTBL3{`NU!JBl!gf&1#>A9iF$9I(H&VFZEQ_an3wx&g-4)ZmysSQ>A#bTJoUebG;@dEmpVs1r7x ziNI$TcYI9adl8T+4zIE+vFaJ#jzweSLe2ET&1PJVxUZF6$ZZtQXhmHWC#AF0C$Xsn zdE8t_F1;d#;{W~B$0FHV5_#r8R1|)S^b)5BC!wtWG4oIQ^`g;Nhrcp2qwgUUBqp@w zJl6ul8a^n8;9Seb_b7B?h9cs|lOLb7bUktKdN?z6XQmNby$;t7b*&f>Qn@FlpU&9M(8+ElQ8v?9V)dtMS`E zqlyf>ao{=z*#QXWmu~cWsmHP|HzNYK^XZS#_XJg9oEz3(cemTa(GBh?umE1V^I`|@ zhR{qEKn4~63fxDD z8BtPJw74P)O(i0IX2pmrqNV#{#EcjzD^^?)Bi$D(W}sr6xFS}%FHX#eld??Wia6;$ zlbB(WCW|XfG$A$F=k0I`rXDywF`uFehnu{^s<&J8bDy35w?@l<(g<#aNBQlO9^OK$Xq659-# zkDX6{jNUIo?kkg(C$>rm1X=f!Ff6fA9^#3OiKa?yh+T44BgJsfa-iE(Lid!++H2f3 zg}7%KZ5K;=XcfwLO`FC_Z0_PKlK9eTZI|p=17E$0x9jpaQO=_*n+D?@7WOLf&iJiw zk-v`>^Qw8w3q?YTcaO-K__DmzxStJPzIXSq9%G|4i-Z8iiT{{$ljXpQ%4ZcQE z>K>T|g=V8~3qWk9LC)uSa7n&`l8yNJ3iCWloIYw*c?Maki5!~E#^*FGfT$(U^k<0qK>dWS}ayKZ3f3YfLJ z2wZ%V_Zx1q&!@2noBlO=pM~#Z=fxu<8(0h#IV>)1n7F`Z4qHI;1dpci6?q3nrIB4+iUP=OIMP3x&JTN%v?DHy_VRp>JY`lTZy5M^coA;I_U|9+h z&<6|ENC-3X;z6VL9A%}Gbt!VoZDgNwq-{+2EDWRAaA`%P?6EMFVc@s0HZ|NRL`7rR z86Woz(q>jkc@?17ZDyz^4m023ztyDovPJX}!u#)3I}aa0j9z-XmvY#v50>9TOiJB+ ztue3s0A4xxbi5;)P2SKeHVhjrW#7OWim3-fOWqrl2K(qtScAF0Jiftvzn~80Wz9ps zAIH#FB{csE$CN=jU4*x$EVRVX+Zd1MMBDwOHq_@f;|rUSWT767pjBjK4~>Afd7VbH^=~_0ER*%kzNoi^2wFa2-seeNU7TRN97v!KCw-65w{*K~;@~b|k^<%kOg_Y?i32J)HVdcoM^5U?vA*|dKR;~^!p9|B+7WSN8!qxH=gq2r^mCM7* zLRdLLQ_f?l51U+IlMY%zf&SDujOoF(_=uV+xW9n;nCVpTXBx1@#dCD)JLwthI;4yT z`1kAWEvr!B!l-*Db$a&=!TvcKvyC2o#d980iv=sO)5kq~M@PSgl@ADh^LOBpFmz42 z6z8K`-`k#ZL;HE6R=zK6ucmLDA7H#-$UjuloX_Naj(|grB=1YnkJIy^7+#I$nD7b` z8Sx}`5-NJ)6M9P z#V*=`z>WB|=VR1q-$9WKgemb4{0nj=p7sFt@<&9LJ*A03jPnNS@l>n7Jlfg|RB1lR zj&%i*e%Cp^(Sc)229E8ypysc~W)54a*y(7Y3wD6mz7h|x9Rr89a_HXes~B`AhqiHO z$M)3>x{DVNZ!bVmbR6AY%&sT4m$Ga3_HuSTW&HV+YTT8GjvlCS+wnx2zL!0>ZEwSKaYZUB z&`nm__6}Adn^#B|vldI!4+D352US>+%bHxwS}OM3dX()S6K{&>GGsJ)zeIz?d)EJ! z*_`h+z^u%-6=0?n*&2LiPre-lw1((j|Bo2we~IWq zPi2w2tg6yfTeh~c(Cw*l&ArBCs;Pa%RWz%N{jDix_w?5^-&9;y>nVBInoyH5t1M&I zx>*mcn^ih%?X1d*vP%3Ztebhwa@WJ2vKm*hsjz0PhdyZ3GKv|dx%diF?QxrG3M(I) zZN=l7!u1Jv7T-D3w64ruYFbm}sVuHFB~;F;m@QB~z5t{SXHGr6k}-QDBRNY>C;J05}JD$km7*ElqiG&D*lL?cB* zgX}UM8Kz4@#r*lTrG?e51f)94%$cT=!m@JcT2fVGDlIE6c2$}xWXsR3m_MVKR_G>F zs_K}>tW&Afsg&!;WRX2&dzMwMHCeEZAZYi3nv6S5RV5~U3z6Zo?pjzy-&HDk$`i(< zXRQonWK%)eUraBtMon+s6^J*sd^UC46g+e#1jp1@ZlHo1M8GQ$ZrL)dHs#H%Z4ZTB z*_F||RF|{DU-T_%z2Z(cHjOLmbYs)FvQ9TPjVtSPav%%#r!m{&GW&*gtj?h@;GJ(7 zj?ZXs8gY%|Kw~oaEdQZV)?bkx8{_>I=v`ia9#i8n+vqa;^OywDFUF*KnKA5&Xe#}h zz4Ba%9aY{gRC+3^*Uu@cs&UP!@RYmD*t?D3%vioW<7>{0+$F-;7$#XuN}d(fh~a{O z{nb6?E+m4AYL;sX*A|vlA{8Lb*3xU*j5^8#S+haZv<5FzZrZV3d59-W5))uE>I9yq z%PPwtPDa;h&m%AP*BbIYb@q*JSvv4}mHf)!8nbw^uVs{eX zLXW#@_F7k^tAkV(w7I+Ie9Z8PUwqr5xt7esW6SrlA@FPWEkW%$e9 zQ0G9O;;JI(q7r_NtEQ%^20Nn1Efj=*&VrgaqSM($=wBdTU*Xrt^vlJ=Sb;LL;2`QI zygL?Ca-UIq4arbe`{U)F z5uIzQbggp|d5m^unby)T8tBcRdj@WmXQqUT!u4xhOyG*b%Jrs_8W$~`gq2*iGihu! z4*ei)6|q_DeVTD}m6XuCHMm!ml#1!W!jgJ?=tm=^^0d?5Ckb)m8`E>z zDn=io_8PBVNm(750+v!#5?+O9eHAs}7b!OQ=FdD7KL2R=N|43X4izGv$FO zWTW-3L0c8NP37=5x5-s5H(F3J=G%PSMbS`4x2&?tX2PH=BLK3DU}@na2$|gAp~k5V(ocXrXI;`J zO!o0?GPWt0-MCg11$f^>PAGJjq4!an5*YR^c9pxJO=VT(Y*$@bt(&^H(sc{n=f@de7`dD;F=HowH=w zB7lLqF45}5dlBaNs@*lS@1~|S&7aSDdsRsSaGZ|C&J~L@mOHX%66HB_?!v#dMMbj{ z=h)^X(cN8m(>el%tb4c$0pYPcJy#fPRvC4qvOO!JKO9iYCux=G>1h8Si#yhq?i(g0J+=Wv) z4&(kL&OV&)>N5NaotRAU6| zE)mvGqT!(+JTa++@*3`TPO88lw5muDUYu0nswk>n4{xQrS{L4{PE4vTs|1BtC)LUn z-k5~Za8X6IAoS852G4@<;Usq#HF@ z{TEW8fh1qBhOFc7y#8qcU~x9GAPas#rKjmAm` z*45UBtQ)MNb*uH?tgl-KtWk-HiP?#{iC<4FNo-2on)s8%y@_3keTlzGG}=zserX%F zePT;U%1-)z(t)HSNpB?eC4G=IGkH$(yyWcU+~oY^lH{u7l_~pER;0d{I+S`Y^-rl& z?AO_Eu$$}&_9Xk=_C@yPcBj46{;>VK_E!7P?1${{*#Btnn*09TkLKP!uWsIvc|-Hg z&HK~5tI~{VGt#VS^U|`@R;LxFm88|C{UGg3+LHOt&Cgv>w%~g-17o5*f}MxVx0n;4 zZJK$BInTVtTxtHMxxwr=Z!te_-eo>uJ_ZZCXa0jZ&SJJCTjpD`ElVuREGsQ*EajGO zTK>iIyyeH1|FZ12oU-&3k7vHsAy)A}>(KI<>6 zr>yT;&sYtKUr797;&&6DvHjkboLrOqTylT%?I}emqbciB6Ycr-pU!(G?bm6RyC1y! zU+(U``|}IFw%~UQ1T)1#L0D_P-I8OuJMo^x6^X@(p2Tk^{vfd>@jnwkOdLs^Wc#-5 zPqsx#e@MD2*_3Qaz9Hqdl+u*y6o1MKDX*q{kaAsWZ0en%G=k1%fGOar8H)(%J`(xU*^JC^G-M#Sc)&)OZ(6``&1s4|x>HNR* zi!j^Fi(#v^=4Z@K*x`t!2fANtjj_6|P1bhkd2`~I67y^owmMt0?QKZ3J?Ym;(^5X4 za!X1=N=C{9DMwNoQ{PCPYhP%eHSe8yar1AT|Kj}n?*7x=O$$Dzw#gL)+NikH+-lxq zK4gB){DJvH^CxDL#cG)gU%bb%-12p_z=M_=%cGVjE#I*`WBGyQS<8!-gO-z)_bg{D zlh6vcS*_Mg>vHQFYmN0u>oeA8tuI;+T2HbTn3Q;Z;%$l6#LUFyiE9#T5}!?fGc(lgS&Czn}be@^6!elP@GsO^Hs4P5DxaIVBa^ zFG*RQQke3cl+7tEDL+a1S;~Qw6Dg-sPN#g7a((KI)Y+*?scTXnOsz?MH1)~U9jQVA z##dyaU-DI8Zbqz+f!1aHAe=XS1S^dP+^B6Gshu$t_Fq{ z@k(Sip*EK}j1h{8%of~pnF*&x%M6hF2#kZ-husz9Zv)7NAm0Kc9mNpjM}U}cGVZtv z0`^T88bJM0okQNQj96-8Z%n%N3 zAuoK6Lr88x_y!>9xN@15wrBv9P$x(12KFx8g${jN90u3e5CZNL|1sg7QH~%DwTJS* zuo9Gdz~qQrYIx0|wAbB$$~}&)iBtDDOzqP$IUyaZX-QLN84VST%;hhU>HkO3UD1@+ zBJOXYTgPkaDVp{xRwa{!9g3z1$+D(l2q-F=l76zLIwVC?`sl$mm1h=}uMcvKZ$XA2 zF9!P_Ag0^L*PW1F08X=l!)hG^q+0`dhafXJ9gy4=SX4Ap~z!q5>mS=+*_t9{Z!#qjhftI{C@zBPZ@wm z;UCpv|0i&K(iT`&1F>zua}6ZCLQw3gqcBpMdmZveS#;vS{rP8%O;>}+e%alcu|ypeptu7Rma_|9}WyxXW)_zW|OrA}V}{UcXdFX(hf{q8!SVCGJvBCFb!|`BaXXEs7S9BK*+h?y+#z z)Up*D!E8Pj4$tP+7%*Ty7D0DVNp&b0e-r9+9NpkT85P*-P;Xou**@1GLXKx2Wt8$a z)ZIp#D2yw!JlZ++*}A91EB+G^rLrEs)#-Ibqpz(BWyQ`(*`X}MCA1|d5-K>!X&6W{ zy#$4OTLz6zuXOBpO2>VJj(dTQdoEaOxpz#6`%WGAl{)UJI_|WUl$Lw6-rCdhrce?r{bblhntN)0btTDUyPn{>L5Oo)4_j(fC@`#GKNsR#~Q z%L|zk@jADTdz_9tIkUzZ$+Q8hmV5MsxNp#LkJoXJ)N$XW<8GP|_ii0`+I&uZo%&db)Vi#DaYNZULi z?tMD$UY+ix;qoNAb-K4qi2M6G?i+R7X|`GJ-8}CkZ_;sZn-KRN9rp$u_hKFQVjcI6 z331<|drY`I$)|L>n<36C%{les6#+TnB+a|=lU&p;k$Gu#q zyI0rl9TVbyRL8wq$9<)ad$f*w_k_4F)p0);&db)LvwVxr^8FLyzEQ{Brqew(T%P1% zozIUeM)K9aWBwu z&(?A8&~cBR5cgd=?yGg&({Uj21dhXv)ciV=~ z)+=d?;tAvHo-(5NPsFq^>x5QAS%bP`JzE8S1Fc=aB~;-#*M02OHG2DuF=HPd>&9yL z%kd4lz0!j+;}>pY$ox$_4}Pf;s^^%Q_Mu2iMatU+%%8{Bi*RVm$YuoxznyRrFJUAI zQFP~Y5W^$>1GTQDs=-6wFUSwI2GB+Ri0EK_ROklxN3Hd3%|t(HQImT zd9;H#jIEaldiw0*oAe7BXHr(RKr&_p%=sXNahX(Q_K{T~C0WzYra&UAJvf*?*PXvw7p>NaJ z&_nr7Y15!y5$SrI8r~Q|8%DgK$C2|z!D4x|GnW6zZQ8BqH5QH>6S~1+TptVP6&zUw zDF;VZK{~;al^NVMxjU&3a%dp74sh2%lJAFgWr)nZRMGT`xZ8Bx`*qw8>$n$$xXb

ESZ(pwYA-pzQ`BKLyhMKQQLHh3j!ir*IK&9@(OH}WhujW`GQY|pv@(JYDsjjnKz7O!a>)IFD6=%+&VR-%q-V%uW5~mQ zmdsc8De_dJR=gZnIh{s8lrLf&@=t)YXe9g*ApMX97g?UebgRMX1*BW{A5P~3!jTUS zIR}WcUW-G7DbPYA4}Bq5;vw{sf5gpKL@Qd{2^?iC!Rgol>CnjY6+o2l1staY5c(Ms z?QqQ@j}skDt!BazOe&lo144>~Y8_!Xgs0Hy0c0gehFW;R6ks)5(~B_QbsdgQgUkFP(aBUKbjn*ttkTHS0UVQt&KrP4YaqYTQN933b&xV~jl@n|%6CRo#t{#Q z);@`Vm^4~s08*f#a~~ken3mHi1;nhW^(Y|GnpzU!Xdv4FQNBcQI=cYb5^NokuoI91 z4du51Sqk(}Tbu<%nI-0QuEwCgPJ?qZAnh8;vjEwo!N~;Vs0Jq&5CJ%${#68svWAoM zss&_~hR$~Z*`=ZLuYf44A9<~vfRKNMC?5c1gN9BoAj)bMmaQs_<=8@&;dDlTqr8oB z$S5E}u;&uyb(mJn)liNH#GIkTAI#0MO-XWt5UOPXj&@YA0FYLVUdsU4tAVTrWF%AZ zXQERDNP>pD1V|g>rD(AYkPZ!<9|1yvEMy=2XFtJ%YkCThez*aZIOKgmiZ#400x}uT zLv*gegzgCquUJ5K1R+konTo*YB}_8qJAh-*P|gH|9)|qz8-R2J7>XMY0g|S{d7Ns2 zR|w}{0BO!tTkOYx#A<3C21Hrgg9kWX2V|B8=R-i01Kz?ni4h7ilvbu^9|I>&Q)?RL z^BOYM+`k0K&Y(4@Rx%&}sBE|l5IRCubpoP%ci<9k1Vniws%|FwnEUNIO=j|6c@);j;HE z5ar#RdL`e4r+{S{h5L7aldhrjLqOUzke>je%$$G$j=g|{vL``K1ERbWah!92#Nak$ zu}EZl<={B6fON2SXAX*ocL36+(cK0}bI?BNC}EDC1~2Tl^3Ia7np(H=%Xud@Jqi`F z%gb{xm!GwK!mdG|gib|$RFZ;7#;X%LKG z76&(SSAL27nHb>12=IMfF}$FyTtFFH`rsX8XnYw^8* zi)A-jTVA!Mu-sY9-kr%UtDG{3zfL=y)h^nU(OJVcUvjeVIM{!&Mo@p)na!FO%Fp}&0F<2u!>N;&g$g9D|c34%gQ=@9b+Kug9I0X_d839 zoDaFy&#|%s_BL|ONfcbAviP+KRoEP}XpT({Bm5*afK^M@OAs;?Jqz|VCmDqx%k!44 zT$1B(=B{w$W#8*u?pS(nmUHQn6)V~Pz1Y0j3Fn~wtu%X9Ii01h!eVE6*&2BZB4;5v z(HMA)0v?5Y4qVBJNUa*aORzJ0<-Ni%4|;zLa!w7Hqn$)sk<5Ov+q^(v669u4^=x^q0z84sI#hs42Hgh4YVuDnBBO&NpHSqSU6^l3md(mpVCIm z6@?F0VMAiin%ecX*lbO;>opX_l$f)wT-6|Qv&-9o(biw#0&1mKcEe-Za&l!Vatg%7 zhN3}ItfgqntdM)4-6$Xh+f5ckX=C+1b21sWkzSCbW|O%fbP3ynO}j-}@L_OIGTCRK zYM8fTI#;dC_&vsfSOsGTt3wS?Q<@Jwrdri{+$(~(+KNg z+g)(ix)6q9ZFoAGzN%K!=CWafo5TgpA@@@*x~7xE$(b7zu5~%rU}tUSSGCv`8(RxI zu?_p$O8P&s7<3_mE!)n^i7nA_=4P=?)u;z6+kA!h7}W-KL0Ob$SM|&>_Y4eHkh_-3 zT;n$u^$OVv>Mh?wM%VPgFh^8^je2u9IjkvW*JcYa%hCrqWyeORlYC66Df1#8e4jta z#QKUZpND#oq6+x}(1IO^cfBHowr2alp#D^eZ*iyr@f{QuhbjuW9OO}Na2KpJmXKk3 zb8nURVgwz{j)O8G76jxSl3B9XZB~eiVT$VZ77PkSIY}KOnRVHyRo<3UCZ^dBGFY2$ z^cUPEk#O~UJqEF5|5Nv6c@9iQLH#i-SIg(cofsoww5jPzVf$tVImz90%y=okn9F)8 zt;jRL*kORVT4-NH)Lb%t$W%5E1(qy@T3=n0sy0A%j+N+@eNSc8$G9){*(psm?p zMeZ15wSaDKN0}U(kPVB$>b%JNhdbok!9lXz^^}ekOcQ+TN{|fZ(qJS(JJLI)%vzo$ z3^p0-9deQh_D@+Q_Ds7GDlCve+r6{@Wg|#LwfiSJrglK89*DxvRQp&4t5dJhIy&!3 z;k{pHdNv3O3s6KXly@$*i>zW1+J00Si|x za*1Md%|Jx9t!Bf{(7^Q}S52j>oCf(M63daHCRK~YpXtO6jXX7@67IK}ajPuH_?zsa zskK4|$AQ|OrO7s$A*L$)1&1+mm*6CHG4&Dye|Z=~**at-?f8~^jS|M?5u`hmW%MIQ N`TGS_%~3X@{eNaTS~LIv diff --git a/pywafo/src/wafo/diffsumfunq.pyf b/pywafo/src/wafo/diffsumfunq.pyf deleted file mode 100644 index c8eb2c0..0000000 --- a/pywafo/src/wafo/diffsumfunq.pyf +++ /dev/null @@ -1,30 +0,0 @@ -! File diffsumfunq.pyf -python module diffsumfunq -interface - subroutine disufq(rvec, ivec, rA, iA, w, kw, h, g,nmin,nmax, m, n) - intent(c) disufq ! disufq is a C function - intent(c) ! all disufq arguments are considered as C based - integer intent(hide), depend(rA),check(n==shape(iA,0)) :: n=shape(rA,0) - integer intent(hide), depend(rA), check(m==shape(iA,1)) :: m=shape(rA,1) - double precision dimension(n,m), intent(in) :: rA, iA ! input array - double precision dimension(n), intent(in) :: w, kw ! input array - double precision intent(in) :: h, g - integer intent(in) :: nmin, nmax - double precision dimension(n,m), intent(out) :: rvec, ivec ! output array, - end subroutine disufq - - subroutine disufq2(rsvec, isvec,rdvec, idvec, rA, iA, w, kw, h, g,nmin,nmax, m, n) - intent(c) disufq2 ! disufq2 is a C function - intent(c) ! all disufq2 arguments are considered as C based - integer intent(hide), depend(rA),check(n==shape(iA,0)) :: n=shape(rA,0) - integer intent(hide), depend(rA), check(m==shape(iA,1)) :: m=shape(rA,1) - double precision dimension(n,m), intent(in) :: rA, iA ! input array - double precision dimension(n), intent(in) :: w, kw ! input array - double precision intent(in) :: h, g - integer intent(in) :: nmin, nmax - double precision dimension(n,m), intent(out) :: rsvec, isvec, rdvec, idvec ! output array, - - end subroutine disufq - -end interface -end python module diffsumfunq \ No newline at end of file diff --git a/pywafo/src/wafo/disufq.pyf b/pywafo/src/wafo/disufq.pyf deleted file mode 100644 index c8eb2c0..0000000 --- a/pywafo/src/wafo/disufq.pyf +++ /dev/null @@ -1,30 +0,0 @@ -! File diffsumfunq.pyf -python module diffsumfunq -interface - subroutine disufq(rvec, ivec, rA, iA, w, kw, h, g,nmin,nmax, m, n) - intent(c) disufq ! disufq is a C function - intent(c) ! all disufq arguments are considered as C based - integer intent(hide), depend(rA),check(n==shape(iA,0)) :: n=shape(rA,0) - integer intent(hide), depend(rA), check(m==shape(iA,1)) :: m=shape(rA,1) - double precision dimension(n,m), intent(in) :: rA, iA ! input array - double precision dimension(n), intent(in) :: w, kw ! input array - double precision intent(in) :: h, g - integer intent(in) :: nmin, nmax - double precision dimension(n,m), intent(out) :: rvec, ivec ! output array, - end subroutine disufq - - subroutine disufq2(rsvec, isvec,rdvec, idvec, rA, iA, w, kw, h, g,nmin,nmax, m, n) - intent(c) disufq2 ! disufq2 is a C function - intent(c) ! all disufq2 arguments are considered as C based - integer intent(hide), depend(rA),check(n==shape(iA,0)) :: n=shape(rA,0) - integer intent(hide), depend(rA), check(m==shape(iA,1)) :: m=shape(rA,1) - double precision dimension(n,m), intent(in) :: rA, iA ! input array - double precision dimension(n), intent(in) :: w, kw ! input array - double precision intent(in) :: h, g - integer intent(in) :: nmin, nmax - double precision dimension(n,m), intent(out) :: rsvec, isvec, rdvec, idvec ! output array, - - end subroutine disufq - -end interface -end python module diffsumfunq \ No newline at end of file diff --git a/pywafo/src/wafo/disufq1.c b/pywafo/src/wafo/disufq1.c deleted file mode 100644 index cae7868..0000000 --- a/pywafo/src/wafo/disufq1.c +++ /dev/null @@ -1,446 +0,0 @@ -#include "math.h" -/* - * DISUFQ Is an internal function to spec2nlsdat - * - * CALL: disufq(rvec,ivec,rA,iA, w,kw,h,g,nmin,nmax,m,n) - * - * rvec, ivec = real and imaginary parts of the resultant (size m X n). - * rA, iA = real and imaginary parts of the amplitudes (size m X n). - * w = vector with angular frequencies (w>=0) - * kw = vector with wavenumbers (kw>=0) - * h = water depth (h >=0) - * g = constant acceleration of gravity - * nmin = minimum index where rA(:,nmin) and iA(:,nmin) is - * greater than zero. - * nmax = maximum index where rA(:,nmax) and iA(:,nmax) is - * greater than zero. - * m = size(rA,1),size(iA,1) - * n = size(rA,2),size(iA,2), or size(rvec,2),size(ivec,2) - * - * DISUFQ returns the summation of difference frequency and sum - * frequency effects in the vector vec = rvec +sqrt(-1)*ivec. - * The 2'nd order contribution to the Stokes wave is then calculated by - * a simple 1D Fourier transform, real(FFT(vec)). - * - * Install gfortran and run the following to build the module: - * f2py diffsumfunq.pyf disufq1.c -c --fcompiler=gnu95 --compiler=mingw32 -lmsvcr71 - * - * by Per Andreas Brodtkorb 15.08.2001 - * revised pab 14.03.2002, 01.05.2002 22.07.2002, oct 2008 - */ - -void disufq(double *rvec, double *ivec, - double *rA, double *iA, - double *w, double *kw, - double h, double g, - int nmin, int nmax, - int m, int n) -{ - double Epij, Edij; - double tmp1, tmp2, tmp3, tmp4, kfact; - double w1, w2, kw1, kw2, Cg; - double rrA, iiA, riA, irA; - int i,jy,ix,iz1,iv1,ixi,jyi; - //int iz2, iv2; - //Initialize rvec and ivec to zero - for (ix=0;ix10000){ /* deep water /Inifinite water depth */ - for (ix = nmin-1;ix=0) - * kw = vector with wavenumbers (kw>=0) - * h = water depth (h >=0) - * g = constant acceleration of gravity - * nmin = minimum index where rA(:,nmin) and iA(:,nmin) is - * greater than zero. - * nmax = maximum index where rA(:,nmax) and iA(:,nmax) is - * greater than zero. - * m = size(rA,1),size(iA,1) - * n = size(rA,2),size(iA,2), or size(rvec,2),size(ivec,2) - * - * DISUFQ2 returns the summation of sum and difference frequency - * frequency effects in the vectors svec = rsvec +sqrt(-1)*isvec and - * dvec = rdvec +sqrt(-1)*idvec. - * The 2'nd order contribution to the Stokes wave is then calculated by - * a simple 1D Fourier transform, real(FFT(svec+dvec)). - * - * - * This is a MEX-file for MATLAB. - * by Per Andreas Brodtkorb 15.08.2001 - * revised pab 14.03.2002, 01.05.2002 - */ - -void disufq2(double *rsvec, double *isvec, - double *rdvec, double *idvec, - double *rA, double *iA, - double *w, double *kw, - double h, double g, - int nmin, int nmax, - int m, int n) -{ - double Epij, Edij; - double tmp1, tmp2, tmp3, tmp4, kfact; - double w1, w2, kw1, kw2, Cg; - double rrA, iiA, riA, irA; - int i,jy,ix,iz1,iv1,ixi,jyi; - //int iz2,iv2 - - //Initialize rvec and ivec to zero - for (ix=0;ix10000){ /* deep water /Inifinite water depth */ - for (ix = nmin-1;ix *(y1+1)){ /* if first is a max*/ - y=&(*(y1+1)); /* ignore the first max*/ - NC=floor((n-1)/2); - Tstart=2; - } - else { - y=y1; - NC=floor(n/2); - Tstart=1; - } - - if (NC<1){ - info = 0; - return; /* No RFC cycles*/ - } - - - if (( *(y+0) > *(y+1)) && ( *(y+1) > *(y+2)) ){ - info = -1; - return; /*This is not a sequence of turningpoints, exit */ - } - if ((*(y+0) < *(y+1)) && (*(y+1)< *(y+2))){ - info=-1; - return; /*This is not a sequence of turningpoints, exit */ - } - - - for (i=0; i=0) && (*(y+2*j+1)<=*(y+2*i+1))){ - if( (*(y+2*j)= xplus){ - if ( (*(y+2*i+1)-xminus) >= hmin){ - *(ind+ix)=Tmi; - ix++; - *(ind+ix)=(Tstart+2*i+1); - ix++; - } /*if*/ - goto L180; - } - - j=i+1; - while((j= *(y+2*i+1)) goto L170; - if( (*(y+2*j+2) <= xplus) ){ - xplus=*(y+2*j+2); - Tpl=(Tstart+2*j+2); - }/*if*/ - j++; - } /*while*/ - - - if ( (*(y+2*i+1)-xminus) >= hmin) { - *(ind+ix)=Tmi; - ix++; - *(ind+ix)=(Tstart+2*i+1); - ix++; - - } /*if*/ - goto L180; - L170: - if (xplus <= xminus ) { - if ( (*(y+2*i+1)-xminus) >= hmin){ - *(ind+ix)=Tmi; - ix++; - *(ind+ix)=(Tstart+2*i+1); - ix++; - } /*if*/ - /*goto L180;*/ - } - else{ - if ( (*(y+2*i+1)-xplus) >= hmin) { - *(ind+ix)=(Tstart+2*i+1); - ix++; - *(ind+ix)=Tpl; - ix++; - } /*if*/ - } /*elseif*/ - L180: - iy=i; - } /* for i */ - info = ix; - return ; -} - - - diff --git a/pywafo/src/wafo/misc.py b/pywafo/src/wafo/misc.py index c4d230e..f0831b6 100644 --- a/pywafo/src/wafo/misc.py +++ b/pywafo/src/wafo/misc.py @@ -1422,6 +1422,76 @@ def discretize(fun, a, b, tol=0.005, n=5): err = 0.5 * amax(abs((y00 - y) / (abs(y00 + y) + tiny))) return x, y +def discretize2(fun, a,b,tol=0.005, n=5): + ''' + Automatic adaptive discretization of function + + Parameters + ---------- + fun : callable + function to discretize + a,b : real scalars + evaluation limits + tol : real, scalar + absoute error tolerance + n : scalar integer + number of values + + Returns + ------- + x : discretized values + y : fun(x) + + Example + ------- + >>> import numpy as np + >>> import pylab as plb + >>> x,y = discretize2(np.cos,0,np.pi) + >>> t = plb.plot(x,y) + >>> plb.show() + + >>> plb.close('all') + + ''' + tiny = floatinfo.tiny + n += (mod(n,2)==0) # make sure n is odd + x = linspace(a, b, n) + fx = fun(x) + + n2 = (n-1)/2 + erri = hstack( (zeros((n2,1)), ones((n2,1)) )).ravel() + err = erri.max() + err0 = inf + #while (err != err0 and err > tol and n < nmax): + for j in range(50): + if err!=err0 and np.any(erri > tol): + err0 = err + # find top errors + + I, = where(erri>tol) + # double the sample rate in intervals with the most error + y = (vstack(((x[I]+x[I-1])/2, (x[I+1]+x[I])/2)).T).ravel() + fy = fun(y) + + fy0 = interp(y, x, fx) + erri = 0.5 * (abs((fy0 - fy) / (abs(fy0 + fy) + tiny))) + + err = erri.max() + + x = hstack((x,y)) + + I = x.argsort() + x = x[I] + erri = hstack((zeros(len(fx)),erri))[I] + fx = hstack((fx,fy))[I] + + else: + break + else: + warnings.warn('Recursion level limit reached j=%d' % j) + + return x, fx + def pol2cart(theta, rho): ''' @@ -1792,6 +1862,9 @@ def tranproc(x, f, x0, *xi): return y #y0,y1,y2,y3,y4 + + + def test_common_shape(): A = ones((4, 1)) @@ -1870,8 +1943,16 @@ def _test_discretize(): x, y = discretize(cos, 0, pi) plb.plot(x, y) plb.show() - plb.close('all') + +def _test_discretize2(): + import numpy as np + import pylab as plb + x,y = discretize2(np.cos,0,np.pi) + t = plb.plot(x,y) + plb.show() + plb.close('all') + def _test_stirlerr(): x = linspace(1, 5, 6) print stirlerr(x) @@ -1898,8 +1979,8 @@ def _test_parse_kwargs(): print out1 if __name__ == "__main__": - if True:# False: # + if False: # True:# import doctest doctest.testmod() else: - _test_tranproc() + _test_discretize2() diff --git a/pywafo/src/wafo/mvn.pyd b/pywafo/src/wafo/mvn.pyd index b12d5b4205fc507936cc94b787c81daf1a49edab..758b1aa73c03dc5c24222b0cd709d63437f9ed0b 100644 GIT binary patch delta 15713 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 delta 15349 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 diff --git a/pywafo/src/wafo/mvn1.pyf b/pywafo/src/wafo/mvn1.pyf deleted file mode 100644 index 817b9e5..0000000 --- a/pywafo/src/wafo/mvn1.pyf +++ /dev/null @@ -1,129 +0,0 @@ -! -*- f90 -*- -! Note: the context of this file is case sensitive. - -python module mvn2 ! in - interface ! in :mvn2 - subroutine mvnun(d,n,lower,upper,means,covar,maxpts,abseps,releps,value,inform) ! in :mvn2:mvndst.f - integer optional,check(len(lower)>=d),depend(lower) :: d=len(lower) - integer optional,check(shape(means,1)==n),depend(means) :: n=shape(means,1) - double precision dimension(d) :: lower - double precision dimension(d),depend(d) :: upper - double precision dimension(d,n),depend(d) :: means - double precision dimension(d,d),depend(d,d) :: covar - integer :: maxpts - double precision :: abseps - double precision :: releps - double precision :: value - integer :: inform - end subroutine mvnun - subroutine mvndst(n,lower,upper,infin,correl,maxpts,abseps,releps,error,value,inform) ! in :mvn2:mvndst.f - integer :: n - double precision dimension(*) :: lower - double precision dimension(*) :: upper - integer dimension(*) :: infin - double precision dimension(*) :: correl - integer :: maxpts - double precision :: abseps - double precision :: releps - double precision :: error - double precision :: value - integer :: inform - integer :: ivls - common /dkblck/ ivls - end subroutine mvndst - function mvndfn(n,w) ! in :mvn2:mvndst.f - integer :: n - double precision dimension(*) :: w - double precision dimension(*) :: upper - integer dimension(*) :: infin - integer :: infis - double precision :: e - double precision dimension(*) :: lower - double precision :: d - double precision dimension(*) :: correl - double precision :: mvndfn - double precision :: mvndnt - entry mvndnt(n,correl,lower,upper,infin,infis,d,e) - end function mvndfn - subroutine mvnlms(a,b,infin,lower,upper) ! in :mvn2:mvndst.f - double precision :: a - double precision :: b - integer :: infin - double precision :: lower - double precision :: upper - end subroutine mvnlms - subroutine covsrt(n,lower,upper,correl,infin,y,infis,a,b,cov,infi) ! in :mvn2:mvndst.f - integer :: n - double precision dimension(*) :: lower - double precision dimension(*) :: upper - double precision dimension(*) :: correl - integer dimension(*) :: infin - double precision dimension(*) :: y - integer :: infis - double precision dimension(*) :: a - double precision dimension(*) :: b - double precision dimension(*) :: cov - integer dimension(*) :: infi - end subroutine covsrt - subroutine dkswap(x,y) ! in :mvn2:mvndst.f - double precision :: x - double precision :: y - end subroutine dkswap - subroutine rcswp(p,q,a,b,infin,n,c) ! in :mvn2:mvndst.f - integer :: p - integer :: q - double precision dimension(*) :: a - double precision dimension(*) :: b - integer dimension(*) :: infin - integer :: n - double precision dimension(*) :: c - end subroutine rcswp - subroutine dkbvrc(ndim,minvls,maxvls,functn,abseps,releps,abserr,finest,inform) ! in :mvn2:mvndst.f - integer :: ndim - integer :: minvls - integer :: maxvls - external functn - double precision :: abseps - double precision :: releps - double precision :: abserr - double precision :: finest - integer :: inform - end subroutine dkbvrc - subroutine dksmrc(ndim,klim,sumkro,prime,vk,functn,x) ! in :mvn2:mvndst.f - integer :: ndim - integer :: klim - double precision :: sumkro - integer :: prime - double precision dimension(*) :: vk - external functn - double precision dimension(*) :: x - end subroutine dksmrc - function mvnphi(z) ! in :mvn2:mvndst.f - double precision :: z - double precision :: mvnphi - end function mvnphi - function phinvs(p) ! in :mvn2:mvndst.f - double precision :: p - double precision :: phinvs - end function phinvs - function bvnmvn(lower,upper,infin,correl) ! in :mvn2:mvndst.f - double precision dimension(*) :: lower - double precision dimension(*) :: upper - integer dimension(*) :: infin - double precision :: correl - double precision :: bvnmvn - end function bvnmvn - function bvu(sh,sk,r) ! in :mvn2:mvndst.f - double precision :: sh - double precision :: sk - double precision :: r - double precision :: bvu - end function bvu - function mvnuni() ! in :mvn2:mvndst.f - double precision :: mvnuni - end function mvnuni - end interface -end python module mvn2 - -! This file was auto-generated with f2py (version:2_5972). -! See http://cens.ioc.ee/projects/f2py2e/ diff --git a/pywafo/src/wafo/mvnprdmod.pyd b/pywafo/src/wafo/mvnprdmod.pyd index 3a0c1d65338553a6c6d2b9ac58eff7a6b93e11b3..e144ff7b472ed469d1c99e339b63a02c8f75a8db 100644 GIT binary patch delta 23072 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 delta 22761 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 XaALpwN#0_sKKqL-A^f7h$)EoRm6C0O diff --git a/pywafo/src/wafo/rfcmodule.pyf b/pywafo/src/wafo/rfcmodule.pyf deleted file mode 100644 index 3f25fab..0000000 --- a/pywafo/src/wafo/rfcmodule.pyf +++ /dev/null @@ -1,14 +0,0 @@ -! File rfcmodule.pyf -python module rfcmodule -interface - subroutine findrfc(y1,hmin, ind, n,info) - intent(c) findrfc ! findrfc is a C function - intent(c) ! all findrfc arguments are considered as C based - integer intent(hide), depend(y) :: n=len(y) - double precision dimension(n), intent(in) :: y1 ! input array - double precision intent(in) :: hmin - integer dimension(n), intent(out) :: ind ! output array, - integer intent(out) :: info - end subroutine findrfc -end interface -end python module rfcmodule \ No newline at end of file diff --git a/pywafo/src/wafo/rindmod.pyd b/pywafo/src/wafo/rindmod.pyd index d32ededea8ab643856452ee0268408ece2d01f6b..f4953c78c6bb39013abeb72f754b6069b2f62cac 100644 GIT binary patch delta 44066 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ξrm~pxLtQ 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 delta 43796 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

FAv+;iUV@4WP{qIrFn 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 diff --git a/pywafo/src/wafo/source/c_codes/build_all.py b/pywafo/src/wafo/source/c_codes/build_all.py index ba26f94..3422bc4 100644 --- a/pywafo/src/wafo/source/c_codes/build_all.py +++ b/pywafo/src/wafo/source/c_codes/build_all.py @@ -1,14 +1,16 @@ """ f2py c_library.pyf c_functions.c -c + +See also http://www.scipy.org/Cookbook/CompilingExtensionsOnWindowsWithMinGW """ import os def compile_all(): # Install gfortran and run the following to build the module: - compile_format = 'f2py.py %s %s -c --fcompiler=gnu95 --compiler=mingw32 -lmsvcr71' + #compile_format = 'f2py.py %s %s -c --fcompiler=gnu95 --compiler=mingw32 -lmsvcr71' # Install microsoft visual c++ .NET 2003 and run the following to build the module: - #compile_format = 'f2py.py %s %s -c' + compile_format = 'f2py.py %s %s -c' pyfs = ('c_library.pyf',) files =('c_functions.c',) diff --git a/pywafo/src/wafo/source/c_codes/c_library.pyd b/pywafo/src/wafo/source/c_codes/c_library.pyd index 933ba8e35efc136abe4091e9531d1cf991b45ba9..c0af1f9358457cb0b80b74ffa673dd1cd39d9f2b 100644 GIT binary patch delta 9361 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 lm8BIXxA6NY&4joz1N_tCxr3ah^E_+M&{{rdm_ diff --git a/pywafo/src/wafo/source/c_codes/old/build_all.py b/pywafo/src/wafo/source/c_codes/old/build_all_.py similarity index 100% rename from pywafo/src/wafo/source/c_codes/old/build_all.py rename to pywafo/src/wafo/source/c_codes/old/build_all_.py diff --git a/pywafo/src/wafo/source/mreg/build_all.py b/pywafo/src/wafo/source/mreg/build_all_.py similarity index 100% rename from pywafo/src/wafo/source/mreg/build_all.py rename to pywafo/src/wafo/source/mreg/build_all_.py diff --git a/pywafo/src/wafo/source/mvnprd/build_all.py b/pywafo/src/wafo/source/mvnprd/build_all.py index 5600c25..279e606 100644 --- a/pywafo/src/wafo/source/mvnprd/build_all.py +++ b/pywafo/src/wafo/source/mvnprd/build_all.py @@ -1,5 +1,5 @@ """ -f2py c_library.pyf c_functions.c -c +builds mvnprdmod.pyd """ import os @@ -10,21 +10,8 @@ def compile_all(): os.system(compile1_format % file) file_objects = '%s.o %s.o' % tuple(files) - os.system('f2py.py -m mvnprdmod -c %s mvnprd_interface.f --fcompiler=gnu95 --compiler=mingw32 -lmsvcr71' % file_objects) - #compile1_txt = 'gfortran -fPIC -c mvnprd.f' - #compile2_txt = 'f2py -m mvnprdmod -c mvnprd.o mvnprd_interface.f --fcompiler=gnu95 --compiler=mingw32 -lmsvcr71' - #os.system(compile1_txt) - #os.system(compile2_txt) - # Install gfortran and run the following to build the module: - #compile_format = 'f2py %s %s -c --fcompiler=gnu95 --compiler=mingw32 -lmsvcr71' - - # Install microsoft visual c++ .NET 2003 and run the following to build the module: - #compile_format = 'f2py %s %s -c' - #pyfs = ('c_library.pyf',) - #files =('c_functions.c',) - - #for pyf,file in zip(pyfs,files): - # os.system(compile_format % (pyf,file)) + #os.system('f2py.py -m mvnprdmod -c %s mvnprd_interface.f --fcompiler=gnu95 --compiler=mingw32 -lmsvcr71' % file_objects) + os.system('f2py.py -m mvnprdmod -c %s mvnprd_interface.f ' % file_objects) if __name__=='__main__': compile_all() diff --git a/pywafo/src/wafo/source/mvnprd/mvnprdmod.pyd b/pywafo/src/wafo/source/mvnprd/mvnprdmod.pyd index 3a0c1d65338553a6c6d2b9ac58eff7a6b93e11b3..e144ff7b472ed469d1c99e339b63a02c8f75a8db 100644 GIT binary patch delta 23072 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 delta 22761 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 XaALpwN#0_sKKqL-A^f7h$)EoRm6C0O diff --git a/pywafo/src/wafo/source/rind2007/build_all.py b/pywafo/src/wafo/source/rind2007/build_all.py index c9004ed..e187bbc 100644 --- a/pywafo/src/wafo/source/rind2007/build_all.py +++ b/pywafo/src/wafo/source/rind2007/build_all.py @@ -1,12 +1,5 @@ """ -f2py c_library.pyf c_functions.c -c - -g95 -W -Wall -pedantic-errors -fbounds-check -Werror -o test_fimod.exe fimod.f test_fimod.f -gfortran -W -Wall -pedantic-errors -fbounds-check -Werror -o test_fimod.exe fimod.f test_fimod.f - -gfortran -W -Wall -pedantic-errors -fbounds-check -Werror -o test_rindmod.exe intmodule.f jacobmod.f swapmod.f fimod.f rindmod2007.f test_rindmod.f -df %1 /check:all /fpe:0 /traceback /warn:argument checking /automatic /exe test_rindmod.exe intmodule.f jacobmod.f swapmod.f erfcoremod.f fimod.f rindmod.f test_rindmod.f -df /fast /fixed /transform_loops /exe test_rindmod.exe intmodule.f jacobmod.f swapmod.f erfcoremod.f fimod.f rindmod.f test_rindmod.f +Builds rindmod.pyd """ import os @@ -18,21 +11,8 @@ def compile_all(): os.system(compile1_format % file) file_objects = format1 % tuple(files) - os.system('f2py.py -m rindmod -c %s rind_interface.f --fcompiler=gnu95 --compiler=mingw32 -lmsvcr71' % file_objects) - #compile1_txt = 'gfortran -fPIC -c mvnprd.f' - #compile2_txt = 'f2py -m mvnprdmod -c mvnprd.o mvnprd_interface.f --fcompiler=gnu95 --compiler=mingw32 -lmsvcr71' - #os.system(compile1_txt) - #os.system(compile2_txt) - # Install gfortran and run the following to build the module: - #compile_format = 'f2py %s %s -c --fcompiler=gnu95 --compiler=mingw32 -lmsvcr71' - - # Install microsoft visual c++ .NET 2003 and run the following to build the module: - #compile_format = 'f2py %s %s -c' - #pyfs = ('c_library.pyf',) - #files =('c_functions.c',) - - #for pyf,file in zip(pyfs,files): - # os.system(compile_format % (pyf,file)) - + #os.system('f2py.py -m rindmod -c %s rind_interface.f --fcompiler=gnu95 --compiler=mingw32 -lmsvcr71' % file_objects) + os.system('f2py.py -m rindmod -c %s rind_interface.f ' % file_objects) + if __name__=='__main__': compile_all() diff --git a/pywafo/src/wafo/source/rind2007/quad.mod b/pywafo/src/wafo/source/rind2007/quad.mod index 8dd9f66..9967ada 100644 --- a/pywafo/src/wafo/source/rind2007/quad.mod +++ b/pywafo/src/wafo/source/rind2007/quad.mod @@ -1,4 +1,4 @@ -GFORTRAN module version '0' created from rind71mod.f on Fri Feb 26 13:11:06 2010 +GFORTRAN module version '0' created from rind71mod.f on Fri Jul 09 20:01:05 2010 MD5:fc4ffe08c60cbfe3a121a63154dd2c49 -- If you edit this, you'll get what you deserve. (() () () () () () () () () () () () () () () () () () () () () diff --git a/pywafo/src/wafo/source/rind2007/rind71mod.mod b/pywafo/src/wafo/source/rind2007/rind71mod.mod index da190e3..288f16d 100644 --- a/pywafo/src/wafo/source/rind2007/rind71mod.mod +++ b/pywafo/src/wafo/source/rind2007/rind71mod.mod @@ -1,5 +1,5 @@ -GFORTRAN module version '0' created from rind71mod.f on Fri Feb 26 13:11:07 2010 -MD5:f9bcaa9fb7b827472c94d50c70c8a88f -- If you edit this, you'll get what you deserve. +GFORTRAN module version '0' created from rind71mod.f on Fri Jul 09 20:01:06 2010 +MD5:1f288e757358b6b93dec46af1aa38ca8 -- If you edit this, you'll get what you deserve. (() () () () () () () () () () () () () () () () () () () () () () () () () () ()) @@ -25,16 +25,16 @@ DECL UNKNOWN SUBROUTINE GENERIC ALWAYS_EXPLICIT) (UNKNOWN 0 0 0 UNKNOWN 5 'setdata' 'rind71mod' 'setdata' 1 ((PROCEDURE UNKNOWN-INTENT MODULE-PROC DECL UNKNOWN SUBROUTINE GENERIC) (UNKNOWN 0 0 0 UNKNOWN ()) 19 0 (20 21 22 23 24 25 26 27 28) () 0 () () () 0 0) -27 'dnint' '' 'dnint' 19 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN -DUMMY) (INTEGER 4 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) -28 'dxsplt' '' 'dxsplt' 19 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN -DUMMY) (REAL 8 0 0 REAL ()) 0 0 () () 0 () () () 0 0) 24 'deps2' '' 'deps2' 19 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN DUMMY) (REAL 8 0 0 REAL ()) 0 0 () () 0 () () () 0 0) 25 'dnit' '' 'dnit' 19 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN DUMMY) (INTEGER 4 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) 26 'dxc' '' 'dxc' 19 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN DUMMY) ( REAL 8 0 0 REAL ()) 0 0 () () 0 () () () 0 0) +27 'dnint' '' 'dnint' 19 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN +DUMMY) (INTEGER 4 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +28 'dxsplt' '' 'dxsplt' 19 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN +DUMMY) (REAL 8 0 0 REAL ()) 0 0 () () 0 () () () 0 0) 20 'method' '' 'method' 19 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN DUMMY) (INTEGER 4 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) 21 'scale' '' 'scale' 19 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN diff --git a/pywafo/src/wafo/source/rind2007/rindmod.mod b/pywafo/src/wafo/source/rind2007/rindmod.mod index 8a86c1d..5f4f16a 100644 --- a/pywafo/src/wafo/source/rind2007/rindmod.mod +++ b/pywafo/src/wafo/source/rind2007/rindmod.mod @@ -1,4 +1,4 @@ -GFORTRAN module version '0' created from rindmod.f on Fri Feb 26 13:11:05 2010 +GFORTRAN module version '0' created from rindmod.f on Fri Jul 09 20:01:04 2010 MD5:bc2c220667849c09b8a376ad185f37fa -- If you edit this, you'll get what you deserve. (() () () () () () () () () () () () () () () () diff --git a/pywafo/src/wafo/source/rind2007/rindmod.pyd b/pywafo/src/wafo/source/rind2007/rindmod.pyd index d32ededea8ab643856452ee0268408ece2d01f6b..f4953c78c6bb39013abeb72f754b6069b2f62cac 100644 GIT binary patch delta 44066 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ξrm~pxLtQ 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 delta 43796 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
FAv+;iUV@4WP{qIrFn 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 diff --git a/pywafo/src/wafo/stats/core.py b/pywafo/src/wafo/stats/core.py index cf6c43a..5e3ad13 100644 --- a/pywafo/src/wafo/stats/core.py +++ b/pywafo/src/wafo/stats/core.py @@ -2,8 +2,8 @@ from __future__ import division from wafo.wafodata import WafoData import numpy as np from numpy import inf -from numpy.lib.shape_base import atleast_1d -from numpy.ma.core import arange, floor +from numpy import atleast_1d +from numpy import arange, floor __all__ = ['edf'] def edf(x, method=2): diff --git a/pywafo/src/wafo/stats/distributions.py b/pywafo/src/wafo/stats/distributions.py index 42f50a5..e795d84 100644 --- a/pywafo/src/wafo/stats/distributions.py +++ b/pywafo/src/wafo/stats/distributions.py @@ -27,7 +27,7 @@ import numpy.random as mtrand from numpy import flatnonzero as nonzero from scipy.special import gammaln as gamln from copy import copy -from estimation import FitDistribution +from wafo.stats.estimation import FitDistribution try: import vonmises_cython