Learn R Programming

stokes (version 1.2-1)

symbolic: Symbolic form

Description

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.

Usage

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

Value

Returns a “noquote” character string.

Arguments

M

Object of class kform or ktensor; a map from \(V^k\) to \(\mathbb{R}\), where \(V=\mathbb{R}^n\)

symbols

A character vector giving the names of the symbols

d

String specifying the appearance of the differential operator

Author

Robin K. S. Hankin

Details

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

A function \(f\) is considered to be a 0-form and \(f\cdot\omega\) is also written \(f\wedge\omega\). If \(f\colon\mathbb{R}^n\longrightarrow\mathbb{R}\) is differentiable, then \(Df(p)\in\Lambda^1\left(\mathbb{R}^n\right)\). By a minor modification we therefore obtain a 1-form \(\mathrm{d}f\), defined by $$\mathrm{d}f(p)\left(v_p\right)=Df(p)(v).$$

Let us consider in particular the 1-forms \(\mathrm{d}\pi^i\). It is customary to let \(x^i\) denote the function \(\pi^i\) (On \(\mathbb{R}^3\) we often denote \(x^1\), \(x^2\), and \(x^3\) 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 \(\mathrm{d}x^i(p)(v_p)=\mathrm{d}\pi^i(p)(v_p)=D\pi^i(p)(v)=v^i\), we see that \(\mathrm{d}x^1(p),\ldots,\mathrm{d}x^n(p)\) is just the dual basis to \((e_1)_p,\ldots,(e_n)_p\). Thus every k-form \(\omega\) can be written

$$ \omega=\sum_{i_1 < \cdots < i_k}\omega_{i_1,\ldots,i_k} \mathrm{d}x^{i_1}\wedge\cdots\wedge\mathrm{d}x^{i_k}.$$

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

$$ \sum_{i_1,\ldots, i_k=1}^n a_{i_1,\ldots,i_k}\cdot \phi_{i_1}\otimes\cdots\otimes\phi_{i_k}.$$

and this form is used for \(k\)-tensors.

See Also

print.stokes,dx

Examples

Run this code
(o <- kform_general(3,2,1:3))
as.symbolic(o,d="d",symbols=letters[23:26])

(a <- rform(n=50))
as.symbolic(a,symbols=state.abb)

Run the code above in your browser using DataLab