Математический форум Math Help Planet
http://mathhelpplanet.com/

Выразить переменную из функции
http://mathhelpplanet.com/viewtopic.php?f=21&t=67426
Страница 1 из 1

Автор:  IvanLis [ 30 ноя 2019, 21:34 ]
Заголовок сообщения:  Выразить переменную из функции

Подскажите, что я делаю не так...
Есть функция:
[math]y = 0.1 \cdot x^{2} + 2 \cdot \sin{(x) - 8 \cdot x -7}[/math]
мне необходимо выразить из нее x через y
проблем как бы нет, но не могу избавиться от RootOf
Изображение

Автор:  Kitonum [ 25 фев 2020, 13:32 ]
Заголовок сообщения:  Процедура для численного решения

Проблема в том, что у вас трансцендентное уравнение, содержащее функции разной природы (степенные и тригонометрические). Просто не существует формулы, выражающей неивестную x через коэффициенты уравнения (в том числе и через y ) . График y=f(x) (см. код ниже) показывает, что ваше уравнение в зависимости от y может иметь от 0 до 4 действительных корней. Процедура P находит все корни вашего уравнения для заданного вами значения y . Формальные параметры процедуры: Eq - это ваше уравнение, L - это список из двух чисел, определяющий диапазон для переменной x , в котором ищутся решения.

plot(0.1*x^2  + 2*sin(x) - 8*x -7,x=-5..70, size=[700,500]);
P:=proc(Eq,L)
uses RootFinding;
RootFinding:-Analytic(Eq,re=L[1]..L[2],im=-1..1);
end proc:


Два примера применения процедуры P :

Eq1:=0.1*x^2  + 2*sin(x) - 8*x -7=10:
Eq2:=0.1*x^2 + 2*sin(x) - 8*x -7=-162:
P(Eq1,[-10,100]);
P(Eq2,[0,60]);

81.9974312797000, -2.25513820892521
33.8796995656680, 45.4818544757834, 47.258828480868, 48.249038219925

Страница 1 из 1 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/