Class RationalFunction<F extends Field<F>>

java.lang.Object
org.jscience.mathematics.function.Function<F,F>
org.jscience.mathematics.function.RationalFunction<F>
All Implemented Interfaces:
Serializable, javolution.lang.Immutable, javolution.lang.Realtime, javolution.lang.ValueType, Field<RationalFunction<F>>, GroupAdditive<RationalFunction<F>>, GroupMultiplicative<RationalFunction<F>>, Ring<RationalFunction<F>>, Structure<RationalFunction<F>>

public class RationalFunction<F extends Field<F>> extends Function<F,F> implements Field<RationalFunction<F>>
This class represents the quotient of two Polynomial, it is also a field (invertible).
See Also:
  • Method Details

    • getDividend

      public Polynomial<F> getDividend()
      Returns the dividend of this rational function.
      Returns:
      this rational function dividend.
    • getDivisor

      public Polynomial<F> getDivisor()
      Returns the divisor of this rational function.
      Returns:
      this rational function divisor.
    • valueOf

      public static <F extends Field<F>> RationalFunction<F> valueOf(Polynomial<F> dividend, Polynomial<F> divisor)
      Returns the rational function from the specified dividend and divisor.
      Parameters:
      dividend - the dividend value.
      divisor - the divisor value.
      Returns:
      dividend / divisor
    • plus

      public RationalFunction<F> plus(RationalFunction<F> that)
      Returns the sum of two rational functions.
      Specified by:
      plus in interface GroupAdditive<F extends Field<F>>
      Parameters:
      that - the rational function being added.
      Returns:
      this + that
    • opposite

      public RationalFunction<F> opposite()
      Returns the opposite of this rational function.
      Specified by:
      opposite in interface GroupAdditive<F extends Field<F>>
      Returns:
      - this
    • minus

      public RationalFunction<F> minus(RationalFunction<F> that)
      Returns the difference of two rational functions.
      Parameters:
      that - the rational function being subtracted.
      Returns:
      this - that
    • times

      public RationalFunction<F> times(RationalFunction<F> that)
      Returns the product of two rational functions.
      Specified by:
      times in interface GroupMultiplicative<F extends Field<F>>
      Specified by:
      times in interface Ring<F extends Field<F>>
      Parameters:
      that - the rational function multiplier.
      Returns:
      this · that
    • inverse

      public RationalFunction<F> inverse()
      Returns the inverse of this rational function.
      Specified by:
      inverse in interface GroupMultiplicative<F extends Field<F>>
      Returns:
      1 / this
    • divide

      public RationalFunction<F> divide(RationalFunction<F> that)
      Returns the quotient of two rational functions.
      Parameters:
      that - the rational function divisor.
      Returns:
      this / that
    • getVariables

      public List<Variable<F>> getVariables()
      Description copied from class: Function
      Returns a lexically ordered list of the variables (or arguments) for this function (empty list for constant functions).
      Specified by:
      getVariables in class Function<F extends Field<F>,F extends Field<F>>
      Returns:
      this function current unset variables (sorted).
    • evaluate

      public F evaluate()
      Description copied from class: Function
      Evaluates this function using its variables current values.
      Specified by:
      evaluate in class Function<F extends Field<F>,F extends Field<F>>
      Returns:
      the evaluation of this function.
    • toText

      public javolution.text.Text toText()
      Description copied from class: Function
      Returns the textual representation of this real-time object (equivalent to toString except that the returned value can be allocated from the local context space).
      Specified by:
      toText in interface javolution.lang.Realtime
      Specified by:
      toText in class Function<F extends Field<F>,F extends Field<F>>
      Returns:
      this object's textual representation.
    • equals

      public boolean equals(Object obj)
      Description copied from class: Function
      Indicates if this function is equals to the specified object.
      Overrides:
      equals in class Function<F extends Field<F>,F extends Field<F>>
      Parameters:
      obj - the object to be compared with.
      Returns:
      true if this function and the specified argument represent the same function; false otherwise.
    • hashCode

      public int hashCode()
      Description copied from class: Function
      Returns the hash code for this function (consistent with Function.equals(Object).
      Overrides:
      hashCode in class Function<F extends Field<F>,F extends Field<F>>
      Returns:
      this function hash code.
    • differentiate

      public RationalFunction<F> differentiate(Variable<F> v)
      Description copied from class: Function
      Returns the first derivative of this function with respect to the specified variable.
      Overrides:
      differentiate in class Function<F extends Field<F>,F extends Field<F>>
      Parameters:
      v - the variable for which the derivative is calculated.
      Returns:
      d[this]/dv
      See Also:
    • plus

      public Function<F,F> plus(Function<F,F> that)
      Description copied from class: Function
      Returns the sum of this function with the one specified.
      Overrides:
      plus in class Function<F extends Field<F>,F extends Field<F>>
      Parameters:
      that - the function to be added.
      Returns:
      this + that.
    • minus

      public Function<F,F> minus(Function<F,F> that)
      Description copied from class: Function
      Returns the difference of this function with the one specified.
      Overrides:
      minus in class Function<F extends Field<F>,F extends Field<F>>
      Parameters:
      that - the function to be subtracted.
      Returns:
      this - that.
    • times

      public Function<F,F> times(Function<F,F> that)
      Description copied from class: Function
      Returns the product of this function with the one specified.
      Overrides:
      times in class Function<F extends Field<F>,F extends Field<F>>
      Parameters:
      that - the function multiplier.
      Returns:
      this · that.
    • divide

      public Function<F,F> divide(Function<F,F> that)
      Description copied from class: Function
      Returns the quotient of this function with the one specified. Evaluation of this function may raise an exception if the function result is not a {
      Overrides:
      divide in class Function<F extends Field<F>,F extends Field<F>>
      Parameters:
      that - the function divisor.
      Returns:
      this / that.
    • pow

      public RationalFunction<F> pow(int n)
      Description copied from class: Function
      Returns this function raised at the specified exponent.
      Overrides:
      pow in class Function<F extends Field<F>,F extends Field<F>>
      Parameters:
      n - the exponent.
      Returns:
      thisn
    • copy

      public RationalFunction<F> copy()
      Returns a copy of this rational function. allocated by the calling thread (possibly on the stack).
      Specified by:
      copy in interface javolution.lang.ValueType
      Returns:
      an identical and independant copy of this rational function.