# Measure

### Related Doc: package measure

#### trait Measure[Self <: Measure[Self]] extends AnyMeasure

Measure.

The guiding principle(s) of design is and should be:

1. Construction of a measure should be fast, without any recursion/iteration to perform simplification. 2. Compute-intensive methods, such as simplify, perform simplification and should be called only when necessary.

Self Type
Self
Linear Supertypes
AnyMeasure, Dynamic, Serializable, Serializable, Product, Equals, AnyRef, Any
Ordering
1. Alphabetic
2. By Inheritance
Inherited
1. Measure
2. AnyMeasure
3. Dynamic
4. Serializable
5. Serializable
6. Product
7. Equals
8. AnyRef
9. Any
1. Hide All
2. Show All
Visibility
1. Public
2. All

### Abstract Value Members

2. #### abstract def canEqual(that: Any): Boolean

Definition Classes
Equals

4. #### abstract def dimension: Self.D

Gets dimension of this measure.

Gets dimension of this measure.

Definition Classes
MeasureAnyMeasure
5. #### abstract def name: String

Measure name.

Measure name.

Definition Classes
AnyMeasure
6. #### abstract def productArity: Int

Definition Classes
Product
7. #### abstract def productElement(n: Int): Any

Definition Classes
Product
8. #### abstract def system: SystemOfUnits

Gets system of units.

Gets system of units.

Definition Classes
AnyMeasure

### Concrete Value Members

1. #### final def !=(arg0: Any): Boolean

Definition Classes
AnyRef → Any
2. #### final def ##(): Int

Definition Classes
AnyRef → Any
3. #### def *[M2 <: Measure[M2], R](multiplier: M2)(implicit cm: CanMultiplyMeasure[Self, M2, R]): R

Multiplies by another measure.

4. #### def *(measure: AnyMeasure)(implicit cm: CanMultiplyMeasure[AnyMeasure, AnyMeasure, AnyMeasure]): AnyMeasure

Definition Classes
AnyMeasure

6. #### def -[M2 <: Measure[M2]](subtrahend: M2)(implicit ca: CanAddMeasure[Self, M2]): R

Subtracts another measure.

7. #### def /[M2 <: Measure[M2], R](denominator: M2)(implicit cd: CanDivideMeasure[Self, M2, R]): R

Divides by another measure.

8. #### def /(measure: AnyMeasure)(implicit cd: CanDivideMeasure[AnyMeasure, AnyMeasure, AnyMeasure]): AnyMeasure

Definition Classes
AnyMeasure
9. #### final def ==(arg0: Any): Boolean

Definition Classes
AnyRef → Any
10. #### def ^[R <: Measure[R]](exponent: Double)(implicit ce: CanExponentiateMeasure[Self, R]): R

Exponentiates this measure.

11. #### def ^(exponent: Double)(implicit ce: CanExponentiateMeasure[AnyMeasure, AnyMeasure]): AnyMeasure

Definition Classes
AnyMeasure
12. #### final def asInstanceOf[T0]: T0

Definition Classes
Any
13. #### def clone(): AnyRef

Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
@throws( ... )
14. #### def collect[B](pf: PartialFunction[AnyMeasure, B]): B

Definition Classes
AnyMeasure
Annotations
@inline()

16. #### final def eq(arg0: AnyRef): Boolean

Definition Classes
AnyRef
17. #### def equals(arg0: Any): Boolean

Definition Classes
AnyRef → Any
18. #### def exponent: Double

Gets exponent of this measure.

Gets exponent of this measure.

Definition Classes
AnyMeasure
19. #### def finalize(): Unit

Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
@throws( classOf[java.lang.Throwable] )
20. #### final def getClass(): Class[_]

Definition Classes
AnyRef → Any
21. #### def hashCode(): Int

Definition Classes
AnyRef → Any

23. #### def inverse[R <: Measure[R]](implicit ce: CanExponentiateMeasure[Self, R]): R

Gets an inverse of this measure.

24. #### final def isInstanceOf[T0]: Boolean

Definition Classes
Any
25. #### def isStructuralAtom: Boolean

Determines if this measure can be decomposed into constituent measures.

Determines if this measure can be decomposed into constituent measures.

Definition Classes
AnyMeasure
26. #### final def ne(arg0: AnyRef): Boolean

Definition Classes
AnyRef
27. #### final def notify(): Unit

Definition Classes
AnyRef
28. #### final def notifyAll(): Unit

Definition Classes
AnyRef
29. #### def productIterator: Iterator[Any]

Definition Classes
Product
30. #### def productPrefix: String

Definition Classes
Product
31. #### def simplify[R <: Measure[R]](implicit cs: CanSimplifyMeasure[Self, Option[R]]): Option[R]

Attempts to simplify to target type.

32. #### def simplify(implicit cs: CanSimplifyMeasure[AnyMeasure, AnyMeasure]): AnyMeasure

Definition Classes
AnyMeasure
33. #### final def structuralName: String

Gets structural name of this measure.

Gets structural name of this measure.

Definition Classes
AnyMeasure
34. #### final def synchronized[T0](arg0: ⇒ T0): T0

Definition Classes
AnyRef
35. #### def to[M2 <: Measure[M2]](target: M2)(implicit cc: CanConvert[Self, M2]): Option[Double]

Converts to target measure.

36. #### def to(target: AnyMeasure)(implicit cc: CanConvert[AnyMeasure, AnyMeasure]): Option[Double]

Definition Classes
AnyMeasure
37. #### def toOrElse[M2 <: Measure[M2], B >: Double](target: M2, default: B)(implicit cc: CanConvert[Self, M2]): B

Converts to target measure with default value.

38. #### def toOrElse[B >: Double](target: AnyMeasure, default: B)(implicit cc: CanConvert[AnyMeasure, AnyMeasure]): B

Definition Classes
AnyMeasure
39. #### def toString(): String

Definition Classes
AnyRef → Any
40. #### lazy val ultimateBase: Option[(Self, Double)]

Gets ultimate base.

Gets ultimate base.

Definition Classes
MeasureAnyMeasure
41. #### final def wait(): Unit

Definition Classes
AnyRef
Annotations
@throws( ... )
42. #### final def wait(arg0: Long, arg1: Int): Unit

Definition Classes
AnyRef
Annotations
@throws( ... )
43. #### final def wait(arg0: Long): Unit

Definition Classes
AnyRef
Annotations
@throws( ... )