Physics[Vectors][ChangeBasis] - change the projection basis and optionally also the coordinates used in the components of the vector expression
|
Calling Sequence
|
|
ChangeBasis(A, newbasis)
ChangeBasis(A, newbasis, alsocomponents)
|
|
Parameters
|
|
A
|
-
|
any algebraic expression
|
newbasis
|
-
|
one of the bases identifiers {1, 2, 3}, or one of the bases keywords {cartesian, cylindrical, spherical}
|
alsocomponents
|
-
|
optional, to indicate that the components of the vector expression too should be expressed in terms of the natural coordinates of newbasis
|
|
|
|
|
Description
|
|
•
|
ChangeBasis changes the projection basis (unit vectors) of a given vector function to the projection basis indicated newbasis. Optionally, when the argument alsocomponents is given, the components of the vector are also rewritten in terms of the natural coordinates related to newbasis. For the conventions used in the Physics[Vectors] subpackage to represent vector functions, see conventions.
|
•
|
The %ChangeBasis is the inert form of ChangeBasis, that is: it represents the same mathematical operation while holding the operation unperformed. To activate the operation use value.
|
–
|
If is not a vector function, then an error message is returned.
|
–
|
If is a non-projected vector, then ChangeBasis returns unevaluated.
|
–
|
Otherwise, the projection basis is changed according to:
|
–
|
From cartesian basis to cylindrical basis:
|
>
|
_i = (cos(phi) * _rho - sin(phi) * _phi);
|
| (1) |
>
|
_j = (sin(phi) *_rho + cos(phi) * _phi);
|
| (2) |
–
|
From cartesian basis to spherical basis:
|
>
|
_i = (sin(theta)*cos(phi)*_r + cos(theta)*cos(phi)*_theta -sin(phi)*_phi);
|
| (3) |
>
|
_j = (sin(theta)*sin(phi)*_r + cos(theta)*sin(phi)*_theta + cos(phi)*_phi);
|
| (4) |
>
|
_k = (cos(theta)*_r - sin(theta)*_theta);
|
| (5) |
–
|
From cylindrical basis to spherical basis:
|
>
|
_rho = (sin(theta)*_r + cos(theta)*_theta);
|
| (6) |
>
|
_k = (cos(theta)*_r - sin(theta)*_theta);
|
| (7) |
•
|
When changing the basis, some extra factors depending on the coordinates are introduced. These factors are always expressed in the "upper" coordinate's system; i.e., the transformation from cartesian to cylindrical (from 1 to 2) will introduce factors depending on , and so on, as shown in the examples below.
|
•
|
Note that, by default, only the projection basis is changed, not the coefficients of the unit vectors (components). To additionally change the components of the vector, re-expressing them in terms of the natural coordinates of the indicated newbasis, use the optional argument alsocomponents.
|
|
|
Examples
|
|
>
|
|
| (8) |
>
|
|
| (9) |
A cartesian projected vector
>
|
|
| (10) |
Vector R projected onto the cartesian basis.
>
|
|
| (11) |
Vector R projected onto the cylindrical basis.
>
|
|
| (12) |
>
|
|
| (13) |
Vector R projected onto the spherical basis: note also that automatic partial match of keywords
>
|
|
| (14) |
>
|
|
| (15) |
>
|
|
|
|