Maxima by Example, Ch. 6, Differential Calculus



Maxima by Example, Chap. 6, Differential Calculus, files have 
  been posted on my webpage: http://www.csulb.edu/~woollett  .
  
The files available are mbe6calc1.pdf, vcalc.mac, vcalcdem.mac (meant to
  be used via batch(vcalcdem) ), calc1code.txt, cylinder.mac,
  and sphere.mac (the latter two also meant to be batched in).
 
The organization of chapter six is:
 6.  Differential Calculus
  6.1  Differentiation of Explicit Functions
   6.1.1  diff
   6.1.2  Total Differential
   6.1.3 Controlling the Form of a Derivative
           with gradef(..)
  6.2 Critical and Inflection Points of a
     Curve Defined by an Explicit Function
   6.2.1 Example 1: A Polynomial
   6.2.2 Automating Derivative Plots with
                plotderiv(..)
   6.2.3 Example 2: Another Polynomial
   6.2.4 Example 3: x^(2/3), Singular Derivative,
                  Use of limit(..)
  6.3  Tangent and Normal of a Point of
       a Curve Defined by an Explicit Function
   6.3.1 Example 1:  x^2
   6.3.2  Example 2:  ln(x)
  6.4 Maxima and Minima of a Function
             of Two Variables
   6.4.1 Example 1: Minimize the Area of a
        Rectangular Box of Fixed Volume
   6.4.2 Example 2: Maximize the Cross
             Sectional Area of a Trough
  6.5 Tangent and Normal of a Point of
      a Curve Defined by an Implicit Function
   6.5.1 Tangent of a Point of a Curve Defined
                 by f(x,y) = 0
   6.5.2 Example 1: Tangent and Normal of a
                   Point of a Circle
   6.5.3 Example 2: Tangent and Normal of a
         Point of the Curve sin(2*x)*cos(y) = 0.5
   6.5.4 Example 4: Tangent and Normal of a
       Point of the Curve: x = sin(t), y = sin(2*t)
   6.5.5 Example 5: Polar Plot:
            x = r(t)*cos(t), y = r(t)*sin(t)
  6.6 Limit Examples Using Maxima's
          limit(..) Function
   6.6.1 Discontinuous Functions
   6.6.2  Indefinite Limits
  6.7  Taylor Series Expansions using taylor(..)
  6.8  Vector Calculus Calculations and
                 Derivations using vcalc.mac
  6.9  Maxima Derivation of Vector Calculus
           Formulas in Cylindrical Coordinates
   6.9.1  The Calculus Chain Rule in Maxima
   6.9.2  Laplacian  del^2 f(rho,phi,z)
   6.9.3  Gradient  del f(rho,phi,z)
   6.9.4  Divergence  del dot B(rho,phi,z)
   6.9.5  Curl  del cross B(rho,phi,z)
  6.10  Maxima Derivation of Vector Calculus
         Formulas in Spherical Polar Coordinates

Some comments about use of the package vcalc.mac
 to calculate the gradient,  divergence, curl, and Laplacian
 (of either a scalar or a 3-vector) in cartesian, cylindrical,
 and spherical polar coordinate systems.
 The batch file vcalcdem.mac takes the reader through
 examples of use.
  
An example of using this package would be "curl([r*cos(theta),0,0]);"
 (if the current coordinate system has already been changed to spherical
  polar) or "curl([r*cos(theta),0,0], s(r,theta,phi) );" if the
  coordinate system needs to be shifted to spherical polar from
  either cartesian (the starting default) or cylindrical.
  
The order of list vector components corresponds to the order of the
 arguments in "s(r,theta,phi)".  
  
The Maxima output is the list of the vector curl components in the
 current coordinate system, in this case "[0, 0, sin(theta)]" plus
 a reminder to the user of what the current coordinate system is
 and what symbols are currently being used for the independent 
 variables.

Thus the syntax is based on lists and is similar to (although better
 than ! ) Mathematica's syntax.
  
There is a separate function to change the current coordinate system.
  An example of its use would be:
    "setcoord( cy(rho,phi,z) );" to set the use of cylindrical
  coordinates (rho,phi,z), or "setcoord( cy(r,t,z) );" to set
  cylindrical coordinates (r,t,z).

The package vcalc.mac also contains the plotting function
  plotderiv(..) which is useful for "automating" the plotting
  of a function and its first n derivatives, and the function
  lcross(..) which can be used to find the cross product of 3-vectors
  represented by lists.