Can't understand how to plot real part of Symbolic Function

조회 수: 4 (최근 30일)
Omer Sholev
Omer Sholev 2016년 5월 28일
답변: Walter Roberson 2016년 5월 28일
I'm trying to plot a 3-d graph of the Real part of symbolic function. I have written the code:
syms x real
syms y real
angles = randi([0 360],2,8);
angles = deg2rad(angles);
a = normrnd(0,1,1,8);
a = abs(a);
E = a(1,:).*exp(-1i*K0*(cos(angles(1,:))*x+sin(angles(1,:))*y));
end
And now i want to plot a 3d graph of the real part of the symbolic function E for a range of values of x and y. How can i do that?

채택된 답변

Walter Roberson
Walter Roberson 2016년 5월 28일
[X,Y] = ndgrid(linspace(-5,5), linspace(-3,3)); %your x and y range to plot over
Zr = double(real( subs(E, {x,y}, {X,Y}))); %create numeric real values
Zr = reshape(Zr, size(X,1), size(X,2), []); %E is a vector so each element generated a surface
nsurf = size(Zr,3);
for K = 1 : nsurf
ax = subplot(1,nsurf,K);
surf(ax, X, Y, Zr(:,:,K));
title( char(E(K)) );
end

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Calculus에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by