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

Online Help

All Products    Maple    MapleSim

ExteriorDifferentialSystems[IntegralManifold] - find the integral manifolds for an exterior differential system

Calling Sequences

    IntegralManifold(Omega, P, options)

    IntegralManifold(Omega, phi, options)


   Omega   - a list of differential forms on a manifold M

   P       - a name or string, the name of an initialized manifold to be used for the domain of the integral manifold

   phi     - a transformation, with range M, and depending upon a number of arbitrary functions

   option  - (optional keyword arguments) ansatz, unknowns, auxiliaryequations, output



 Let ℐ be an exterior differential system defined on a manifold M. and let P be a manifold. An integral manifold of ℐ is a smooth immersion φ:P  M such that the pullback φω = 0 for all ω  ℐ. These conditions translate into a system of first-order PDE for the components of the transformation φ. The command IntegralManifold uses pdsolve to integrate, if possible, this PDE system and return the integral manifold of ℐ as a transformation from P to M.


For the first calling sequence, general integral manifolds φ:P  M  are sought. Here it is often the case that Maple will be unable to find any integral manifolds. The keyword argument ansatz = list(equations) may be used to specify some of the components of φ and thereby reduce the complexity of the PDE to be solved.


For the second calling sequence an integral manifold ansatz is specified explicitly by a transformation φ:P  M. For this calling sequence the unknown functions appearing in φ:P  M  should be explicitly declared with the keyword argument unknowns. For the second calling sequence, additional constraints (equations or inequalities) may be imposed with the auxiliaryequations keyword.  


For either calling sequence, with the keyword argument output = "equations", the determining PDE system for the integral manifolds is returned.

See Also




 with(DifferentialGeometry): with(ExteriorDifferentialSystems):


Example 1.

In this example we find the integral curves (1-dimensional integral manifolds) for the Pfaffian system defined by a single 1-form in 2 variables. Define the manifold on which the Pfaffian system is defined.

DGsetup([x, y], M1);

frame name: M1



Define the parameter space for the integral manifolds.

M1 > 

DGsetup([t], P1);

frame name: P1



The Pfaffian system ℐ is generated by the following 1-forms.

M1 > 

Omega := [(x^2 + y^2)*dx - 2*x*y *dy];




Here are the integral manifolds for   found by the first calling sequence.

M1 > 

Sigma := IntegralManifold(Omega, P1);




Use the Pullback command to check that the third transformation is an integral manifold.

P1 > 

Pullback(Sigma[3], Omega);




We can specify that we want integral manifolds which are graphs of functions  y = Fx  using the keyword argument ansatz.

P1 > 

IntegralManifold(Omega, P1, ansatz = [x = t]);




We calculate the integral manifolds of ℐ using the second calling sequence. First define a general transformation from P1 to M1.

P1 > 

phi := Transformation(P1, M1, [x = f(t), y = g(t)]);


M1 > 

IntegralManifold(Omega, phi);




Here again are the integral manifolds which are graphs of functions y =Fx.

M1 > 

phi := Transformation(P1, M1, [x = t, y = g(t)]);


P1 > 

IntegralManifold(Omega, phi);




Let us use polar coordinates to parameterize the integral manifolds in terms of functions rt and θt.  We see that no solutions are found.

P1 > 

phi2 := Transformation(P1, M1, [x = r(t)*cos(theta(t)), y = r(t)*sin(theta(t))]);


P1 > 

Sigma := IntegralManifold(Omega, phi2);




Simplify the defining equations for the integral manifolds by setting θt = t.

P1 > 

phi3 := Transformation(P1, M1, [x = r(t)*cos(t), y = r(t)*sin(t)]);


P1 > 

IntegralManifold(Omega, phi3);




Use the keyword argument auxiliaryequations to find the integral manifold through the point x =0,  y = 0.

P1 > 

IntegralManifold(Omega, phi3, auxiliaryequations = {r(0) = 1});




Example 2.

In this example we look for integral manifolds of dimensions 1 and 2 for a Pfaffian system defined by a single 1 form in 3 variables. Define the spaces we need.


P1 > 

DGsetup([x, y, z], M2);

frame name: M2

M > 

DGsetup([t], P1);

frame name: P1

P1 > 

DGsetup([s, t], P2);

frame name: P2



The Pfaffian system ℐ is generated by a single 1-form.

P2 > 

Omega := [(y + z)*dx + (x + z)*dy + (x + y)*dz];




Here are the general 1-dimensional integral manifolds.

M > 

phi1 := Transformation(P1, M2, [x = f(t), y = g(t), z = k(t)]);


P1 > 

IntegralManifold(Omega, phi1);




Here are the 2-dimensional integral manifolds which are given by graphs of functions  z = Fx, y.

P1 > 

phi2 := Transformation(P2, M2, [x = s, y = t, z = f(s, t)]);


P1 > 

Sigma := IntegralManifold(Omega, phi2);




Check this last result.

P2 > 

Pullback(Sigma, Omega);




Example 3.

In this example we write the solutions for the linear 3rd order ODE  y'''  y' = 0 as integral manifolds of a rank 3 Pfaffian system on a 4-dimensional manifold.


M3 > 

DGsetup([x], P3);

frame name: P3

P3 > 

DGsetup([x, y, y1, y2], M3);

frame name: M3



The Pfaffian system is

P3 > 

Omega := evalDG([dy - y1*dx, dy1- y2*dx, dy2 - y1*dx]);




and the integral manifolds are

M3 > 

IntegralManifold(Omega, P3, ansatz = [x = x]);




We remark that in the exterior differential system setting, a solution requires the specification of all the variables on the underlying manifold, and not solely the specification of the dependent variable.


Example 4.

Second order partial differential equations of the form uxy =fx, y, u, ux, uy can always be re-formulated as a differential system generated by a 1-form and two 2-forms on a 5-dimensional manifold. We illustrate this using the equation uxy = 2 ux+y2.


P3 > 

DGsetup([x, y], P4);

frame name: P4

P4 > 

DGsetup([x, y, u, p, q], M4);

frame name: M4



Here are the generators of the differential system ℐ. Since there are 2-form generators the EDS  is not a Pfaffian system.

M4 > 

Omega := evalDG([du -p*dx -q*dy, (dp - 2*u/(x+y)^2*dy) &w dx , (dq - 2*u/(x+y)^2*dx) &w dy]);




We look for integral manifolds which define graphs of functions u  = Ux, y.

M4 > 

Sigma := IntegralManifold(Omega, P4, ansatz = [x = x, y = y]);




Check this solution.

P4 > 

Pullback(Sigma, Omega);