0
$\begingroup$

I have a error message, but after I execute ndsolve cell is all right.What is the Reason for this error?

enter image description here

Clear["Global`*"]

{Xx, Yy, Zz} = 
NDSolveValue[{x'[t] == Sin[t], y'[t] == Cos[t], z'[t] == Sin[t], 
x[0] == 3, y[0] == 2, z[0] == \[Pi]/2}, {x, z, y}, {t, 0, 10}]; 

Animate[
Graphics3D[
GeometricTransformation[{Red, Sphere[], Blue, 
Cylinder[{{0, -1.25, 0}, {0, 0, 0}}, 1/2], Green, 
Cylinder[{{0, 0, 0}, {0, 1.25, 0}}, 1/2], Black, 
Cylinder[{{-3, 0, 0}, {3, 0, 0}}, 1/3]}, 
Composition[RotationTransform[Xx[t], {1, 0, 0}], 
RotationTransform[Yy[t], {0, 1, 0}], 
RotationTransform[Zz[t], {0, 0, 1}]]], Boxed -> False, 
PlotRange -> 3], {{t, 0, "Time"}, 0, 10}, SaveDefinitions -> True]
$\endgroup$
1
  • $\begingroup$ .............anybody ? $\endgroup$ Commented May 17, 2015 at 21:39

1 Answer 1

2
$\begingroup$

Please take a sheet of paper and draw a circle at the position {f1[t], f2[t]}. Do it now!

I guess you are asking how on earth you should know the exact coordinates on the paper without knowing what f1 and f2 is, right? Mathematica is basically asking the same question about your functions Xx, Yy, and Zz because it just cannot transform a graphical object without know the parameters of the transformation.

Once you evaluate the NDSolve line, your unknown functions are filled with real solutions and everything works.

To give you a simple example the reproduces your error message and probably makes the situation clear:

Graphics[GeometricTransformation[Circle[], 
  ShearingTransform[phi[t], {1, 0}, {0, 1}]]]

Mathematica graphics

It is not possible to shear the circle without knowing the angle...

$\endgroup$
1
  • $\begingroup$ And this is the end , there is no solution? Thx. for response. Math software with $162 and No solution. $\endgroup$ Commented May 18, 2015 at 6:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.