Z must be a matrix, not a scalar or vector
    6 views (last 30 days)
  
       Show older comments
    
clc
clear all
R=10;
f=0.5;
s=50;
N=36;
a=f/(s*N);
Ax=0.002;
Ay=0.002;
lx=2.5;
ly=2.5;
n=((R*s*N)/f)+1;
for i=1:n
r(i)=(R-((i-1)*a));
theta(i)= ((i-1)*(2*pi/N));
x(i)=(r(i)*cos(theta(i)));
y(i)=(r(i)*sin(theta(i)));
[xx(i),yy(i)]=meshgrid(x(i),y(i));
Z(i)=((Ax*cos(2*pi*xx(i)/lx))+(Ay*cos(2*pi*yy(i)/ly)));
end
surf(xx,yy,Z);
2 Comments
Accepted Answer
  Matt J
      
      
 on 17 Aug 2021
        
      Edited: Matt J
      
      
 on 17 Aug 2021
  
      R=10;
f=0.5;
s=50;
N=36;
a=f/(s*N);
Ax=0.002;
Ay=0.002;
lx=2.5;
ly=2.5;
n=((R*s*N)/f)+1;
for i=1:n
r(i)=(R-((i-1)*a));
theta(i)= ((i-1)*(2*pi/N));
x(i)=(r(i)*cos(theta(i)));
y(i)=(r(i)*sin(theta(i)));
% [xx(i),yy(i)]=meshgrid(x(i),y(i));
Z(i)=((Ax*cos(2*pi*x(i)/lx))+(Ay*cos(2*pi*y(i)/ly)));
end
T=delaunayTriangulation(x(:),y(:));
 trisurf(T.ConnectivityList,x(:),y(:),Z(:),'EdgeColor','none','FaceAlpha',0.6);
 view(-80,75)
4 Comments
  Matt J
      
      
 on 17 Aug 2021
				You're welcome, but please Accept-click the answer to indicate that it worked.
More Answers (1)
  Kundan Prasad
 on 18 Aug 2021
        10 Comments
  Walter Roberson
      
      
 on 19 Aug 2021
				R=10;
f=0.5;
s=50;
N=100;
a=f/(s*N);
Ax=2;
Ay=2;
lx=2.5;
ly=2.5;
n=((R*s*N)/f)+1;
roff = 1;
Zoff = 1;
r(0+roff)=0;
Z(0+Zoff)=0;
t=0.1;
Pi = (pi);
for i=1:n   
    r(i+roff)=(R-((i-1)*a));
    theta(i)= ((i-1)*(2*Pi/N));
    x(i)=(r(i+roff)*cos(theta(i)));
    y(i)=(r(i+roff)*sin(theta(i)));
    Z(i+Zoff)=((Ax*cos(2*Pi*x(i)/lx))+(Ay*cos(2*Pi*y(i)/ly)));
    m(i) = ((Z(i-1+Zoff) - Z(i+Zoff))./(r(i-1+roff)-r(i+roff)));
    newth(i) = atan(-m(i));
    G(i)=r(i+roff)-(t*sin(newth(i)));
    H(i)=Z(i+Zoff)+(t*cos(newth(i)))-t; %% THE compensate value of G and H
                                      % needed to calculate from the previous value of r(i) and Z(i)
end
T=delaunayTriangulation(x(:),y(:));
 trisurf(T.ConnectivityList,x(:),y(:),H(:),'EdgeColor','none','FaceAlpha',0.6);
 view(-80,75)
See Also
Categories
				Find more on Logical 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!





