From 5d87ea03ce59a9209af522636b33f280be387ba6 Mon Sep 17 00:00:00 2001 From: john Date: Mon, 2 Dec 2024 17:05:26 -0600 Subject: [PATCH 1/3] remove deprecated numpy syntax --- PyNAFF/PyNAFF.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/PyNAFF/PyNAFF.py b/PyNAFF/PyNAFF.py index a24ddd4..3ae356e 100644 --- a/PyNAFF/PyNAFF.py +++ b/PyNAFF/PyNAFF.py @@ -4,6 +4,7 @@ except ImportError: from __builtin__ import range, int import numpy as np +import math """ # NAFF - Numerical Analysis of Fundamental Frequencies # Version : 1.1.4 @@ -141,7 +142,7 @@ def fretes(FR, FREFON): for i in range(len(vars['TFS'])): TEST = np.abs(vars['TFS'][i] - FR) if TEST < ECART: - if np.float(TEST)/np.float(ECART) < TOL: + if float(TEST)/float(ECART) < TOL: IFLAG = -1 NUMFR = i break @@ -208,7 +209,7 @@ def gramsc(turns, FR, A, B): ZDIV = ZDIV + np.conj(vars['ZALP'][NF-1, i])*ZTEE[i] DIV = np.sqrt(np.abs(ZDIV)) vars['ZALP'][NF-1,:] = vars['ZALP'][NF-1,:]/DIV - ZMUL = np.complex(A,B)/DIV + ZMUL = complex(A,B)/DIV ZI = 0.0+1.0j for i in range(0, NF): @@ -229,7 +230,7 @@ def gramsc(turns, FR, A, B): T = np.linspace(0, turns, num=turns+1, endpoint=True)*2.0*np.pi - np.pi*turns vars['TWIN'] = 1.0+np.cos(T/turns) - vars['TWIN'] = ((2.0**window*np.math.factorial(window)**2)/float(np.math.factorial(2*window)))*(1.0+np.cos(T/turns))**window + vars['TWIN'] = ((2.0**window*math.factorial(window)**2)/float(math.factorial(2*window)))*(1.0+np.cos(T/turns))**window vars['ZTABS'] = data[skipTurns:skipTurns+turns+1] TOL = 1.0e-4 From 30ecefa9fc296aab8706d5a9d56e530f00b06490 Mon Sep 17 00:00:00 2001 From: john Date: Fri, 21 Mar 2025 18:01:43 -0500 Subject: [PATCH 2/3] adjust real casting to avoid warning --- PyNAFF/PyNAFF.py | 2 +- PyNAFF/__pycache__/PyNAFF.cpython-313.pyc | Bin 0 -> 15412 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 PyNAFF/__pycache__/PyNAFF.cpython-313.pyc diff --git a/PyNAFF/PyNAFF.py b/PyNAFF/PyNAFF.py index 3ae356e..cd285db 100644 --- a/PyNAFF/PyNAFF.py +++ b/PyNAFF/PyNAFF.py @@ -240,7 +240,7 @@ def gramsc(turns, FR, A, B): if getFullSpectrum: y = np.fft.fft(data_for_fft) else: - y = np.fft.rfft(data_for_fft.astype('float64')) + y = np.fft.rfft(np.real(data_for_fft))#.astype('float64')) RTAB = np.sqrt(np.real(y)**2 + np.imag(y)**2)/turns # normalized INDX = np.argmax(RTAB) diff --git a/PyNAFF/__pycache__/PyNAFF.cpython-313.pyc b/PyNAFF/__pycache__/PyNAFF.cpython-313.pyc new file mode 100644 index 0000000000000000000000000000000000000000..47c30470d024b99197409fb13112188df90e1fe4 GIT binary patch literal 15412 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 SPW@tg$ Date: Tue, 1 Jul 2025 14:19:47 -0500 Subject: [PATCH 3/3] added warnings flag --- PyNAFF/PyNAFF.py | 4 ++-- PyNAFF/__pycache__/PyNAFF.cpython-313.pyc | Bin 15412 -> 15509 bytes 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/PyNAFF/PyNAFF.py b/PyNAFF/PyNAFF.py index cd285db..8cdfe93 100644 --- a/PyNAFF/PyNAFF.py +++ b/PyNAFF/PyNAFF.py @@ -19,7 +19,7 @@ __contact = ['nkarast .at. cern .dot. ch'] -def naff(data, turns=300, nterms=1, skipTurns=0, getFullSpectrum=False, window=1): +def naff(data, turns=300, nterms=1, skipTurns=0, getFullSpectrum=False, window=1, warnings=False): ''' The driving function for the NAFF algorithm. Inputs : @@ -246,7 +246,7 @@ def gramsc(turns, FR, A, B): INDX = np.argmax(RTAB) VMAX = np.max(RTAB) - if INDX == 0 : + if INDX == 0 and warnings : print('## PyNAFF::naff: Remove the DC component from the data (i.e. the mean).') if INDX <= turns/2.0: IFR = INDX - 1 diff --git a/PyNAFF/__pycache__/PyNAFF.cpython-313.pyc b/PyNAFF/__pycache__/PyNAFF.cpython-313.pyc index 47c30470d024b99197409fb13112188df90e1fe4..ea3a39f8a2fb821f1590ca33c2d628ca52d0de4d 100644 GIT binary patch delta 1226 zcmZuw&ubGw6rS1aZa2Hxw6SiRA5C_XCaFc!`lG2a6+sXFK%~-fq!@`76szDMQBe^U z@uH$4JQNiK4}zj#6$SC&e;{7ei+J$lO%wzVo_sUO8W9I}=9~Av_w6@tc3+&lamxMS zx;DWPUAb?5_cOPt`8{&m87{67e10UOgfxrIQnL(~wT05jh7(d)g!fboLaMYK5tNxC z%8Z5%;}xGq;htWG`;k1NK79o&L_BTwHpKPUb7fwhpv+E_L)PIUFCum%7PgAV6m}GL z6^y9#fF&_K> z$#A1$5h4$ToTuiXS7w7FSizEF5s$N!QtyXPX3DsO?_3PO%=|9oU;$PzPp(xBCmbxz zGCC1nW4OI1q)`eH_n4u$oz{i!0>bqr9nxGtz_t9sj5P4i;9giE2Bud*+{$S)qwugN z3tw#y#w^=x=i#hX#H^#jZ!H^YRsvpGKFnJwcd(&{vNOwJ{g~$r{!vXr+78a~ZXm^z z%&5;2GPj5jZvHWet?wR?4TS=DkR+#Uv20kqj#VaBB^j;YCnwU=R*3O(RD`E7hi-UW zHeY18T_F4%GwE$8i-IF(k4g#~mbOcs%U(aqPPAMZkSVmCY22xyX?kS)L0u z0(nna+57ejIjzDJb65=2l zCnDeQ+i~?-sMm#^=_i}7pw+@(&7Xio$;*^kPKxn@oI|!4=J}b`>SizLUa|Z0@j^(! z6ZqXiJ`C%uU;u;vQG+K|V0TjxbGFd@^PSG>Q91%>T` zwGz#=#&8-Pfstx0YMq#CiG$+6QD{~l>9TW>n9RZFm$##|+(&wAhh js()1;)o!V-ij?mQi4RCepG(7;(wM%~k%k#^3 delta 1198 zcmZuw-Afcv6u)KJ&llJqL?hE;GyeHYNp_ILYSL-GAbciTHX?BYdN6h_qv>Vwy6!mLC&-Da@q z%PIJ!Zbkp&;c5oYEl-Cr+aAA}V*X>8!P-P4H(0=~(FA**fO;P*H^U!KYz1R50W+8> zb=HLf7YnkGLPQH!I?5Yl(jugwR1A`jJE*Gji7IvwZ*h7T=Gf_@`4J~j>U`?3B{3}4 zSaBT6Kb9)nA+8SC)=fC0>9AVUEN5s!Q47F`)=Euyq{SeF-&IX_2|q-JNW#3`A+hAN+U2y$ z1*IkDJVHmWVMe5KEM&9DSP<=yWShc210xnN!W$=Dc4tv8X(babOS)GG@gh1wgjI-^ z_wDC2teZ3jdz#gO)gm&3$E0*FOT@XA&pHWG!$~Ebtp0dB=7b_av`WC^aJwerkIOS1 z<%K~lrdK_1-g|*sJ8Ry)P8x!*JrmHEO*ikV3#D1HSUQDOOI;{B(=eOuhpp@;O+#ZS z2n)R-eFGh>_}%)xv))_hf_MF^kR5pC86fqc{UP`{@QtdloipKc?lIkfD}z>gO%gtp u;t7gPQaUH`Fp6DmX#VEZ(v9h}r4R6I@S^9gn+EoW;rHM@It_C}$NvKKyTJ