Задание символических настроек
задает символьную настройку oldVal = sympref(pref,value)pref кому value и возвращает предыдущее значение настройки oldVal. Задать для настройки значение по умолчанию можно с помощью sympref(pref,'default').
Символьные настройки могут влиять на вычисление символьных функций fourier, ifourier, и heavisideи формат отображения символьного вывода.
Преобразование Фурье F (w) f = f (t) равно
eiswtdt,
где c и s - параметры со значениями по умолчанию 1 и -1 соответственно. Другими общими значениями для c являются 1/2pi и , и другими общими значениями для s равны 1, -2δ и 2λ.
Найти преобразование Фурье sin(t) со значением по умолчанию c и s параметры.
syms t w F = fourier(sin(t),t,w)
F = -pi*(dirac(w - 1) - dirac(w + 1))*1i
Найти то же преобразование Фурье с помощью c = 1/(2π) и s = 1. Задайте значения параметров с помощью 'FourierParameters' предпочтение. Точно представить δ с помощью sym. Укажите значения c и s в качестве вектора [1/(2*sym(pi)) 1]. Сохранить предыдущие значения, возвращенные sympref чтобы вы могли восстановить их позже.
oldVal = sympref('FourierParameters',[1/(2*sym(pi)) 1])
F = fourier(sin(t),t,w)
oldVal = [ 1, -1] F = (dirac(w - 1)*1i)/2 - (dirac(w + 1)*1i)/2
Настройки, заданные с помощью sympref продолжение текущей и будущей сессий MATLAB. Восстановление предыдущих значений c и s кому oldVal.
sympref('FourierParameters',oldVal);Кроме того, можно восстановить значения по умолчанию для c и s путем указания 'default' вариант.
sympref('FourierParameters','default');В символьных математических Toolbox™ значение по умолчанию для функции Heaviside в начале координат равно 1/2. Возвращает значение heaviside(0). Найти Z-преобразование heaviside(x) для этого значения по умолчанию heaviside(0).
syms x H = heaviside(sym(0)) Z = ztrans(heaviside(x))
H = 1/2 Z = 1/(z - 1) + 1/2
Другими общими значениями для функции Heaviside в начале координат являются 0 и 1. Набор heaviside(0) кому 1 с использованием 'HeavisideAtOrigin' предпочтение. Сохранить предыдущее значение, возвращенное sympref чтобы вы могли восстановить его позже.
oldVal = sympref('HeavisideAtOrigin',1)oldVal = 1/2
Проверьте, имеет ли новое значение heaviside(0) равно 1. Найти Z-преобразование heaviside(x) для этого значения.
H = heaviside(sym(0)) Z = ztrans(heaviside(x))
H = 1 Z = 1/(z - 1) + 1
Новые выходные данные heaviside(0) изменяет выходные данные ztrans.
Настройки, заданные с помощью sympref продолжение текущей и будущей сессий MATLAB. Восстановить предыдущее значение heaviside(0) кому oldVal.
sympref('HeavisideAtOrigin',oldVal);Кроме того, можно восстановить значение по умолчанию 'HeavisideAtOrigin' путем указания 'default' вариант.
sympref('HeavisideAtOrigin','default');По умолчанию символьные выражения в интерактивных сценариях отображаются в сокращенном формате вывода, а набор типов - в математическом представлении. Можно отключить сокращенный формат вывода и набор текста с помощью символьных настроек.
Создайте символическое выражение и верните выходные данные, сокращенные по умолчанию.
syms a b c d x f = a*x^3 + b*x^2 + c*x + d; outputAbbrev = sin(f) + cos(f) + tan(f) + log(f) + 1/f
outputAbbrev =
Отключите сокращенный формат вывода, установив значение 'AbbreviateOutput' предпочтение false. Повторно отобразите выражение.
sympref('AbbreviateOutput',false);
outputLong = sin(f) + cos(f) + tan(f) + log(f) + 1/foutputLong =
Создайте другое символическое выражение и верните вывод, который по умолчанию является набором типов в математической нотации. Отключите визуализированный вывод и используйте вывод ASCII, установив значение 'TypesetOutput' предпочтение false. Сначала отобразите выходные данные набора типов.
syms a b c d x f = exp(a^b)+pi
f =
Отключить набор шрифтов, установив 'TypesetOutput' предпочтение false. Повторно отобразите выражение.
sympref('TypesetOutput',false);
f = exp(a^b)+pif = pi + exp(a^b)
Настройки, заданные с помощью sympref продолжение текущей и будущей сессий MATLAB. Восстановление значений по умолчанию 'AbbreviateOutput' и 'TypesetOutput' путем указания 'default' вариант.
sympref('AbbreviateOutput','default'); sympref('TypesetOutput','default');
Отображение символьных результатов в формате вывода с плавающей запятой, т.е. кратком формате с фиксированной запятой и 4 цифрами после десятичной запятой.
Создайте квадратичное уравнение.
syms x
eq = x^2 - 2e3/sym(pi)*x + 0.5 == 0eq =
Найти решения уравнения с помощью solve.
sols = solve(eq,x)
sols =
Установите 'FloatingPointOutput' предпочтение true. Отображение квадратичного уравнения и его решений в формате с плавающей запятой.
sympref('FloatingPointOutput',true);
eqeq =
sols
sols =
Формат с плавающей запятой отображает каждое символьное число в кратком, фиксированном десятичном формате с 4 цифрами после десятичной запятой. Установка 'FloatingPointOutput' настройка не влияет на точность с плавающей запятой в символьных вычислениях. Для вычисления символьных чисел с помощью арифметики с плавающей запятой используйте vpa функция.
Теперь восстановите значение по умолчанию 'FloatingPointOutput' путем указания 'default' вариант. Вычислите аппроксимацию решений с плавающей запятой с помощью 8 значащих цифр vpa.
sympref('FloatingPointOutput','default'); sols = vpa(sols,8)
sols =
Создайте символьное полиномиальное выражение, состоящее из нескольких переменных. Отображение полинома в порядке по умолчанию.
syms x y a b p1 = b^2*x^2 + a^2*x + y^3 + 2
p1 =
Опция по умолчанию сортирует выходные данные в алфавитном порядке без различия различных символьных переменных в каждом мономиальном члене.
Теперь отобразите тот же полином в порядке возрастания, установив настройку 'PolynomialDisplayStyle' кому 'ascend'.
sympref('PolynomialDisplayStyle','ascend'); p1
p1 =
'ascend' сортирует выходные данные в порядке возрастания в зависимости от важности переменных. Здесь самая важная переменная x с наивысшим порядком в мономиальном члене отображается последним.
Отображение многочлена в порядке убывания путем установки 'PolynomialDisplayStyle' предпочтение 'descend'.
sympref('PolynomialDisplayStyle','descend'); p1
p1 =
Настройки, заданные с помощью sympref продолжение текущей и будущей сессий MATLAB. Восстановление значения по умолчанию 'PolynomialDisplayStyle' путем указания 'default' вариант.
sympref('PolynomialDisplayStyle','default');
По умолчанию в скобках (круглых скобках) задается символьная матрица в сценариях. Вместо этого можно указать использование квадратных скобок sympref.
Создайте символьную матрицу, состоящую из символьных переменных и чисел.
syms x y A = [x*y, 2; 4, y^2]
A =
Отображение матрицы в квадратных скобках путем установки 'MatrixWithSquareBrackets' предпочтение true.
sympref('MatrixWithSquareBrackets',true);
AA =
Настройки, заданные с помощью sympref продолжение текущей и будущей сессий MATLAB. Восстановите значение по умолчанию, указав 'default' вариант.
sympref('MatrixWithSquareBrackets','default');
Вместо сохранения и восстановления индивидуальных настроек один за другим можно использовать sympref для одновременного сохранения и восстановления всех символьных настроек.
Возврат структуры, содержащей значения всех символьных настроек, с помощью sympref().
oldPrefs = sympref()
oldPrefs =
struct with fields:
FourierParameters: [1×2 sym]
HeavisideAtOrigin: [1×1 sym]
AbbreviateOutput: 1
TypesetOutput: 1
FloatingPointOutput: 0
PolynomialDisplayStyle: 'default'
MatrixWithSquareBrackets: 0Доступ к значению каждой символической настройки осуществляется путем обращения к полю структуры. Кроме того, можно использовать команду sympref(pref).
val1 = oldPrefs.FourierParameters
val2 = oldPrefs.HeavisideAtOrigin
val3 = sympref('FourierParameters')val1 = [ 1, -1] val2 = 1/2 val3 = [ 1, -1]
Для одновременного изменения нескольких символьных настроек можно создать структуру prefs который содержит значения настроек. Используйте команду sympref(prefs) для установки нескольких настроек.
prefs.FourierParameters = [1/(2*sym(pi) 1] prefs.HeavisideAtOrigin = 1 sympref(prefs);
Поскольку символические настройки сохраняются в текущих и будущих сессиях MATLAB, необходимо восстановить предыдущие настройки. Восстановление сохраненных настроек с помощью sympref(oldPrefs).
sympref(oldPrefs);
Кроме того, можно задать значения по умолчанию для всех символьных настроек, указав 'default' вариант.
sympref('default');pref - Символическое предпочтениеСимвольная настройка, заданная как символьный вектор или строка. Ниже приведены параметры значений для каждой символической настройки.
| Предпочтение | Стоимость | Описание |
|---|---|---|
'FourierParameters' | Двухэлементный вектор строки По умолчанию: | Задайте значения параметров c и s в преобразовании Фурье:
eiswtdt.
См. раздел Изменение значений параметров преобразования Фурье. |
'HeavisideAtOrigin' | Скалярное значение, указанное как числовое или символьное число. По умолчанию: | Установка значения функции Heaviside См. раздел Изменение значения функции Heaviside в начале координат. |
'AbbreviateOutput' | Логическое значение (логическое). По умолчанию: логический | Укажите, следует ли использовать сокращенный формат вывода символьных переменных и выражений в интерактивных сценариях. См. раздел Изменение отображения символьных выражений в интерактивных сценариях. |
'TypesetOutput' | Логическое значение (логическое). По умолчанию: логический | Введите или используйте символы ASCII для вывода символьных переменных и выражений в интерактивных сценариях. См. раздел Изменение отображения символьных выражений в интерактивных сценариях. |
'FloatingPointOutput' | Логическое значение (логическое). По умолчанию: логический | Укажите, следует ли отображать символьные результаты в формате вывода с плавающей запятой. См. раздел Отображение символьных результатов в формате с плавающей запятой. |
'PolynomialDisplayStyle' | Символьный вектор или скалярная строка, указанная как По умолчанию: | Отображение символьного многочлена в порядке по умолчанию, по возрастанию или по убыванию.
См. раздел Изменение порядка вывода символьного многочлена. |
'MatrixWithSquareBrackets' | Логическое значение (логическое). По умолчанию: логический | Задайте матрицы в круглых или круглых скобках в интерактивных сценариях. См. раздел Изменение отображения символьной матрицы в интерактивных сценариях. |
value - Значение символического предпочтения'default' (по умолчанию) | допустимое значениеЗначение символьной настройки, указанное как 'default' или допустимое значение указанной настройки pref.
prefs - Символические предпочтенияСимвольные настройки, заданные как массив структуры. Можно задать несколько настроек, объявив имена полей и допустимые значения настроек.
oldVal - Значение символического предпочтенияЗначение символьной настройки, возвращаемое в качестве допустимого значения. oldVal представляет существующее значение настройки pref перед вызовом на sympref.
oldPrefs - Все символические предпочтенияВсе символьные настройки, возвращаемые в виде массива структуры. oldPrefs представляют существующие значения всех настроек перед вызовом sympref.
clear команда не сбрасывает и не влияет на символьные установки. Использовать sympref для манипулирования символьными настройками.
Символьные настройки, заданные с помощью sympref также определить выходные данные, генерируемые latex и mathml функции.
Установка 'FloatingPointOutput' влияет только на формат вывода символьных чисел. Для изменения формата вывода числовых чисел используйте format функция. Для вычисления символьных чисел с помощью точности с плавающей запятой используйте vpa или digits функции.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.