Warning: Error updating FunctionSurface. The following error was reported evaluating the function in FunctionLine update: Unable to convert expression into double array.

I'm trying to plot solution to the 2D unsteady state heat conduction equation, but when I try to plot the it I get an error. Please help, here is the code.
syms n x y Ta Tb T
H = 0.4;
L = 0.3;
Ta = symsum(80*((1-(-1)^n)/(n*pi))*sinh(n*pi*(0.4-y)/0.3)*sin(n*pi*x/0.3)/sinh(n*pi*0.4/0.3),n,1,Inf);
Tb = symsum(20*((1-(-1)^n)/(n*pi))*sinh(n*pi*y/0.3)*sin(n*pi*x/0.3)/sinh(n*pi*0.4/0.3),n,1,Inf);
T = Ta+Tb;
fsurf(Ta, [0 0.3 0 0.4]);
Error: Warning: Error updating FunctionSurface.
The following error was reported evaluating the function in FunctionLine update: Unable to convert expression
into double array.
function looks something like this:
Thanks

 Akzeptierte Antwort

%f true
Ta = symsum(80*((1-(-1).^n)./(n*pi)).*sinh(n*pi*(0.4-y)./0.3).*sin(n*pi*x/0.3)./sinh(n*pi*0.4/0.3),n,1,Inf);
Tb = symsum(20*((1-(-1).^n)./(n*pi)).*sinh(n*pi*y/0.3).*sin(n*pi*x/0.3)./sinh(n*pi*0.4/0.3),n,1,Inf);
Try using element wise operator

3 Kommentare

syms n x y Ta Tb T
H = 0.4;
L = 0.3;
Ta(x,y) = symsum(80*((1-(-1)^n)./(n*pi)).*sinh(n*pi*(0.4-y)/0.3).*sin(n*pi*x/0.3)./sinh(n*pi*0.4/0.3),n,1,Inf);
Tb(x,y) = symsum(20*((1-(-1)^n)./(n*pi)).*sinh(n*pi*y/0.3).*sin(n*pi*x/0.3)./sinh(n*pi*0.4/0.3),n,1,Inf);
T = Ta+Tb;
fsurf(T, [0 10 0 10]);
Try above with right values for x, y and H, L
It works only for finite number of terms in summation.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by