Hi, I'm trying to execute the following code:
%------------ % Define mesh grid
[x, t] = meshgrid([0:.5:10],[1:.5:10]);
% n is the number of iterations of a Fourier sum
n = 100;
i = 1;
% q is the total of all the summed z's
q = 0;
while i < (n+1)
z = ((2*pi)/(3*i^3))*(1-cos(i*pi))*sin(i.*x)*(exp(-3*(i^2).*t) + 2*cosh(2*(i^2).*t));
q = z + q;
i = i + 1;
end
% plot of q v.s. x and t% surf(x,t,q) mesh(x,t,q) contour(x,t,q)
And I keep getting the error ???=====> mtimes which I'm told is because matrix dimensions don't agree. Can't see where else I need to put '.'. Could anybody help?
Thanks

 채택된 답변

Matt Fig
Matt Fig 2011년 3월 25일

0 개 추천

You were close, only missing one dot.
z = ((2*pi)./(3*i^3))*(1-cos(i*pi))*sin(i.*x).*(exp(-3*(i^2).*t) + 2*cosh(2*(i^2).*t));

추가 답변 (1개)

Sean de Wolski
Sean de Wolski 2011년 3월 25일

1 개 추천

vectorize('z = ((2*pi)/(3*i^3))*(1-cos(i*pi))*sin(i.*x)*(exp(-3*(i^2).*t) + 2*cosh(2*(i^2).*t));')
ans =
z = ((2.*pi)./(3.*i.^3)).*(1-cos(i.*pi)).*sin(i.*x).*(exp(-3.*(i.^2).*t) + 2.*cosh(2.*(i.^2).*t));

댓글 수: 1

Matt Fig
Matt Fig 2011년 3월 25일
+1 Now that's an easy way to avoid this type of problem!

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

카테고리

도움말 센터 및 File Exchange에서 Resizing and Reshaping Matrices에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by