<< Graphics`

Time Dependent Solution to the Diffusion Equation in thePlane with a source at the origin.

concentration  = 
      Exp[-(x^2  +  y^2)/t]/((Sqrt[π]) t)

<< Graphics`Animation`

MoviePlot3D[
      concentration, {x, -4, 4}, {y, -4, 4}, {t, 0.01, 2.51,  .05}, 
      PlotPoints -> 40, PlotRange -> {0, 2}, 
      DisplayFunction -> Identity]

MovieContourPlot[
      concentration, {x, -2, 2}, {y, -2, 2}, {t, 0.01, 6.51,  .05}, 
      PlotPoints -> 40, PlotRange -> {0, 0.5}, 
      DisplayFunction -> Identity, 
      ColorFunction -> (Hue[1 -  0.75  #] &)]

Flux is a vector that points in the direction of the flow  and is a measure of how much is flowing per unit time

<< Graphics`PlotField`

flux  =  {-D[concentration, x], -D[concentration, 
            y]}

This is an example of a time - 
      dependent vector field (Overscript[j, ⟶]) (x, y, 
          t)

PlotVectorField[flux /. t -> 0.8, {x, -2, 2}, {y, -2, 2}, 
      PlotPoints -> 20, ScaleFunction -> (10.0  # &), 
      ColorFunction -> (Hue[1 - 0.75  #] &)]

PlotVectorField[flux /. t -> 0.8, {x, -2, 2}, {y, -2, 2}, 
      PlotPoints -> 20, 
      ScaleFunction -> (If[# <   .05, 0, (10.0  #)] &), 
      ColorFunction -> (Hue[1 - 0.75  #] &)]

To see animations,use the menu command to group all the graphics cells together, and then animate

Animate[
      PlotVectorField[flux, {x, -2, 2}, {y, -2, 2}, 
        PlotPoints -> 20, 
        ScaleFunction -> (If[# <  .05, 0, (100.0  #)] &), 
        ColorFunction -> (Hue[1 - 0.75  #] &)], {t, 0.01, 
        4.01,  .05}]

flux . {1, 0}

To see animations,use the menu command to group all the graphics cells together, and then animate

MovieContourPlot[
      flux . {1, 0}, {x, -2, 2}, {y, -2, 2}, {t, 0.01, 6.51,  .05}, 
      PlotPoints -> 40, PlotRange -> {0, 0.5}, 
      DisplayFunction -> Identity, 
      ColorFunction -> (Hue[1 - 0.75  #] &)]

To see animations,use the menu command to group all the graphics cells together, and then animate

MovieContourPlot[
      flux . {1, 0}, {x, -2, 2}, {y, -2, 2}, {t, 0.01, 6.51,  .05}, 
      PlotPoints -> 40, PlotRange -> {-0.5, 0.5}, 
      DisplayFunction -> Identity, 
      ColorFunction -> (Hue[1 - 0.75  #] &)]

flux {1, 0}

To see animations,use the menu command to group all the graphics cells together, and then animate

Animate[
      PlotVectorField[flux {1, 0}, {x, -2, 2}, {y, -2, 2}, 
        PlotPoints -> 20, 
        ScaleFunction -> (If[# <  .05, 0, (100.0  #)] &), 
        ColorFunction -> (Hue[1 - 0.75  #] &)], {t, 0.01, 
        4.01,  .05}]

Cross products:

crossab  = 
      Cross[{(Subscript[a, 1]), (Subscript[a, 2]), (Subscript[a, 3])}  , {(Subscript[b, 1]), (Subscript[b, 2]), (Subscript[b, 3])}]

detab =Det[(({{i, j, k}, {(Subscript[a, 1]), (Subscript[a, 2]), (Subscript[a, 3])}, {(Subscript[b, 1]), (Subscript[b, 2]), (Subscript[b, 3])}}))]

testcrossab = {Coefficient[detab, i],  Coefficient[detab, j], 
        Coefficient[detab, k]}

testcrossab  ==  crossab

Derivatives of Vectors

Clear[TimeVector]

TimeVector  =  {Cos[4  π t], Sin[8 π t],  
        Sin[2  π t]}

ParametricPlot3D[TimeVector, {t, 0, 1}]

DeltoidSpiral  =  {(2 Cos[π t]  +  
            Cos[2 π t]), (2 Sin[π t] -  
            Sin[2 π t]),  t/3}

pp  = 
      ParametricPlot3D[DeltoidSpiral, {t, -3, 3}, 
        AxesLabel -> {"x", "y", "z"}]

Show[{Graphics3D[Thickness[0.01]], Graphics3D[Hue[1]], pp}]

dDSt  =  D[DeltoidSpiral, t]

ppdt = 
      ParametricPlot3D[dDSt, {t, -3, 3}, 
        AxesLabel -> {"x", "y", "z"}]

Show[{Graphics3D[Thickness[0.01]], Graphics3D[Hue[0.3]], 
        ppdt}]

ppdtlim[tl_] := {Graphics3D[Thickness[0.01]], Graphics3D[Hue[0.3]], 
        ParametricPlot3D[0.33*dDSt, {t, 0, tl}, 
          AxesLabel -> {"x", "y", "z"}, 
          Compiled -> False, 
          DisplayFunction -> Identity]}

dtlim[tl_] := {Graphics3D[Thickness[0.01]], Graphics3D[Hue[1]], 
        ParametricPlot3D[DeltoidSpiral, {t, 0, tl}, 
          AxesLabel -> {"x", "y", "z"}, 
          Compiled -> False, 
          DisplayFunction -> Identity]}

To see animations,use the menu command to group all the graphics cells together, and then animate

ShowAnimation[Table[{ppdtlim[t], dtlim[t]}, {t,  .05, 3,  .05}], 
      PlotRange -> {0, 1.5}, PlotRegion -> {{0, 1}, {0, 1}}, 
      SphericalRegion -> True, Boxed -> False, 
      BoxRatios -> {1, 1, 1}, ViewCenter -> {0, 0, 0}, 
      AspectRatio -> 1, ViewPoint -> {1.2, -3, 2}]