Startup
This commit is contained in:
@@ -13,11 +13,13 @@ def hfitoff(data, xdeg):
|
||||
xrad = xdeg / 180 * np.pi
|
||||
optimize_func = lambda x: x[0] * np.sin(xrad + x[1]) + x[2] - data
|
||||
fit_amplitude, fit_phase, fit_offset = leastsq(optimize_func, [guess_amplitude, guess_phase, guess_offset])[0]
|
||||
if fit_amplitude < 0:
|
||||
fit_amplitude = -fit_amplitude
|
||||
fit_phase = fit_phase - np.pi
|
||||
fit_xdeg = np.linspace(start, end, 100)
|
||||
fit_data = fit_amplitude * np.sin(fit_xdeg / 180 * np.pi + fit_phase) + fit_offset
|
||||
ph_crest = 90 - fit_phase / np.pi * 180
|
||||
xdeg_max = xdeg[np.argmax(data)]
|
||||
if start <= ph_crest <= end:
|
||||
return (fit_amplitude, fit_phase, fit_offset, True, ph_crest, fit_xdeg, fit_data)
|
||||
else:
|
||||
return (fit_amplitude, fit_phase, fit_offset, False, xdeg_max, fit_xdeg, fit_data)
|
||||
fit_phase_deg = fit_phase / np.pi * 180
|
||||
ph_crest = 90 - fit_phase_deg
|
||||
if ph_crest > 180:
|
||||
ph_crest = ph_crest - 360
|
||||
return (fit_amplitude, fit_phase_deg, fit_offset, ph_crest, fit_xdeg, fit_data)
|
||||
|
||||
Reference in New Issue
Block a user