> restart;
>
A Word of Advice Before We Begin. In MTH 243 Maple Worksheets, we will be using a lot of graphics. As you probably know, graphics are memory-intensive. If your computer has less than 64MB RAM, you may, on occasion, have to close the original worksheet before doing your homework to avoid running out of memory. After closing the original worksheet, you should clear the memory. You can do this by using the restart command of Maple, or by closing and reopening Maple.
Reminder. Remember, also, that in order to interact with worksheets, you have to reexecute all the commands.
>
Graphs of Functions of Two Variables
As you know, visual representation of functions of two variables is not an easy matter. The graph of a given function of two variables, say
, is a surface in the (
)-space. The graph is the set of all points (
) such that
. In other words, the graph is the set of all points of the form (
). Drawing such graphs "by hand" can be very difficult, if not impossible. Maple can be of great help in this respect. As you will see, Maple can plot spectacular graphs and rotate them at a touch of the mouse.
>
In our first example we are dealing with a function of two variables
. First, we shall analyze the behavior of the function using cross-sections
,
. Cross-sections, as you know, usually provide a lot of insight into the behavior of a function of two variables. Next, we shall have Maple plot the graph of the function.
Example 1.
A drug is injected into muscle tissue. Typically, the concentration of the drug in the blood increases until it reaches its peak, and then begins to decrease as the body's metabolic processes remove the drug from the body. The concentration,
, in mg per 100 ml of blood, is a function of the amount of the drug injected,
, measured in 100's of mg, and the time,
, measured in hours since the injection was administered. That is
.
Suppose that for a certain drug a good mathematical model for the concentration following an injection is given by
for
,
,
.
That is, the formula is valid for initial injections between 100 and 400 mg, and for all times
.
(a) Plot and interpret in practical terms a few cross-sections with the amount of initial injection fixed, e.g.,
,
,
,
,
.
(b) Plot and interpret in practical terms a few cross-sections with time fixed, e.g.,
,
,
.
(c) Plot the graph of the function
in the (
)-space. Compare the graph with the cross-sections obtained above.
>
We begin by defining the function
. The syntax is similar to the syntax in the case of one variable.
> f:=(x,t)->t*exp(-t*(5-x));
Next, we plot cross-sections required in (a). Observe that for each of the cross-sections, say
, the value
of the initial injection is fixed. Hence, the corresponding cross-section is a function of one variable
only. Maple is perfectly aware of that. Indeed:
> f(1,t); f(1.5,t);
To plot the cross-sections, we use the plotting syntax that we learned last year. We have to guess the range for t. We are looking for a range after which the amount of the drug has decayed practically to 0 for all initial injections. Let's try t = 6 hours.
> plot([f(1,t),f(1.5,t),f(2,t),f(3,t),f(4,t)],t=0..6,color=[red,blue,green,cyan,yellow], labels=["time","concentration"]);
>
Note how the peak concentration, and the time at which the peak concentration occurs vary as you vary the initial dose x. The peak concentration is, of course, higher for larger initial injections, and the larger initial injection, the longer it takes for the drug to dissipate. Within the range of this model, the time of peak concentration is never much past 1 hour.
Let's look at the cross-sections (b), where the time is fixed at, respectively, t = 1,2,3 hours after an injection and the amount of initial injection,
, varies. The proper range for
, from 1 to 4, is clear.
> plot([f(x,1),f(x,2),f(x,3)],x=1..4,color=[red,blue,green],labels=["amount of injection","concentration"]);
>
Remember, the red graph shows concentration at time 1 for all possible initial injections x. The blue graph shows concentration at time 2 for all x, and so on. Not surprisingly, for any fixed moment in time the concentration is larger for larger amounts of the initial injection. The blue and green graphs, which show concentration at, respectively, 2 and 3 hours after an injection, are flatter than the red graph which shows concentration near its peak t =1.
We shall see now how all that information translates into properties of the graph of the function
of two variables. The syntax for plotting functions of two variables is similar to the syntax in the case of one variable. The basic command is
plot3d
. There are many options and attributes that can be added to a 3d plot. We shall learn them as we go along.
> plot3d(f(x,t),x=1..4,t=0..6,labels=["injection","time","concentration"],axes=normal);
>
The beauty of Maple's 3d plots is that you can rotate them by simply moving the mouse, thereby changing the viewpoint from which you are looking at a surface. Left-click at any point on the above graph. Now, move the mouse holding down the left button. The graph will rotate allowing you to see the surface from any viewpoint you want. This is a great way to understand the shape of a surface.
As you click on the graph, a black frame appears around it, as well as a menu on the toolbar. The menu allows you to change many attributes of the graph. Experiment with the menu on your own. In the worksheets, we shall use commands rather than menus to set the properties of plots.
Look carefully at the 3d graph above. Do you see the cross-sections with
fixed and with
fixed that we drew before as functions of one variable?
Since the
axis can't be seen behind the plot, let's change the type of axes to "framed" by typing
axes=framed
on the command line. If a graph is a little choppy, you can improve its appearance by using the grid option. The grid corresponds to the number of points at which Maple evaluates a given function. If you have a very fast-changing function, it may be important to choose a finer grid. The syntax is
grid=[ .. ,.. ].
The default grid is [15,15].
> plot3d(f(x,t),x=1..4,t=0..6,labels=["injection","time","conc"],axes=framed,grid=[40,40]);
>
The plot seems clearer now. With framed or boxed types of axes, Maple will not display names for the vertical axis that are too long. Hence, we have abbreviated the name to "conc".
To learn more about various options for 3d graphs, and there are plenty of them, use Maple's on-line help by typing ?plot3d,option .
>
Example 2. A string is pegged along the x-axis with the endpoints at x=0 and x=1. You pluck the string in a certain way so it vibrates according to the formula
,
where t is the time, in milliseconds, x the horizontal coordinate of a point on the string.
denotes the vertical displacement of the point x at time t. (We are assuming that each point vibrates only in the vertical direction.)
(a) Plot a few cross-sections with x fixed, say
,
,
. Explain their meaning in practical terms. Why one of the graphs doesn't seem to show at all?
(b) Plot a few cross-sections with t fixed, say
,
,
. Explain their meaning in practical terms.
(c) Plot the 3d graph of the function
for x between 0 and 1 and t between 0 and, say, 13. Rotate the graph to see clearly the cross-sections with x fixed and with t fixed.
>
We define the function
in Maple.
> v:=(x,t)->cos(t)*sin(2*Pi*x);
Let's plot the cross-sections with x fixed.
> plot([v(0.25,t),v(0.5,t),v(.75,t)],t=0..13,color=[blue,green,magenta],labels=["time","vert.displ."]);
>
The blue graph shows the motion of the point x=0.25 on the string during the first 13 milliseconds. We see the point going down from the initial displacement of 1 and then up again, then down, and so on. The magenta graph shows the vertical motion of the point x=0.75 on the string during the first 13 milliseconds. Why is the graph of the crosssection v(0.5,t) not showing? Look at the formula carefully. For x=0.5, v(0.5,t)=0 for all t. In other words, the middle point of the string does not vibrate at all. At this point we have a so-called node. The graph of v(0.5,t) doesn't show as it coincides with the t-axis. As we see, cross-sections with x fixed show the vertical vibration of each given point on the string.
>
Let's plot a few cross-sections with t fixed.
> plot([v(x,0),v(x,2),v(x,4)],x=0..1,color=[red,blue,green],labels=["point on string","vert.displ."]);
>
The red graph shows the veritcal position of each point on the string at the initial moment t=0. In other words, it shows the shape of the string at t=0. The blue graph shows the shape of the tring at time t=2, and so on. As we see, cross-sections with t fixed show the shape of the string at each given moment.
Next, let's have Maple plot a 3d graph of
.
> plot3d(v(x,t),x=0..1,t=0..13,axes=framed,labels=["point on string","time","disp"]);
>
Rotate the above graph. You obtain some beautiful views clearly showing the cross-sections with t fixed, which give the shape of the string at each moment, as well as cross-sections with x fixed illustrating vibrations of each given point. As you rotate the graph, the two numbers at the upper left corner of your screen next to the two Greek letters change. The numbers represent vertical and horizontal angles describing your viewpoint. We can lock in any given view in the command line using the orientation option and the two numbers corresponding to the view. (Otherwise, reexecuting the command will erase the results of rotation.) For example, when rotating the above graph we notice that two really good views correspond to orientation=[-75,100] and orientation=[-20,50]. We display the latter view below. In order to practice different options for 3d graphs, we display it in a different style than the graph above. The style option is a very important option for 3d graphs. All the graphs above were shown in the style=patch style. It is the default option in Maple Release 5 so we didn't have to specify it. The graph below is displayed in style=hidden , which shows the graph as a wireframe in such a way that parts of the surface that are obscured from view by the surface remain hidden. Another option that we use below is the color option.
> plot3d(v(x,t),x=0..1,t=0..13,axes=framed,orientation=[-20,50],style=hidden,color=blue,labels=["point","time","disp"]);
>
Remark. As you know, not all surfaces in the (x,y,z)-space are graphs of functions of two variables. A similar vertical line test applies as in the case of functions of one variable. Maple can plot surfaces defined by (x,y,z)-equations using the implicitplot3d command contained in the with(plots) package. We shall discuss it in the next worksheet.
Homework Problems
Note. Homework problems call for explanations. Make sure that your explanations are clear. Use complete sentences. Type all explanations and comments in Maple in your homework worksheet.
Problem 1.
A laterally insulated copper bar 80 cm long is located along the x axis with one end at x=0 and the other x=80. The ends of the bar are kept at constant temperature of
. Assume that the temperature
at any point x on the bar at time t, measured in minutes, is given by
.
(a) Plot a few cross-sections with t fixed in one coordinate system, e.g., u(x,0), u(x,5), u(x,10), u(x,20). Explain their meaning in practical terms. In particular, what does u(x,0) tell you?
(b) Plot a few cross-sections with x fixed in one coordinate system, e.g., u(10,t), u(30,t), u(60,t), for t between 0 and 30. Explain their meaning in practical terms.
(c) Plot the 3d graph of the function u(x,t) showing the temperature throughout the bar during the first 30 minutes.
(d) By looking at the graph in (c), can you see at what point of the bar the temperature is always the highest? Can you explain this in physical terms? What happens to the temperature of the bar in the long run?
Problem 2. Consider the function
.
(a) Draw the graph of the function. Choose a range for x and y not too large, so that the shape of the function near x = 0, y=0 is clearly visible and the graph is not too choppy, but large enough so that the oscillatory behavior of the function is evident. What symmetries does the graph have?
(b) Rotate the graph of
and lock in one interesting view with the orientation option.
>
MTH 243 Maple Worksheets written by B. Kaskosz and L. Pakula, Copyright 1999.
>