Я пытаюсь написать цикл for для вычисления баров ошибок, используя производный метод.Формула относительно проста, однако мне кажется, что в моем коде встречаются ошибки в отношении размеров векторов / массивов.В моем коде много определенных векторов, и я проверил длину их всех.Все входы в цикл for являются массивами размером 1x25.
Я пытался изменить индексы в цикле for с диапазона (1,25) на диапазон (0,24), но это, похоже, не работает.
# Creating vectors
dfdvg = np.zeros(25)
dfdxi0 = np.zeros(25)
sigsquare = np.zeros(25)
vgerr = vrs
xi0err = xi0s
Asq = np.zeros(25)
Bsq= np.zeros(25)
sig = np.zeros(25)
# calculating derivatives and error vectors
for i in range(0,24):
dfdvg[i] = (np.multiply(rms[:,i],delta[:,i]))**-1
dfdxi0[i] = -vr[:,i]/(vr[:,i]*(np.power(delta[:,i],2)))
Asq[i] = np.power(np.multiply(dfdvg[i],vgerr[i]),2)
Bsq[i] = np.power(np.multiply(dfdxi0[i],xi0err[i]),2)
sigsquare[i] = Asq[i] + Bsq[i]
sig[i] = np.power(sigsquare[i],0.5)
q = np.power(np.multiply(rms,delta),-1)
left = np.multiply(vg,q)
right = -(beta*H)/(3*(1+zeff))
Мне нужен вектор "sig", представляющий распространенную ошибку для каждого индекса.