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

Не получается использовать solve().

26.02.2012, 13:10. Показов 3896. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, недавно столкнулся с необходимостью освоения Matlab, так что владею пока им на уровне пещерного человека... возникла необходимость решить систему трансцендентных уравнений и при попытке использования toolbox'a Symbolic Math получил такую ошибку:

Warning: Explicit solution could not be found.
> In solve at 81
In angels at 17
??? Error using ==> mupadmex
Error in MuPAD command: Subscripted assignment dimension mismatch

Error in ==> sym.sym>sym.subsasgn at 1435
C = mupadmex('symobj::subsasgn',A.s,B.s,inds {:});

Error in ==> angels at 21
f1(1)=a+b;

последние две строчки вроде понятны - он не смог решить систему относительно a и b потому и сложить их не может... а что делать с тем, что выше?
PS: если надо выложу всю программу и само уравнение в человеческом виде...
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
26.02.2012, 13:10
Ответы с готовыми решениями:

Не получается использовать :before
Всем доброго времени суток! У меня есть блок (long) в нем картинка () и хочу поставить за этой картинкой еще одну, как фон, чтобы красиво...

Не получается использовать анимацию JS
Хотел чтоб надпись "обзор БК" двигалась(вместо анимации CSS пробую анимацию JS) но почему то не получается,кто знает почему? ...

Не получается использовать wcscat
void read_file(HWND HWND_E, HWND HWND_R, TCHAR* name, INT ind) { SetWindowText(HWND_E, L""); FILE* f = _wfopen(name, L"rb"); ...

6
2014 / 1286 / 61
Регистрация: 05.06.2010
Сообщений: 2,213
26.02.2012, 13:58
Цитата Сообщение от mindhunter87 Посмотреть сообщение
если надо выложу всю программу и само уравнение в человеческом виде...
Ну было бы неплохо
0
2 / 2 / 0
Регистрация: 26.02.2012
Сообщений: 10
26.02.2012, 14:06  [ТС]
Система:
L*(sin(γ+γ0)-sin(γ0))-R1*(cos(ψ0)+cos(α))-R2*sin(β)=0
L*(cos(γ0)-cos(γ+γ0))-R1*(sin(α)-sin(ψ0))+R2*(1-cos(β))=0

программа в Matlab 7.11:
Matlab M
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
close all
clear all
 
%% известные величины
G(1)=-15*pi/180; %% начальный угол качки, рад
dg=0.001; %%приращение угла G, рад
i=1; %%начало отсчёта
n=510; %%окончание отсчёта
R1=sym(3.2); %%длинна выносной балки, м
R2=sym(0.79); %%высота стойки, м
g0=sym(15*pi/180); %% базовый угол наклона относительно центра качания, рад
f=sym(10*pi/180); %% угол возвышения балки, рад
L=sym(5); %% расстояние от центра качания до точки установки устройства, м
 
%% решение системы уравнений
syms a b g
[a,b]=solve('L*(sin(g0+g)-sin(g0))-R1*(cos(f)+cos(a))-R2*sin(b)=0', 'L*(cos(g0)-cos(g+g0))-R1*(sin(a)-sin(f))+R2*(1-cos(b))=0');
 
%% поиск углов поворота
g=G(1);
f1(1)=a+b;
f2(1)=g+b;
for i=2:n
    g=G(i-1);
    f1(i)=a+b;
    f2(i)=g+b;
end
 
%%построение графика
figure;
plot(G,f1,'--r',G,f2,'-.b','linewidth',2)
grid on;
legend('f1, град','f2, град') 
xlabel('угол гамма, град')
ylabel('углы f1,f2, град')
0
2014 / 1286 / 61
Регистрация: 05.06.2010
Сообщений: 2,213
26.02.2012, 14:34
система из двух уравнений с тремя неизвестными? или я че то не так понял? (В коде особо не разбирался)
0
2 / 2 / 0
Регистрация: 26.02.2012
Сообщений: 10
26.02.2012, 15:05  [ТС]
нет, неизвестных две "a" и "b". "g" задана символом, что бы потом её приравнивать к разным значениям матрицы "G". судя по примерам в справке toolbox'a ему не принципиально символ это или константа, или я ошибаюсь?
0
2014 / 1286 / 61
Регистрация: 05.06.2010
Сообщений: 2,213
26.02.2012, 19:49
да, действительно, у меня решатель минут на 5 зависает и выдает что решения не найдено. А обязательно через Symbolic? Обычным матлабовским способом пройтись с маленьким шагом - относительно несложно получится. Без этих мапловских символов.
1
2 / 2 / 0
Регистрация: 26.02.2012
Сообщений: 10
26.02.2012, 21:23  [ТС]
если честно, не знаю обязательно ли... дело в том, что "g" не совсем константа и в перспективе будет меняться по гармоническому закону, а в более далёкой перспективе - более или менее случайно. я потому и хотел, что бы программа решила это дело в аналитическом виде, а я бы дальше подставлял туда что мне вздумается. Спасибо за помощь, попробую разобраться со стандартными матлабовскими функциями для решения
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.02.2012, 21:23
Помогаю со студенческими работами здесь

Не получается использовать libcurl
Скинул include файлы в include папку visual studio, lib файлы в lib папку, dll-ки в папку system32 windows. Вот тестовый пример, но...

Не получается использовать getcursor
Я скачал с офсайта среду, но при попытке использовать getcursor вываливается предупреждение что нельзя использовать в demo версии это. ...

Не получается использовать frame
прошу помочь с Delphi, не могу использовать frame... а также, скажите пожалуйста, как можно font Delphi поменять?))

Не получается использовать dll
Создаю дллку . Она имеет одну функцию get_index() DLL extern "C" __declspec(dllexport)int get_index(); ...

Не получается использовать SubСlassing
Доброго времени суток! Для пущего понимания WinApi решил написать класс обёртку вокруг стандартного окна "EDIT", но что-то...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru