epsilon = 0.04 l = 4e-2 A = 4 * N_t_ratio * s**2 / (epsilon * radius**2) A_err = 4 * s / (epsilon * radius**2) * sqrt((s * N_t_ratio_err)**2 + (N_t_ratio * 2 * s_err)**2) k1 = (s + l / 2)**2 / s**2 k1_err = l / s**2 * (1 + l / (2 * s)) * s_err A1 = k1 * A A1_err = sqrt((k1_err * A)**2 + (k1 * A_err)**2) d = 1.4e-3 dichte = 7.9e3 k2 = exp(-msk * dichte * d) k2_err = dichte * d * msk_err * exp(-msk * dichte * d) A2 = k2 * A1 A2_err = sqrt((k2_err * A1)**2 + (k2 * A1_err)**2) print('\nAufgabe 5:\n') print( tbl([ lst(s, s_err, name='s / m'), lst(A, A_err, name='A / Bq'), lst(A1, A1_err, name='A1 / Bq'), lst(A2, A2_err, name='A2 / Bq') ])) # Aufgabe 6
def gauss(x, mu, sigma, A): return A / sqrt(2 * pi * sigma**2) * exp(-(x - mu)**2 / (2 * sigma**2))
n_CoA = npf([33865, 8266, 2171]) d_n_CoA = sqrt(n_CoA) n_CoA = (n_CoA / t_CoA - n0) / eps_CoA d_n_CoA = sqrt((d_n_CoA / t_CoA)**2 + d_n0**2) / eps_CoA print("Activity of γ-Radiation:") print(ms.tbl([ms.lst(n_CoA, d_n_CoA, name='n', unit='1/s', prefix=False)])) mu_abs_CoA = mu_rho_Co * rho_abs_CoA d_mu_abs_CoA = d_mu_rho_Co * rho_abs_CoA A_CoA = 4 * n_CoA * a_CoA**2 / r_c**2 d_A_CoA = A_CoA * sqrt((d_n_CoA / n_CoA)**2 + (2 * d_a_CoA / a_CoA)**2) A1_CoA = 4 * n_CoA * (a_CoA + l_c / 2)**2 / r_c**2 d_A1_CoA = A1_CoA * sqrt((d_n_CoA / n_CoA)**2 + (2 * d_a_CoA / (a_CoA + l_c / 2))**2) A2_CoA = A1_CoA * exp(-mu_abs_CoA * d_abs_CoA) d_A2_CoA = A2_CoA * sqrt((d_A1_CoA / A1_CoA)**2 + (d_abs_CoA * d_mu_abs_CoA)**2) A_l_CoA = A_N_CoA * exp(-ln(2) * T_CoA / T_H_CoA) k1_CoA = A1_CoA / A_CoA k2_CoA = A2_CoA / A1_CoA print( ms.tbl([ ms.lst(A_CoA, d_A_CoA, name='A', unit='Bq'), ms.lst(A1_CoA, d_A1_CoA, name='A1', unit='Bq'), ms.lst(A2_CoA, d_A2_CoA, name='A2', unit='Bq') ])) print(ms.tbl([ms.lst(k1_CoA, name='k1'), ms.lst(k2_CoA, name='k2')])) print(ms.val("T", T_CoA / cs.year, unit='yr'))
def gauss(x, A, mu, sigma): return A * exp(-(x - mu)**2 / (2. * sigma**2))
def fitfunc_mf(x, A1, l1, A2, l2): return A1 * exp(-l1 * x) + A2 * exp( -l2 * x) + unterg_ag_mv - unterg_ag_mv_dsto
def gauss(x, A, mu, sig, Ug): return A / (sqrt(2 * pi) * sig) * exp(-(x - mu)**2 / (2 * sig**2)) + Ug
ylabel='# Zerfälle (ohne Untergrund)', scale='linlog') pltext.plotdata(t, N_in, N_in_err, label='Measurements') [slope, dslope, yitc, dyitc] = expreg(t[1:], N_in[1:], N_in_err[1:], plot=True, prange=(0, 3e3)) pltext.set_layout(xlim=(0, 3e3), ylim=(3e2, 9e2)) Thalb_In116m = -ln(2) / slope Thalb_In116m_dsys = ln(2) * dslope / slope**2 Thalb_In116m_lit = 54 * 60 chi2_ = chi2stat.chi2(N_in[1:], N_in_err[1:], yitc * exp(slope * t[1:])) chi2_red = chi2stat.chi2_red(chi2_, len(N_in), ddof=2) prob = chi2stat.fit_prob(chi2_, len(N_in), ddof=2) print('\nInduium:\n') print(val(unterg_in_mv, unterg_in_mv_dsto, name='Untergrund')) print() print( tbl([['', 'A', 'l'], ['Fitwerte', val(yitc, dyitc), val(-slope, dslope)]])) print() print( tbl([['chi2', 'chi2_red', 'fitwkeit'], [val(chi2_), val(chi2_red), val(prob)]])) print()
def poisson(x, A, mu): return A * exp(-mu) * mu**x / gamma(x + 1)
nut_umin_n = np.array([670, 1025, 570, 300, 420, 475, 655, 720, 380, 330], dtype='float') nut_dumin_n = np.array([10, 25, 10, 10, 10, 10, 10, 10, 10, 10], dtype='float') nut_umin_f = np.array([720, 1120, 620, 320, 450, 520, 710, 770, 410, 360], dtype='float') nut_dumin_f = np.array([10, 25, 10, 10, 10, 10, 10, 10, 10, 10], dtype='float') # damping f = damping_umin / 60. df = damping_dumin / 60. t = damping_t [slope, dslope, yitc, dyitc] = linreg(x=t, y=ln(f), dy=df / f) D = -1. * slope dD = dslope f0 = exp(yitc) df0 = exp(yitc) * dyitc t_hv = ln(2.) / D t_hv_dsys = ln(2.) * dD / D**2 dampingplot = plot(title='Linear regression of the damping constant', xlabel='t / s', ylabel='f / Hz', fig=1, scale='linlog') dampingplot.plt.grid(False) dampingplot.plotdata(t, f, df) dampingplot.plotfunc(t, f0 * exp(-D * t), label='line of best fit') dampingplot.plotfunc(t, (f0 + df0) * exp(-(D + dD) * t), label='line of uncertanty')
def f_In(x, A, λ): return A * exp(-λ * x)
def f_Ag(x, A1, λ1, A2, λ2): return A1 * exp(-λ1 * x) + A2 * exp(-λ2 * x)