From 5704928b4428fc9d5d122c463b15d918e3408f33 Mon Sep 17 00:00:00 2001 From: "per.andreas.brodtkorb" Date: Wed, 26 Jan 2011 15:17:20 +0000 Subject: [PATCH] Cosmetic fixes --- pywafo/src/wafo/covariance/core.py | 4 +-- .../src/wafo/doc/tutorial_scripts/chapter1.py | 4 +-- pywafo/src/wafo/misc.py | 29 ++++++++++-------- pywafo/src/wafo/objects.py | 4 +-- pywafo/src/wafo/source/c_codes/c_library.pyd | Bin 58077 -> 59464 bytes pywafo/src/wafo/source/mreg/build_all_.py | 24 +++------------ pywafo/src/wafo/source/mreg/mregmod.mod | 16 +++++----- pywafo/src/wafo/source/mvn/mvn.pyd | Bin 81181 -> 82056 bytes pywafo/src/wafo/source/rind2007/build_all.py | 1 - pywafo/src/wafo/spectrum/core.py | 27 ++++++++-------- pywafo/src/wafo/spectrum/models.py | 6 ++-- 11 files changed, 52 insertions(+), 63 deletions(-) diff --git a/pywafo/src/wafo/covariance/core.py b/pywafo/src/wafo/covariance/core.py index 9337937..37bc56a 100644 --- a/pywafo/src/wafo/covariance/core.py +++ b/pywafo/src/wafo/covariance/core.py @@ -17,7 +17,7 @@ date : Date and time of creation or change. from __future__ import division import warnings #import numpy as np -from numpy import (zeros, sqrt, dot, newaxis, inf, where, pi, nan, #@UnresolvedImport +from numpy import (zeros, sqrt, dot, inf, where, pi, nan, #@UnresolvedImport atleast_1d, hstack, vstack, r_, linspace, flatnonzero, size, #@UnresolvedImport isnan, finfo, diag, ceil, floor, random, pi) #@UnresolvedImport from numpy.fft import fft #as fft @@ -810,7 +810,7 @@ def sptoeplitz(x): data = data[1::, :] return y + spdiags((data, -offsets), shape=(n, n)) -def test_covdata(): +def _test_covdata(): import wafo.data x = wafo.data.sea() ts = wafo.objects.mat2timeseries(x) diff --git a/pywafo/src/wafo/doc/tutorial_scripts/chapter1.py b/pywafo/src/wafo/doc/tutorial_scripts/chapter1.py index 5d09b9a..f4d8b19 100644 --- a/pywafo/src/wafo/doc/tutorial_scripts/chapter1.py +++ b/pywafo/src/wafo/doc/tutorial_scripts/chapter1.py @@ -195,7 +195,7 @@ ylabel('(m)') #! Formation of 5 min maxima yura = xn[:85500, 1] -yura = np.reshape(yura, (300, 285)) +yura = np.reshape(yura, (285,300)).T maxyura = yura.max(axis=0) subplot(212) plot(xn[299:85500:300, 0] / 3600, maxyura, '.') @@ -207,7 +207,7 @@ show() #! Estimation of GEV for yuramax clf() import wafo.stats as ws -phat = ws.genextreme.fit2(maxyura, method='mps') +phat = ws.genextreme.fit2(maxyura, method='ml') phat.plotfitsummary() show() #disp('Block = 11, Last block') diff --git a/pywafo/src/wafo/misc.py b/pywafo/src/wafo/misc.py index 48be7a4..a6510c5 100644 --- a/pywafo/src/wafo/misc.py +++ b/pywafo/src/wafo/misc.py @@ -1942,21 +1942,26 @@ def tranproc(x, f, x0, *xi): return y #y0,y1,y2,y3,y4 def histgrm(data, n=None, odd=False, scale=False, lintype='b-'): - '''HISTGRM Plot histogram - - CALL: binwidth = histgrm(x,N,odd,scale) - binwidth = the width of each bin - + ''' + Plot histogram + Parameters ----------- - x = the data - n = approximate number of bins wanted - (default depending on length(x)) - odd = placement of bins (0 or 1) (default 0) - scale = argument for scaling (default 0) - scale = 1 yields the area 1 under the histogram + data : array-like + the data + n : scalar integer + approximate number of bins wanted (default depending on length(data)) + odd : bool + placement of bins (0 or 1) (default 0) + scale : bool + argument for scaling (default 0) + scale = 1 yields the area 1 under the histogram lintype : specify color and lintype, see PLOT for possibilities. + Returns + ------- + binwidth = the width of each bin + Example: R=rndgumb(2,2,1,100); histgrm(R,20,0,1) @@ -1985,8 +1990,6 @@ def histgrm(data, n=None, odd=False, scale=False, lintype='b-'): mx = (np.ceil(mx / d) + 1) * d + odd * d / 2 limits = np.arange(mn, mx, d) - - bin, limits = np.histogram(data, bins=limits, normed=scale) #, new=True) limits.shape = (-1, 1) xx = limits.repeat(3, axis=1) diff --git a/pywafo/src/wafo/objects.py b/pywafo/src/wafo/objects.py index 2ed9622..dc40766 100644 --- a/pywafo/src/wafo/objects.py +++ b/pywafo/src/wafo/objects.py @@ -25,7 +25,7 @@ import warnings import numpy as np from numpy import (inf, pi, zeros, ones, sqrt, where, log, exp, sin, arcsin, mod, finfo, interp, #@UnresolvedImport - newaxis, linspace, arange, sort, all, abs, vstack, hstack, atleast_1d, #@UnresolvedImport + linspace, arange, sort, all, abs, vstack, hstack, atleast_1d, #@UnresolvedImport finfo, polyfit, r_, nonzero, cumsum, ravel, size, isnan, nan, floor, ceil, diff, array) #@UnresolvedImport from numpy.fft import fft from numpy.random import randn @@ -34,7 +34,7 @@ from pylab import stineman_interp from matplotlib.mlab import psd, detrend_mean import scipy.signal -from wafo.misc import (nextpow2, findtp, findtc, findcross, sub_dict_select, +from wafo.misc import (nextpow2, findtp, findtc, findcross, ecross, JITImport, DotDict) from wafodata import WafoData from plotbackend import plotbackend diff --git a/pywafo/src/wafo/source/c_codes/c_library.pyd b/pywafo/src/wafo/source/c_codes/c_library.pyd index 4b0e89999fc4ed0bb561959d54c7a71897ca89b1..1619ad95bbf3b0969bd851523dc43d64c6fcb075 100644 GIT binary patch delta 14260 zcmcJ0dt4M%|NqQzaa9yt7Q`E^fOoKEZ|rhgR8Uk@#Jg6YTv9{i!No_-TnyG&R}?u^ z-h&{uB(*TZYa|+4K1J$NWH-NN{U9vK%uLPwz0b@pyW@Vp-`DfccV4g0o|*Ug+|TEn zIWxQa?KzM0Egt2i{UxD>DNH59?Db%nYmE2co-C(hW-<)3Ve9K!Zd~Qot0TE&$=1OG zyjmE>&yz%Yq><5YOM0Zv0FNJNCfUf28Zj4VE=K~B(KxywYoT!=KpCjW-e!^S*lFx4 zGMekJO_l&`1oZ%|0l6Fri~bC+jQtLT7r#v4>Z)^WqwjbtxAH<3^ASx)Zavw{SB z*tjRAktaMybGN3FX`abJZ%<{IW-q2n0wp-}45LlkYg5S~&uH$4>7>I`V^V|1+*m`I zjN_Uq15@LNi?(soz?(OnVJvIIB+ZFoo-Dd7>aeyoz>07Bm>Uc0+8#Z!*&-V|YCx}* z9i_r;9aCV6@xdv;jpef}KNjB%qPB~ml`}OJkP?D){F$P#>hIzt9bvP;X4(FIN zq{chmbXe#dXYaJlx`Bjftm8fZOrX^hzbPHn>$+z9o z*earsL~{pYNUlW38Dq#^NibVN&Pf(<_oB(>p3!UzdAj>ZR!vH~2jhHS_dziI}n?|OKjZ-v8`lKk5Rn&C{om8fZc_$dg{Vpi5@P0M1u%M z$kqgjCFyWkQsc3#7bTh2Sy$SENMz3i+$P=QzD3x_!K}3Vaelp4r?0Q-N3~cv@nel^~;#&|mmc zS6};Tz!q5;@2XG?aMibj8t6$g^8l3#REUEI?u3|bg~RzZ7nriflupP?4YfW^z}R zB(_fyN0g)(O^T9yjK)hz`bf)Bm9I-1P@xO_2jlz&|3MmlWFrw(*O-_!_7oU5xRphJ zfsuUXKgfrdw4q)hN$xoS*#iL>EVFZT+!ugJGP|)e0)Ux82kZ#0XudlU-(z!OyIpdZ zj27E*SqxHqS9TdG{x~3*ttIUNqXsBCT@rPrEUEO^$(LvfkF*7nCjls0M_MOeuhm*{{NnCC?d8=;<7aUIR z;p)p##1OO^i98mx7fH?NH+ZCDYRyB?G^~`3Zehivi>B;AKYKz#1;CyVdPODcEN+q# zyX4;v$;(2r?ULtkMJ4^*CEv1-%C!D8mCO3anPTZO*Ibi|~m_4;XYL38& z)qj%3-+alpWIYvV4D&6S2??8DTz7_Hea$6U!Kx{rtvm(0kK%hCz8g-GgaLg`zUGh6 z*HxYTt%N!>cN09n2K82^Yxyib8@}L~^b1YS^`5Q=Ipx-Ip46MvAl^iKEL@w7t6 z4TlaZKN)OaSUr+09&}kf2g4@oAZo-Ga0Q>#?nxxV>OoC@(NRvKp#Yq96sHA>lyY=nVQpeiQU{9JJr389D-8+52ylmz$uSid~^%|E6br_V|qQIdr7FJ;%;D zOysbmTX4C3jL6vtyU4F}ihYB?IzA~cr+X}{%-EAz3nkyyuO1Y~ak9;%;fc#!&}LF5 z-`PvIS(5qHg>SOUTYJej6U|^bI_l>P9?5b8H&0M z|LXtUUZIcqUd4vM^)=M|zZ8iqD~H?tNw_i%XC~z$i670fSMp}ku594Y)Tpw#u+5~0 z`h9xUq+ZGn0$&gruUSCx8chOie$;FZ;1?0=EQx-sr*CDW@6pB!O*!QxU%S|p1)bGx zw1R~hPm4LSvG}atf@dx?(c(&_438BgHr{)L8#am}jB=HN%bFx{SI~MY{7*lI_Ycy1L=Ya^^n}k zONIgHIMPT;0Fc$v^-4yIvpV##pw8lC`VjbgSO$qX3Tdn1Fki!CP_QU#Hok-r%MVQ(KqgsWP z%9`Xuqq9!%;}b_$Gs_uED_zlbV8RYQ5)H=9I+oWsrlS~{Xmo^bG0Wkut%Yufz%yTh zd&XvZ2dK`ciD^u*n8VQDY^G7c5vJKZ&_nHT_3=;N>WmB$M ze2{fH`Abja`F(*leT2AQ_Jlm1L-?n(4`ChNwyh_1(PMgjgR8Q{o;Hf8$o=T?9J7Ut zjnVY_%BAB?QW7(&4~>p)PNx5jkdm&ouP2Q$)7VJj7aQK|x(oLWGBGx>SBDEi$c|XK zuVf2~=4BcXc9?BOav^q3Z&x`cfQ*hCDH1$Svg5*}x1j1+AB1md{=K$cid`W2Ebh1N z%}G~iP9huYFT{^#yYWvrk(bCLLw`1(^h+4l<7PP`#q;QJDVdZo$R}Yde`%R@vF#CA zkr3jY2%zmW*_jaP+P9BfiT9H;C z?A7_ywm!zG^CQt?2ZUDv?)ZEf9`0n|^rN>A%Tt0x9b9zP-AUGu4d@Tuz9ln|sK@l{ z%E{re{kc`;lPCx-jn#E?6767~K`#q1bAI-%(k zs*mHuKE?S2FnA&_+f9p_-g5W!#E?A|=IOdTwURH#4`pwVN8`t3=rE_ONwVT=33roZ zoNq}DCZ=7Q58|{M@f;gL2mbrtYw6zOAm)bkg&^w$`4HBNVdChAulX$1Gb_lNHqi32 z4{R5$=^gJ|^1cVDo)GQ7i{?ZW+6waPgn{y$vgALC|Kk4H6Z5^ey(dmr&L~U1jn?<2 zrBFzQCP(@=x+U~?vNSn6?!&tu1CE#ni7r@i*x_IomYVn5$hIQ?gmj6rn1 zC7-Zl^+aROP;5P|PY2mN+WV1v6ZQRl&6CmX7KC~3-(>Bifznkp5rb(W=nNQ&2}s_X z6cJRGdb{{O{QUzxSiFnddKcfrWf8eQDQb2y=82G9-;ysV!;~QFbou)0G-vDY3z-{9 zd3N(TdmcG^`Ai8`t^j}-5KrHd*1ym_CCJ9Me~L59ckRu8krk7MEPk50)6e0~AgW}- zK#Q5`X+MPpkFFBiffm0Yp&{d}eIq_7T!Fv^nC{!#i)kM0J4^FoJlb?^yCUzl>&a`A z`v%UWEY5L#`Aqu|NRkVa%P|Ayr$n+PHJegcwvm)g$z?wv_ov9Qk`I^~G5mRuk=8KFz=;kVDh@vL{LNw5jkbF!eY-KTkbxqAMtF zWsa4254Gu7>9Me^LPi~1`oeAv)VmANN%z>o&A6kZ+%{w}440!VvbRQiTWW7}?d>*u zyUE_JIuj-cme_%Eds}I5*YYh%Nc%|A0MBrvY9+mA=w>pNlFSJDQGBmkvsXDb+$dFM z-PPiIJx@@0-EeChZOyjAV5`QHp4}~!S$j$7*@eO$Cwy>HUS=H1Sn;f5j9&kMsU$mQ zjNs6mn=zC&zs%6lX4uTjiLse5^uT6}z|O|r(7+x_;o*50Pt+nM(EDSJDYZ-uv# zZLpegWMA z{RX-VdI0*n46Oa*|1(y>RU5=u+)An29%#KcLq$k^!u(C%n!^}y`WBiV0}}7!<%M}! zj4Qfi1>cdndfc={OS3bL^5uN<7|YaIDJk;&s4y+bfxeKNSc7!ZkHNez}p6@_+ zKt4?j6AV&-l0g}uJkSPEC8!p39CQ(M6?7Bic@}SqL8CzlpqZd7&|1(&&>qlXP$TFn z=x5MLFJ%5po5^(pcc?IkmIWv--c}t|T~h_AQJtYNYpj~LG{-d` zXwGZC(EOz7(A?2*TB)|LR<2FamS{I=U(<$1U5xrI>d&Y^-B8^qomw|mm!_Me%h2WN z*6E6Mn{?-OUiyA|t$wopDSfv7ANnT!_xd)yD*ATx{pemXVWyZFG0S3Jim8q{5%XsJ zY{Mc$iJ{W4-SE2MZNn+U8N(-rFAP5!It+IVHUsh?2eH^FDP)R4is1^KB2F=0FGrtPN<(MD+Fv}3iCwX?N3+UK-J?Hk%U?Yr7z+SA%5 z?Z?^{?R9O3wp&!csNkrisCiMwsFEm4RAtohsPj?(ifWDeCF=L62T{Frfx3aZkvf$w zR+pk%jEt<%nROMq3%c)hH*~jjf9M|Q0!;cR^|AUf`V@Vdel8NUTwka!(r?jM>R;3E z)1T2d>-)#virp0VYTU87AL9|df?;CO1S*ComME$bV@c%B$UVvvs#49<+J|szMATfJ zMZZn|jb0X=AAK*{H%1!!WL%PAvVlopm~D{tQsgRzM0zPFD7Pw2Zz!9Ut;(6Id8#Z` zp=yoFtlFvCr#hr+Qe9B}rh2I2)IHUH>T&8h>Sxsz>Yf_8Mx)8pEJ4=3(D-O)YM<8@ zY4>RFX;TrgT$iNVru$6SO+N?${HT{kuZlh#{a?|saanOz1aLi07H^E-6<-~nVwi4N zO$XX!xMcX%z~HMi>RBpAvO=*}(W#giSr~aD@@C{HrB*pr*{J+gc^ocXRJE#ZsqU)= zt2d}^YLn(qO)$!EOVl>q5&bFsE&ami&ggY9bulMn&cs}f>5S3DM#m<_z8rfr_GIj( zSf4m)+{n1qaev3D;xKeI5Q}-5_swV~rYfdBvZ#f{W+CL= z4LO{5=ORgF=c4-D(m?JBy2m)b?#(_V zF?hx=2*tDCR~4cD+az?#$Qci6mdVEKxkG$OD0`8p@L5FWknLVC;9bBE zWN>W&`Lw(TkyR#h`+AYiEkR^uWf<4ek95}bH>77RSy7nt4`t;5K_AE15k@|w3&~lM zmsOCHS&4Uj)F#J_HfFCf!fp%sqw=|)et6!bet594{4QWIg~3=lA?-Wa{lE& z(-EaZkUD!B5nd4?p98sRM}&aB2U4yQqy*#_AOqE|$Ri-Bb_Az50>GLfLPi70H;Kdy z6aq6=PkZ)Kf!v99RZX7-HuVVylOt^ry3DYX7 zmXfwt!?;~6DX$74ifv)s4@||IAsp>mLVl?WCWrQSW0T32st_(}KZ)2LiZ0T!T}{^P zl9JNhQu6vvsVo|L#j2BeCbpBXJ3~p(9;s}l8%wI7=iyE%DSAyx2JV*1=DRV?6_|qd zNlD2bDcQ42Dl2tk$`F_ez)-nEN_Id~vK!N4o@tT<699b}!qH3UFDk+`+fW1|L~V3t zO5o8RbW@kltHTWYZBHn91p!vLv8)nU+KAVVP*U-lRF>t&QY3iZ3D0{VmwR_eWoiEt z(<{iqCL}!!318>NRLX1O7zuf_Gla-sZHF6AInU$o>6U^@;=3zUR_i9PO^Dzo`D1q| z84l-ioh&&^aMX1@d@rVIIZlKb>nM7#C%nECFToDH9*S4!pS}KsH~mSBJdLhvq<2kV zY$z^M(;S-8)6yF#P-rh(acIDEa9R)JahOkEiHxi(C8&7s9nx>4a0($F-R?0&;vchNaA z_H?(ou`ApLzJViqn+D6YZBA+XxXvL>Z-jE4yaRgejgcQoaKD)GyPR(||?(q`-L2k~}l2Q9Y{f{~Y?5;dZzTX!* zw5Ut9qrz(4DvX&SIfa%!;$Ud;y{?iM(GNeE`ThS}}O?SbdADSXhw`JfN+K|A^; zkawztIhH}A=AzDHIUh)Tw{~NHA-)Hn7`Yua_|TuK6^LQ>1F6M}S=i%IhItQ&dMCS zDCzyalwC^(zdwO|d|Fy@R7&`=@ zlMBmfu+{&Fly^`}oPb2E| zlU4OnG9STidSA+Ad6M!IbBPT3>Cqs?NJy!Tnq=>vb( zo{+M6yv#@NtOD-b2U5!;mtdvs1n$+aRLLVxA?B5k%s3-uZ}P}m*lmU6-IG#wH1CbB zNlLy!5Lq8e*)To}C8XQoQ1S@Ar1G}!!fqZk<$gfxhL%YNhV~w!$UiOR?g)WDf-4tM z6-FdHnKyM1Lof--%aQPdydoo#eG`g)JuSued2~?DplWuY!hVM81YUJM(zOu=7dJ}T zpLyhG4C8F@{RHGHk9-I7i%?J3;j)6a6${Ht5&CxsG=oRN4^WLS9SOznTb4J4l1*<& zN#YxQOzLfq7m()U<3$#w?phw{ZQ)Bysa19!IvE+}29O~9YSekV`x6NLbts*_0#6_o zuN!t-*r2b-$4dcYj;R#C#dL}(z(f!FrJ*2}2qZydY@VHm_6t0Vfh6)kDg6ED%Y8{Xu-WKc&(bH$)BO>$f1EGgAj*sjJO|Bqyg(9M9_NSYa z7rx*V58@yoeu6ENU6B%yW0ni5Q-I`(9GXuR;cz;%3<&+!-#Lh8AQDl|UbRb6NjmSB z=0`IM;6hnl_<;psX5ELdX9W{O1B{yTVlL~eD%@6hSHDW{|T z=`Yh6d_UE-(u|;psMrla?uiC&x(QIN2+HLZIkJ+zEPGjI{%WREv_XFnJOf1z?W9to zfjb67E#mo9q?x+=Ll4wToyh!OVDiD3J0t6jJ<@P6JCP6|^l-)+31q*0FC~mXJg#Cz zYiJ6P@-Bzcb8>PES1dL$siIUb0MiYqc9!I`KonhK)a)7{^l+LlcSCjoX%z)lZ|9+s zf{RT+NZQ9z(>9R{p98)k61@TBtO)tjO<8vzs@T=3en1*UQW_xQoFq~yx@I_INpn-Q z$PF>NA!aw^RUmC5^9O-A9$bYCe8@||zSI1_0X-Cn{lYW3@_6*ZXp4rV4-m&*Qcyh% zNTrBJ1B7PYX)Bo`G=3*E7m!3Gwh~CG2q^)AXJMCu+#@J*(Q^QZ_@2=S1b<0zk!rO| zk&KH2O}B92c;*5Zjz>UJMFK&10Ywj|yTd3V;)w&2&{a=(y3VD4Oqtt-Q29yV5$`YN zngFd8DSDQw#^E%!%MCdMEAurGPlySShcDaaWSAA1U2dkf!r V*4KQo%)|e``7*S=_tnoN{~x|tBe4Jg delta 13309 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 B)zSa} diff --git a/pywafo/src/wafo/source/mreg/build_all_.py b/pywafo/src/wafo/source/mreg/build_all_.py index 6575b70..930c789 100644 --- a/pywafo/src/wafo/source/mreg/build_all_.py +++ b/pywafo/src/wafo/source/mreg/build_all_.py @@ -7,29 +7,15 @@ gfortran -W -Wall -pedantic-errors -fbounds-check -Werror -c dsvdc.f mregmodule. import os def compile_all(): - files = ['mregmodule', 'dsvdc'] + files = ['dsvdc','mregmodule'] compile1_format = 'gfortran -fPIC -c %s.f' format1 = '%s.o ' * len(files) for file in files: os.system(compile1_format % file) file_objects = format1 % tuple(files) - #f2py --fcompiler=gnu95 --compiler=mingw32 -lmsvcr71 -m mymod -c mymod.f90 - - os.system('f2py -m cov2mod -c %s cov2mmpdfreg_intfc.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 cov2mod -c %s cov2mmpdfreg_intfc.f' % file_objects) + + if __name__=='__main__': compile_all() diff --git a/pywafo/src/wafo/source/mreg/mregmod.mod b/pywafo/src/wafo/source/mreg/mregmod.mod index 0cc4c8f..6c893b5 100644 --- a/pywafo/src/wafo/source/mreg/mregmod.mod +++ b/pywafo/src/wafo/source/mreg/mregmod.mod @@ -1,5 +1,5 @@ -GFORTRAN module version '0' created from mregmodule.f on Wed Aug 05 19:21:17 2009 -MD5:35f9c2506fae455bf63c0bcfadd75d2e -- If you edit this, you'll get what you deserve. +GFORTRAN module version '0' created from mregmodule.f on Tue Jan 25 20:12:17 2011 +MD5:a058cc3e6c0e8bedef8f214da2f5fbdc -- If you edit this, you'll get what you deserve. (() () () () () () () () () () () () () () () () () () () () () () () () () @@ -61,8 +61,6 @@ INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 INTEGER ()) 0 '40401')) 0 () DUMMY) (REAL 8 0 0 REAL ()) 0 0 () (1 EXPLICIT (CONSTANT (INTEGER 4 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 INTEGER ()) 0 '201')) 0 () () () 0 0) -18 'n' '' 'n' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN DUMMY) ( -INTEGER 4 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) 11 'db' '' 'db' 7 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN DIMENSION DUMMY) (REAL 8 0 0 REAL ()) 0 0 () (1 EXPLICIT (CONSTANT ( INTEGER 4 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 INTEGER ()) 0 @@ -76,14 +74,10 @@ INTEGER 4 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 INTEGER ()) 0 DIMENSION DUMMY) (REAL 8 0 0 REAL ()) 0 0 () (1 EXPLICIT (CONSTANT ( INTEGER 4 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 INTEGER ()) 0 '7')) 0 () () () 0 0) -19 'nit' '' 'nit' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN DUMMY) ( -INTEGER 4 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) 14 'a' '' 'a' 7 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN DIMENSION DUMMY) (REAL 8 0 0 REAL ()) 0 0 () (1 EXPLICIT (CONSTANT (INTEGER 4 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 INTEGER ()) 0 '1407')) 0 () () () 0 0) -20 'infr' '' 'infr' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN DUMMY) -(INTEGER 4 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) 15 'da' '' 'da' 7 ((VARIABLE INOUT UNKNOWN-PROC UNKNOWN UNKNOWN DIMENSION DUMMY) (REAL 8 0 0 REAL ()) 0 0 () (1 EXPLICIT (CONSTANT ( INTEGER 4 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 INTEGER ()) 0 @@ -92,6 +86,12 @@ INTEGER 4 0 0 INTEGER ()) 0 '1') (CONSTANT (INTEGER 4 0 0 INTEGER ()) 0 (REAL 8 0 0 REAL ()) 0 0 () () 0 () () () 0 0) 17 'm' '' 'm' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN DUMMY) ( INTEGER 4 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +18 'n' '' 'n' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN DUMMY) ( +INTEGER 4 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +19 'nit' '' 'nit' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN DUMMY) ( +INTEGER 4 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) +20 'infr' '' 'infr' 7 ((VARIABLE IN UNKNOWN-PROC UNKNOWN UNKNOWN DUMMY) +(INTEGER 4 0 0 INTEGER ()) 0 0 () () 0 () () () 0 0) ) ('fi' 0 2 'mreg' 0 4 'rind' 0 3) diff --git a/pywafo/src/wafo/source/mvn/mvn.pyd b/pywafo/src/wafo/source/mvn/mvn.pyd index 2d0a0645d9e0e4493e468416d90be0b035b9e364..666767f8936df75c4c7d733752b49665e431e211 100644 GIT binary patch delta 15510 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 S.data[100:-1] = 0.0 >>> Nt = len(S.data)-1 >>> acf = S.tocovdata(nr=0, nt=Nt) + >>> S1 = acf.tospecdata() + >>> h = S.plot('r') + >>> h1 = S1.plot('b:') R = spec2cov(spec,0,Nt) win = parzen(2*Nt+1) @@ -2345,8 +2348,8 @@ class SpecData1D(WafoData): newNfft = 2 ** nextpow2(ceil(wnNew / dwMin)) + 1 if newNfft > nfft: - if (nfft <= 2 ** 15 + 1) and (newNfft > 2 ** 15 + 1): - warnings.warn('Spectrum matrix is very large (>33k). Memory problems may occur.') + #if (nfft <= 2 ** 15 + 1) and (newNfft > 2 ** 15 + 1): + # warnings.warn('Spectrum matrix is very large (>33k). Memory problems may occur.') nfft = newNfft self.args = linspace(0, wnNew, nfft) @@ -2442,18 +2445,16 @@ class SpecData1D(WafoData): >>> Sj = sm.Jonswap(Hm0=3, Tp=7) >>> w = np.linspace(0,4,256) >>> S = SpecData1D(Sj(w),w) #Make spectrum object from numerical values - >>> S.bandwidth([0,1,2,3]) + >>> S.bandwidth([0,'eps2',2,3]) array([ 0.73062845, 0.34476034, 0.68277527, 2.90817052]) ''' - -# if self.freqtype in 'k': -# vari = 'k' -# else: -# vari = 'w' - m, unused_mtxt = self.moment(nr=4, even=False) - fact = atleast_1d(factors) + fact_dict=dict(alpha=0,eps2=1,eps4=3,qp=3,Qp=3) + fun = lambda fact: fact_dict.get(fact,fact) + fact = atleast_1d(map(fun,list(factors))) + + #fact = atleast_1d(fact) alpha = m[2] / sqrt(m[0] * m[4]) eps2 = sqrt(m[0] * m[2] / m[1] ** 2. - 1.) eps4 = sqrt(1. - m[2] ** 2. / m[0] / m[4]) @@ -2956,8 +2957,8 @@ class SpecData2D(WafoData): >>> SD = D.tospecdata2d(sm.Jonswap().tospecdata(),nt=101) >>> m,mtext = SD.moment(nr=2,vari='xyt') >>> np.round(m,3),mtext - (array([ 3.061, 0.132, 0. , 2.13 , 0.011, 0.008, 1.677, -0. , - 0.109, 0.109]), ['m0', 'mx', 'my', 'mt', 'mxx', 'myy', 'mtt', 'mxy', 'mxt', 'myt']) + (array([ 3.061, 0.132, -0. , 2.13 , 0.011, 0.008, 1.677, -0. , + 0.109, 0.109]), ['m0', 'mx', 'my', 'mt', 'mxx', 'myy', 'mtt', 'mxy', 'mxt', 'myt']) References ---------- @@ -3137,7 +3138,7 @@ class SpecData2D(WafoData): self.labels.ylab = labels[1] self.labels.zlab = labels[2] -def test_specdata(): +def _test_specdata(): import wafo.spectrum.models as sm Sj = sm.Jonswap() S = Sj.tospecdata() diff --git a/pywafo/src/wafo/spectrum/models.py b/pywafo/src/wafo/spectrum/models.py index 2ae535c..5bfa945 100644 --- a/pywafo/src/wafo/spectrum/models.py +++ b/pywafo/src/wafo/spectrum/models.py @@ -1965,7 +1965,7 @@ class Spreading(object): #Snew.note = specdata.note + ', spreading: %s' % self.type return Snew -def test_some_spectra(): +def _test_some_spectra(): S = Jonswap() w = arange(3.0) @@ -2024,7 +2024,7 @@ def test_some_spectra(): plb.show() plb.close('all') -def test_spreading(): +def _test_spreading(): import pylab as plb pi = plb.pi w = plb.linspace(0, 3, 257) @@ -2045,7 +2045,7 @@ def test_spreading(): def main(): if False: # True: # - test_some_spectra() + _test_some_spectra() else: import doctest doctest.testmod()