spire

math

package math

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. math
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Type Members

  1. case class Above[A] extends Interval[A] with Product with Serializable

  2. final class Algebraic extends ScalaNumber with ScalaNumericConversions with RealLike[Algebraic] with BMFSSBound[Algebraic] with BigDecimalApprox[Algebraic] with FPFilter[Algebraic] with ConstantFolder[Algebraic] with BubbleUpDivs[Algebraic] with PrettyToString[Algebraic] with Ordered[Algebraic] with Serializable

    An general Algebraic type.

  3. class AlgebraicAlgebra extends AlgebraicIsField with AlgebraicIsNRoot with AlgebraicIsReal with Serializable

    Annotations
    @SerialVersionUID( 0L )
  4. trait AlgebraicInstances extends AnyRef

  5. case class All[A] extends Interval[A] with Product with Serializable

  6. trait Approximation[A, B, C] extends (A, B) ⇒ C

    A typeclass approach for getting an approximation to an A using error B in type C.

  7. case class ApproximationContext[A](error: A) extends Product with Serializable

  8. case class Below[A] extends Interval[A] with Product with Serializable

  9. trait BitString[A] extends BooleanAlgebra[A]

  10. final case class Complex[T](real: T, imag: T) extends ScalaNumber with ScalaNumericConversions with Serializable with Product

    Annotations
    @SerialVersionUID( 0L )
  11. trait ComplexInstances extends ComplexInstances1

  12. trait ComplexInstances0 extends AnyRef

  13. trait ComplexInstances1 extends ComplexInstances0

  14. class ComplexIsNumeric[A] extends ComplexEq[A] with ComplexIsField[A] with Numeric[Complex[A]] with ComplexIsTrig[A] with ComplexIsNRoot[A] with ConvertableFromComplex[A] with ConvertableToComplex[A] with Order[Complex[A]] with ComplexIsSigned[A] with Serializable

    Annotations
    @SerialVersionUID( 0L )
  15. trait ConvertableFrom[A] extends AnyRef

  16. trait ConvertableTo[A] extends AnyRef

  17. final class FixedPoint extends AnyVal

    FixedPoint is a value class that provides fixed point arithmetic operations (using an implicit denominator) to unboxed Long values.

  18. class FixedPointOverflow extends Exception

  19. case class FixedScale(denom: Int) extends Product with Serializable

  20. final class FloatComplex extends AnyVal

    Value class which encodes two floating point values in a Long.

  21. trait Fractional[A] extends Field[A] with NRoot[A] with Integral[A]

  22. trait HighBranchingMedianOf5 extends AnyRef

  23. trait Integral[A] extends EuclideanRing[A] with ConvertableFrom[A] with ConvertableTo[A] with IsReal[A]

  24. class IntegralOps[A] extends AnyRef

  25. sealed abstract class Interval[A] extends AnyRef

    Interval represents a set of values, usually numbers.

  26. trait MutatingMedianOf5 extends AnyRef

  27. sealed abstract class Natural extends ScalaNumber with ScalaNumericConversions with Serializable

    Annotations
    @SerialVersionUID( 0L )
  28. class NaturalAlgebra extends NaturalIsRig with NaturalIsReal with Serializable

    Annotations
    @SerialVersionUID( 0L )
  29. trait NaturalInstances extends AnyRef

  30. sealed trait Number extends ScalaNumber with ScalaNumericConversions with Serializable

  31. class NumberAlgebra extends NumberIsField with NumberIsNRoot with NumberIsTrig with NumberIsReal with Serializable

    Annotations
    @SerialVersionUID( 0L )
  32. trait NumberInstances extends AnyRef

  33. trait Numeric[A] extends Ring[A] with AdditiveAbGroup[A] with MultiplicativeAbGroup[A] with NRoot[A] with ConvertableFrom[A] with ConvertableTo[A] with IsReal[A]

    TODO 3.

  34. trait Polynomial[C] extends AnyRef

  35. trait PolynomialEq[C] extends Eq[Polynomial[C]]

  36. trait PolynomialEuclideanRing[C] extends PolynomialRing[C] with EuclideanRing[Polynomial[C]] with VectorSpace[Polynomial[C], C]

  37. trait PolynomialInstances extends PolynomialInstances3

  38. trait PolynomialInstances0 extends AnyRef

  39. trait PolynomialInstances1 extends PolynomialInstances0

  40. trait PolynomialInstances2 extends PolynomialInstances1

  41. trait PolynomialInstances3 extends PolynomialInstances2

  42. trait PolynomialRig[C] extends PolynomialSemiring[C] with Rig[Polynomial[C]]

  43. trait PolynomialRing[C] extends PolynomialRng[C] with Ring[Polynomial[C]]

  44. trait PolynomialRng[C] extends PolynomialSemiring[C] with RingAlgebra[Polynomial[C], C]

  45. trait PolynomialSemiring[C] extends Semiring[Polynomial[C]]

  46. final case class Quaternion[A](r: A, i: A, j: A, k: A) extends ScalaNumber with ScalaNumericConversions with Serializable with Product

  47. trait QuaternionInstances extends AnyRef

  48. case class Ranged[A] extends Interval[A] with Product with Serializable

  49. sealed abstract class Rational extends ScalaNumber with ScalaNumericConversions with Ordered[Rational]

  50. class RationalAlgebra extends RationalIsField with RationalIsReal with Serializable

    Annotations
    @SerialVersionUID( 0L )
  51. trait RationalInstances extends AnyRef

  52. class RationalIsNRoot0 extends RationalIsNRoot with Serializable

    Annotations
    @SerialVersionUID( 0L )
  53. sealed trait Real extends ScalaNumber with ScalaNumericConversions

  54. trait RealIsFractional extends Fractional[Real] with Order[Real] with Signed[Real] with Trig[Real]

  55. sealed trait SafeLong extends ScalaNumber with ScalaNumericConversions with Ordered[SafeLong]

    Provides a type to do safe long arithmetic.

  56. trait SafeLongInstances extends AnyRef

  57. trait Select extends AnyRef

  58. trait SelectLike extends Select

    Given a function for finding approximate medians, this will create an exact median finder.

  59. trait Sort extends AnyRef

    Interface for a sorting strategy object.

  60. final class UByte extends AnyVal with ScalaNumericAnyConversions

  61. trait UByteInstances extends AnyRef

  62. final class UInt extends AnyVal

  63. trait UIntInstances extends AnyRef

  64. final class ULong extends AnyVal

  65. trait ULongInstances extends AnyRef

  66. final class UShort extends AnyVal

  67. trait UShortInstances extends AnyRef

Value Members

  1. object Algebraic extends AlgebraicInstances with Serializable

  2. object Approximation

  3. object ApproximationContext extends Serializable

  4. object BitString

  5. object Complex extends ComplexInstances with Serializable

  6. object ConvertableFrom

  7. object ConvertableTo

  8. object FastComplex

    FastComplex is an ugly, beautiful hack.

  9. object FixedPoint

  10. object FloatComplex

  11. object Fractional

  12. final def IEEEremainder(x: Double, d: Double): Double

  13. object InsertionSort extends Sort

    Simple implementation of insertion sort.

  14. object Integral

  15. object Interval

  16. object LinearSelect extends SelectLike with HighBranchingMedianOf5

  17. object MergeSort extends Sort

    In-place merge sort implementation.

  18. object Natural extends NaturalInstances with Serializable

  19. object Number extends NumberInstances with Serializable

    Convenient apply and implicits for Numbers

  20. object Numeric

  21. object Polynomial extends PolynomialInstances

    Polynomial A univariate polynomial class and EuclideanRing extension trait for arithmetic operations.

  22. object Quaternion extends QuaternionInstances with Serializable

  23. object QuickSelect extends SelectLike with HighBranchingMedianOf5

  24. object QuickSort

    In-place quicksort implementation.

  25. object Rational extends RationalInstances with Serializable

  26. object Real extends Serializable

  27. object SafeLong extends SafeLongInstances with Serializable

  28. object Searching

  29. object Selection

  30. object Sorting

    Object providing in-place sorting capability for arrays.

  31. object UByte extends UByteInstances

  32. object UInt extends UIntInstances

  33. object ULong extends ULongInstances

  34. object UShort extends UShortInstances

  35. final def abs[A](a: A)(implicit ev: Signed[A]): A

  36. final def abs(n: Double): Double

  37. final def abs(n: Float): Float

  38. final def abs(n: Long): Long

  39. final def abs(n: Int): Int

  40. final def abs(n: Short): Short

  41. final def abs(n: Byte): Byte

    abs

  42. final def acos[A](a: A)(implicit ev: Trig[A]): A

  43. package algebraic

  44. final def asin[A](a: A)(implicit ev: Trig[A]): A

  45. final def atan[A](a: A)(implicit ev: Trig[A]): A

  46. final def atan2[A](y: A, x: A)(implicit ev: Trig[A]): A

  47. final def cbrt(x: Double): Double

  48. final def ceil[A](a: A)(implicit ev: IsReal[A]): A

  49. final def ceil(n: BigDecimal): BigDecimal

  50. final def ceil(n: Double): Double

  51. final def ceil(n: Float): Float

    ceil

  52. def choose(n: Long, k: Long): BigInt

    choose (binomial coefficient)

  53. final def copySign(m: Float, s: Float): Float

  54. final def copySign(m: Double, s: Double): Double

  55. final def cos[A](a: A)(implicit ev: Trig[A]): A

  56. final def cosh(x: Double): Double

  57. final def cosh[A](x: A)(implicit ev: Trig[A]): A

  58. final def e[A](implicit ev: Trig[A]): A

  59. final def e: Double

    e

  60. final def exp[A](a: A)(implicit t: Trig[A]): A

  61. final def exp(k: BigDecimal): BigDecimal

  62. final def exp(k: Int, precision: Int): BigDecimal

  63. final def exp(n: Double): Double

    exp

  64. final def expm1(x: Double): Double

  65. def fact(n: Long): BigInt

    factorial

  66. def fib(n: Long): BigInt

    fibonacci

  67. final def floor[A](a: A)(implicit ev: IsReal[A]): A

  68. final def floor(n: BigDecimal): BigDecimal

  69. final def floor(n: Double): Double

  70. final def floor(n: Float): Float

    floor

  71. package fpf

  72. final def gcd[A](x: A, y: A, z: A, rest: A*)(implicit ev: EuclideanRing[A]): A

  73. final def gcd[A](xs: Seq[A])(implicit ev: EuclideanRing[A]): A

  74. final def gcd[A](x: A, y: A)(implicit ev: EuclideanRing[A]): A

  75. final def gcd(a: BigInt, b: BigInt): BigInt

  76. final def gcd(_x: Long, _y: Long): Long

    gcd

  77. final def getExponent(x: Float): Int

  78. final def getExponent(x: Double): Int

  79. final def hypot(x: Double, y: Double): Double

  80. final def lcm[A](x: A, y: A)(implicit ev: EuclideanRing[A]): A

  81. final def lcm(a: BigInt, b: BigInt): BigInt

  82. final def lcm(x: Long, y: Long): Long

    lcm

  83. final def log[A](a: A)(implicit t: Trig[A]): A

  84. final def log(n: BigDecimal): BigDecimal

  85. final def log(n: Double): Double

    log

  86. final def log10(x: Double): Double

  87. final def log1p(x: Double): Double

  88. final def max[A](x: A, y: A)(implicit ev: Order[A]): A

  89. final def max(x: Double, y: Double): Double

  90. final def max(x: Float, y: Float): Float

  91. final def max(x: Long, y: Long): Long

  92. final def max(x: Int, y: Int): Int

  93. final def max(x: Short, y: Short): Short

  94. final def max(x: Byte, y: Byte): Byte

    max

  95. final def min[A](x: A, y: A)(implicit ev: Order[A]): A

  96. final def min(x: Double, y: Double): Double

  97. final def min(x: Float, y: Float): Float

  98. final def min(x: Long, y: Long): Long

  99. final def min(x: Int, y: Int): Int

  100. final def min(x: Short, y: Short): Short

  101. final def min(x: Byte, y: Byte): Byte

    min

  102. final def nextAfter(x: Float, y: Float): Float

  103. final def nextAfter(x: Double, y: Double): Double

  104. final def nextUp(x: Float): Float

  105. final def nextUp(x: Double): Double

  106. final def pi[A](implicit ev: Trig[A]): A

  107. final def pi: Double

    pi

  108. package poly

  109. final def pow(base: Double, exponent: Double): Double

  110. final def pow(base: Long, exponent: Long): Long

    Exponentiation function, e.

    Exponentiation function, e.g. x^y

    If base^ex doesn't fit in a Long, the result will overflow (unlike Math.pow which will return +/- Infinity).

  111. final def pow(base: BigInt, ex: BigInt): BigInt

  112. final def pow(base: BigDecimal, exponent: BigDecimal): BigDecimal

    pow

  113. package prime

    Basic tools for prime factorization.

  114. final def random(): Double

  115. final def rint(x: Double): Double

  116. final def round[A](a: A)(implicit ev: IsReal[A]): A

  117. final def round(a: BigDecimal): BigDecimal

  118. final def round(a: Double): Double

  119. final def round(a: Float): Float

    round

  120. final def scalb(d: Float, s: Int): Float

  121. final def scalb(d: Double, s: Int): Double

  122. final def signum[A](a: A)(implicit ev: Signed[A]): Int

  123. final def signum(x: Float): Float

  124. final def signum(x: Double): Double

    signum

  125. final def sin[A](a: A)(implicit ev: Trig[A]): A

  126. final def sinh[A](x: A)(implicit ev: Trig[A]): A

  127. final def sqrt[A](a: A)(implicit ev: NRoot[A]): A

  128. final def sqrt(x: Double): Double

    sqrt

  129. final def tan[A](a: A)(implicit ev: Trig[A]): A

  130. final def tanh[A](x: A)(implicit ev: Trig[A]): A

  131. final def toDegrees(a: Double): Double

  132. final def toRadians(a: Double): Double

  133. final def ulp(x: Float): Double

  134. final def ulp(x: Double): Double

Inherited from AnyRef

Inherited from Any

Ungrouped