Example #1
0
    def test_binomial_amplitudeN_fit_length_default(self):

        t0 = time.perf_counter()
        full_binom, exponent = binomial_amplitudeN_fit(self.time_array,
                                                       self.binom_dist)[2:]
        t1 = time.perf_counter()

        runtime = t1 - t0

        rms_binom = _binomial_full_to_rms(full_binom, exponent)
        result = (rms_binom - self.sigma_binom) / self.sigma_binom

        return runtime, result
Example #2
0
    def test_binomial_amplitudeN_fit_length_minimize_trust_constr(self):

        fitOpt = FitOptions(fittingRoutine='minimize', method='trust-constr')
        t0 = time.perf_counter()
        full_binom, exponent = binomial_amplitudeN_fit(self.time_array,
                                                       self.binom_dist,
                                                       fitOpt=fitOpt)[2:]
        t1 = time.perf_counter()

        runtime = t1 - t0

        rms_binom = _binomial_full_to_rms(full_binom, exponent)
        result = (rms_binom - self.sigma_binom) / self.sigma_binom

        return runtime, result
Example #3
0
                                               ratio_LUT=new_LUT)

print('Gauss: Initial ->', initial_params_gauss, '/ Final ->',
      _binomial_full_to_rms(*binom_params_gauss[-2:]))

# ## 3. Distribution fitting routines

# In[11]:

from blond_common.fitting.profile import gaussian_fit, parabolic_amplitude_fit, binomial_amplitudeN_fit, PlotOptions

fitparams_gauss = gaussian_fit(time_array, gaussian_dist)

fitparams_parabamp = parabolic_amplitude_fit(time_array, parabamp_dist)

fitparams_binom = binomial_amplitudeN_fit(time_array, binom_dist)

print('Gauss: Initial ->', initial_params_gauss, '/ Final ->', fitparams_gauss)
print('Parab. amp.: Initial ->', initial_params_parabamp, '/ Final ->',
      fitparams_parabamp)
print('Binomial: Initial ->', initial_params_binom, '/ Final ->',
      fitparams_binom)

# In[12]:

plotOpt = PlotOptions(figname='Fit-1', clf=False)

fitparams_binom = binomial_amplitudeN_fit(time_array,
                                          binom_dist,
                                          plotOpt=plotOpt)