MHB No Animation: Plotting Polar Function $p(r,\theta)$

AI Thread Summary
The discussion revolves around issues with animating a polar function defined as p(r, θ) in Mathematica. The original code does not produce errors but fails to animate when executed. Suggestions from users include ensuring that the function u is defined with two variables and using the correct syntax for the Animate function. Alternative plotting methods, such as Plot3D and Manipulate, are also recommended to visualize the function effectively. The key takeaway is the importance of correctly defining the function for successful animation in Mathematica.
Dustinsfl
Messages
2,217
Reaction score
5
$$
p(r,\theta) = \frac{1}{2\pi}\sum_{n = -\infty}^{\infty}r^{|n|}e^{in\theta} = \frac{1}{2\pi}\left[\frac{1 - r^2}{1 - 2r\cos\theta + r^2}\right].
$$
So I produced the graph but it won't animate.

Code:
MyR = Table[r, {r, 0, 1, .1}];

u[\[Theta]_] = 1/(2*Pi)*((1 - r^2)/(1 - 2*r*Cos[\[Theta]] + r^2));
Plot[u[MyR, \[Theta]], {\[Theta], -Pi/2, Pi/2}, 
 PlotRange -> {0, 3.25}, PlotStyle -> {Red}, AspectRatio -> 2/3]
View attachment 378

Code:
Animate[Plot[u[\[Theta]], {\[Theta], -Pi/2, Pi/2}, 
  PlotRange -> {0, 3.25}, GridLines -> Automatic, Frame -> True, 
  PlotStyle -> {Thick, Red}], {r, 0, 1, 0.1}, 
 AnimationRunning -> False]
This code doesn't produce any errors or Mathematica complaining but nothing happens when I hit play.
 

Attachments

  • Poissons kernel.jpg
    Poissons kernel.jpg
    8.3 KB · Views: 93
Last edited:
Physics news on Phys.org
dwsmith said:
$$
p(r,\theta) = \frac{1}{2\pi}\sum_{n = -\infty}^{\infty}r^{|n|}e^{in\theta} = \frac{1}{2\pi}\left[\frac{1 - r^2}{1 - 2r\cos\theta + r^2}\right].
$$
So I produced the graph but it won't animate.

Code:
MyR = Table[r, {r, 0, 1, .1}];

u[\[Theta]_] = 1/(2*Pi)*((1 - r^2)/(1 - 2*r*Cos[\[Theta]] + r^2));
Plot[u[MyR, \[Theta]], {\[Theta], -Pi/2, Pi/2}, 
 PlotRange -> {0, 3.25}, PlotStyle -> {Red}, AspectRatio -> 2/3]
View attachment 378

Code:
Animate[Plot[u[\[Theta]], {\[Theta], -Pi/2, Pi/2}, 
  PlotRange -> {0, 3.25}, GridLines -> Automatic, Frame -> True, 
  PlotStyle -> {Thick, Red}], {r, 0, 1, 0.1}, 
 AnimationRunning -> False]
This code doesn't produce any errors or Mathematica complaining but nothing happens when I hit play.

Hi dwsmith, :)

I don't use Mathematica but seeing this question go unanswered I posted this in the Google Mathematica group. Here are the replies.

Kind Regards,
Sudharaka.Reply 1:

myR = Table[r, {r, 0, 1, .1}];

u[r_, \[Theta]_] = 1/(2*Pi)*((1 - r^2)/
(1 - 2*r*Cos[\[Theta]] + r^2));

Plot[Evaluate[
Tooltip[u[#, \[Theta]], #] & /@ myR],
{\[Theta], -Pi/2, Pi/2},
PlotRange -> {0, 3.25},
AspectRatio -> 2/3,
Frame -> True,
Axes -> False]

Plot3D[u[r, \[Theta]],
{\[Theta], -Pi/2, Pi/2},
{r, 0, 1},
PlotRange -> {0, 4},
AspectRatio -> 2/3,
ClippingStyle -> None]

Animate[
Plot[u[r, \[Theta]], {\[Theta], -Pi/2, Pi/2},
PlotRange -> {0, 3.25},
GridLines -> Automatic,
Frame -> True,
PlotStyle -> {Thick, Red}],
{r, 0, 1, 0.1},
AnimationRunning -> False]

Manipulate[
Plot[u[r, \[Theta]], {\[Theta], -Pi/2, Pi/2},
PlotRange -> {0, 3.25},
GridLines -> Automatic,
Frame -> True,
PlotStyle -> {Thick, Red}],
{r, 0, 1, 0.01, Appearance -> "Labeled"}]


Reply 2:


You need to define u as a function of two variables.

u[r_,theta_]= ...
as in

MyR = Table[r, {r, 0, 1, .1}];

u[r_ ,\[Theta]_] = 1/(2*Pi)*((1 - r^2)/(1 - 2*r*Cos[\[Theta]] + r^2));
Plot[u[MyR, \[Theta]], {\[Theta], -Pi/2, Pi/2},
PlotRange -> {0, 3.25}, PlotStyle -> {Red}, AspectRatio -> 2/3]Then

Animate[Plot[u[r,\[Theta]], {\[Theta], -Pi/2, Pi/2}, PlotRange -> {0, 3.25}, GridLines -> Automatic, Frame -> True, PlotStyle -> {Thick, Red}], {r, 0, 1, 0.1}, AnimationRunning -> False]
 

Similar threads

Replies
1
Views
2K
Replies
2
Views
2K
Replies
1
Views
3K
Replies
1
Views
2K
Replies
3
Views
2K
Back
Top