Задать вопрос
@Julja4324242

Как проинтегрировать функцию двух переменных на Python только по одной переменной?

Есть функция двух переменных (переменные это a и x):
math.log ((a-x)**2+(zeta2-z)**2)-math.log ((a-x)**2+(zeta1-z)**2

Мне нужно взять определённый интеграл по а, получить зависимость от x и построить график. Совсем не понимаю, как это сделать.

Написала что-то такое, но тут и без запуска программы понятно, что не сработает.

x = np.linspace (0, dx*(n - 1), n)
Vz = []
def Vz_func(a):
return (math.log ((a-x)**2+(zeta2-z)**2)-math.log ((a-x)**2+(zeta1-z)**2))
for i in x:
Vz.append (quad(Vz_func, ksi1, ksi2, args=x)[0])
plt.plot(x,Vz)
plt.show()


Исправила на вот такое. График не тот получается.

Есть ли ошибка в коде?
Vzzz = []
for i in x:
         def Vz_func(t):
             return (math.log ((t-i)**2+(zeta2-z)**2)-math.log ((t-i)**2+(zeta1-z)**2))
         Vzzz.append (G*sigma*quad(Vz_func, ksi1, ksi2)[0])
plt.plot(x,Vzzz)
plt.show()
  • Вопрос задан
  • 112 просмотров
Подписаться 1 Средний 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
@500rur
Что вам нужно получить в результате? Если график интеграла, то берете диапазон, в котором меняется x, выбираете в нем точки и для каждой точки x считаете ваш интеграл - самостоятельно или с помощью соотв пакетов (scipy.integrate?), потом рисуете график того, что получилось.

Либо нужно найти интеграл в символьной форме (SymPy?) и рисовать график получившейся функции F(x).

Ну и для начала я бы выбрал какую-нибудь функцию попроще, типа a+x и тренировался бы на ней.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы