77
88from orangecontrib .spectroscopy .irfft import (IRFFT , zero_fill , PhaseCorrection ,
99 find_zpd , PeakSearch , ApodFunc ,
10- MultiIRFFT , apodize ,
10+ MultiIRFFT , apodize , ramp ,
1111 )
1212
1313dx = 1.0 / 15797.337544 / 2.0
@@ -19,6 +19,14 @@ def setUp(self):
1919 self .ifg_single = Orange .data .Table ("IFG_single.dpt" )
2020 self .ifg_seq_ref = Orange .data .Table ("agilent/background_agg256.seq" )
2121 self .sc_dat_ref = Orange .data .Table ("agilent/background_agg256.dat" )
22+ self .ifgs = {
23+ 'even_sym' : self .ifg_single .X [0 ],
24+ 'odd_sym' : self .ifg_single .X [0 ][1 :],
25+ 'even_asym' : self .ifg_seq_ref .X [0 ][1 :],
26+ 'odd_asym' : self .ifg_seq_ref .X [0 ],
27+ 'even_asym_reverse' : self .ifg_seq_ref .X [0 ][1 :][::- 1 ],
28+ 'odd_asym_reverse' : self .ifg_seq_ref .X [0 ][::- 1 ],
29+ }
2230
2331 def test_zero_fill (self ):
2432 N = 1975
@@ -144,18 +152,19 @@ def test_multi_ab(self):
144152 np .testing .assert_allclose (ab [:, limits [0 ]:limits [1 ]], dat , atol = 0.004 )
145153
146154 def test_apodization (self ):
147- ifgs = {
148- 'even_sym' : self .ifg_single .X [0 ],
149- 'odd_sym' : self .ifg_single .X [0 ][1 :],
150- 'even_asym' : self .ifg_seq_ref .X [0 ][1 :],
151- 'odd_asym' : self .ifg_seq_ref .X [0 ],
152- 'even_asym_reverse' : self .ifg_seq_ref .X [0 ][1 :][::- 1 ],
153- 'odd_asym_reverse' : self .ifg_seq_ref .X [0 ][::- 1 ],
154- }
155155 for apod_func in ApodFunc :
156- for k , ifg in ifgs .items ():
156+ for k , ifg in self . ifgs .items ():
157157 with self .subTest (apod_func = apod_func .name , ifg = k ):
158158 zpd = find_zpd (ifg , PeakSearch .ABSOLUTE )
159159 out = apodize (ifg , zpd , apod_func )
160160 # Apodization should not change value at zpd
161161 self .assertAlmostEqual (ifg [zpd ], out [zpd ])
162+
163+ def test_ramp (self ):
164+ ifg = self .ifgs ['odd_asym' ]
165+ zpd = find_zpd (ifg , PeakSearch .ABSOLUTE )
166+ ramp_fwd = ramp (ifg , zpd )
167+ ifg_rev = self .ifgs ['odd_asym_reverse' ]
168+ zpd_rev = find_zpd (ifg_rev , PeakSearch .ABSOLUTE )
169+ ramp_rev = ramp (ifg_rev , zpd_rev )
170+ np .testing .assert_array_equal (ramp_fwd , ramp_rev [::- 1 ])
0 commit comments