поэтому я закодировал эту формулу
Что я получаю:
def sumAN(theta,CoefAN,n_cl):
# this function give us the sumatory in the right side of the formula
Sumatorio = np.array([])
for count,i in enumerate(theta):
sumatorio = 0
for count2,j in enumerate(n_cl):
sumatorio = sumatorio +CoefAN[count2]*sin(int(count2+1)*i)
Sumatorio = np.append(Sumatorio,sumatorio)
return Sumatorio
cl= 4*((np.radians(alpha)+A0)*tan(theta/2)+sumAN(theta,CoefAN,n_cl))
Чтобы объяснить это немного:
- Альфа: константа
- A0: константа
- AN: np.array ([]) (n значений)
- тета: независимая переменная
После этого мне нужно вычислить следующий интеграл:
Вот где у меня проблемы:
ch = integrate.quad(lambda theta:(4*((alpha_char+A0)*tan(theta/2)+sumAN(theta,CoefAN,n_charl)))*(cos(theta)-cos(xa))*sin(theta),0,xa)[0]
У меня есть все ограничения и все. Но я получаю следующую ошибку:
объект 'float' не повторяется
Я не знаю, как продолжить. Итак, мой вопрос: как я могу интегрировать эту функцию, используя метод integrate.quad? Может быть, я изменю способ изготовления суматора ie? Как я могу написать функцию другим способом, чтобы это работало? Заранее спасибо