HorizontalHomotopy - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


JetCalculus[HorizontalHomotopy] - apply the horizontal homotopy operator to a bi-form on a jet space

Calling Sequences

     HorizontalHomotopy(ω, options)

Parameters

     ω        - a differential bi-form on the jet space

     options - any of  the optional arguments used in the commands DeRhamHomotopy

 

Description

Details

Examples

Description

• 

Let π:EM be a fiber bundle, with base dimension n and fiber dimension m and let π∞ :J∞E M  be the infinite jet bundle of E. The space of p-forms ΩpJ∞E decomposes into a direct sum  ΩpJ  = r+s =p Ωr,sJE, where  Ωr,s JE is the space of bi-forms of horizontal degree r and vertical degree s.  The horizontal exterior derivative  is a mapping dH :Ωr,sJE Ωr+1,sJE with the following properties. A form ω  Ωr,s JE is called dH  closed if dH ω = 0 and dH exact if there is a bi-form η Ωr1,s JE such that ω = dH η. Since dHdH =0, every dH  exact bi-form is dH closed.

[i] If r<n, then every dH closed bi-form &omega; is dH exact, ω &equals; dH &eta;&period;

[ii] If r &equals;n and s&equals;0 and E&omega; &equals;0&comma; where E is the Euler-Lagrange operator, then ω &equals; dH &eta;.

[iii] If r &equals;n and s&gt;0 and I&omega; &equals;0&comma; where I is the integration by parts operator, then ω &equals; dH &eta;.

There are a number of algorithms for finding the bi-form &eta;&period; One approach is to use the horizontal homotopy operators hHr&comma;s &colon;  Ωr&comma;sJE  Ωr1&comma;sJE. Similar to the DeRham homotopy operator, these homotopy operators satisfy the identities

[i]  hHr&plus;1&comma; s dH &omega; &plus; dHhHr&comma;s &omega; &equals; &omega;   if  r<n &semi;

[ii]   dHhHr&comma;s &omega; &equals; &omega;   if   r &equals;n  and s &equals;0 and E&omega; &equals;0. 

[iii]   dHhHr&comma;s &omega; &equals; &omega;   if   r &equals;n  and s &gt;0 and I&omega; &equals;0. 

• 

If &omega;  is a bi-form of degree r&comma;s with r&gt;0  then HorizontalHomotopy(&omega;) returns a bi-form of degree (r1&comma; s&rpar;.

• 

For s &gt;0  the operators hHr&comma;s are total differential operators and therefore, unlike the usual homotopy operators for the de Rham complex or the vertical homotopy operators for bi-forms on jet spaces, do not involve any quadratures. For s&equals; 0 the horizontal homotopy does involve quadratures and the optional arguments used in the commands DeRhamHomotopy or VerticalHomotopy can be invoked.

• 

The command HorizontalHomotopy is part of the DifferentialGeometry:-JetCalculus package. It can be used in the form HorizontalHomotopy(...) only after executing the commands with(DifferentialGeometry) and with(JetCalculus), but can always be used by executing DifferentialGeometry:-JetCalculus:-HorizontalHomotopy(...).

Details

Here are the explicit formulas for the horizontal homotopy operators. Let &lpar;xi&comma; u&alpha;&comma; ui&alpha;&comma; uij&alpha;, ..., uij  k&alpha;&comma; ....&rpar; be a local system of jet coordinates and let &Theta;&alpha; &equals; du&alpha;u&ell;&alpha;dx&ell;. Let ω  Ωr&comma;sJ E be a k-th order bi-form with s1 and let E&alpha;I&omega; &Omega;r&comma;s1J Ebe the higher (interior product) Euler operators. Let  DI &equals; Di1i2i&ell; be the multi-total derivative operator and let  &omega;j &equals; &iota;Dj&omega;. Then

 

hHr&comma;s&omega; &equals;  1sI &equals;0k1  &verbar;I&verbar;&plus;1nr&plus;I &plus;1DI &Theta;&alpha; E&alpha;Ij&omega;j.

 

For s&equals;0&comma; the horizontal homotopy operator is defined in terms of the vertical exterior derivative dV  and the vertical homotopy operator  hVr&comma;s by

hHr&comma;s&omega; &equals;   hVr1&comma; 1hHr&comma;1dV&omega;&period;

For further information, see:

[i] Ian M. Anderson, Notes on the Variational Bicomplex.

[ii] Niky. Kamran, Selected Topics in the Geometrical Study of Differential Equations, CBMS Lecture Series, 2002.

[iii] Peter J. Olver, Applications of Lie Groups to Differential Equations, Chapter 5.

 

Examples

with(DifferentialGeometry): with(JetCalculus):

 

Example 1.

Create the jet space J3E for the bundle E with coordinates x&comma; u x&period;

DGsetup([x], [u], E, 3):

 

Show that the EulerLagrange form for &omega;1 is 0 so that &omega;1 is dH exact.

E > 

omega1 := evalDG((u[1,1,1]*u[1] + x*u[1,1,1]*u[1,1] + 2*u[1,1]*u[1,1,1] + x*u[1]*u[1,1,1,1])*Dx);

&omega;1xu1u1,1,1,1+xu1,1,1u1,1+u1,1,1u1+2u1,1u1,1,1Dx

(3.1)
E > 

EulerLagrange(omega1);

0DxCu

(3.2)

 

Apply the horizontal homotopy operator to &omega;1

E > 

eta1 := HorizontalHomotopy(omega1);

&eta;1xu1,1,1u1+u1,12

(3.3)

 

Check that the horizontal exterior derivative of &eta;1 gives &omega;1.

E > 

omega1 &minus HorizontalExteriorDerivative(eta1);

0Dx

(3.4)

 

Example 2.

Show that the integration by parts operator for the type (1, 2)  bi-form &omega;1 is 0 so that &omega;2 is dH exact.

E > 

omega2 := evalDG(Dx &w Cu[1] &w Cu[1,1,1,1] + Dx &w Cu[1,1] &w Cu[1,1,1]);

&omega;2DxCu1Cu1,1,1,1+DxCu1,1Cu1,1,1

(3.5)
E > 

IntegrationByParts(omega2);

0DxCuCu1

(3.6)

 

Apply the horizontal homotopy operator to &omega;2&period;

E > 

eta2 := HorizontalHomotopy(omega2);

&eta;2Cu1Cu1,1,1

(3.7)
E > 

omega2 &minus HorizontalExteriorDerivative(eta2);

0DxCuCu1

(3.8)

 

Example 3.

Show that the Euler-Lagrange form for &omega;3 is 0 so that &omega;3 is dH exact.

E > 

HorizontalExteriorDerivative((u[1]*u[1,1,1])/u[1,1]^4);

(3.9)
E > 

omega3 := map(expand, evalDG((u[1,1]^2*u[1,1,1] - 4*u[1,1,1]^2*u[1] + u[1]*u[1,1,1,1]*u[1,1])/u[1,1]^5*Dx));

&omega;3u1,1,1u1,134u1u1,1,12u1,15+u1u1,1,1,1u1,14Dx

(3.10)
E > 

EulerLagrange(omega3);

0DxCu

(3.11)

 

Apply the horizontal homotopy operator to &omega;3. Because &omega;3 is singular at  u1&comma;1 &equals; 0 we change the integration limits in the homotopy formula but still perform a radial integration.  See  DeRhamHomotopy for a detailed discussion.

E > 

eta3a := HorizontalHomotopy(omega3, integrationlimits = [infinity, 1]);

eta3au1,1,1u1u1,14

(3.12)

 

Check that dH &eta;3 &equals; &omega;3.

E > 

omega3 &minus HorizontalExteriorDerivative(eta3a);

0Dx

(3.13)

 

Instead of changing the limits of integration we can change the integration path to a sequence of coordinate lines.  See HorizontalExteriorDerivative for a detailed discussion.

opt := intmethod = "ExteriorDerivativeHomotopy", path = "zigzag", variableorder = [x, u[], u[1], u[1,1], u[1,1,1], u[1,1,1,1], u[1,1,1,1,1]], initialpoint = [u[1,1] = 1];

optintmethod=ExteriorDerivativeHomotopy,path=zigzag,variableorder=x&comma;u&comma;u1&comma;u1,1&comma;u1,1,1&comma;u1,1,1,1&comma;u1,1,1,1,1,initialpoint=u1,1=1

(3.14)
E > 

eta3b := HorizontalHomotopy(omega3, opt);

eta3bu1,1,1u1u1,14

(3.15)

 

Example 4.

Create the jet space J2E for the bundle E with coordinates x&comma; u&comma; u&comma; v x&comma;y.

E > 

DGsetup([x, y], [u, v], E2, 2):

 

Define a type (1, 0) biform &omega;4 and check that it is closed.

E2 > 

omega4 := evalDG((v[2, 2]*u[1, 1] + u[1]*v[1, 2, 2])*Dx + (v[2, 2]*u[1, 2] + u[1]*v[2, 2, 2])*Dy);

&omega;4u1v1,2,2+v2,2u1,1Dx+u1v2,2,2+v2,2u1,2Dy

(3.16)
E2 > 

HorizontalExteriorDerivative(omega4);

0DxDy

(3.17)

 

Apply the horizontal homotopy operator to define &eta;4.

E2 > 

eta4 := HorizontalHomotopy(omega4);

&eta;4v2,2u1

(3.18)

 

Check that &omega;4  &equals;dH &eta;4.

E2 > 

omega4 &minus HorizontalExteriorDerivative(eta4);

0Dx

(3.19)

 

Example 5.

Define a type (2, 0) form &omega;5  and check that its Euler-Lagrange form vanishes identically.

E2 > 

omega5 := evalDG((v[2]*u[1, 1] + u[1]*v[1, 2] - v[1]*u[1, 2, 2] - u[1, 2]*v[1, 2])* Dx &w Dy);

&omega;5u1v1,2+v2u1,1u1,2v1,2v1u1,2,2DxDy

(3.20)
E2 > 

EulerLagrange(omega5);

0DxDyCu

(3.21)
E2 > 

eta5a := HorizontalHomotopy(omega5);

eta5a712v1u1,214v1u116v1,1u2+112u1v1,214vu1,114vu1,1,2+112v1,1,2uDx+16v1u2,2+34v2u114v2u1,2112v1,2u214vu1,214vu1,2,2+112v1,2,2uDy

(3.22)
E2 > 

omega5 &minus HorizontalExteriorDerivative(eta5a);

0DxDy

(3.23)

 

So &omega;5 &equals; dH&eta;5a , but we can often find a much simpler answer.

E2 > 

opt := intmethod = "ExteriorDerivativeHomotopy", path = "zigzag", variableorder = Tools:-DGinfo(E2, "FrameJetVariables");

optintmethod=ExteriorDerivativeHomotopy,path=zigzag,variableorder=x&comma;y&comma;u&comma;v&comma;u1&comma;u2&comma;v1&comma;v2&comma;u1,1&comma;u1,2&comma;u2,2&comma;v1,1&comma;v1,2&comma;v2,2&comma;u1,1,1&comma;u1,1,2&comma;u1,2,2&comma;u2,2,2&comma;v1,1,1&comma;v1,1,2&comma;v1,2,2&comma;v2,2,2

(3.24)
E2 > 

eta5b := HorizontalHomotopy(omega5, opt);

eta5bv1u1,2Dx+v2u1Dy

(3.25)
E2 > 

omega5 &minus HorizontalExteriorDerivative(eta5b);

0DxDy

(3.26)

See Also

DifferentialGeometry

JetCalculus

EulerLagrange

HorizontalExteriorDerivative

IntegrationByParts

VerticalExteriorDerivative

VerticalHomotopy

ZigZag