Info

This question is closed. Reopen it to edit or answer.

how can i create a silce for a 3d symbolic function?

1 view (last 30 days)
Moein
Moein on 30 Sep 2014
Closed: John D'Errico on 3 Oct 2014
i have a 3d function like T(x,y,z) and i want to crate a slice to display the values of my symbolic function my code:
a=3.488*(10^(-7)); h=[23.07,4.88,7.05,8.03]; k=0.589; L=[0.08,0.02,0.02]; s(1,1)=-h(1,1)/k; s(1,2)=h(1,2)/k; s(2,1)=-h(1,3)/k; s(2,2)=h(1,3)/k; s(3,1)=-h(1,4)/k; s(3,2)=h(1,4)/k; j=[19.08212187,49.67302555,85.13522527,122.5160906,160.7073843,199.2910912,238.0893181,277.0162268,316.0259510,355.0919439,394.1978410,433.3330307,472.4903414,511.6647576,550.8526686,590.0514105,629.2589754,668.4738218,707.6947468,746.9207983;33.91229065,164.3452559,317.9199894,473.7631943,630.2163376,786.9181186,943.7452021,1100.644179,1257.588197,1414.562287,1571.557450,1728.567950,1885.589959,2042.620825,2199.658651,2356.702048,2513.749971,2670.801623,2827.856382,2984.913758;36.09462635,165.3029101,318.4350792,474.1116890,630.4790881,787.1288357,943.9210348,1100.795015,1257.720247,1414.679708,1571.663156,1728.664065,1885.678077,2042.702174,2199.734196,2356.772562,2513.816082,2670.863847,2827.915152,2984.969437]; for m=1:3 for n=1:20 f(m,1,n)=(((j(m,n)^2)+(s(m,1)*s(m,2)))^2)+(j(m,n)^2)*((s(m,2)-s(m,1))^2); f(m,2,n)=L(1,m)*((j(m,n)^2)+(s(m,1)^2))*f(m,1,n); f(m,3,n)=(s(m,2)-s(m,1))*((j(m,n)^4)-((j(m,n)^2)*s(m,1)*(s(m,2)-s(m,1)))-((s(m,1)^3)*s(m,2))); end end for m=1:3 for n=1:20 A(m,n)=(2*f(m,1,n))/(f(m,2,n)+f(m,3,n)); end end for m=1:3 for n=1:20 B(m,n)=sin(j(m,n)*L(1,m))+(s(m,1)/j(m,n))*(cos(j(m,n)*L(1,m))-1); end end for m=1:3 for n=1:20 C(m,n)=A(m,n)*B(m,n); end end syms x y z t X=0; Y=0; Z=0; for n=1:20 X=C(1,n)*(exp((-a)*(j(1,n)^2)*18348.62385*t))*(j(1,n)*cos(j(1,n)*0.08*x)-s(1,1)*sin(j(1,n)*0.08*x))+X; Y=C(2,n)*(exp((-a)*(j(2,n)^2)*18348.62385*t))*(j(2,n)*cos(j(2,n)*0.08*y)-s(2,1)*sin(j(2,n)*0.08*y))+Y; Z=C(3,n)*(exp((-a)*(j(3,n)^2)*18348.62385*t))*(j(3,n)*cos(j(3,n)*0.08*z)-s(3,1)*sin(j(3,n)*0.08*z))+Z; end teta=1-(X*Y*Z); T=38*teta+295; V=subs(T,t,0.0218); xslice = [0,0.5,1]; yslice = 0; zslice = 0; slice(x,y,z,V,xslice,yslice,zslice) colormap hsv
but it errors:
??? Error using ==> slice at 85 V must be a 3-D array.
but V is a 3-D sym function!!!
help me if you can

Answers (0)

This question is closed.

Community Treasure Hunt

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

Start Hunting!