| 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