Форум программистов, компьютерный форум, киберфорум
Matlab
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
3 / 3 / 0
Регистрация: 31.07.2014
Сообщений: 22
1

Численное решение уравнения с параметром

04.03.2017, 02:53. Показов 1833. Ответов 9
Метки нет (Все метки)

Здравствуйте.
Есть уравнение
wx = sin(x)
которое никак не хочет решаться аналитически. Долго бились всей группой во главе с преподом по теормеху
Появилась идея получить численное решение этого уравнения, реализацию которой заботливо повесили на меня. Параметр w может принимать значения от 0 до единицы.
Позарез надо получить массив результатов: данное значение w и соответствующее ему положительное значение x.
Подскажите, пожалуйста, что можно предпринять? (С матлабом пока не дружу, но очень хочется)
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.03.2017, 02:53
Ответы с готовыми решениями:

Численное решение уравнения
Здравствуйте. Помогите численно решить уравнение: dy/dt = интеграл в пределах от 0 до...

Численное решение уравнения
Помогите пожалуйста численно решить уравнение с графическим решением theta(tau). Где eps1=2.3,...

Нужно численное решение уравнения теплопроводности
Так сложилось, что с математикой и Матлабом я не в ладах, а налаживать с ними отношения - нет...

Численное решение дифференциального уравнения гиперболического типа
Используя явную схему крест и неявную схему, решить начально-краевую задачу для дифференциального...

9
Модератор
1228 / 1120 / 338
Регистрация: 13.09.2015
Сообщений: 3,951
04.03.2017, 03:43 2
Mustang_Mus, загляните в низ страницы, в раздел "Похожие темы".
Однако, проще это уравнение решать в Maple. В символьном виде не получится, но все численные решения для заданного значения параметра w там находятся одной командой.
0
489 / 398 / 40
Регистрация: 17.07.2013
Сообщений: 2,056
04.03.2017, 09:03 3
Цитата Сообщение от Mustang_Mus Посмотреть сообщение
данное значение w
Как у Вас понимать "wx" - это имя переменной или "w"умножить на "x"?
Во втором случае w=sinc(x). Обратите внимание, что в МАТЛАБ функция sinc реализована как "радиотехническая", а не математическая.
Обычно задается значение "x" и вычисляется/определяется "wx" или "w"
0
3 / 3 / 0
Регистрация: 31.07.2014
Сообщений: 22
04.03.2017, 19:38  [ТС] 4
Подскажите, пожалуйста, конкретнее, как в Maple получить численное решение в зависимости от параметра w.
w - это число от 0 до 1.
wx = w*x.
Нужен массив - значения x, соответствующие разным значениям w. И очень хотелось бы не вручную менять параметр w, а чтобы среда сама перебрала.
0
489 / 398 / 40
Регистрация: 17.07.2013
Сообщений: 2,056
04.03.2017, 23:15 5
Цитата Сообщение от Mustang_Mus Посмотреть сообщение
чтобы среда сама перебрал
Организация циклов в МАТЛАБ аналогична другим языкам программирования. Смотрите FOR.
Цитата Сообщение от Mustang_Mus Посмотреть сообщение
wx = w*x.
Смотрите sinc
0
3 / 3 / 0
Регистрация: 31.07.2014
Сообщений: 22
06.03.2017, 04:24  [ТС] 6
Разобрался! Всем спасибо. В результате был использован Scilab v 6.0.0
Matlab M
1
2
3
4
5
6
7
8
fd = mopen('C:\Users\Админ\Documents\text_mputl.txt','wt');
for w=1:25
deff('[y]=fff(x)','y=-w/100*x+sin(x)');
V=[%pi];
X=fsolve(V,fff);
mputl(string(w/100)+" "+string(X),fd);
end
mclose(fd);
Можно задавать диапазон, в котором будет изменяться параметр w.
Результат выводится в текстовый файл в виде "параметр"+" "+"решение".
0
Эксперт по математике/физике
3362 / 1888 / 568
Регистрация: 09.04.2015
Сообщений: 5,297
06.03.2017, 07:43 7
И сколько корней для w в диапазоне от 1 до 25 Вы получаете?
Ниже приведен график зависимости w от х.
0
Миниатюры
Численное решение уравнения с параметром  
3 / 3 / 0
Регистрация: 31.07.2014
Сообщений: 22
06.03.2017, 18:09  [ТС] 8
Да, стоит уточнить, ищутся корни в диапазоне от 0 до pi.
Можно расширить диапазон до любых значений.
Скажем,
Matlab M
1
V=[-5*%pi:%pi:5*%pi];
-- от -5pi до 5pi 10 корней. От 0 до pi - один корень.
Чтобы отобразить значения в Scilab:
Matlab M
1
2
3
4
5
...
V=[%pi:%pi]; 
X=fsolve(V,fff);
disp(X);
...
0
Эксперт по математике/физике
3362 / 1888 / 568
Регистрация: 09.04.2015
Сообщений: 5,297
07.03.2017, 07:48 9
Возможно мы не понимаем друг друга
Цитата Сообщение от Mustang_Mus Посмотреть сообщение
От 0 до pi - один корень.
w=pi - корней нет
w=1 - корень один
w=0.2 - корень один
w=0.1 - кореньей два
w=0. - кореньей бесконечное множество
0
3 / 3 / 0
Регистрация: 31.07.2014
Сообщений: 22
07.03.2017, 21:52  [ТС] 10
Для любого w, принадлежащего интервалу (0,1), существует единственное значение х из интервала (0,pi), для которого выполняется соотношение w*x = sin(x).
В частности, при w = 0.1, x = 2.8523419.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.03.2017, 21:52

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Получить численное решение дифф. уравнения: проверьте программу
С новый годом всех вас! Программа работает, но хотелось бы спросить то, что правильно ли она...

Численное решение уравнения шредингера для электрона в атоме водорода
нужно решить уравнение шредингера для электрона в атоме водорода, т е получить волновые функции и...

Численное решение дифференциального уравнения колебательной системы с воздействием, заданным массивом
Необходимо решить дифференциальное уравнение для колебательной системы. ...

Численное решение линейной краевой задачи для обыкновенного дифференциального уравнения второго порядка
Добрый день! Дано задание: Вычислить установившееся распределение концентрации газа в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.