What is wrong in code of diffusion equation problem?
11 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Attila Monteiro de Abreu
el 17 de Sept. de 2016
Respondida: Byron Castillo
el 22 de En. de 2021
a=4; b=4; na=20; nb=16; k=5; to=80;
clear T
x=linspace(0,a,na);
y=linspace(0,b,nb);
[X,Y]=meshgrid(x,y);
for i=1:nb
for j=1:na
T(i,j)=0;
For n=1:k
Ns=2*n-1;
T(i,j)=T(i,j)+sin(ns*pi*X(i,j)/a).*sinh(ns*pi*Y(i,j)/a)/(sinh(ns*pi*b/a)*ns);
End
T(i,j)=T(i,j)*4*To/pi;
End
End
Mesh(X,Y,T)
Xlabel(‘x (m)’);ylabel(‘y (m)’);zlabel(‘T(^oC)’)
0 comentarios
Respuesta aceptada
Walter Roberson
el 18 de Sept. de 2016
First of all you need to use for and end not For and End -- MATLAB is case sensitive.
Secondly, your line
Xlabel(‘x (m)’);ylabel(‘y (m)’);zlabel(‘T(^oC)’)
uses Unicode Character 'LEFT SINGLE QUOTATION MARK' (U+2018) and Unicode Character 'RIGHT SINGLE QUOTATION MARK' (U+2019) instead of apostrophe. U+2018 and U+2019 are also known as "smart quotes" because some editors automatically change apostrophes around words to these quotes because those quotes are used in publishing and writing text (but seldom in computer code.)
1 comentario
Attila Monteiro de Abreu
el 18 de Sept. de 2016
Editada: Attila Monteiro de Abreu
el 18 de Sept. de 2016
Más respuestas (1)
Byron Castillo
el 22 de En. de 2021
a=5; b=4; na=20; nb=16; k=5; T0=80;
clear T
x=linspace(0,a,na);
y=linspace(0,b,nb);
[X,Y]=meshgrid(x,y);
for i=1:nb
for j=1:na
T(i,j)=0;
for n=1:k
ns=2*n-1;
T(i,j)=T(i,j)+sin(ns*pi*X(i,j)/a).*sinh(ns*pi*Y(i,j)/
a)/(sinh(ns*pi*b/a)*ns);
end
T(i,j) = T(i,j)*4*T0/pi;
end
end
mesh(X,Y,T)
xlabel('x (m)'); ylabel('y (m)'); zlabel('T ( ^oC)')
0 comentarios
Ver también
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!