org.rubato.math.module
Interface RFreeElement

All Superinterfaces:
java.lang.Cloneable, java.lang.Comparable<ModuleElement>, FreeElement, java.lang.Iterable<RingElement>, ModuleElement, java.io.Serializable, XMLInputOutput<ModuleElement>
All Known Implementing Classes:
RElement, RProperFreeElement

public interface RFreeElement
extends FreeElement

The interface for elements in free modules over reals.

Author:
Gérard Milmeister
See Also:
RFreeModule

Method Summary
 RFreeElement clone()
          Returns a deep copy of this module element.
 RFreeElement difference(ModuleElement element)
          Returns the difference of this module element and element.
 RElement getComponent(int i)
          Returns the i-th component of this free element.
 RElement getRingElement(int i)
          Returns the i-th ring component of this free element.
 RFreeElement negated()
          Returns the negative of this module element.
 RFreeElement resize(int n)
          Returns this free element resized to length n.
 RFreeElement scaled(RingElement element)
          Returns the product of this element with element.
 RFreeElement sum(ModuleElement element)
          Returns the sum of this module element and element.
 
Methods inherited from interface org.rubato.math.module.FreeElement
getLength, iterator, multiplyCW, productCW
 
Methods inherited from interface org.rubato.math.module.ModuleElement
add, cast, compareTo, equals, fold, getModule, hashCode, isZero, negate, scale, stringRep, subtract, toString
 
Methods inherited from interface org.rubato.xml.XMLInputOutput
fromXML, getElementTypeName, toXML
 

Method Detail

sum

RFreeElement sum(ModuleElement element)
                 throws DomainException
Description copied from interface: ModuleElement
Returns the sum of this module element and element.

Specified by:
sum in interface ModuleElement
Throws:
DomainException - if element is not in domain

difference

RFreeElement difference(ModuleElement element)
                        throws DomainException
Description copied from interface: ModuleElement
Returns the difference of this module element and element.

Specified by:
difference in interface ModuleElement
Throws:
DomainException - if element is not in domain

negated

RFreeElement negated()
Description copied from interface: ModuleElement
Returns the negative of this module element.

Specified by:
negated in interface ModuleElement

scaled

RFreeElement scaled(RingElement element)
                    throws DomainException
Description copied from interface: ModuleElement
Returns the product of this element with element.

Specified by:
scaled in interface ModuleElement
Throws:
DomainException - if element is not in domain

resize

RFreeElement resize(int n)
Description copied from interface: FreeElement
Returns this free element resized to length n. If the new length n is greater than the old length, the new values are filled with the zero of the underlying ring. If the new length n is less than the old length, the vector of values is simply truncated.

Specified by:
resize in interface FreeElement

getComponent

RElement getComponent(int i)
Description copied from interface: FreeElement
Returns the i-th component of this free element.

Specified by:
getComponent in interface FreeElement
Specified by:
getComponent in interface ModuleElement

getRingElement

RElement getRingElement(int i)
Description copied from interface: FreeElement
Returns the i-th ring component of this free element.

Specified by:
getRingElement in interface FreeElement

clone

RFreeElement clone()
Description copied from interface: ModuleElement
Returns a deep copy of this module element.

Specified by:
clone in interface ModuleElement