Форум программистов, компьютерный форум, киберфорум
Matlab
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/13: Рейтинг темы: голосов - 13, средняя оценка - 4.85
0 / 0 / 0
Регистрация: 14.12.2013
Сообщений: 6

Система дифференциальных уравнений в форме Коши

14.12.2013, 00:34. Показов 2991. Ответов 10
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Вынужден обратиться к вам, так как сам не смог справиться с задачей

необходимо решить систему ОДУ в нормальной форме Коши
начальные значения не даны по заданию, поэтому их выбираю произвольно

вот код функции
Matlab M
1
2
3
4
5
6
7
8
9
10
function dy=pr8(t,y)
dy=zeros(8,1);
dy(1)=-1000.*y(1)+1000.*y(3)-1000.*y(5)-1000;
dy(2)=-333,33.*y(2)-333,33.*y(3)+333,33.*y(4)+333,33.*y(5);
dy(3)=111,11.*y(1)-200.*y(2)-311,11.*y(3)+200.*y(4)+311,11.*y(5)+111,11;
dy(4)=142,86.*y(2)+142,86.*y(3)-157,14.*y(4)-157,14.*y(5)+14,29.*y(6)+14,29.*y(7);
dy(5)=-61,73.*y(1)+111,11.*y(2)+172,84.*y(3)-728,4.*y(4)-200,3.*y(5)+11,11.*y(6)+27,45.*y(7)-61,73;
dy(6)=-111,11.*y(4)-111,11.*y(5)-144,78.*y(6)-144,78.*y(7)+33,67.*y(8);
dy(7)=-142,86.*y(4)+352,94.*y(5)-186,15.*y(6)-1110,52.*y(7)+43,29.*y(8);
dy(8)=60,61.*y(6)+60,61.*y(7)+60,61.*y(8)];
а вот и ее вызов

Matlab M
1
2
3
4
5
>> clear all;
>> t=[0 5];
>> y0=[0, 0, 0, 0, 0, 0, 0, 0];
>> 
>> [T, Y]=ode45(@pr8, t, y0);
на это система ругается следующим
Matlab M
1
2
3
4
5
6
7
8
??? Error: File: C:\MATLAB6p5\work\pr8.m Line: 12 Column: 42
Missing operator, comma, or semicolon.
 
Error in ==> C:\MATLAB6p5\toolbox\matlab\funfun\private\odearguments.m
On line 104  ==> f0 = feval(ode,t0,y0,args{:});
 
Error in ==> C:\MATLAB6p5\toolbox\matlab\funfun\ode45.m
On line 155  ==> [neq, tspan, ntspan, next, t0, tfinal, tdir, y0, f0, args, ...
установлен MatLab 6.5, возможно по этой причине ошибка, а может и нет. В любом случае посмотрите пожалуйста код и помогите решить. Заранее благодарю!!!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.12.2013, 00:34
Ответы с готовыми решениями:

Решение дифференциальных уравнений Коши
Помогите решить в Matlab. Необходима полная программа. Ваш сайт посоветовала подруга, но программа для моего задания не подходит!!! ...

Задача Коши для системы дифференциальных уравнений
Скоро контрольная работа.Самому не справиться... условие такое:

Задача Коши для обыкновенных дифференциальных уравнений
Здравствуйте, в MATLAB я новичок. Помогите с решение 2 заданиях. Задание № 1 График решения линейного дифференциального уравнения с...

10
 Аватар для nullpointer
48 / 48 / 14
Регистрация: 30.03.2009
Сообщений: 523
14.12.2013, 00:45
М_Скофилд, вы пропустили какой-то оператор в вашей функции, но так как код не полностью представлени точнее сказать не могу
0
0 / 0 / 0
Регистрация: 14.12.2013
Сообщений: 6
14.12.2013, 09:56  [ТС]
Цитата Сообщение от nullpointer Посмотреть сообщение
М_Скофилд, вы пропустили какой-то оператор в вашей функции, но так как код не полностью представлени точнее сказать не могу
Мне необходимо решить систему уравнений, которая приведена выше. И нужно решить используя функцию ode23 или ode45. Я уже сталкивался с несколькими видами синтаксисов этих функций и уже прилично запутался
0
 Аватар для nullpointer
48 / 48 / 14
Регистрация: 30.03.2009
Сообщений: 523
14.12.2013, 11:23
М_Скофилд, я понимаю что вам нужно решить ту систему, но вы покажите полностью код функции pr8, потому что там в 12 строке ошибка, а я ее не вижу. Вам Matlab написал же "C:\MATLAB6p5\work\pr8.m Line: 12 Column: 42" - это значит что в файле pr8.m в 12 строке на 42 символе отсутствует оператор, запятая или точка с запятой.
0
0 / 0 / 0
Регистрация: 14.12.2013
Сообщений: 6
14.12.2013, 13:00  [ТС]
в том и дело, что у меня после 10 строки ничего там нет) ни 11-й строчки, ни тем более 12-й
0
42 / 42 / 0
Регистрация: 27.10.2012
Сообщений: 228
14.12.2013, 13:06
Цитата Сообщение от М_Скофилд Посмотреть сообщение
вот код функции
жесть:
1. убери точки в строках 3-10.
2. замени запятые строках 3-10 на точки.
3. удали квадратную скобку в конце строки 10.
4. систему нужно править т.к. решение не сходится.

P.S. сорри ТС. М_Скофилд, темы свои делать нужно.
Миниатюры
Система дифференциальных уравнений в форме Коши  
1
0 / 0 / 0
Регистрация: 14.12.2013
Сообщений: 6
14.12.2013, 13:16  [ТС]
Цитата Сообщение от Hofstadter Посмотреть сообщение
жесть:
1. убери точки в строках 3-10.
2. замени запятые строках 3-10 на точки.
3. удали квадратную скобку в конце строки 10.
4. систему нужно править т.к. решение не сходится.

P.S. сорри ТС. М_Скофилд, темы свои делать нужно.
спасибо за замечания и советы. Насчет того, что новую тему создавать не успел прочитать FAQ)
вечером опробую, надеюсь получится
0
0 / 0 / 0
Регистрация: 14.12.2013
Сообщений: 6
14.12.2013, 21:41  [ТС]
Цитата Сообщение от Hofstadter Посмотреть сообщение
производная пропорциональна времени, значит функция будет расти в квадрате
вот она и растет.
выбери диапазон поменьше.
я конечно прошу прощения, но не мог ли бы вы показать свой код, так как графики функций у нас с вами расходятся) все исправления, о которых вы говорили внес и получилось следующее
Миниатюры
Система дифференциальных уравнений в форме Коши   Система дифференциальных уравнений в форме Коши  
0
42 / 42 / 0
Регистрация: 27.10.2012
Сообщений: 228
15.12.2013, 01:44
все то же самое.
0
 Аватар для Зосима
5245 / 3573 / 379
Регистрация: 02.04.2012
Сообщений: 6,477
Записей в блоге: 18
16.12.2013, 15:09
М_Скофилд,
Цитата Сообщение от М_Скофилд Посмотреть сообщение
не мог ли бы вы показать свой код
Matlab M
1
2
3
4
5
6
7
8
9
10
function dy=pr8(t,y)
dy=zeros(8,1);
dy(1) = -1000.*y(1) + 1000.*y(3) - 1000.*y(5) - 1000;
dy(2) = -333.33.*y(2) - 333.33.*y(3) +333.33.*y(4) + 333.33.*y(5);
dy(3) = 111.11.*y(1) - 200.*y(2) - 311.11.*y(3) + 200.*y(4) + 311.11.*y(5) + 111.11;
dy(4) = 142.86.*y(2) + 142.86.*y(3) - 157.14.*y(4) - 157.14.*y(5) + 14.29.*y(6) + 14.29.*y(7);
dy(5) = -61.73.*y(1) + 111.11.*y(2) + 172.84.*y(3) - 728.4.*y(4) - 200.3.*y(5) + 11.11.*y(6) + 27.45.*y(7) - 61.73;
dy(6) = -111.11.*y(4) - 111.11.*y(5) - 144.78.*y(6) - 144.78.*y(7) + 33.67.*y(8);
dy(7) = -142.86.*y(4) + 352.94.*y(5) - 186.15.*y(6) - 1110.52.*y(7) + 43.29.*y(8);
dy(8) = 60.61.*y(6) + 60.61.*y(7) + 60.61.*y(8);
*основная ошибка в том, что разделитель дробной части не запятая, а точка!

Проверь внимательно систему! Может где-то знак перепутал
0
0 / 0 / 0
Регистрация: 14.12.2013
Сообщений: 6
16.12.2013, 15:13  [ТС]
Спасибо за отзывчивость, я кажется стану вашим форумчанином теперь))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
16.12.2013, 15:13
Помогаю со студенческими работами здесь

Задача Коши для системы дифференциальных уравнений
Всем доброго дня. Помогите пожалуйста с программированием в matlab. Решить задачу Коши для системы дифференциальных уравнений на отрезке ...

Решение задачи Коши для системы обыкновенных дифференциальных уравнений
Помогите пожалуйста. Необходимо решить задачу. Я не совсем понимаю что такое \frac{{d}^{2}x}{{d}^{2}{t}^{2}}.

Система дифференциальных уравнений
x'(t)=f-\delta x(t)-\beta x(t) y(t)+ \beta e^{-\lambda \tau_2} e^{-(\lambda+\delta) \tau_1} x(t-\tau_1-\tau_2) y(t-\tau_1-\tau_2); ...

Система дифференциальных уравнений
Помогите решить cистему дифференциальных уравнений: n2=(c1*x+c2*(y+z))/(c3+c4*x+c5*(y+z)); x'-=-(c6-n2)*x-c7*x; ...

Система дифференциальных уравнений
Как исправить под мою тему? function xdot=vdpol(t,x) xdot(1)=x(1).*(1-x(2).^2)-x(2); xdot(2)=x(1); xdot=xdot'; (обозначение...


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

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru