Help with plotting 3d function
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Hey!
I need help with exercise 2.b. This is my script that i have written
%% Exercise 2.b
clear
clf
clc
k=1;
L=6;
T=10
x=linspace(0,L,100); t=linspace(0,T,100);
for i=1 : length(x)
for j=1 : length(t)
u(i,j)=(8/(pi^2)).*(1./(n.^2)).*sin(n.*pi/2).*cos(n.*pi.*t(j)/6).*sin(n.*pi.*x(i)/6);
end
end
surf(t,x,u)
xlabel('t'); ylabel('x')
The problem that i need help with is how to put in the value of n. In the exercise it says that i should put n between 1->100 but i dont know how to do it....
Could someone pleas help me...?
1 Commento
Star Strider
il 9 Nov 2019
Note that n is the index with respect to , and your code does not appear to be doing that summation.
Risposte (1)
Praveen Iyyappan Valsala
il 9 Nov 2019
Most intuitive way is to add another loop to sum up function outputs of all n.
for i=1 : length(x)
for j=1 : length(t)
for n=1:100
u(i,j)=u(i,j)+(8/(pi^2)).*(1./(n.^2)).*sin(n.*pi/2).*cos(n.*pi.*t(j)/6).*sin(n.*pi.*x(i)/6);
end
end
end
Little more efficient way.
n=1:100;
for i=1 : length(x)
for j=1 : length(t)
u(i,j)=(8/(pi^2)).*sum((1./(n.^2)).*sin(n.*pi/2).*cos(n.*pi.*t(j)/6).*sin(n.*pi.*x(i)/6));
end
end
if you want even more cool code. learn about meshgrid function.
Vedere anche
Categorie
Scopri di più su Resizing and Reshaping Matrices in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!