#python #sympy
#python #симпатичный
Вопрос:
У меня есть уравнение w
, которое содержит некоторые тригонометрические функции, умноженные на константы come. как выразить эту функцию в Python. Я получаю сообщение об ошибке, в котором говорится, что a1...a4
и b
не определены. Я знаю, что это не определено, но я заинтересован в решении для этих констант для заданного значения b для набора условий for на w
import sympy as sy
import numpy as np
import math as ma
import matplotlib.pyplot as plt
w=a1*sin(b*x) a2*cos(b*x) a3*sinh(b*x) a4*cosh(b*x)
Комментарии:
1. Вы отметили вопрос с помощью символьной математики , поэтому я думаю, что это задача для
sympy
.2. вы говорите, что я не импортировал пакет sympy?
3. Взгляните на
sympy.symbols
.4. Код показывает импорт для большого количества пакетов, но фактически не использует их. Это фактический код, который вы используете? Вы читали о том, как на самом деле использовать эти пакеты, например, символы
sympy
?
Ответ №1:
Чтобы сделать это с помощью sympy, вам нужно сначала импортировать функции sympy и определить символы:
In [2]: from sympy import sin, cos, sinh, cosh, symbols
In [3]: a1, a2, a3, a4, b = symbols('a1:5, b')
In [4]: w=a1*sin(b*x) a2*cos(b*x) a3*sinh(b*x) a4*cosh(b*x)
In [5]: w
Out[5]: a₁⋅sin(b⋅x) a₂⋅cos(b⋅x) a₃⋅sinh(b⋅x) a₄⋅cosh(b⋅x)
Я рекомендую ознакомиться с руководством sympy:
https://docs.sympy.org/latest/tutorial/index.html
Комментарии:
1. Где / как определяется имя
x
? Есть ли какая-тоsympy
магия, которая автоматически вводит ее в глобальные модули модуля?2. Ах, я понял: вы используете
isympy
, который предопределяетx
(и некоторые другие вещи).3. Спасибо, что указали на эту отметку. Да, я должен был включить
x = Symbol('x')
. Я ввел импорт (они не нужны в isympy), но я забыл символ x!