Эта страница показывает, как создать символьные числа, переменные и выражения. Чтобы изучить, как работать с символьной математикой, смотрите, Выполняют Символьные Вычисления.
Можно создать символьные числа при помощи sym
. Символьные числа являются точными представлениями, в отличие от чисел с плавающей запятой.
Создайте символьное число при помощи sym
и сравните его с тем же числом с плавающей запятой.
sym(1/3) 1/3
ans = 1/3 ans = 0.3333
Символьное число представлено в точной рациональной форме, в то время как число с плавающей запятой является десятичным приближением. Символьный результат не располагается с отступом, в то время как стандартный результат MATLAB® располагается с отступом.
Вычисления на символьных числах точны. Продемонстрируйте эту точность путем нахождения sin(pi)
символически и численно. Символьный результат точен, в то время как числовым результатом является приближение.
sin(sym(pi)) sin(pi)
ans = 0 ans = 1.2246e-16
Чтобы узнать больше о символьном представлении чисел, смотрите Числовой к Символьному Преобразованию.
Можно создать символьные переменные с помощью или syms
или sym
. Типичное использование этих функций включает:
sym
– Создайте пронумерованные символьные переменные или создайте символьные переменные в функциях MATLAB.
syms
– Создайте новые символьные переменные для интерактивных символьных рабочих процессов, то есть, для символьного переменного создания в командной строке MATLAB или в live скриптах MATLAB. Новая символьная переменная не имеет никаких предположений.
Команда syms
является сокращением для синтаксиса sym
, но две функции обрабатывают предположения по-другому. Для получения дополнительной информации смотрите Имена Повторного использования Символьных Объектов.
Создайте символьные переменные x
и y
с помощью syms
и sym
, соответственно.
syms x y = sym('y')
Первая команда создает символьную переменную x
в рабочем пространстве MATLAB со значением x
, присвоенный переменной x
. Вторая команда создает символьную переменную y
со значением y
.
С syms
можно создать несколько переменных в одной команде. Создайте переменные a
, b
и c
.
syms a b c
Если вы хотите создать массив MATLAB пронумерованных символьных переменных, синтаксис syms
неудобен. Поэтому используйте sym
вместо этого, чтобы создать массив многих пронумерованных символьных переменных.
Очистите рабочую область. Создайте вектор - строку, содержащий символьные переменные a1, ..., a20
, и присвойте его переменной MATLAB A
. Отобразите переменную в рабочем пространстве MATLAB.
clear all A = sym('a', [1 20]) whos
A = [ a1, a2, a3, a4, a5, a6, a7, a8, a9, a10,... a11, a12, a13, a14, a15, a16, a17, a18, a19, a20] Name Size Bytes Class Attributes A 1x20 8 sym
A
является 1
-by-20
массив 20 символьных переменных.
Путем объединения sym
и syms
, можно создать много новых символьных переменных с соответствующим именем переменных в рабочем пространстве MATLAB.
Очистите рабочую область. Создайте новые символьные переменные a1, ..., a10
и присвойте их, переменная MATLAB называет a1, ..., a10
, соответственно. Отобразите переменные в рабочем пространстве MATLAB.
clear all syms(sym('a', [1 10])) whos
Name Size Bytes Class Attributes a1 1x1 8 sym a10 1x1 8 sym a2 1x1 8 sym a3 1x1 8 sym a4 1x1 8 sym a5 1x1 8 sym a6 1x1 8 sym a7 1x1 8 sym a8 1x1 8 sym a9 1x1 8 sym
Рабочее пространство MATLAB содержит 10 переменных MATLAB, которые являются символьными переменными.
Команда syms
является удобным сокращением для синтаксиса sym
, и его типичное использование должно создать новые символьные переменные для интерактивных символьных рабочих процессов. Используйте синтаксис sym
, чтобы создать следующее:
Символьные переменные в функциях MATLAB
Много пронумерованных символьных переменных
Символьная переменная, значение которой отличается от своего имени в рабочем пространстве MATLAB
Символьное число, такое как sym(5)
Символьная переменная, которая наследовала предположения от ранее используемой символьной переменной, имеющей то же имя
Предположим, что вы хотите использовать символьную переменную, чтобы представлять золотое сечение
Команда
phi = (1 + sqrt(sym(5)))/2;
достигает этой цели. Теперь можно выполнить различные математические операции на phi
. Например,
f = phi^2 - phi - 1
возвращается
f = (5^(1/2)/2 + 1/2)^2 - 5^(1/2)/2 - 3/2
Теперь предположите, что вы хотите изучить квадратичный функциональный f
= ax
2 + bx
+ c
. Во-первых, создайте символьные переменные a
, b
, c
и x
:
syms a b c x
Затем присвойте выражение f
:
f = a*x^2 + b*x + c;
Чтобы создать символьное число, используйте команду sym
. Не используйте функцию syms
, чтобы создать символьное выражение, которое является константой. Например, чтобы создать выражение, значением которого является 5
, введите f = sym(5)
. Команда f = 5
не задает f
как символьное выражение.
Если вы устанавливаете переменную, равную символьному выражению, и затем применяете команду syms
к переменной, программное обеспечение MATLAB удаляет ранее заданное выражение из переменной. Например,
syms a b f = a + b
возвращается
f = a + b
Если позже вы входите
syms f f
затем MATLAB удаляет значение a + b
из выражения f
:
f = f
Можно использовать команду syms
, чтобы очистить переменные определений, которые вы ранее присвоили им в своем сеансе работы с MATLAB. syms
очищает предположения о переменных: комплексный, действительный, целочисленный, и положительный. Эти предположения хранятся отдельно от символьного объекта. Однако воссоздание переменной с помощью sym
не очищает свои предположения. Для получения дополнительной информации смотрите, Удаляют Символьные Объекты и Их Предположения.