syms
или sym
ФункцияВ Symbolic Math Toolbox™ можно объявить символические объекты, используя любой из syms
или sym
. Эти две функции концептуально различаются.
The syms
функция создает символьный объект, который автоматически присваивается переменной MATLAB ® с таким же именем.
The sym
функция относится к символьному объекту, который может быть назначен переменным MATLAB с таким же именем или другим именем.
The syms
функция создает переменную динамически. Для примера, команда syms x
создает символьную переменную x
и автоматически присваивает его переменному MATLAB с таким же именем.
syms x
x
x =
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/33
x = 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
.