add additional penalty for freqs above the eod_freq in f_zero error
This commit is contained in:
parent
ad7a8bcfd3
commit
365b108daf
@ -396,7 +396,7 @@ class Fitter:
|
||||
# error_f_zero_slopes = calculate_list_error(f_zero_slopes, self.f_zero_slopes)
|
||||
error_f_zero_slope_at_straight = abs(self.f_zero_slope_at_straight - f_zero_slope_at_straight) \
|
||||
/ abs(self.f_zero_slope_at_straight+1)
|
||||
error_f_zero = calculate_list_error(f_zeros, self.f_zero_values) / 10
|
||||
error_f_zero = calculate_list_error(f_zeros, self.f_zero_values, self.eod_freq) / 10
|
||||
|
||||
error_f0_curve = self.calculate_f0_curve_error(model, fi_curve_model) / 20
|
||||
|
||||
@ -537,11 +537,16 @@ class Fitter:
|
||||
# return abs(model_area_above - cell_area_above)
|
||||
|
||||
|
||||
def calculate_list_error(fit, reference):
|
||||
def calculate_list_error(fit, reference, eod_freq=0):
|
||||
error = 0
|
||||
for i in range(len(reference)):
|
||||
# error += abs_freq_error(fit[i] - reference[i])
|
||||
error += normed_quadratic_freq_error(fit[i], reference[i])
|
||||
|
||||
if eod_freq != 0 and fit[i] > 1.1*eod_freq:
|
||||
error += normed_quadratic_freq_error(fit[i], reference[i]) * 10
|
||||
else:
|
||||
error += normed_quadratic_freq_error(fit[i], reference[i])
|
||||
|
||||
norm_error = error / len(reference)
|
||||
|
||||
return norm_error
|
||||
|
Loading…
Reference in New Issue
Block a user