3d Plotting Using Meshgrid

2 views (last 30 days)
onsagerian
onsagerian on 6 Nov 2019
Commented: onsagerian on 6 Nov 2019
Hello,
This is the Matlab script I designed for 3D plotting using "meshgrid". Basically, I need to make a plot a function which is given by " f " depending on two independent variables " i " and " j ". I want to keep " f " as a 2-D array. I have tried to modify my code several times, but I couldn't get an expected output. Would you help me to address the problem?
format long e
n=1:1:5;
m=1:1:10;
alpha=0.01;
A=zeros(length(n),length(m));
B=zeros(length(n),length(m));
f=zeros(length(n),length(m));
for i=1:1:length(n)
for j=1:1:length(m)
A(i,j)=i.^2/j.^3;
B(i,j)=A(i,j)/(alpha+i);
f(i,j)=B(i,j)./A(i,j);
%fprintf('%d %d %.10e %.10e %.10e\n',i,j,A(i,j),B(i,j),f(i,j));
end
end
for i=1:1:length(n)
for j=1:1:length(m)
[X,Y]=meshgrid(i,j);
%disp(f(X,Y));
mesh(X,Y,f(X,Y));
end
end

Accepted Answer

Daniel M
Daniel M on 6 Nov 2019
Replace
for i=1:1:length(n)
for j=1:1:length(m)
[X,Y]=meshgrid(i,j);
%disp(f(X,Y));
mesh(X,Y,f(X,Y));
end
end
with
[X,Y] = meshgrid(1:length(n),1:length(m));
figure
surf(X,Y,f')

More Answers (0)

Categories

Find more on Change Markers in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!