Contact
CoCalc Logo Icon
StoreFeaturesDocsShareSupport News AboutSign UpSign In
sagemanifolds
GitHub Repository: sagemanifolds/IntroToManifolds
Path: blob/main/19Manifold_Lie_Derivative.ipynb
Views: 80
Kernel: SageMath 9.6

19. Lie derivative

This notebook is part of the Introduction to manifolds in SageMath by Andrzej Chrzeszczyk (Jan Kochanowski University of Kielce, Poland).

version()
'SageMath version 9.6, Release Date: 2022-05-15'

Lie derivative of functions


If ϕϕ is a one-parameter group of transformations on MM (notebook 17), then the map ϕt:MMϕ_t : M → M, defined by ϕt(x)=ϕ(x,t)ϕ_t (x) = ϕ(x, t), is smooth and therefore for fC(M),  f ∈ C^∞ (M),\ \ ϕtf=fϕt ϕ_t^*f = f\circ \phi_t\ also belongs to C(M)C^∞ (M).

If XX is the infinitesimal generator of ϕϕ (notebook 17), then the Lie derivative of ff with respect to XX is defined by

LXf=limt0ϕtfft=ddt(ϕtf)t=0.\begin{equation} \mathcal{L}_Xf=\lim_{t\to 0}\frac{\phi_t^*f-f}{t} =\frac{d}{dt}(\phi_t^*f)\Big|_{t=0}. \tag{19.1} \end{equation}

Example 19.1

Compute   LXf  \ \ \mathcal{L}_Xf\ \ for f(x)=x2cosy   f(x)=x^2\cos y \ \ and   X=yx+xy,\ \ X=-y\frac{\partial}{\partial x}+x\frac{\partial}{\partial y}, using SageMath Manifolds.

%display latex M = Manifold(2, 'M') # manifold M c_xy.<x,y> = M.chart() # chart on M f = M.scalar_field(x^2*cos(y)) # scalar function f on M X = M.vector_field(name='X') # vector field X on M X[:] = (-y, x) # components of X f.lie_derivative(X).expr() # Lie derivative L_X(f)

x3sin(y)2xycos(y)\displaystyle -x^{3} \sin\left(y\right) - 2 \, x y \cos\left(y\right)


Lie derivative of ff with respect to XX is the value of  Xf\ Xf


Since the curve ϕxϕ_x given by ϕx(t)=ϕ(x,t)ϕ_x (t) = ϕ(x, t) is the integral curve of XX that starts at xx we have

limt0ϕtfft(x)=limt0f(ϕt(x))f(x)t=limt0f(ϕ(x,t))f(x)t\lim_{t\to 0}\frac{\phi_t^*f-f}{t}(x)= \lim_{t\to 0}\frac{f(\phi_t(x))-f(x)}{t} =\lim_{t\to 0}\frac{f(\phi(x,t))-f(x)}{t}=limt0f(ϕx(t))f(ϕx(0))t=(ϕx)0(f)=Xx(f)=(Xf)(x).=\lim_{t\to 0}\frac{f(\phi_x(t))-f(\phi_x(0))}{t}\\ =(ϕ_x)'_0 ( f ) = X_x ( f )=(Xf)(x).

We have checked that LXf=Xf.\begin{equation} \mathcal{L}_Xf=Xf. \tag{19.2} \end{equation}

Thus we can compute   LXf  \ \ \mathcal{L}_Xf\ \ without any knowledge on the integral curves of XX.


Example 19.2

Check the result of the previous example using (19.2).


We have

  X(f)=(yx+xy)(x2cosy)  =y(2x)cosy+x(x2)(siny)=x3siny2xycosy.\ \ X(f)=(-y\frac{\partial}{\partial x}+x\frac{\partial}{\partial y})(x^2\cos y )\ \ =-y(2x)\cos y +x(x^2)(-\sin y)\\=-x^3\sin y-2xy\cos y.
# continuation X(f).expr() # value of the vector field X on f

x3sin(y)2xycos(y)\displaystyle -x^{3} \sin\left(y\right) - 2 \, x y \cos\left(y\right)


Example 19.3

Check that SageMath lie_derivative method applied to functions coincides with application of (19.2).

%display latex N = 2 # dimension of manifold M M = Manifold(N, 'M') # manifold M c_x = M.chart(' '.join(['x'+str(i)+':x^{'+str(i)+'}' for i in range(N)])) # chart on M x0, x1 = c_x[:] # coordinates x^0, x^1 of chart c_x as the Python variables x0, x1 X = M.vector_field(name='X') # vector field X Xf=[M.scalar_field(function('X'+str(i), # list of components latex_name='X'+'^'+str(i))(x0, x1)) for i in range(N)] X[:] = Xf # define all components of X X.disp()

X=X0(x0,x1)x0+X1(x0,x1)x1\displaystyle X = X^0\left({x^{0}}, {x^{1}}\right) \frac{\partial}{\partial {x^{0}} } + X^1\left({x^{0}}, {x^{1}}\right) \frac{\partial}{\partial {x^{1}} }

f = M.scalar_field(function('f')(x0, x1)) # scalar function on M f.disp()

MR(x0,x1)f(x0,x1)\displaystyle \begin{array}{llcl} & M & \longrightarrow & \mathbb{R} \\ & \left({x^{0}}, {x^{1}}\right) & \longmapsto & f\left({x^{0}}, {x^{1}}\right) \end{array}

f.lie_derivative(X).expr() # Lie derivative of f w.r.t. X

X0(x0,x1)x0f(x0,x1)+X1(x0,x1)x1f(x0,x1)\displaystyle X^0\left({x^{0}}, {x^{1}}\right) \frac{\partial}{\partial {x^{0}}}f\left({x^{0}}, {x^{1}}\right) + X^1\left({x^{0}}, {x^{1}}\right) \frac{\partial}{\partial {x^{1}}}f\left({x^{0}}, {x^{1}}\right)


Commutator of Lie derivatives of functions


From (19.2) it follows LX(LYf)LY(LXf)=XYfYXf=[X,Y]f=L[X,Y]f,\mathcal{L}_X (\mathcal{L}_Y f ) − \mathcal{L}_Y (\mathcal{L}_X f ) = XY f − YX f = [X, Y] f = \mathcal{L}_{[X,Y]} f, i.e. LX(LYf)LY(LXf)=L[X,Y]f.\begin{equation} \mathcal{L}_X (\mathcal{L}_Y f ) − \mathcal{L}_Y (\mathcal{L}_X f )= \mathcal{L}_{[X,Y]} f. \tag{19.3} \end{equation}


Example 19.4

Check in SageMath Manifolds that (19.3) holds for 2-dimensional manifolds.

# continuation Y = M.vector_field(name='Y') # vector field Y Yf = [M.scalar_field(function('Y'+str(i), # list of components latex_name='Y'+'^'+str(i))(x0, x1)) for i in range(N)] Y[:] = Yf # define all components L_XL_Yf = (f.lie_derivative(Y)).lie_derivative(X) # L_X(L_Y(f)) L_YL_Xf = (f.lie_derivative(X)).lie_derivative(Y) # L_Y(L_X(f)) L_bracket_f = f.lie_derivative(X.bracket(Y)) # L_{lie_brack(X,Y)}(f) L_XL_Yf - L_YL_Xf == L_bracket_f # check (19.3)

True\displaystyle \mathrm{True}



Let ψ:MNψ : M → N be a smooth map between two smooth manifolds. If XX(M)X ∈ \mathfrak{X}(M) and YX(N).Y ∈ \mathfrak{X}(N ).

XX and YY are ψψ-related if Yψ(p)=dψpXp,\begin{equation} Y_{ψ(p)} = dψ_pX_p , \tag{19.4} \end{equation} for pM.p ∈ M.

If fC(N)f ∈ C^∞ (N ), then from (19.4) and (8.8) it follows

(Yf)(ψ(p))=Yψ(p)(f)=dψpXp(f)=Xp(fψ)=(X(fψ))(p),(Y f ) (ψ( p)) = Y_{ψ( p)} ( f ) = dψ_p X_p ( f ) = X_p ( f ◦ ψ) = (X( f ◦ ψ) )( p),

for pM,p ∈ M, i.e., (Yf)ψ=X(fψ),\begin{equation} (Y f ) ◦ ψ = X( f ◦ ψ), \tag{19.5} \end{equation}
for fC(N).f ∈ C^∞ (N). An equivalent formulation is

ψ(Yf)=X(ψf),\begin{equation} \psi^*(Y f ) = X( \psi^*f), \tag{19.6} \end{equation}

for fC(N).f ∈ C^∞ (N).


Pullback of a vector field and its properties


Let MM and NN be smooth manifolds, ψ:MNψ : M → N be a diffeomorphism and XX be a vector field on NN. The pullback of XX under ψ\psi is the vector field on MM defined by

(ψX)x=d(ψ1)ψ(x)Xψ(x).\begin{equation} (\psi^∗ X)_x = d(ψ^{-1 })_{ψ(x)} X_{ ψ(x)}. \tag{19.7} \end{equation}

Note that (19.7) implies that

Xψ(x)=dψx(ψX)x,\begin{equation} X_{\psi(x)}=d\psi_x(\psi^*X)_x, \tag{19.7'} \end{equation}

which means that ψXψ^∗ X and XX are ψψ-related. If we replace in (19.6) YY by XX and XX by ψX\psi^*X we obtain

ψ(Xf)=(ψX)(ψf),\begin{equation} \psi^*(X f ) = (\psi^*X)( \psi^*f), \tag{19.8} \end{equation}

for fC(N).f ∈ C^∞ (N ).

We have also ψ(fX)=(ψf)(ψX),ψ^∗ ( f X) = (ψ^∗ f )(ψ^∗ X),

ψ(aX+bY)=aψX+bψY,ψ^∗ (aX + bY) = aψ^∗X + bψ^∗ Y,

for X,YX(N),fC(N),X, Y ∈ \mathfrak{X}(N ), f ∈ C^∞ (N ), and a,bR.a, b ∈ R.

In fact by (19.7)

[ψ(fX)]x=d(ψ1)ψ(x)(fX)ψ(x)=d(ψ1)ψ(x)(f(ψ(x))Xψ(x))=f(ψ(x))d(ψ1)ψ(x)Xψ(x)=(ψf)(x)(ψX)x=[(ψf)(ψX)]x,[ψ^∗( f X)]_x = d(ψ^{−1} )_{ψ(x)} ( f X)_{ψ(x)} = d(ψ^{−1} )_{ψ(x)} (f (ψ(x)) X_{ψ(x)})\\ = f (ψ(x)) d(ψ^{−1} )_{ψ(x)} X_{ψ(x)} = (ψ^∗ f )(x) (ψ^∗ X)_x = [(ψ^∗ f )(ψ^∗ X)]_x,

and

[ψ(aX+bY)]x=d(ψ1)ψ(x)(aX+bY)ψ(x)=d(ψ1)ψ(x)(aXψ(x)+bYψ(x))=ad(ψ1)ψ(x)Xψ(x)+bd(ψ1)ψ(x)Yψ(x)=[aψX+bψY]x.[ψ^∗ (aX + bY)]_x = d(ψ^{−1})_{ψ(x)} (aX + bY)_{ψ(x)} = d(ψ^{−1} )_{ψ(x)} (aX_{ψ(x)} + bY_{ψ(x)} ) = ad(ψ^{ −1} )_{ψ(x)} X_{ψ(x)} + bd(ψ^{−1} )_{ψ(x)} Y_{ψ(x)} = [aψ^∗ X + bψ^∗ Y]_x.

If ψ:MNψ : M → N is a diffeomorphism of smooth manifolds MM, NN and χχ is a one-parameter group of transformations on NN whose infinitesimal generator is YY, then ϕt=ψ1χtψϕ_t = ψ^{−1} ◦ χ_t ◦ ψ is a one-parameter group of transformations on MM whose infinitesimal generator is ψYψ^∗ Y.

This relation follows from

ϕsϕt=(ψ1χsψ)(ψ1χtψ)=ψ1χsχtψ=ψ1χs+tψ=ϕs+t.ϕ_s ◦ϕ_t = (ψ^{−1} ◦ χ_s ◦ ψ) ◦ (ψ^{−1} ◦ χ_t ◦ ψ) \\ = ψ^{−1} ◦ χ_s ◦ χ_t ◦ ψ = ψ^{−1} ◦ χ_{s+t} ◦ ψ = ϕ_{s+t} .

If ψ1:M1M2ψ_1 : M_1 → M_2 and ψ2:M2M3ψ_2 : M_2 → M_3 are diffeomorphisms, then (ψ2ψ1)X=(ψ1ψ2)X,(ψ_2 ◦ ψ_1 )^∗ X = (ψ_1^∗ ◦ ψ_2^∗ )X, for XX(M3)X ∈ \mathfrak{X}(M_3 ).

The last equality is true, since

[(ψ2ψ1)X]x=d((ψ2ψ1)1)(ψ2ψ1)(x)X(ψ2ψ1)(x)=(d(ψ11)ψ1(x)d(ψ21)ψ2(ψ1(x)))Xψ2(ψ1(x))=d(ψ11)ψ1(x)(ψ2X)ψ1(x)=[ψ1(ψ2X)]x.[(ψ_2 ◦ ψ_1 )^∗ X]_x = d((ψ_2 ◦ ψ_1 )^{−1}) _{ (ψ_2 ◦ψ_1 )(x)}X_{( ψ_2 \circ ψ_1 )(x)}\\ = (d(ψ_1^{−1})_{ψ_1 (x)}\circ d(ψ_2^{-1})_{\psi_2(\psi_1(x))}) X_{\psi_2(ψ_1 (x))}\\ =d(\psi_1^{-1})_{\psi_1(x)}(\psi_2^*X)_{\psi_1(x)} = [ψ_1^∗ (ψ_2^∗ X)]_x .

Lie derivative of a vector field


If ϕϕ is a one-parameter group of transformations on a manifold MM and XX its infinitesimal generator, then for any vector field YY on MM, the Lie derivative of YY with respect to XX is defined by (LXY)x=limt0(ϕtY)xYxt=ddt(ϕtY)xt=0.\begin{equation} (\mathcal{L}_XY)_x=\lim_{t→0}\frac{(\phi^*_tY)_x-Y_x}{t} =\frac{d}{dt}(\phi_t^*Y)_x\Big|_{t=0}. \tag{9.11} \end{equation}


Lie derivatives of vector fields are equal to Lie brackets


If X,YX(M)X, Y ∈ \mathfrak{X}(M), then LXY=[X,Y].\begin{equation} \mathcal{L}_XY=[X,Y]. \tag{19.12} \end{equation}

To prove this formula, we will check first a form of Leibniz rule. If ϕ \phi is a one-parameter group of transformations on MM whose infinitesimal generator is XX, then

LX(Yf)=limt0ϕt(Yf)Yft=limt0(ϕtY)(ϕtf)Yft\mathcal{L}_X(Yf) =\lim_{t→0}\frac{\phi^*_t(Yf)-Yf}{t} =\lim_{t→0}\frac{(\phi^*_tY)(\phi_t^*f)-Yf}{t}=limt0[(ϕtY)ϕtfft+ϕtYYtf]=Y(LXf)+(LXY)f.=\lim_{t→0}\Big[(\phi^*_tY)\frac{\phi^*_tf-f}{t} +\frac{\phi^*_tY-Y}{t}f\Big]=Y(\mathcal{L}_Xf)+(\mathcal{L}_XY)f.

Notice that (ϕtY)x=d(ϕt1)ϕt(x)Yϕt(x)=d(ϕt)ϕt(x)Yϕt(x)(\phi^*_tY)_x=d(\phi_t^{-1})_{\phi_t(x)}Y_{\phi_t(x)}= d(\phi_{-t})_{\phi_t(x)}Y_{\phi_t(x)}. We have also ϕt(x)x, ϕt(x)x\phi_t(x)\to x, \ \phi_{-t}(x)\to x as t0t\to 0 and in local coordinates the components of the matrix of the differential d(ϕt)ϕt(x):Tϕt(x)MTxMd(ϕ_{−t} )_{\phi_t(x)} : T_{ϕ_t(x)} M → T_x M are ϕi(t,ϕ(t,x))xj.\displaystyle \frac{∂ϕ^i(−t, ϕ(t, x))}{∂x^j}. Smoothness of XX implies smoothness of ϕ\phi, which implies that

ϕi(t,ϕ(t,x))xjϕi(0,x)xj=xixj=δjias t0.\displaystyle \frac{∂ϕ^i(−t, ϕ(t, x))}{∂x^j}\to \frac{\partial\phi^i(0,x)}{\partial x^j}=\frac{\partial x^i}{\partial x^j}=\delta^i_j\quad\text {as}\ t\to 0.

Consequently, if Y=YjxjY = Y^j \frac{\partial}{∂ x^j}, then d(ϕt)ϕt(x)Yϕt(x)=ϕi(t,ϕ(t,x))xjYj(ϕ(t,x))xixYxas t0.d(ϕ_{−t} )_{\phi_t(x)}Y_{ϕ_t (x)} = \frac{∂ϕ^i (−t, ϕ(t, x))}{ ∂ x^j}Y^j(ϕ(t, x))\frac{∂}{∂x^i}\Big|_{x}\to Y_x\quad \mbox{as } t\to 0.

Since by (19.2) LXf=Xf, \mathcal{L}_Xf=Xf,\ we have

X(Yf)=LX(Yf)=Y(Xf)+(LXY)f,X(Yf)=\mathcal{L}_X(Yf)=Y(Xf)+(\mathcal{L}_XY)f,

so LX(Yf)=X(Yf)Y(Xf)=[X,Y]f,\mathcal{L}_X(Yf)= X(Yf)-Y(Xf)=[X,Y]f, i.e., (19.12) holds true.

Thus we can compute   LXY  \ \ \mathcal{L}_XY\ \ without any knowledge on the integral curves of XX.


Example 19.5

Compute   LXY  \ \ \mathcal{L}_XY\ \ for   X=yx+xy  \ \ X=-y\frac{\partial}{\partial x}+x\frac{\partial}{\partial y}\ \ and   Y=(1x)x+(xy)y.\ \ Y=(1-x)\frac{\partial}{\partial x}+(x-y)\frac{\partial}{\partial y}.

%display latex M = Manifold(2, 'M') # manifold M c_xy.<x,y> = M.chart() # chart on M X = M.vector_field(-y, x, name='X') # vector field X Y = M.vector_field(1-x, x-y, name='Y') # vector field Y

First we use the lie_derivative method:

Y_X = Y.lie_derivative(X) # Lie derivative L_X(Y) Y_X.disp()

xx+(y1)y\displaystyle x \frac{\partial}{\partial x } + \left( -y - 1 \right) \frac{\partial}{\partial y }

and next the Lie bracket for comparison:

X.bracket(Y).disp() # [X,Y]

[X,Y]=xx+(y1)y\displaystyle \left[X,Y\right] = x \frac{\partial}{\partial x } + \left( -y - 1 \right) \frac{\partial}{\partial y }


Example 19.6

Use SageMath to check that (19.12) holds for 2-dimensional manifolds.

%display latex N = 2 # dimension of manifold M M = Manifold(N, 'M') # manifold M c_x = M.chart(' '.join(['x'+str(i)+':x^{'+str(i)+'}' for i in range(N)])) # chart on M x0, x1 = c_x[:] # coordinates x^0, x^1 of chart c_x as the Python variables x0, x1 X = M.vector_field(name='X') # vector field X Xf = [M.scalar_field(function('X'+str(i), # list of components latex_name='X'+'^'+str(i))(x0,x1)) for i in range(N)] X[:] = Xf # define all components of X Y = M.vector_field(name='Y') # vector field Y Yf = [M.scalar_field(function('Y'+str(i), # list of components latex_name='Y'+'^'+str(i))(x0,x1)) for i in range(N)] Y[:] = Yf # define all components of Y Y.lie_derivative(X) == X.bracket(Y) # check (19.12)

True\displaystyle \mathrm{True}


Basic properties of Lie derivative of vector fields


Using properties of the Lie bracket from notebook 12, one can check that if X,YX(M)X, Y ∈ \mathfrak{X}(M) and fC(M),f ∈ C^∞ (M), then

LX(fY)=[X,fY]=f[X,Y]+(Xf)Y=fLXY+(LXf)Y,\mathcal{L}_X(fY)=[X, f Y] = f [X, Y] + (X f )Y = f \mathcal{L}_X Y + (\mathcal{L}_X f )Y,

and LX(Y+Z)=[X,Y+Z]=[X,Y]+[X,Z]=LXY+LXZ.\mathcal{L}_X (Y + Z) = [X, Y + Z] = [X, Y] + [X, Z] = \mathcal{L}_X Y + \mathcal{L}_X Z.

If X,Y,ZX(M)X, Y, Z \in \mathfrak{X}(M), then using Jacobi identity (notebook 12) we obtain

LX(LYZ)LY(LXZ)=[X,[Y,Z]][Y,[X,Z]]=[X,[Y,Z]]+[Y,[Z,X]]=[Z,[X,Y]]=[[X,Y],Z]=L[X,Y]Z.\mathcal{L}_X (\mathcal{L}_Y Z) − \mathcal{L}_Y (\mathcal{L}_X Z) = [X, [Y, Z]] − [Y, [X, Z]] = [X, [Y, Z]] + [Y, [Z, X]]\\ = −[Z, [X, Y]]= [[X, Y], Z] =\mathcal{L}_{[X,Y]} Z.

Example 19.7

For  X,Y\ X,Y from example 19.5 and  Z=yx+xy  \ Z=y\frac{\partial}{\partial x}+x\frac{\partial}{\partial y}\ \ compute LX(LYZ)LY(LXZ)  \mathcal{L}_X (\mathcal{L}_Y Z) − \mathcal{L}_Y (\mathcal{L}_X Z)\ \ and L[X,Y]Z. \mathcal{L}_{[X,Y]} Z.

%display latex M = Manifold(2, 'M') # manifold M c_xy.<x,y> = M.chart() # chart on M X = M.vector_field(-y, x, name='X') # vector field X Y = M.vector_field(1-x, x-y, name='Y') # vector field Y Z = M.vector_field(y, x, name='Z') # vector field Z Z_YX = (Z.lie_derivative(Y)).lie_derivative(X) # L_X(L_Y(Z)) Z_XY = (Z.lie_derivative(X)).lie_derivative(Y) # L_Y(L_X(Z)) (Z_YX - Z_XY).disp() # L_X(L_Y(Z)) - L_Y(L_X(Z))

(2y1)x+2xy\displaystyle \left( -2 \, y - 1 \right) \frac{\partial}{\partial x } + 2 \, x \frac{\partial}{\partial y }

Z_brXY = Z.lie_derivative(X.bracket(Y)) # L_[X,Y](Z) Z_brXY.disp()

(2y1)x+2xy\displaystyle \left( -2 \, y - 1 \right) \frac{\partial}{\partial x } + 2 \, x \frac{\partial}{\partial y }


Some properties of pullback of covariant tensor fields


Let us recall (from notebook 15) that if MM and NN are smooth manifolds and ψ:MNψ : M → N is a smooth map then the pullback  ψt \ \psi^*t\ of a smooth tensor field tT(0,k)Nt\in T^{(0,k)}N is defined by

(ψt)p(X1p,...,Xkp)=tψ(p)(dψpX1p,...,dψpXkp),\begin{equation} (ψ^∗ t)_p (X_{1p} , . . . , X_{kp} ) = t_{ψ( p)} (dψ_p X_{1p} , . . . , dψ_p X_{kp} ), \tag{19.13} \end{equation}

for X1p,,XkpTpMX_{1p},\ldots,X_{kp}\in T_pM and pMp\in M.

In (15.2) we have proved that for fC(N)f ∈ C^∞ (N ) ψdf=d(ψf),\begin{equation} ψ^∗ d f=d(\psi^*f), \tag{9.14} \end{equation}

and in (15.3)-(15.5) we justified the relations (for covariant tensor fields t,st,s and fC(M), a,bRf\in C^\infty(M),\ a,b\in R)

ψ(at+bs)=aψt+bψs,ψ(ft)=(ψf)(ψt),\begin{equation} \begin{matrix} ψ^∗ (at + bs) = aψ^∗ t + bψ^∗ s,\\ ψ^∗ ( f t) = (ψ^* f )(ψ^* t), \end{matrix} \tag{19.15} \end{equation}
ψ(ts)=(ψt)(ψs).\begin{equation} ψ^∗ (t ⊗ s) = (ψ^∗ t) ⊗ (ψ^∗ s). \tag{19.16} \end{equation}

In notebook 15 we also have checked that if M1,M2,M3 M_1,M_2,M_3\ are smooth manifolds and ψ1:M1M2ψ_1 : M_1 → M_2 and ψ2:M2M3ψ_2 : M_2 → M_3 are smooth maps, then (ψ2ψ1)t=(ψ1ψ2)t.\begin{equation} (ψ_2 ◦ ψ_1 )^∗ t = (ψ_1^∗ ◦ ψ_2^∗ )\,t. \tag{19.17} \end{equation}


Lie derivative of covariant tensor fields


If ϕϕ is a one-parameter group of transformations on MM and XX its infinitesimal generator, then for any tensor field tT(0,k)Mt\in T^{(0,k)}M the Lie derivative of tt with respect to XX is defined by (LXt)x=limh0(ϕht)xtxh=ddt(ϕtt)xt=0.\begin{equation} (\mathcal{L}_Xt)_x=\lim_{h→0}\frac{(\phi^*_ht)_x-t_x}{h} =\frac{d}{dt}(\phi_t^*t)_x\Big|_{t=0}. \tag{9.18} \end{equation}


For tT(0,k)M, sT(0,m)Mt\in T^{(0,k)}M,\ s\in T^{(0,m)}M we have

LX(ts)=limh0ϕh(ts)tsh=limh0(ϕht)(ϕhs)tsh=limh0[(ϕht)ϕhssh+ϕhtths]=t(LXs)+(LXt)s.\begin{equation} \begin{matrix} \displaystyle \mathcal{L}_X(t\otimes s) =\lim_{h→0}\frac{\phi^*_h(t\otimes s)-t\otimes s}{h} =\lim_{h→0}\frac{(\phi^*_ht)\otimes (\phi_h^*s)-t\otimes s}{h}\\ \displaystyle =\lim_{h→0}\Big[(\phi^*_ht)\otimes\frac{\phi^*_hs-s}{h} +\frac{\phi^*_ht-t}{h}\otimes s\Big]\\ \displaystyle =t\otimes(\mathcal{L}_X s)+(\mathcal{L}_Xt)\otimes s. \end{matrix} \tag{19.19} \end{equation}

For t,sT(0,k)Mt,s\in T^{(0,k)}M and a,bRa,b\in R

LX(at+bs)=limh0ϕh(at+bs)(at+bs)h=limh0aϕht+bϕhsatbsh=aLXt+bLXs.\begin{equation} \begin{matrix} \displaystyle \mathcal{L}_X(at+bs) =\lim_{h→0}\frac{\phi^*_h(at+bs)-(at+bs)}{h}\\ \displaystyle =\lim_{h→0}\frac{a\phi^*_ht+b\phi^*_hs-at-bs}{h} =a\mathcal{L}_Xt +b\mathcal{L}_Xs. \end{matrix} \tag{19.20} \end{equation}

For fC(M)f ∈ C^∞ (M) and tT(0,k)Mt\in T^{(0,k)}M

LX(ft)=limh0ϕh(ft)fth=limh0(ϕhf)(ϕht)fth=limh0[ϕhfϕhtth+ϕhffht]=f(LXt)+(LXf)t.\begin{equation} \begin{matrix} \displaystyle \mathcal{L}_X(ft) =\lim_{h→0}\frac{\phi^*_h(ft)-ft}{h} =\lim_{h→0}\frac{(\phi^*_hf)(\phi_h^*t)-ft}{h}\\ \displaystyle =\lim_{h→0}\Big[\phi^*_hf\frac{\phi^*_ht-t}{h} +\frac{\phi^*_hf-f}{h}t\Big] =f(\mathcal{L}_X t)+(\mathcal{L}_Xf)t. \end{matrix} \tag{19.21} \end{equation}
LXdf=limh0ϕhdfdfh=limh0d(ϕhf)dfh=d(LXf).\begin{equation} \begin{matrix} \displaystyle \mathcal{L}_Xdf =\lim_{h→0}\frac{\phi^*_hdf-df}{h} =\lim_{h→0}\frac{d(\phi^*_hf)-df}{h} =d(\mathcal{L}_Xf). \end{matrix} \tag{19.22} \end{equation}

Lie derivative of covariant tensor fields in local components


If tT(0,k)Mt\in T^{(0,k)}M is given locally by t=ti1...ikdxi1dxikt = t_{i_1... i_k} dx^{i_1} ⊗· · · ⊗ dx^{i_k}, then

$$\mathcal{L}_X t = \mathcal{L}_X (t_{i_1... i_k} dx^{i_1} ⊗ · · · ⊗ dx^{i_k} )\\ = (\mathcal{L}_X t_{i_1... i_k})dx^{i_1} ⊗ · · · ⊗ dx^{i_k} \\ + t_{i_1... i_k}\big( \mathcal{L}_X dx^{i_1} ⊗ · · · ⊗ dx^{i_k} + · · · + dx^{i_1} ⊗ · · · ⊗ \mathcal{L}_Xdx^{i_k}\big)\\ =(Xt_{i_1... i_k})dx^{i_1} ⊗ · · · ⊗ dx^{i_k}\\ + t_{i_1... i_k}\big[d (\mathcal{L}_X x^{i_1}) ⊗ · · · ⊗ dx^{i_k} + · · · + dx^{i_1} ⊗ · · · ⊗ d(\mathcal{L}_Xx^{i_k})\big].\\$$

If X=XmxmX = X^m \frac{∂}{∂ x^m}, then

LXxi=Xxi=(Xmxm)xi=Xi,\mathcal{L}_Xx^i=Xx^i=\big(X^m \frac{∂}{∂ x^m}\big)x^i=X^i,

consequently

d(LXxi)=dXi=Xixmdxm,\begin{equation} d(\mathcal{L}_Xx^i)=dX^i=\frac{∂X^i}{∂ x^m}dx^m, \tag{19.22'} \end{equation}

and LXt=(Xti1...ik)dxi1dxik+ti1...ik(Xi1xmdxmdxik++dxi1Xikxmdxm)=(Xmti1...ikxm+tim...ikXimxi1++ti1...imXimxik)dxi1dxik.(19.23)\begin{darray}{rcl} &\mathcal{L}_X t = (Xt_{i_1... i_k} ) dx^{i_1} ⊗ · · · ⊗ dx^{i_k}\\ &+t_{i_1... i_k} \big(\frac{∂X^{i_1}}{∂ x^m}dx^m\otimes\ldots\otimes dx^{i_k}+\ldots+dx^{i_1}\otimes\ldots\otimes\frac{∂X^{i_k}}{∂ x^m}dx^m\Big)\\ &=\big(X^m\frac{\partial t_{i_1... i_k}}{∂ x^m}+ t_{i_m... i_k}\frac{∂X^{i_m}}{∂ x^{i_1}}+\ldots +t_{i_1... i_m}\frac{∂X^{i_m}}{∂ x^{i_k}}\Big)dx^{i_1} ⊗ · · · ⊗ dx^{i_k}. \tag{19.23} \end{darray}


Example 19.8

Compute  LXt  \ \mathcal{L}_Xt\ \ for  X=(1x)x+(xy)y  \ X=(1-x)\frac{\partial}{\partial x}+(x-y)\frac{\partial}{\partial y}\ \ and   t=xdxdx+dxd𝑦+𝑦d𝑦dx.\ \ t=xdx⊗dx+dx⊗d𝑦+𝑦d𝑦⊗dx.


First define the tensor field and vector field:

%display latex M = Manifold(2, 'M') # manifold M c_xy.<x,y> = M.chart() # chart on M e_xy = c_xy.frame() # local basis of vector fields t = M.tensor_field(0, 2, {e_xy: [[x, 1], [y, 0]]}, name='t') t.disp() # tensor field t of (0,2)-type

t=xdxdx+dxdy+ydydx\displaystyle t = x \mathrm{d} x\otimes \mathrm{d} x +\mathrm{d} x\otimes \mathrm{d} y + y \mathrm{d} y\otimes \mathrm{d} x

e_xy # show the local basis

(M,(x,y))\displaystyle \left(M, \left(\frac{\partial}{\partial x },\frac{\partial}{\partial y }\right)\right)

X = M.vector_field({e_xy: [1-x, x-y]}, name='X') X.disp() # vector field X

X=(x+1)x+(xy)y\displaystyle X = \left( -x + 1 \right) \frac{\partial}{\partial x } + \left( x - y \right) \frac{\partial}{\partial y }

Now we can compute  LXt:  \ \mathcal{L}_Xt:\ \

lt = t.lie_derivative(X) # Lie derivative L_X(t) lt.display(e_xy)

(3x+y+2)dxdx2dxdy+(x3y)dydx\displaystyle \left( -3 \, x + y + 2 \right) \mathrm{d} x\otimes \mathrm{d} x -2 \mathrm{d} x\otimes \mathrm{d} y + \left( x - 3 \, y \right) \mathrm{d} y\otimes \mathrm{d} x


Example 19.9

For a deeper understanding of the formula (19.23) let us take a more general example.

Let   t=𝑡00d𝑥0d𝑥0+𝑡01d𝑥0d𝑥1+𝑡10d𝑥1d𝑥0+𝑡11d𝑥1d𝑥1.  \ \ t=𝑡_{00}d𝑥^0⊗d𝑥^0+𝑡_{01}d𝑥^0⊗d𝑥^1+𝑡_{10}d𝑥^1⊗d𝑥^0+𝑡_{11}d𝑥^1⊗d𝑥^1.\ \

N=2 # dimension of manifold M M = Manifold(N, 'M') # manifold M c_x = M.chart(' '.join(['x'+str(i)+':x^{'+str(i)+'}' for i in range(N)])) # chart on M x0, x1 = c_x[:] # coordinates x^0, x^1 of chart c_x as the Python variables x0, x1 t = M.tensor_field(0,2, name='t') # tensor field t of type (0,2) def f2(i,j): return 't'+str(i)+str(j) # names of components # component functions: f1 = [[M.scalar_field(function(f2(j,k))(x0,x1), name=f2(j,k)) for k in range(N)] for j in range(N)] t[:] = f1 # define all components of t %display latex Manifold.options.omit_function_arguments=True t.disp() # show tensor field t

t=t00dx0dx0+t01dx0dx1+t10dx1dx0+t11dx1dx1\displaystyle t = t_{00} \mathrm{d} {x^{0}}\otimes \mathrm{d} {x^{0}} + t_{01} \mathrm{d} {x^{0}}\otimes \mathrm{d} {x^{1}} + t_{10} \mathrm{d} {x^{1}}\otimes \mathrm{d} {x^{0}} + t_{11} \mathrm{d} {x^{1}}\otimes \mathrm{d} {x^{1}}

and   X=X0x0+X1x1\ \ X=X^0\frac{\partial}{\partial x^0}+X^1\frac{\partial}{\partial x^1}

# continuation X = M.vector_field(name='X') # vector field X Xf=[M.scalar_field(function('X'+str(i), # list of components latex_name='X'+'^'+str(i))(x0,x1)) for i in range(N)] X[:] = Xf # define all comp. of X X.disp() # show vect.field X

X=X0x0+X1x1\displaystyle X = X^0 \frac{\partial}{\partial {x^{0}} } + X^1 \frac{\partial}{\partial {x^{1}} }

Compute the Lie derivative LXt:  \ \mathcal{L}_Xt:\ \

lt = t.lie_derivative(X) lt.disp()

(2t00X0x0+(t01+t10)X1x0+X0t00x0+X1t00x1)dx0dx0+(t01X0x0+t00X0x1+t11X1x0+t01X1x1+X0t01x0+X1t01x1)dx0dx1+(t10X0x0+t00X0x1+t11X1x0+t10X1x1+X0t10x0+X1t10x1)dx1dx0+((t01+t10)X0x1+2t11X1x1+X0t11x0+X1t11x1)dx1dx1\displaystyle \left( 2 \, t_{00} \frac{\partial\,X^0}{\partial {x^{0}}} + {\left(t_{01} + t_{10}\right)} \frac{\partial\,X^1}{\partial {x^{0}}} + X^0 \frac{\partial\,t_{00}}{\partial {x^{0}}} + X^1 \frac{\partial\,t_{00}}{\partial {x^{1}}} \right) \mathrm{d} {x^{0}}\otimes \mathrm{d} {x^{0}} + \left( t_{01} \frac{\partial\,X^0}{\partial {x^{0}}} + t_{00} \frac{\partial\,X^0}{\partial {x^{1}}} + t_{11} \frac{\partial\,X^1}{\partial {x^{0}}} + t_{01} \frac{\partial\,X^1}{\partial {x^{1}}} + X^0 \frac{\partial\,t_{01}}{\partial {x^{0}}} + X^1 \frac{\partial\,t_{01}}{\partial {x^{1}}} \right) \mathrm{d} {x^{0}}\otimes \mathrm{d} {x^{1}} + \left( t_{10} \frac{\partial\,X^0}{\partial {x^{0}}} + t_{00} \frac{\partial\,X^0}{\partial {x^{1}}} + t_{11} \frac{\partial\,X^1}{\partial {x^{0}}} + t_{10} \frac{\partial\,X^1}{\partial {x^{1}}} + X^0 \frac{\partial\,t_{10}}{\partial {x^{0}}} + X^1 \frac{\partial\,t_{10}}{\partial {x^{1}}} \right) \mathrm{d} {x^{1}}\otimes \mathrm{d} {x^{0}} + \left( {\left(t_{01} + t_{10}\right)} \frac{\partial\,X^0}{\partial {x^{1}}} + 2 \, t_{11} \frac{\partial\,X^1}{\partial {x^{1}}} + X^0 \frac{\partial\,t_{11}}{\partial {x^{0}}} + X^1 \frac{\partial\,t_{11}}{\partial {x^{1}}} \right) \mathrm{d} {x^{1}}\otimes \mathrm{d} {x^{1}}

For comparison, using (19.23) without simplifications we obtain

(Xmti1...ikxm+tim...ikXimxi1+...+ti1...imXimxik)dxi1dxik=(X0t00x0+X1t00x1+t00X0x0+t10X1x0+t00X0x0+t01X1x0)dx0dx0+(X0t01x0+X1t01x1+t01X0x0+t11X1x0+t00X0x1+t01X1x1)dx0dx1+(X0t10x0+X1t10x1+t00X0x1+t10X1x1+t10X0x0+t11X1x0)dx1dx0+(X0t11x0+X1t11x1+t01X0x1+t11X1x1+t10X0x1+t11X1x1)dx1dx1,\begin{matrix} \Big(X^m\frac{\partial t_{i_1... i_k}}{∂ x^m} & +t_{i_m... i_k}\frac{∂X^{i_m}}{∂ x^{i_1}}+ & ...+t_{i_1... i_m}\frac{∂X^{i_m}}{∂ x^{i_k}}\Big) & dx^{i_1} ⊗ · · · ⊗ dx^{i_k}\\ =\Big(X^0\frac{\partial t_{00}}{\partial x^0}+X^1 \frac{\partial t_{00}}{\partial x^1} & +t_{00}\frac{\partial X^0}{\partial x^0}+t_{10}\frac{\partial X^1}{\partial x^0} & +t_{00}\frac{\partial X^0}{\partial x^0}+t_{01}\frac{\partial X^1}{\partial x^0} \Big)& dx^0\otimes dx^0\\ +\Big(X^0\frac{\partial t_{01}}{\partial x^0}+X^1 \frac{\partial t_{01}}{\partial x^1} & +t_{01}\frac{\partial X^0}{\partial x^0}+t_{11}\frac{\partial X^1}{\partial x^0} & +t_{00}\frac{\partial X^0}{\partial x^1}+t_{01}\frac{\partial X^1}{\partial x^1} \Big)& dx^0\otimes dx^1\\ +\Big(X^0\frac{\partial t_{10}}{\partial x^0}+X^1 \frac{\partial t_{10}}{\partial x^1} & +t_{00}\frac{\partial X^0}{\partial x^1}+t_{10}\frac{\partial X^1}{\partial x^1} & +t_{10}\frac{\partial X^0}{\partial x^0}+t_{11}\frac{\partial X^1}{\partial x^0} \Big)& dx^1\otimes dx^0\\ +\Big(X^0\frac{\partial t_{11}}{\partial x^0}+X^1 \frac{\partial t_{11}}{\partial x^1} & +t_{01}\frac{\partial X^0}{\partial x^1}+t_{11}\frac{\partial X^1}{\partial x^1} & +t_{10}\frac{\partial X^0}{\partial x^1}+t_{11}\frac{\partial X^1}{\partial x^1} \Big)& dx^1\otimes dx^1, \end{matrix}

which of course gives the same result.

# 3 ways how to obtain contraction sign print(u'\u231F',u'\u300D',u'\uFF63')
⌟ 」 」

Contraction with a vector field (interior product)


If tT(0,k)M, XX(M)t\in T^{(0,k)}M,\ X\in \mathfrak{X}(M), then the contraction of tt with XX, denoted by  Xt \ X\mathbin{」}t\ is a tensor field from T(0,k1)MT^{(0,k-1)}M defined by

(Xt)p(X2p,,Xkp)=tp(Xp,X2p,,Xkp).\begin{equation} (X\mathbin{」}t)_p(X_{2p},\ldots,X_{kp})=t_p(X_p,X_{2p},\ldots,X_{kp}). \tag{19.24} \end{equation}

Example 19.10

Let us compute   Xt  \ \ X\mathbin{」}t\ \ for   X=X1x1+X2x2  \ \ X=X^1\frac{\partial}{\partial x^1}+ X^2\frac{\partial}{\partial x^2}\ \ and   𝑔=d𝑥1d𝑥1+d𝑥2d𝑥2.\ \ 𝑔=d𝑥^1⊗d𝑥^1+d𝑥^2⊗d𝑥^2.

%display latex N = 2 # dimension of manifold M M = Manifold(2, 'M',start_index=1) # manifold M c_x = M.chart(' '.join(['x'+str(i)+':x^{'+str(i)+'}' for i in range(1, N+1)])) # chart on M x1, x2 = c_x[:] # coordinates x^1, x^2 of chart c_x as the Python variables x1, x2 g = M.tensor_field(0, 2, name='g'); # tensor field of type (0,2) g[1,1] = 1; g[2,2] = 1 # set nonzero components g.display() # show g

g=dx1dx1+dx2dx2\displaystyle g = \mathrm{d} {x^{1}}\otimes \mathrm{d} {x^{1}}+\mathrm{d} {x^{2}}\otimes \mathrm{d} {x^{2}}

X = M.vector_field() # vector field X X[:] = (function('X1', latex_name='X^1')(x1,x2), # define components of X function('X2', latex_name='X^2')(x1,x2)) Manifold.options.omit_function_arguments=True X.display() # show X

X1x1+X2x2\displaystyle X^1 \frac{\partial}{\partial {x^{1}} } + X^2 \frac{\partial}{\partial {x^{2}} }

X.contract(g).display() # X 」g