tensor[commutator] - compute the commutator of two contravariant vector fields
|
Calling Sequence
|
|
commutator( U, V, coord)
|
|
Parameters
|
|
U, V
|
-
|
contravariant vector fields
|
coord
|
-
|
list of coordinate names
|
|
|
|
|
Description
|
|
•
|
Given the coordinate variables, coord, and two contravariant vector fields, U and V, commutator( U, V, coord ) computes the commutator of U and V using the usual partial derivative with respect to the coordinates using the formula:
|
•
|
It is required that U and V be tensor_types with character: [1] (that is, U and V are contravariant vector fields)
|
•
|
Note that the result is a tensor_type of rank 1 with character [1].
|
•
|
Simplification: This routine uses the routine `tensor/commutator/simp` routine for simplification purposes. The simplification routine is applied to each component once it has been computed. By default, this routine is initialized to the `tensor/simp` routine. It is recommended that the `tensor/commutator/simp` routine be customized to suit the needs of the particular problem.
|
•
|
This function is part of the tensor package, and so can be used in the form commutator(..) only after performing the command with(tensor) or with(tensor, commutator). The function can always be accessed in the long form tensor[commutator](..).
|
|
|
Examples
|
|
>
|
|
Define U and V -- two contravariant vector fields:
>
|
|
| (1) |
>
|
|
| (2) |
Define the coordinates:
>
|
|
| (3) |
Because the components of U and V contain expressions involving ln, define `tensor/commutator/simp` to apply simplify( ... , ln) to each computed component:
>
|
`tensor/commutator/simp`:=proc(x) simplify(x,ln) end proc;
|
| (4) |
Now compute the commutator of U and V:
>
|
|
![comUV := TABLE([compts = vector([-2*(y-z)*x+y+ln(x*z)-(1/3)*z, 3*x-(y-z)/x-(2/3)*z-ln(x^3)-ln(z/y)/z, -(y+ln(x*z))/y+1/3-(1/3)*ln(z/y)]), index_char = [1]])](/support/helpjp/helpview.aspx?si=5504/file04515/math167.png)
| (5) |
|
|