Решение уравнений в matlab


Вы можете решать уравнения, содержащие переменные, с помощью команд
solve и fzero.

Разберем подробнее Matlab решение нелинейных уравнений, к примеру квадратного уравнения х2 - 2х - 4 = 0, введите следующее:

 

 

 

Разберем подробнее matlab решение линейных уравнений, к примеру вот такое уравнение х - 4 = 0, введите следующее:

 

 

 

Обратите внимание, что уравнение, которое требуется решить, задано как  
строка, то есть взято в одинарные кавычки. Ответ представляет собой точное  
(символьное) решение 1+корень(5). Для получения числовых решений введите double
(ans) или vpa (ans), чтобы отобразить больше знаков. Ввод с командой solve
может также быть символьным выражением, но в этом случае программа MATLAB
потребует, чтобы правая часть выражения была заключена в скобки, и  
фактически синтаксис решения уравнения х2 - Зх = -7 будет выглядеть так:

 

 

 

Ответ представляет собой точное (символьное) решение (3 + корень(19i))/2  
(сложные числа, где буква i в ответе ставится для мнимой единицы V-1). Для  
получения числовых решений введите double (ans) или vpa (ans), чтобы  
отобразить больше знаков.
С помощью команды solve можно решать высокоуровневые полиномиальные
(многочленные) уравнения, равно как и многие другие типы уравнений. Можно
также решать уравнения, содержащие более чем одну переменную. Если  
уравнений меньше, чем переменных, вам следует определить (как строки), какую  
переменную (переменные) требуется вычислить. Например, введите solve ( '2*х - log (у) = 1', 'у'), чтобы решить уравнение 2х - log у = 1 для  
переменной у при условии х. Подобным образом вы можете определить более чем
одно уравнение. Например:

 

 

 

 

Эта система уравнений имеет два решения. Программа MATLAB выдает решение,
выводя два значения х и два значения у для этих решений. Таким образом,  
первое решение состоит из первого значения х и первого значения у. Вы можете
извлечь эти значения, введя в командную строку х (1) и у (1):

 

 

 

Второе решение можно извлечь, введя х (2) и у (2).
Обратите внимание, что в предыдущей команде solve мы назначили вывод в
векторной форме [х, у]. Если вы используете команду solve в системе  
уравнений, не задавая вывод в векторной форме, в этом случае программа MATLAB не
отображает автоматически значения решения:

 

 

 

Чтобы увидеть векторы значений х и у, введите sol.x и sol.у. Чтобы увидеть
отдельные значения, введите sol.х (1) и sol.у (1), и т.п.

  • В этом примере вывод результата выполнения команды solve представляет собой структурный массив. Чтобы более подробно познакомиться с этим классом данных

Некоторые уравнения нельзя решить символически, и в таких случаях команда
solve пытается найти числовой ответ. Например:

 

 

 

Иногда бывает более одного решения, и вы можете не получить того, что  
ожидаете, например:

 

 

 

Ответ представляет собой комплексное число. Хотя оно является правильным
решением уравнения, существуют также решения, представленные  
вещественными числами. Графики функций ехр (-х) и sin (x) показаны на Рис. 2.3;
каждая точка пересечения двух кривых представляет собой решение уравнения е = sin (х).

Вы можете в числовой форме найти (приблизительно) решения, показанные на
графике, с помощью команды fzero, которая ищет нулевое значение данной
функции в пределах заданного значения х. Решение уравнения е = sin (x)
равно нулю в функции е - sin (x), поэтому, чтобы найти приблизительное
решение при х = 0.5, введите следующее:

 

 

 

Замените значение 0.5 на 3 и найдите следующее решение, и так далее.

Рис. 2.3. Две пересекающиеся кривые

Поэтому из выше всего сказанного можно сделать вывод, что вам необходимо просмотреть много дополнительной информации и альтернатив!


Добавить комментарий


Защитный код
Обновить

Сайт создан в Seo-Dubna.ru