Когда вы запускаете код, который генерирует символьный выход в Live Editor, Live Editor предоставляет контекстному меню следующие предложения шага, которые характерны для выхода. Чтобы открыть меню предложения, можно указать на символьный выход и кликнуть по значку с тремя точками, или можно щелкнуть правой кнопкой по символьному выходу.
Используя эти меню предложения, можно вставить и выполнить вызовы функции или задачи Live Editor в live скрипты. Типичное использование этих меню предложения включает:
Оцените и преобразуйте символьные выражения в числовые значения.
Упростите и управляйте или решите символьные математические уравнения.
Постройте символьные выражения.
Выполните матричные и векторные операции, такие как нахождение инверсии и определителя матрицы и нахождения якобиана и завихрения вектора.
Выполните функции исчисления, такие как дифференцирование, интегрирование, преобразовывает, и решающий дифференциальные уравнения.
Преобразуйте между единицами измерения и проверьте модульные размерности.
Например, в новом live скрипте, создайте символьное выражение.
expr = (pi + sym(2))^2
expr =
Нажмите Run, чтобы видеть результат, который является символьным выходом. Когда вы код первого показа, который генерирует символьный выход, Live Editor, показываете значок с тремя точками для предложенных следующих шагов с раскрывающимся уведомлением. Можно также указать на символьный выход, чтобы поднять значок с тремя точками. Чтобы подавить раскрывающееся уведомление в остальной части вашего рабочего процесса, выберите Do not show again.
Кликните по значку с тремя точками, расположенному справа от выхода, чтобы поднять меню предложения. Когда вы указываете на пункт меню, Live Editor дает вам предварительный просмотр того, что происходит, когда вы выбираете пункт меню. Например, если вы указываете, чтобы Аппроксимировать численно, вы видите новую строку кода, который она предлагает.
Выберите Approximate численно, чтобы добавить предложенную новую линию кода. Live Editor вставляет vpa
функция в область кода и автоматически запускает текущий раздел, чтобы выполнить выражение численно.
var = vpa(expr)
var =
Как другой пример, создайте символьное уравнение. Запустите live скрипт, чтобы сгенерировать символьный выход. Решите уравнение численно с помощью символьных предложений для следующих шагов.
syms x a eqn = (2*x^2 + a)/(x + 1) == 3
eqn =
Чтобы открыть меню предложения, можно также щелкнуть правой кнопкой по символьному выходу. Выберите уравнения Solving> уравнение Solve численно.
Когда вы кликаете по уравнению Solve численно предложение, Live Editor вставляет vpasolve
функция в область кода. Live Editor затем автоматически запускает текущий раздел, чтобы решить уравнение численно.
var2 = vpasolve(eqn,x)
var2 =
Следующие разделы обеспечивают больше примеров, показывающих, как использовать интерактивные меню предложения в символьных рабочих процессах.
Создайте символьное выражение, которое содержит показательные функции и мнимые числа. Запустите следующий код, чтобы сгенерировать символьный выход.
syms x
expr = 1i*(exp(-1i*x) - exp(1i*x))/(exp(-1i*x) + exp(1i*x))
expr =
Чтобы упростить выражение, щелкните правой кнопкой по символьному выходу и выберите Rewriting, и упрощение выражений> Упрощают выражение.
Live Editor вставляет и применяет Упростить Символьное выражение живая задача в интерактивном режиме упростить или перестроить символьные выражения. Измените вычислительное усилие в Носитель, чтобы получить более простой результат.
Создайте квадратное уравнение с коэффициентами , , и . Запустите следующий код, чтобы сгенерировать символьный выход.
syms a b c x eqn = a*x^2 + b*x + c == 0
eqn =
Чтобы заменить коэффициентами в уравнении, щелкните правой кнопкой по выходу и выберите переменные Substitute.
Live Editor вставляет subs
функционируйте, чтобы заменить коэффициентами и переменными в уравнениях. Для subs
функция, Live Editor не запускает функцию автоматически. Занимать место , , и , измените вторые и третьи аргументы subs
функционируйте к [a,b,c]
и [3,2,0]
. Запустите раздел Live Editor впоследствии, чтобы применить subs
функция.
var3 = subs(eqn,[a,b,c],[3,2,0])
var3 =
Чтобы решить квадратное уравнение, щелкните правой кнопкой по выходу и выберите уравнение Solve аналитически.
Live Editor вставляет и применяет Решение Символьного уравнения живая задача в интерактивном режиме найти аналитические решения символьных уравнений.
Создайте три символьных переменные x
Y
, и z
и синусоидальная функция. Запустите следующий код, чтобы сгенерировать символьный выход.
syms x y z f = sin(2*x)
f =
Чтобы построить синусоидальную функцию, щелкните правой кнопкой по выходу и выберите Функции построения графика> Функция построения графика.
Live Editor строит синусоидальную функцию с помощью fplot
.
fplot(f)
Затем создайте уравнение, которое представляет гиперболу. Запустите следующий код, чтобы сгенерировать символьный выход.
eqn = x^2 - y^2 == 1
eqn =
Чтобы построить синусоидальную функцию, щелкните правой кнопкой по выходу и выберите Функции построения графика> График неявное уравнение в 2D.
Live Editor строит гиперболу с помощью fimplicit
.
fimplicit(eqn)
Затем создайте символьную функцию, которая представляет торус. Запустите следующий код, чтобы сгенерировать символьный выход.
f(x,y,z) = (x^2 + y^2 + z^2 + 3^2 - 2^2)^2 - 4*3^2*(x^2+y^2)
f(x, y, z) =
Чтобы построить торус, щелкните правой кнопкой по выходу и выберите Plot неявное уравнение в 3-D.
Live Editor строит торус с помощью fimplicit3
.
fimplicit3(f)
Создайте три символьных переменные x
Y
, и z
и символьная матрица. Запустите следующий код, чтобы сгенерировать символьный выход.
syms x y z M1 = sym([x^2 + a, x; y + 2, 3*y^2])
M1 =
Чтобы инвертировать матрицу, щелкните правой кнопкой по выходу и выберите матричные функции Applying> матрица Инвертирования. Обратите внимание на то, что Применение матричных функций> матричное предложение Инвертирования доступно, только если символьный выход является символьной матрицей.
Live Editor вставляет и применяет inv
функционируйте, чтобы инвертировать матрицу.
var4 = inv(M1)
var4 =
Затем создайте 1 3 символьный вектор. Запустите следующий код, чтобы сгенерировать символьный выход.
M2 = sym([x*y*z, y^2, x + z])
M2 =
Чтобы вычислить якобиан вектора, щелкните правой кнопкой по выходу и выберите матричные функции Applying>, Вычисляют якобиевскую матрицу вектора. Обратите внимание на то, что Применение матричных функций> Вычисляет якобиевскую матрицу векторного предложения, доступно, только если символьный выход является символьным вектором.
Live Editor вставляет и применяет jacobian
функция, чтобы вычислить якобиан вектора.
var5 = jacobian(M2)
var5 =
Затем создайте другого 1 3 символьный вектор. Запустите следующий код, чтобы сгенерировать символьный выход.
M3 = sym([x^2*y, 2*x, z])
M3 =
Чтобы вычислить завихрение вектора, щелкните правой кнопкой по выходу и выберите матричные функции Applying>, Вычисляют завихрение векторного поля.
Live Editor вставляет и применяет curl
функция, чтобы вычислить завихрение вектора.
var6 = curl(M3)
var6 =
Создайте дифференциальное уравнение второго порядка. Запустите следующий код, чтобы сгенерировать символьный выход.
syms f(x) s eqn = diff(f,x,x) == -9*f
eqn(x) =
Чтобы решить дифференциальное уравнение, щелкните правой кнопкой по выходу и выберите дифференциальное уравнение Solve. Обратите внимание на то, что Решить предложение дифференциального уравнения доступно, только если символьный выход является дифференциальным уравнением.
Live Editor вставляет и применяет dsolve
функция, чтобы решить дифференциальное уравнение.
var7 = dsolve(eqn)
var7 =
Затем найдите Преобразование Лапласа решения. Щелкните правой кнопкой по выходу dsolve
и выберите интеграл Computing, преобразовывает>, Вычисляют Преобразование Лапласа.
Live Editor вставляет и применяет laplace
функция, чтобы вычислить Преобразование Лапласа.
var8 = laplace(var7)
var8 =
Наконец, найдите полюса Преобразования Лапласа. Щелкните правой кнопкой по выходу Преобразования Лапласа и выберите функции исчисления Applying>, Вычисляют полюса функции.
Live Editor вставляет и применяет poles
функция, чтобы вычислить полюса.
var9 = poles(var8,s)
var9 =
Создайте отношение двух длин с различными модулями. Запустите следующий код, чтобы сгенерировать символьный выход.
u = symunit; ratio = (7*u.mi)/(420*u.ft)
ratio =
Преобразуйте единицы к грамму метра вторая система. Щелкните правой кнопкой по выходу и выберите функции физической единицы измерения Applying>, Преобразовывают единицы. Обратите внимание на то, что Применение предложения функций физической единицы измерения доступно, только если символьный выход содержит символьные модули.
Live Editor вставляет и применяет unitConvert
функция, чтобы преобразовать единицы к грамму метра вторая система.
var10 = unitConvert(ratio,[symunit('m'),symunit('g'),symunit('s')])
var10 =
Затем создайте два символьных выражения x
и y
это описывает - и - координаты движущегося снаряда. Создайте символьное уравнение r
это сравнивает модули x
и y
к единицам длины m
и ft
. Запустите следующий код, чтобы сгенерировать символьный выход.
syms theta ts x y r g = 9.81*u.m/u.s^2; v = 10*u.m/u.s; t = ts*u.s; x = v*cos(theta)*t; y = v*sin(theta)*t + (-g*t^2)/2; r = [x == u.m y == u.ft]
r =
Проверяйте непротиворечивость модулей в r
. Щелкните правой кнопкой по выходу и выберите функции физической единицы измерения Applying> непротиворечивость Проверки модулей.
Live Editor вставляет и применяет checkUnits
функционируйте, чтобы проверять непротиворечивость и совместимость модулей в r
.
checkUnits
функция возвращает структуру, содержащую поля Consistent
и Compatible
. Consistent
поле возвращает логический 1(true)
если все термины в r
имейте ту же размерность и тот же модуль с коэффициентом преобразования 1. Compatible
поле возвращает логический 1(true)
если все термины имеют ту же размерность, но не обязательно тот же модуль.
var11 = checkUnits(r)
var11 = struct with fields:
Consistent: [1 0]
Compatible: [1 1]