Info

Cette question est clôturée. Rouvrir pour modifier ou répondre.

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

1 vue (au cours des 30 derniers jours)
Moein
Moein le 30 Sep 2014
Clôturé : John D'Errico le 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

Réponses (0)

Cette question est clôturée.

Community Treasure Hunt

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

Start Hunting!

Translated by