The van der Pol System

Part 1. Background: A Nonlinear Oscillator

Enter the following command to load the necessary package.

<< Graphics`PlotField`

Answer to the questions in Part 1:

Part 2. Phase Portraits

The following lines set the value of the parameter a, define the differential equations, set the initial conditions, and draw the phase portrait.  Since I is a reserved symbol in Mathematica, we use K for the current function.  Complete the differential equations, and study the phase plane plot.  Add enough initial conditions to get a complete phase portrait.  You will need to enlarge the picture to see enough detail.

a  =  0.5;
de1  =  K'[t] ==  ?;
de2  =  V'[t]  ==  ?;

solution1  =  
        NDSolve[{de1,  de2,  K[0] == -2, V[0] == 2}, {K, V},  {t, 0, 
            20}];
plot1  =  
        ParametricPlot[Evaluate[{K[t], V[t]} /. solution1], {t, 0, 20},  
          PlotStyle -> {RGBColor[1, 0, 0], Thickness[0.02]}, 
          DisplayFunction -> Identity];
solution2  =  
        NDSolve[{de1,  de2,  K[0] == 2, V[0] == 2}, {K, V},  {t, 0, 
            20}];
plot2  =  
        ParametricPlot[Evaluate[{K[t], V[t]} /. solution2], {t, 0, 20},  
          PlotStyle -> {RGBColor[0, 0, 1], Thickness[0.02]}, 
          DisplayFunction -> Identity];

field  =  
        PlotVectorField[{1,  
            K/(-K*(K^2 - a) - V)},  {K, -3, 3}, {V, -3, 
            3},  ScaleFunction -> (1 &),  HeadWidth -> 0, 
          PlotPoints -> 20, 
          DisplayFunction -> Identity];

Show[plot1, plot2, field, PlotLabel -> "Van der Pol System", 
        AxesLabel -> {"K", "V"}, 
        DisplayFunction -> $DisplayFunction];

The following commands create a plot of the current (blue) and voltage (green) functions.

Kplot  =  
        Plot[Evaluate[K[t] /. solution2[[1]][[1]]], {t, 0, 20}, 
          PlotStyle -> RGBColor[0, 0, 1],  
          DisplayFunction -> Identity];
Vplot  =  
        Plot[Evaluate[V[t] /. solution2[[1]][[2]]], {t, 0, 20}, 
          PlotStyle -> RGBColor[0, 1, 0], 
          DisplayFunction -> Identity];
Show[Kplot, Vplot, PlotLabel -> "Current and Voltage",  
        AxesLabel -> {"t", "K,V"}, 
        DisplayFunction -> $DisplayFunction];

Recompute as necessary, and answer the questions in Part 2 in the text cell below.

Answer:

Part 3. Other Nonlinear Systems (Optional)

Copy and modify commands as necessary, and answer the questions in Part 3 in the text cell below:

Answer:

Part 4. Summary

Answer to the questions in part 4: