Создайте символьные скалярные переменные, функции и матричные переменные
syms
создает символьные скалярные переменные var1 ... varN
var1 ... varN
из типа sym
. Разделите различные переменные пробелами. Этот синтаксис очищает все предыдущие определения var1 ... varN
. Начиная с R2018b, syms
также очищает все предположения от переменных.
syms
создает массивы символьных скалярных переменных var1 ... varN
[n1 ... nM]
var1 ... varN
, где каждый массив имеет размер n1
- ...
- nM
и содержит автоматически сгенерированные символьные скалярные переменные как его элементы. Для краткости массив символьных скалярных переменных также называется символьным массивом. Например, syms a [1 3]
создает символьный массив a = [a1 a2 a3]
и символьные скалярные переменные a1
, a2
, и a3
в MATLAB® рабочая область. Для многомерных массивов эти элементы имеют префиксный a
сопровождаемый индексом элемента с помощью _
как разделитель, такой как a1_3_2
.
syms
создает var1 ... varN
nn
- n
матрицы символьных скалярных переменных заполнены автоматически сгенерированными элементами. Для краткости матрица символьных скалярных переменных также называется символьной матрицей.
syms ___
устанавливает предположение, что созданные символьные скалярные переменные принадлежат set
set
, и очищает другие предположения. Здесь, set
может быть real
, positive
Целое число
, или rational
. Можно также объединить несколько предположений с помощью пробелов. Например, syms x positive rational
создает символьную скалярную переменную x
с положительным рациональным значением.
syms
создает символьный функциональный f(var1,...,varN)
f
из типа symfun
и символьные скалярные переменные var1,...,varN
, которые представляют входные параметры f
. Этот синтаксис очищает все предыдущие определения var1,...,varN
включая символьные предположения. Можно создать несколько символьных функций в одном вызове. Например, syms f(x) g(t)
создает две символьных функции (f
и g
) и две символьных скалярных переменные (x
и t
).
syms
создает f(var1,...,varN)
[n1 ... nM]
n1
- ...
- nM
символьный массив с автоматически сгенерированными символьными функциями как его элементы. Этот синтаксис также генерирует символьные скалярные переменные var1,...,varN
это представляет входные параметры f
. Например, syms f(x) [1 2]
создает символьный массив f(x) = [f1(x) f2(x)]
, символьные функции f1(x)
и f2(x)
, и символьная скалярная переменная x
в рабочем пространстве MATLAB. Для многомерных массивов эти элементы имеют префиксный f
сопровождаемый индексом элемента с помощью _
как разделитель, такой как f1_3_2
.
syms
создает f(var1,...,varN)
nn
- n
матрица символьных функций заполнена автоматически сгенерированными элементами.
syms
создает переменные var1 ... varN
[nrow ncol]
matrixvar1 ... varN
символьной матрицы из типа
symmatrix
, где каждая переменная символьной матрицы имеет размер nrow
- ncol
. (начиная с R2021a)
syms
создает var1 ... varN
n matrixn
- n
переменные символьной матрицы. (начиная с R2021a)
syms(
создает символьные скалярные переменные и функции, содержавшиеся в symArray
)symArray
, где symArray
или вектор из символьных скалярных переменных или массив ячеек символьных скалярных переменных и функций. Этот синтаксис очищает все предыдущие определения переменных, заданных в symArray
включая символьные предположения. Используйте этот синтаксис только, когда такой массив будет возвращен другой функцией, такой как solve
или symReadSSCVariables
.
Используя Symbolic Math Toolbox™, можно создать символьные функции, которые зависят от символьных скалярных переменных как параметры. Однако переменные символьной матрицы не могут быть зависимыми параметром. Например, команда syms A(x) [3 2] matrix
в настоящее время ошибки.
Функции дифференцирования, такой как jacobian
и laplacian
, в настоящее время не принимайте переменные символьной матрицы как вход. Чтобы оценить дифференцирование относительно векторов и матриц, можно использовать diff
функцию вместо этого.
Чтобы показать все функции в Symbolic Math Toolbox, которые принимают переменные символьной матрицы как вход, используйте команду methods symmatrix
.
syms
ярлык для sym
. Этот ярлык позволяет вам создать несколько символьных скалярных переменных в одном вызове функции. В качестве альтернативы можно использовать sym
и создайте каждую переменную отдельно. Однако, когда вы создаете использование переменных sym
, сохраняются любые существующие предположения на созданных переменных. Можно также использовать symfun
создать символьные функции.
В функциях и скриптах, не используйте syms
создать символьные скалярные переменные с теми же именами как функции MATLAB. Для этих имен MATLAB не создает символьные скалярные переменные, но сохраняет имена присвоенными функциям MATLAB. Если вы хотите создать символьную скалярную переменную с тем же именем как функция MATLAB в функции или скрипте, использовать sym
вместо этого. Например, используйте alpha = sym('alpha')
.
Избегайте использования syms
в функциях, поскольку это генерирует переменные без прямого выходного присвоения. Используя syms
в функциях может создать побочные эффекты и другие неожиданные поведения. Вместо этого используйте sym
с левой стороной выводит присвоение в функциях, таких как t = sym('t')
. Для получения дополнительной информации смотрите, Выбирают Функция sym или syms.
Следующие имена переменных недопустимы с syms
Целое число
действительный
, rational
, positive
, и clear
. Чтобы создать символьные скалярные переменные с этими именами, использовать sym
. Например, real = sym('real')
.
clear x
не очищает символьный объект его предположений, такой как действительный, положительный, или любых предположений, установленных assume
, sym
, или syms
. Чтобы удалить предположения, используйте одну из этих опций:
syms x
очищает все предположения от x
.
assume(x,'clear')
очищает все предположения от x
.
clear all
очищает все объекты в рабочем пространстве MATLAB и сбрасывает символьный механизм.
assume
и assumeAlso
обеспечьте больше гибкости для установки предположений на символьных скалярных переменных.
Когда вы заменяете один или несколько элементов числового вектора или матрицы с символьным числом, MATLAB преобразует тот номер в номер с двойной точностью.
A = eye(3); A(1,1) = sym(pi)
A = 3.1416 0 0 0 1.0000 0 0 0 1.0000
Вы не можете заменить элементы числового вектора или матрицы с символьной скалярной переменной, выражением, или функционировать, потому что эти элементы не могут быть преобразованы в числа с двойной точностью. Например, syms a; A(1,1) = a
выдает ошибку.
assume
| assumeAlso
| assumptions
| isvarname
| reset
| sym
| symfun
| symvar
| symmatrix
| symmatrix2sym