Plot is zeroed out, how to fix this?
1 次查看(过去 30 天)
显示 更早的评论
Hello,
I wrote a code that should give set values and plot them. For some reason i keep getting zero values. Any thoughts?
Now i am faced with a different problem. My plot comes out zeroed and i have no clue why. Any thoughts?
clc;
clear;
N=25;
% --Grid--
gridX = linspace(0,1,N);
gridT = linspace(0,0.5,N);
[x,t] = meshgrid(gridX,gridT);
A = linspace(0,1,N);
u = zeros(N,N);
xint = linspace(0,1,N);
%--Computation of An Terms--
n=1;
while n <= N;
I(n) = -(4*sin((pi*n)/2))/(pi*(n^2 - 4));
A(n) = A(n) + I(n);
n = n + 1;
end
while n <= N
exponent = -(n.^2)*(pi.^2)*(t); % n replaces lamda
T = exp(exponent);
X = A(n).*sin(n.*pi.*x);
total = T*X;
u(n) = u(n) + total; %--Sum of all solutions--
n = n + 1;
end
%--Plot--
figure;
surfc(x,t,u)
title('Project 2')
xlabel('X')
ylabel('Time')
0 个评论
回答(1 个)
Mischa Kim
2014-2-11
Mike, after initializing u to zero you enter the first loop that increments n all the way to N. Which is why you never enter the second loop that is supposed to update u.
4 个评论
Mischa Kim
2014-2-11
Just looked at your code. Since I do not know what exactly you need to compute here are some thoughts:
- Change the corresponding command to: u = u + total. That way at least the dimensions work out.
- You are generating some huge numbers along the way so there are probably issues with some of the equations.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!