Arith {frab} | R Documentation |
Arithmetic methods for class "frab"
Description
The frab
class provides basic arithmetic methods for frab
objects. Arithmetic operations are generally dispatched to one of
self-describing functions in the following list:
frab_negative()
frab_reciprocal()
frab_plus_frab()
frab_multiply_frab()
frab_plus_numeric()
frab_multiply_numeric()
frab_power_numeric()
numeric_power_frab()
The most important one is, of course, frab_plus_frab()
which is
the sine qua non for the whole package. But these functions
are not intended for user and are somewhat unfriendly. Use the
arithmetic operators, as in “a + 2*b
” instead.
Low-level helper functions c_frab_add()
and
c_frab_multiply()
etc. are generated by
compileAttributes()
. They call the C routines in
the src
directory. Low-level helper function
c_frab_pmax()
is documented here for consistency; but
technically c_frab_pmax()
is an “Extremes” function.
They are documented at Compare and pmax respectively.
Usage
frab_negative(x)
frab_reciprocal(x)
frab_plus_frab(F1,F2)
frab_multiply_numeric(e1,e2)
frab_power_numeric(e1,e2)
numeric_power_frab(e1,e2)
frab_unary(e1,e2)
frab_arith_frab(e1,e2)
frab_plus_numeric(e1,e2)
frab_arith_numeric(e1,e2)
numeric_arith_frab(e1,e2)
Arguments
e1 , e2 , x , F1 , F2 |
Objects of class |
Value
Return frab
objects
Methods
- Arith
signature(e1="frab" , e2="missing")
: blah blah blah- Arith
signature(e1="frab" , e2="frab" )
: ...- Arith
signature(e1="frab" , e2="numeric")
: ...- Arith
signature(e1="numeric", e2="frab" )
: ...- Arith
signature(e1="ANY" , e2="frab" )
: ...- Arith
signature(e1="frab" , e2="ANY" )
: ...
Note
There are a few peculiarities in the methods. Function
frab_plus_numeric(e1,e2)
assumes e1
is a frab
and
e2
is numeric. But if e2
is a named vector, it is
coerced to a frab; if not, a [simulated] disordR violation
is raised.
Author(s)
Robin K. S. Hankin
See Also
Examples
(x <- frab(c(a=1,b=2,c=3)))
(y <- frab(c(b=-2,d=8,x=1,y=7)))
(z <- frab(c(c=2,x=5,b=1,a=6)))
x+y
x+y+z
x*y