syms или sym ФункцияВ Symbolic Math Toolbox™ можно объявить символические объекты, используя любой из syms или sym. Эти две функции концептуально различаются.
The syms функция создает символьный объект, который автоматически присваивается переменной MATLAB ® с таким же именем.
The sym функция относится к символьному объекту, который может быть назначен переменным MATLAB с таким же именем или другим именем.
The syms функция создает переменную динамически. Для примера, команда syms x создает символьную переменную x и автоматически присваивает его переменному MATLAB с таким же именем.
syms x
xx =
The sym функция относится к символьной переменной, которую можно затем назначить переменным MATLAB с другим именем. Для примера, команда f1 = sym('x') относится к символьной переменной x и присваивает ее переменному MATLAB f1.
f1 = sym('x')f1 =
Используйте syms функция для создания символьной переменной x и автоматически присвойте ее переменному MATLAB x. Когда вы присваиваете число переменного MATLAB x, число представлено с двойной точностью, и это назначение перезаписывает предыдущее назначение на символьную переменную. Класс x становится double.
syms x
x = 1/33x = 0.0303
class(x)
ans = 'double'
Используйте sym функция для обращения к точному символьному числу без приближения с плавающей точкой. Затем можно присвоить этот номер переменного MATLAB x. Класс x является sym.
x = sym('1/33')x =
class(x)
ans = 'sym'
Когда вы создаете символьную переменную с допущением, MATLAB сохраняет символьную переменную и ее предположение отдельно.
Использование syms чтобы создать символьную переменную, которая назначена переменным MATLAB с таким же именем. Вы получаете свежую символическую переменную без предположений. Если вы объявляете переменную, используя symsСуществующие допущения удаляются.
syms x positive syms x assumptions
ans = Empty sym: 1-by-0
Использование sym для обращения к существующей символьной переменной. Если эта символьная переменная использовалась в вашем сеансе работы с MATLAB ранее, то sym относится к нему и его текущему предположению. Если раньше его не использовали, то sym создает его без допущений.
syms x positive x = sym('x'); assumptions
ans =
Чтобы создать много символьных переменных одновременно, используя syms функция удобнее. Можно создать несколько переменных в одной строке кода.
syms a b c
Когда вы используете sym, вы должны объявить переменный MATLAB один за другим и связать их с соответствующими символьными переменными.
a = sym('a'); b = sym('b'); c = sym('c');
Чтобы объявить символьный массив, содержащий символьные переменные в качестве его элементов, можно использовать любой из syms или sym.
Область команды syms a [1 3] создает символьный массив 1 на 3 a и символьные переменные a1, a2, и a3 в рабочей области. Символические переменные a1, a2, и a3 автоматически назначаются символьному массиву a.
clear syms a [1 3] a
a =
whos
Name Size Bytes Class Attributes a 1x3 8 sym a1 1x1 8 sym a2 1x1 8 sym a3 1x1 8 sym
Область команды a = sym('a',[1 3]) относится к символьным переменным a1, a2, и a3, которые присваиваются символьному массиву a в рабочей области. Элементы a1, a2, и a3 не создаются в рабочей области.
clear
a = sym('a',[1 3])a =
whos
Name Size Bytes Class Attributes a 1x3 8 sym
Чтобы объявить символьную переменную внутри вложенной функции, используйте sym. Например, можно явным образом задать переменный MATLAB x в рабочей рабочей области родительской функции и см. x в символьную переменную с таким же именем.
function primaryFx x = sym('x') function nestedFx ... end end
Вложенные функции делают рабочую область статической, поэтому вы не можете динамически добавлять переменные, используя syms.