Символьная математическая Toolbox™ обеспечивает аналитическую печать математических выражений без явной генерации числовых данных. Эти графики могут быть 2-D или 3-D как линии, кривые, контуры, поверхности или сетки.
В этих примерах представлены следующие графические функции, которые принимают символьные функции, выражения и уравнения в качестве входных данных:
fplot
fimplicit
fcontour
fplot3
fsurf
fmesh
fimplicit3
fplotПостройте график функции )).
syms x
fplot(sin(exp(x)))
Постройте график тригонометрических функций ), x) (x) одновременно.
fplot([sin(x),cos(x),tan(x)])

Постройте график функции )) 1,2 и 4.
syms x a expr = sin(exp(x/a)); fplot(subs(expr,a,[1,2,4])) legend show

Постройте график функции + x) + 2, ее df (x )/dx и ее интегральной ∫f (x) dx.
syms f(x)
f(x) = x*(1 + x) + 2f(x) =
f_diff = diff(f(x),x)
f_diff =
f_int = int(f(x),x)
f_int =
fplot([f,f_diff,f_int])
legend({'$f(x)$','$df(x)/dx$','$\int f(x)dx$'},'Interpreter','latex','FontSize',12)
Найдите , который минимизирует функцию a) путем решения дифференциального /dx = 0.
syms g(x,a);
assume(a>0);
g(x,a) = a*x*(a + x) + 2*sqrt(a)g(x, a) =
x0 = solve(diff(g,x),x)
x0 =
Постройте график минимального значения a) значения от 0 до 5.
fplot(g(x0,a),[0 5]) xlabel('a') title('Minimum Value of $g(x_0,a)$ Depending on $a$','interpreter','latex')

fimplicitКруги графика, определяемые = r2 с радиусом r в виде целых чисел от 1 до 10.
syms x y r = 1:10; fimplicit(x^2 + y^2 == r.^2,[-10 10]) axis square;

fcontourПостройте график контуров функции x3-4x-y2 для уровней контуров от -6 до 6.
syms x y f(x,y) f(x,y) = x^3 - 4*x - y^2; fcontour(f,[-3 3 -4 4],'LevelList',-6:6); colorbar title 'Contour of Some Elliptic Curves'

Постройте график аналитической функции (5x) -2.
syms f(x)
f(x) = x*exp(-x)*sin(5*x) -2;
fplot(f,[0,3])Создайте несколько точек данных из аналитической функции.
xs = 0:1/3:3; ys = double(subs(f,xs));
Постройте график точек данных и сплайнового интерполятора, который аппроксимирует аналитическую функцию.
hold on plot(xs,ys,'*k','DisplayName','Data Points') fplot(@(x) spline(xs,ys,x),[0 3],'DisplayName','Spline interpolant') grid on legend show hold off

Найдите расширение Тейлора ) около = 0 до 5-го и 7-го порядков.
syms x t5 = taylor(cos(x),x,'Order',5)
t5 =
t7 = taylor(cos(x),x,'Order',7)t7 =
Постройте график ) и его аппроксимации Тейлора.
fplot(cos(x)) hold on; fplot([t5 t7],'--') axis([-4 4 -1.5 1.5]) title('Taylor Series Approximations of cos(x) up to 5th and 7th Order') legend show hold off;

Квадратная волна периода и амплитуды может быть аппроксимирована расширением ряда Фурье
5t) +....
Постройте график прямоугольной волны с периодом и амплитудой .
syms t y(t) y(t) = piecewise(0 < mod(t,2*pi) <= pi, pi/4, pi < mod(t,2*pi) <= 2*pi, -pi/4); fplot(y)
Постройте график аппроксимации ряда Фурье квадратной волны.
hold on; n = 6; yFourier = cumsum(sin((1:2:2*n-1)*t)./(1:2:2*n-1)); fplot(yFourier,'LineWidth',1) hold off

Аппроксимация серии Фурье переполняется при скачкообразном разрыве и «звон» не вымирает по мере добавления к аппроксимации большего количества терминов. Такое поведение также известно как феномен Гиббса.
fplot3Постройте график спирали, которая определяется (sin t/4) для t от -10 до 10.
syms t fplot3(sin(t),cos(t),t/4,[-10 10],'LineWidth',2) view([-45 45])

fsurfПостройте график поверхности, определенной (y). Аналитическая печать с использованиемfsurf (без генерации числовых данных) показывает изогнутые области и асимптотические области вблизи 0.
syms x y fsurf(log(x) + exp(y),[0 2 -1 3]) xlabel('x')

fsurfПостройте график многомерной поверхности, определяемой
= u
sin (v)
cos (v)
где u) + 3/2.
Установите интервал графика от -5 до 5 и от 0 до .
syms f(u) x(u,v) y(u,v) z(u,v) f(u) = sin(u)*exp(-u^2/3)+1.5; x(u,v) = u; y(u,v) = f(u)*sin(v); z(u,v) = f(u)*cos(v); fsurf(x,y,z,[-5 5 0 2*pi])

fmeshПостройте график многомерной поверхности, определяемой
sin (t)
sin (t)
(t)
где 7s + 5t). Отображение печатаемой поверхности в виде сетей с помощьюfmesh. Задайте интервал графика от 0 до и от 0 до .
syms s t r = 8 + sin(7*s + 5*t); x = r*cos(s)*sin(t); y = r*sin(s)*sin(t); z = r*cos(t); fmesh(x,y,z,[0 2*pi 0 pi],'Linewidth',2) axis equal

fimplicit3Постройте график неявной поверхности = 0.
syms x y z f = 1/x^2 - 1/y^2 + 1/z^2; fimplicit3(f)

Постройте график поверхностного + y2 ) /20 с помощьюfsurf. Можно показать контуры на том же графике, задав 'ShowContours' кому 'on'.
syms x y f = sin(x)+sin(y)-(x^2+y^2)/20
f =
fsurf(f,'ShowContours','on') view(-19,56)

Затем постройте график контуров на отдельном графике с более мелкими контурными линиями.
fcontour(f,[-5 5 -5 5],'LevelStep',0.1,'Fill','on') colorbar
Найдите градиент поверхности. Создание 2-D сеток с помощью meshgrid и замените координаты сетки для численной оценки градиента. Показать градиент с помощью quiver.
hold on
Fgrad = gradient(f,[x,y])Fgrad =
[xgrid,ygrid] = meshgrid(-5:5,-5:5);
Fx = subs(Fgrad(1),{x,y},{xgrid,ygrid});
Fy = subs(Fgrad(2),{x,y},{xgrid,ygrid});
quiver(xgrid,ygrid,Fx,Fy,'k')
hold off