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

Online Help

All Products    Maple    MapleSim


Physics[Vectors][Nabla] - the differential operator nabla

Calling Sequence

Nabla(A)

Nabla(A, differential_operation)

Nabla(A, differential_operation, useComponent)

Remark: these calling sequences are also valid with the inert %Nabla command

Parameters

A

-

any algebraic expression

differential_operation

-

any of Curl, Divergence, Gradient, or Laplacian

useComponent

-

optional, to request representing the components of a non-projected vector using the Component command

Description

• 

Nabla is a command representation for the nabla differential operator. Thus, it can be used to calculate the gradient, divergence, curl or Laplacian of a function as well.

• 

%Nabla is the inert form of Nabla, that is: it represents the same mathematical operation while holding the operation and checking of arguments unperformed. The expansion rules defined for Nabla, however, also work (are implemented) for the inert %Nabla. To activate the operation use value.

• 

Nabla works in a context sensitive manner. For instance, Nabla(F) returns the gradient of F or the divergence of F according to whether F is identified as a scalar or a vector function (see ?Identify). So when called with only one argument Nabla(F) = Nabla . F. When called with two arguments, Nabla(F, Curl), Nabla(F, Divergence), Nabla(F, Gradient) and Nabla(F,Laplacian) respectively return the curl the divergence, the gradient and the Laplacian of F. The result is expressed in the specific coordinates and orthonormal vector basis system related to the functional dependence detected in F. When F does not depend on the geometrical coordinates x,y,z,ρ,φ,r,θ, Nabla(F, ...) returns 0; and when F depends on coordinates of more than one system, the calculations are interrupted an error message is displayed on the screen.

• 

A call to Nabla with one or two arguments returns the evaluation of the corresponding vector differential operation unless F is a non-projected vector, in which case Nabla(F) and Nabla(F, Divergence) return unevaluated as DivergenceF and Nabla(F, Curl) returns Curl(F) (see ?Divergence and ?Curl). Generally speaking, to evaluate the corresponding vector differential operation it would be necessary to know the components of F in some orthonormal vector basis. It is possible, however, to make Nabla return the vector differential operation performed by representing these unknown components using the Component command; for that purpose the optional argument useComponent should be given.

• 

Since Nabla performs differentiation using the standard diff command, all differentiation knowledge of diff is used when computing with Nabla.

• 

For the conventions about the geometrical coordinates and vectors see Identify.

Examples

withPhysicsVectors

&x,`+`,`.`,Assume,ChangeBasis,ChangeCoordinates,CompactDisplay,Component,Curl,DirectionalDiff,Divergence,Gradient,Identify,Laplacian,,Norm,ParametrizeCurve,ParametrizeSurface,ParametrizeVolume,Setup,Simplify,`^`,diff,int

(1)

Setupmathematicalnotation=true

mathematicalnotation=true

(2)

Nabla can be used to represent a gradient

fx,y,z

xfx,y,zi+yfx,y,zj+zfx,y,zk

(3)

Note the "application" of Nabla as in the above can be performed as well using the . operator:

·fx,y,z

xfx,y,zi+yfx,y,zj+zfx,y,zk

(4)

The Laplacian

fx,y,z,Laplacian

2x2fx,y,z+2y2fx,y,z+2z2fx,y,z

(5)

To distinguish a non-projected vector from a scalar variable a postfix identified is used. You can use the default identified, that is the underscore _, or set any valid Maple sequence of characters as identifier. For illustration purposes let's set again this default identifier:

Physics:-Setupvectorpostfix=_

vectorpostfix=_

(6)

So the divergence of a non-projected vector can be computed in these three equivalent manners

f_x,y,z

·fx,y,z

(7)

f_x,y,z,Divergence

·fx,y,z

(8)

·f_x,y,z

·fx,y,z

(9)

The curl

f_x,y,z,Curl

×fx,y,z

(10)

To actually compute the operation instead of just representing it, in the case of non-projected vectors use the optional argument useComponent, so that the unknown components are represented using the Component command

f_x,y,z,Curl,useComponent

yfx,y,z3zfx,y,z2i+zfx,y,z1xfx,y,z3j+xfx,y,z2yfx,y,z1k

(11)

See Also

Component, convert,VectorCalculus, Curl, Divergence, Gradient, Identify, Laplacian, Physics, Physics conventions, Physics examples, Physics Updates, Tensors - a complete guide, Mini-Course Computer Algebra for Physicists, Physics[Vectors]