I do not understand the error I am obtaining. When I do not use the values of x,y,and z i get an answer, but when i use them i get an error.
    3 views (last 30 days)
  
       Show older comments
    
    clayton holmes
 on 5 Dec 2021
  
    
    
    
    
    Commented: Walter Roberson
      
      
 on 5 Dec 2021
            I do not understand the error I am obtaining. When I do not use the values of x,y,and z i get an answer, but when i use them i get an error.
syms x y z f g
%%%%%Variable Values%%%%%%%%%
n=0;
m=0;
k = (0.6569);
h = 11;
alpha = 2.57*10^(-7);
t=0;
L=(.051);
W=(.01);
H=(.005);
% x=(.051/4);
% y=(.01/2);
% z=(.005/4);
beta = ((n+0.5)*pi);
eta = ((m/.01)*pi);
mew = (117);
lamda = (((n+0.5)*pi))^2+(117)^2+(((m/.01)*pi))^2;
%%%%%%%%DETERMINATION OF CONSTANT C%%%%%%%%%%%%%%%%
f(z,y,x) = cos(beta*z)*sin(mew*y)*cos(eta*x)*sin(eta*x);
C_nmp_numerator = int(int(int(f,z,[0 (H/2)]),y,[0 W]),x,[0 (L/2)]);
g(z,y,x) = (cos(beta*z))^2*(sin(mew*y))^2*((((-k*mew)/h)*(cos(mew*x))^2*sin(mew*x))+((sin(mew*x))^2*cos(mew*x)));
C_nmp_denominator = int(int(int(g,z,[0 (H/2)]),y,[0 W]),x,[0 (L/2)]);
C_nmp = C_nmp_numerator/C_nmp_denominator;
%%%%%%%%DETERMINATION DEMENTIONLESS TEMP THETA%%%%%%%%%%%%%%%%
theta = (C_nmp * cos(beta*z)*sin(eta*y)*((-k*mew)/h)*cos(mew*x)+sin(mew*x))*exp(-(lamda*lamda)*alpha*t)
0 Comments
Accepted Answer
  Walter Roberson
      
      
 on 5 Dec 2021
        syms x y z f g
x y z are symbolic
% x=(.051/4);
% y=(.01/2);
% z=(.005/4);
If those had the comment marks removed, the resulting x y z would be numeric and not integers
f(z,y,x) = cos(beta*z)*sin(mew*y)*cos(eta*x)*sin(eta*x);
When x, y, z are symbolic, that statement defines a symbolic function that relates symbolic names x, y, z to a formula.
When x, y, z are numeric, that statement calculates a specific numeric value on the right hand side, and tries to assign to to array f indexed at locations 0.00125, 0.005, 0.01275 . But those are not positive integers, so the indexing fails.
C_nmp_numerator = int(int(int(f,z,[0 (H/2)]),y,[0 W]),x,[0 (L/2)]);
If you had managed to fix the above f(z,y,x) definition so that f became a numeric scalar, then you would not be able to int() a numeric scalar.
1 Comment
  Walter Roberson
      
      
 on 5 Dec 2021
				So what can you do? This:
syms x y z f g
%%%%%Variable Values%%%%%%%%%
n=0;
m=0;
k = (0.6569);
h = 11;
alpha = 2.57*10^(-7);
t=0;
L=(.051);
W=(.01);
H=(.005);
X=(.051/4);
Y=(.01/2);
Z=(.005/4);
beta = ((n+0.5)*pi);
eta = ((m/.01)*pi);
mew = (117);
lamda = (((n+0.5)*pi))^2+(117)^2+(((m/.01)*pi))^2;
%%%%%%%%DETERMINATION OF CONSTANT C%%%%%%%%%%%%%%%%
f(z,y,x) = cos(beta*z)*sin(mew*y)*cos(eta*x)*sin(eta*x);
C_nmp_numerator = int(int(int(f,z,[0 (H/2)]),y,[0 W]),x,[0 (L/2)]);
g(z,y,x) = (cos(beta*z))^2*(sin(mew*y))^2*((((-k*mew)/h)*(cos(mew*x))^2*sin(mew*x))+((sin(mew*x))^2*cos(mew*x)));
C_nmp_denominator = int(int(int(g,z,[0 (H/2)]),y,[0 W]),x,[0 (L/2)]);
C_nmp = C_nmp_numerator/C_nmp_denominator;
%%%%%%%%DETERMINATION DEMENTIONLESS TEMP THETA%%%%%%%%%%%%%%%%
theta = (C_nmp * cos(beta*z)*sin(eta*y)*((-k*mew)/h)*cos(mew*x)+sin(mew*x))*exp(-(lamda*lamda)*alpha*t)
vpa(subs(theta, {x, y, z}, {X, Y, Z}))
More Answers (0)
See Also
Categories
				Find more on Calculus in Help Center and File Exchange
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

