Loading [MathJax]/jax/output/HTML-CSS/jax.js

Returns a character string representing k-tensor and k-form objects in symbolic form. Used by the print method if either option kform_symbolic_print or ktensor_symbolic_print is non-null.

as.symbolic(M,symbols=letters,d="")

Arguments

M

Object of class kform or ktensor; a map from Vk to R, where V=Rn

symbols

A character vector giving the names of the symbols

d

String specifying the appearance of the differential operator

Details

Spivak (p89), in archetypically terse writing, states:

A function f is considered to be a 0-form and fω is also written fω. If f:RnR is differentiable, then Df(p)Λ1(Rn). By a minor modification we therefore obtain a 1-form df, defined by df(p)(vp)=Df(p)(v).

Let us consider in particular the 1-forms dπi. It is customary to let xi denote the function πi (On R3 we often denote x1, x2, and x3 by x, y, and z). This standard notation has obvious disadvantages but it allows many classical results to be expressed by formulas of equally classical appearance. Since dxi(p)(vp)=dπi(p)(vp)=Dπi(p)(v)=vi, we see that dx1(p),,dxn(p) is just the dual basis to (e1)p,,(en)p. Thus every k-form ω can be written

ω=i1<<ikωi1,,ikdxi1dxik.

Function as.symbolic() uses this format. For completeness, we add (p77) that k-tensors may be expressed in the form

ni1,,ik=1ai1,,ikϕi1ϕik.

and this form is used for k-tensors. The print method for tensors, print.ktensor(), writes d1 for ϕ1, d2 for ϕ2 [where ϕi(xj)=δji].

Value

Returns a “noquote” character string.

Author

Robin K. S. Hankin

See also

Examples

(o <- kform_general(3,2,1:3))
#> An alternating linear map from V^2 to R with V=R^3:
#>          val
#>  2 3  =    3
#>  1 3  =    2
#>  1 2  =    1
as.symbolic(o,d="d",symbols=letters[23:26])
#> [1]  +3 dx^dy +2 dw^dy + dw^dx

(a <- rform(n=50))
#> An alternating linear map from V^3 to R with V=R^50:
#>               val
#>   4 14 22  =   -6
#>   3 36 40  =   -4
#>   1 20 44  =   -5
#>   5 23 49  =    9
#>  25 28 34  =    3
#>   3 20 38  =    8
#>  28 38 50  =   -2
#>   6 11 22  =    7
#>   9 16 28  =   -1
as.symbolic(a,symbols=state.abb)
#> [1]  -6 AR^IN^MI -4 AZ^OK^SC -5 AL^MD^UT +9 CA^MN^WI +3 MO^NV^ND +8 AZ^MD^PA -2 NV^PA^WY +7 CO^HI^MI - FL^KS^NV