I don't know where my code is wrong

조회 수: 2 (최근 30일)
서준 장
서준 장 2022년 5월 23일
댓글: Torsten 2022년 5월 24일
This is a code that I wrote. I'm new with matlab so I'm not used to all the grammers and stuffs.
It keeps says 'Invalid expression. When calling a function or i....etc' when I try to run the code. I don't really know how to fix it.
theta=linspace(0,pi/2,256);
k=linspace(-10,10,256);
for i=1:256;
for j=1:256;
syms f(x,y)
f(x,y) = piecewise( (x^2+y^2<=1 & y*tan(theta(i))+k(j)>0),y*tan(theta(i))+k(j),0)
g(x,y)=y*f(x,y);
volume=integral2(f,-1,1,-1,1);
xcm=0;
ycm=integral2(g,-1,1,-1,1);
zxm=volume/pi;
height=2*(ycm+zcm*tan(theta(i));
Invalid expression. When calling a function or indexing a variable, use parentheses. Otherwise, check for mismatched delimiters.
epsilon(length(epsilon)+1)=volume/(pi*height);
distance(length(distance)+1)=(ycm^2+(0.5*height-zcm)^2)^0.5
end
end
plot(epsilon, distance);
  댓글 수: 1
Jan
Jan 2022년 5월 23일
Whenever you mention an error in the corum, post a copy of the complete message.
I've edited your code and ran it to show, where the message occurs.

댓글을 달려면 로그인하십시오.

답변 (2개)

Voss
Voss 2022년 5월 23일
This line:
height=2*(ycm+zcm*tan(theta(i));
% 1 2 3 21
is missing a close parenthesis ) somewhere.

Torsten
Torsten 2022년 5월 23일
If
x = r, y = theta and z = z,
the volume of the cylinder below the plane
2x - y + 2z = 2
down to zmin can be calculated as
fun = @(x,y,z) x;
xmin = 0.0;
xmax = 1.0;
ymin = 0.0;
ymax = 2*pi;
zmin = -0.5; % e.g.
zmax = @(x,y) 1 + 0.5*x.*sin(y) - x.*cos(y);
Volume = integral3(fun,xmin,xmax,ymin,ymax,zmin,zmax)
  댓글 수: 4
서준 장
서준 장 2022년 5월 24일
yes yes this is excacly what I was looking for.
I was kind of confused.
I don't know how to thank you..
Thank you sooo much.. have a nice day, from a student from south korea
Torsten
Torsten 2022년 5월 24일
Greetings back from Germany.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 Read, Write, and Modify Image에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by