Take the 2-minute tour ×
Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

I have a polar differential equation (this is the reduced variant) as:

$$r' = 0, \theta' = 1$$

I figured out (from previous answers) that I can nicely convert this to Cartesian and use StreamPlot as:

  field = {0, 1};

  TransformedField["Polar" -> "Cartesian", field, {r, \[Theta]} -> {x, y}]

  StreamPlot[{-(y/Sqrt[x^2+y^2]),x/Sqrt[x^2+y^2]},{x,-2,2},{y,-2,2},
   StreamColorFunction->"Rainbow"]

This generates the correct phase portrait and worked great. I was even able to animate it.

My question now is how can this field (polar DEQ) be solved as a polar DEQ? Can't this be solved as such and plotted using polar plots to arrive at the same phase portrait?

Am I missing something? I tried NDSolve without luck, so think I must be missing something basic here. Is something special required for polar type DEQs in Mathematica?

share|improve this question
add comment

1 Answer 1

up vote 4 down vote accepted

If your aim is just to solve this specific system:

{rd, an} = {r[t], s[t]} /. 
      First@DSolve[{r'[t] == 0, s'[t] == 1, r[0] == radius, 
         s[0] == 0}, {r[t], s[t]}, t]
f[u_, tm_] := 
 CoordinateTransform["Polar" -> "Cartesian", {rd, an}] /. {radius -> u,t->tm}
 ParametricPlot[Evaluate[Table[f[j, t], {j, Range[4]}]], {t, 0, 2 Pi}]

where $\theta$ is represented by s and I have assumed $\theta(0)=0$ for simplicity.

Animating (uniform circular motion):

enter image description here

share|improve this answer
    
Excellent! How did you do the animated uniform motion graphic? –  Amzoti Apr 4 at 6:21
    
@Amzoti I exported the following as an animated gif Table[ParametricPlot[Evaluate[Table[f[j, t], {j, Range[4]}]], {t, 0, 2 Pi},Epilog->(Point[{f[#,k]]&/@Range[4])],{k,Range[0,2Pi,0.1]}] This takes some processing time. You could randomise the starting position etc. –  ubpdqn Apr 4 at 7:23
    
Is there a syntax issue with the commented Table command? Regards –  Amzoti Apr 4 at 12:53
    
Yes. Sorry. correction: Table[ParametricPlot[Evaluate[Table[f[j, t], {j, Range[4]}]], {t, 0, 2 Pi},Epilog->(Point[{f[#,k]}]&/@Range[4])],{k,Range[0,2Pi,0.1]}] –  ubpdqn Apr 4 at 16:30
    
Is it possible to use something like PolarPlot so no conversion to Cartesian is necessary? –  Amzoti Apr 5 at 3:25
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

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