Mathematica Laboratory

Availability Mathematica for OSX and Windows can be obtained here. The current version is Mathematica 8.04 (but any 8.xx version will work). During installation you will be prompted for an Activation Key. Students Faculty/Staff. Creation of a Wolfram account ID is optional. You will have to provide your Harvard email address. Contact me (knill@math.harvard.edu) if you plan to use Mathematica on a linux system.
Getting the notebook
  • We had a Mathematica workshop on Thursday, November 17, from 8-9 PM in Hall D. Slides [PDF] and Flower built in Class [Mathematica]
  • The Mathematica laboratory is available here . Save this text file as "lab.nb" on your desktop and click on it. The assignment is at the end. The assignment is due Monday December 5.
Running mathematica Mathematica is started like any other application on Macintoshs or PC's. On Linux, just type "mathematica" to start the notebook version, or "math" to start the terminal version.
Some frequently used commands:
Plot[ x Sin[x],{x,-10,10}] Graph function of one variable
Plot3D[ Sin[x y],{x,-2,2},{y,-2,2}] Graph function of two variables
ParametricPlot[ {Cos[3 t],Sin[5 t]} ,{t,0,2Pi}] Plot planar curve
ParametricPlot3D[{Cos[t],Sin[t],t} ,{t,0,4Pi},AspectRatio->1] Plot space curve
ParametricPlot3D[{Cos[t] Sin[s],Sin[t] Sin[s],Cos[s]},{t,0,2Pi},{s,0,Pi}] Parametric Surface
SphericalPlot3D[(2+Sin[2 t] Sin[3 s]),{t,0,Pi},{s,0,2 Pi}] Spherical Plot
RevolutionPlot3D[{2 + Cos[t], t}, {t,0,2 Pi}] Revolution Plot
ContourPlot[Sin[x y],{x,-2,2},{y,-2,2} ] Contour lines (traces)
ContourPlot3D[x^2+2y^2-z^2,{x,-2,2},{y,-2,2},{z,-2,2}] Implicit surface
VectorPlot[{x-y,x+y},{x,-3,3},{y,-3,3}] Vectorfield plot
VectorPlot3D[{x-y,x+y,z},{x,-3,3},{y,-3,3},{z,0,1}] Vectorfield plot 3D
Integrate[x Sin[x], x] Integrate symbolically
Integrate[x y^2-z,{x,0,2},{y,0,x},{z,0,y}] 3D Integral
NIntegrate[Exp[-x^2],{x,0,10}] Integrate numerically
D[ Cos^5[x],x ] Differentiate symbolically
Series[Exp[x],{x,0,3} ] Taylor series
DSolve[ x''[t]==-x[t],x,t ] Solution to ODE
DSolve[{D[u[x,t],t]==D[u[x,t],x],u[x,0]==Sin[x]},u[x,t],{x,t}] Solution to PDE
Classify extrema:
ClassifyCriticalPoints[f_,{x_,y_}]:=Module[{X,P,H,g,d,S}, X={x,y};
P=Sort[Solve[Thread[D[f,#] & /@ X==0],X]]; H=Outer[D[f,#1,#2]&,X,X];g=H[[1,1]];d=Det[H];
S[d_,g_]:=If[d<0,"saddle",If[g>0,"minimum","maximum"]];
TableForm[{x,y,d,g,S[d,g],f} /.P,TableHeadings->{None,{x,y,"D","f_xx","Type","f"}}]]
ClassifyCriticalPoints[4 x y - x^3 y - x y^3,{x,y}]
Solve a Lagrange problem with 2 variables
F[x_,y_]:=2x^2+4 x y;     G[x_,y_]:=x^2 y;
Solve[{D[F[x,y],x]==L*D[G[x,y],x],D[F[x,y],y]==L*D[G[x,y],y],G[x,y]==1},{x,y,L}]
With 3 variables
F[x_,y_,z_]:=2x^2+4 x y+z;     G[x_,y_,z_]:=x^2 y + z;   c=1; 
Solve[{D[F[x,y,z],x]==L*D[G[x,y,z],x],
       D[F[x,y,z],y]==L*D[G[x,y,z],y],
       D[F[x,y,z],z]==L*D[G[x,y,z],z],
       G[x,y,z]==c},{x,y,z,L}]
With 3 variables and two constraints
F[x_,y_,z_]:=z;     G[x_,y_,z_]:=z^2-x^2-y^2;  H[x_,y_,z_]:=4x-3y+8z; c=0; d=5; 
Solve[{D[F[x,y,z],x]==L*D[G[x,y,z],x] + M D[H[x,y,z],x],
       D[F[x,y,z],y]==L*D[G[x,y,z],y] + M D[H[x,y,z],y],
       D[F[x,y,z],z]==L*D[G[x,y,z],z] + M D[H[x,y,z],z],
       G[x,y,z]==c,
       H[x,y,z]==d},
{x,y,z,L,M}]
Check that a function solves a PDE:
f[t_,x_]:=(x/t)*Sqrt[1/t]*Exp[-x^2/(4 t)]/(1+ Sqrt[1/t] Exp[-x^2/(4 t)]);
D[f[t,x],t]+f[t,x]*D[f[t,x],x]-D[f[t,x],{x,2}]
Simplify[%] Chop[%]