print: Print methods for spray objects

print.sprayR Documentation

Print methods for spray objects

Description

Print methods for spray objects with options for printing in matrix form or multivariate polynomial form

Usage

## S3 method for class 'spray'
print(x, ...)
print_spray_matrixform(S)
print_spray_polyform(S,give=FALSE)
printedvalue(v)

Arguments

x, S

spray object

give

Boolean, with default FALSE meaning to print the value of S, and TRUE meaning to return a string (without nice formatting); used in as.character.spray()

v

Numeric vector

...

Further arguments (currently ignored)

Details

The print method, print.spray(), dispatches to helper functions print_spray_matrixform() and print_spray_polyform() depending on the value of option polyform; see the examples section.

Option sprayvars is a character vector with entries corresponding to the variable names for printing. The sprayvars option has no algebraic significance: all it does is affect the print method.

Function printedvalue() is a low-level helper function that takes a numeric argument and returns the value as printed (thus respecting options scipen and digits).

Note that printing a spray object (in either matrix form or polynomial form) generally takes much longer than calculating it.

Value

Returns its argument invisibly.

Note

There are a couple of hard-wired symbols for multiplication and equality which are defined near the top of the helper functions.

There are no checks for option sprayvars being sensible. For example, repeated entries, or entries with zero length, are acceptable but the output might be confusing or uninformative.

Author(s)

Robin K. S. Hankin

Examples


(a <- spray(diag(3)))


options(polyform = FALSE)
a^3

options(polyform = TRUE)
a^3


options(sprayvars=letters)
a <- diag(26)
spray(a)

## Following example from mpoly:
a[1 + cbind(0:25, 1:26) %% 26] <- 2
spray(a)


spray documentation built on Sept. 11, 2024, 9:24 p.m.