Array indices must be positive integers or logical values
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I'm trying to solve for the variable T, but MATLAB is returning
Array indices must be positive integers or logical values.
Error in untitled (line 23)
Temp = ((T - Te)./(Tb - Te) == ((cosh(B(L - x))) + (Hc)/((B.*k).* ...
Here is the code:
%Question 9
syms Temp solx T Tb Te L D P Ac k Hc B x;
%Variables
Tb = 200;
Te = 20;
L = 8 * .01;
D = 5 * .001;
%B variables
P = (pi * D);
Ac = (pi * D.^2)/4;
k = 200;
Hc = 200;
%B equation
B = (Hc * P)/(k * Ac);
%input variable
x = 2 * .01;
%Equation
Temp = ((T - Te)./(Tb - Te) == ((cosh(B(L - x))) + (Hc)/((B.*k).* ...
sinh(B(L - x))))./((cosh(B.*L) + (Hc))./((B*k).*sinh(B.*L))));
%solve
solx = solve(Temp, T);
How can I fix this error?
0 commentaires
Réponse acceptée
Plus de réponses (1)
the cyclist
le 15 Jan 2023
I'm guessing that when you wrote
B(L - x)
(in two places), you intended this multiplication:
B.*(L - x)
instead. The way your wrote it, you are trying to index the (L-x)th element of B (which is why you got the error).
Voir également
Catégories
En savoir plus sur Number Theory dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!