Trait

it.unibo.scafi.lib.StdLib_BlocksWithGC

BlocksWithGC

Related Doc: package StdLib_BlocksWithGC

Permalink

trait BlocksWithGC extends (StdLib_BlocksWithGC.this)#BlockG with (StdLib_BlocksWithGC.this)#BlockC

Self Type
(StdLib_BlocksWithGC.this)#BlocksWithGC with (StdLib_BlocksWithGC.this)#FieldCalculusSyntax with (StdLib_BlocksWithGC.this)#StandardSensors
Linear Supertypes
(StdLib_BlocksWithGC.this)#BlockC, (StdLib_BlocksWithGC.this)#BlockG, (StdLib_BlocksWithGC.this)#FieldUtils, (StdLib_BlocksWithGC.this)#Gradients, (StdLib_BlocksWithGC.this)#StateManagement, (StdLib_BlocksWithGC.this)#GenericUtils, AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. BlocksWithGC
  2. BlockC
  3. BlockG
  4. FieldUtils
  5. Gradients
  6. StateManagement
  7. GenericUtils
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. trait FieldOps extends AnyRef

    Permalink
    Definition Classes
    FieldUtils
  2. case class Gradient(algorithm: (Boolean, () ⇒ Double) ⇒ Double, source: Boolean = false, metric: (StdLib_Gradients.this)#Metric = nbrRange) extends Product with Serializable

    Permalink
    Definition Classes
    Gradients

Value Members

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def BisGradient(commRadius: Double = 0.2, lagMetric: ⇒ Double = nbrLag().toMillis): (BlocksWithGC.this)#Gradient

    Permalink
    Definition Classes
    Gradients
  5. def C[P, V](potential: P, acc: (V, V) ⇒ V, local: V, Null: V)(implicit arg0: Bounded[P]): V

    Permalink

    Collects values down a potential field.

    Collects values down a potential field.

    P

    type of the potential field

    V

    type of the values to be collected/accumulated

    potential

    the field providing the direction of the collection process

    acc

    the function describing how values are to be collected

    local

    the value field providing the value to be collected for each device

    Null

    zero value for accumulation and for neighbours for which the current device is *not* a parent in the field

    returns

    the accumulation value for each device according to its position in the potential field

    Definition Classes
    BlockC
  6. val ClassicGradient: (BlocksWithGC.this)#Gradient

    Permalink
    Definition Classes
    Gradients
  7. val ClassicHopGradient: (BlocksWithGC.this)#Gradient

    Permalink
    Definition Classes
    Gradients
  8. def CrfGradient(raisingSpeed: Double = 5, lagMetric: ⇒ Double = nbrLag().toMillis): (BlocksWithGC.this)#Gradient

    Permalink
    Definition Classes
    Gradients
  9. def FlexGradient(epsilon: Double = 0.5, delta: Double = 1.0, communicationRadius: Double = 1.0): (BlocksWithGC.this)#Gradient

    Permalink
    Definition Classes
    Gradients
  10. def G[V](source: Boolean, field: V, acc: (V) ⇒ V, metric: () ⇒ Double): V

    Permalink
    Definition Classes
    BlockG
  11. def Gcurried[V](source: Boolean)(field: V)(acc: (V) ⇒ V)(metric: (StdLib_BlocksWithGC.this)#Metric = nbrRange): V

    Permalink

    Curried version of G

    Curried version of G

    Definition Classes
    BlockG
  12. def SvdGradient(lagMetric: ⇒ Double = nbrLag().toMillis): (BlocksWithGC.this)#Gradient

    Permalink
    Definition Classes
    Gradients
  13. def UltGradient(radius: Double = 0.2, factor: Double = 0.1): (BlocksWithGC.this)#Gradient

    Permalink
    Definition Classes
    Gradients
  14. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  15. def average(sink: Boolean, value: Double): Double

    Permalink
  16. def bisGradient(commRadius: Double = 0.2, lagMetric: ⇒ Double = nbrLag().toMillis)(source: Boolean, metric: (StdLib_BlocksWithGC.this)#Metric = nbrRange): Double

    Permalink
    Definition Classes
    Gradients
  17. def broadcast[V](source: Boolean, field: V, metric: (StdLib_BlocksWithGC.this)#Metric = nbrRange): V

    Permalink

    Broadcast information outward from a source field.

    Broadcast information outward from a source field.

    V

    Type of the value to be broadcast

    source

    The source of the broadcast

    field

    Field denoting (1) at the source, the value to be broadcast; and (2) in other places, the default value of the broadcast field.

    metric

    Metric that parameterises the gradient-based construction of the the propagation structure

    returns

    A broadcast field.

    Definition Classes
    BlockG
  18. def captureChange[T](x: T, initially: Boolean = true): Boolean

    Permalink

    returns

    true only when a discontinuity (i.e., a change) is observed on x (you may choose how to handle the first observation)

    Definition Classes
    StateManagement
  19. def channel(source: Boolean, target: Boolean, width: Double): Boolean

    Permalink

    A channel from a source to a target with width width.

    A channel from a source to a target with width width. A channel is a boolean field which is true in correspondence of the device positioned along the minimum path from source to target.

    Definition Classes
    BlockG
  20. def classicGradient(source: Boolean, metric: () ⇒ Double = nbrRange): Double

    Permalink
    Definition Classes
    Gradients
  21. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate() @throws( ... )
  22. def collectCount(alongPotentialField: Double, predicate: Boolean): Long

    Permalink

    returns

    the collection of the number of devices for which predicate is true

    Definition Classes
    BlockC
  23. def collectIntoSet[T](downTo: Double, local: T): Set[T]

    Permalink

    Collects a set by merging values

    Collects a set by merging values

    Definition Classes
    BlockC
  24. def collectMaps[K, V](downTo: Double, local: Map[K, V], merge: (K, V, V) ⇒ V = (k: K, v1: V, v2: V) => v1): Map[K, V]

    Permalink

    Collects a map by merging map entries

    Collects a map by merging map entries

    downTo

    potential field

    local

    maps to be merged

    merge

    function specifying how to merge entries with the same key

    returns

    the collect field of the merged maps

    Definition Classes
    BlockC
  25. def collectMean(alongPotentialField: Double, value: Double): Double

    Permalink

    returns

    the collect field of the mean of the value field

    Definition Classes
    BlockC
  26. def collectSets[T](downTo: Double, local: Set[T]): Set[T]

    Permalink

    Collects a set by merging sets

    Collects a set by merging sets

    Definition Classes
    BlockC
  27. def collectValuesByDevices[T](downTo: Double, local: T): Map[(StdLib_BlocksWithGC.this)#ID, T]

    Permalink

    Collects values as a map by preserving the sources of those values

    Collects values as a map by preserving the sources of those values

    Definition Classes
    BlockC
  28. def constant[T](value: ⇒ T): T

    Permalink

    Alias for remember()

    Alias for remember()

    Definition Classes
    StateManagement
  29. def countChanges[T](x: T, initially: Boolean = true): (Long, Boolean)

    Permalink
    Definition Classes
    StateManagement
  30. def crfGradient(raisingSpeed: Double = 5, lagMetric: ⇒ Double = nbrLag().toMillis)(source: Boolean, metric: (StdLib_BlocksWithGC.this)#Metric = nbrRange): Double

    Permalink
    Definition Classes
    Gradients
  31. def delay[T](value: T): T

    Permalink

    It is a simple building block which returns the same values it receives in input delayed by one computation round.

    It is a simple building block which returns the same values it receives in input delayed by one computation round.

    Definition Classes
    StateManagement
  32. def distanceBetween(source: Boolean, target: Boolean, metric: (StdLib_BlocksWithGC.this)#Metric = nbrRange): Double

    Permalink

    Distance between source to target based on metric

    Distance between source to target based on metric

    Definition Classes
    BlockG
  33. def distanceTo(source: Boolean, metric: (StdLib_BlocksWithGC.this)#Metric = nbrRange): Double

    Permalink

    A field of distance (i.e., a gradient) from a source, based on a given metric

    A field of distance (i.e., a gradient) from a source, based on a given metric

    Definition Classes
    BlockG
  34. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  35. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  36. object excludingSelf extends (FieldUtils.this)#FieldOps

    Permalink
    Definition Classes
    FieldUtils
  37. def findParent[V](potential: V)(implicit arg0: Bounded[V]): (StdLib_BlocksWithGC.this)#ID

    Permalink

    returns

    the ID of the "parent device" along a potential field, i.e., the neighbour with the smallest value of the potential field.

    Definition Classes
    BlockC
  38. def findParentOpt[V](potential: V)(implicit arg0: Bounded[V]): Option[(StdLib_BlocksWithGC.this)#ID]

    Permalink

    returns

    the parent device UID of the current device along field potential, or None if no such a parent is there (so that the device is parent of itself).

    Definition Classes
    BlockC
  39. def flexGradient(epsilon: Double = 0.5, delta: Double = 1.0, communicationRadius: Double = 1.0)(source: Boolean, metric: (StdLib_BlocksWithGC.this)#Metric = nbrRange): Double

    Permalink

    Idea: a device should change its estimate only for significant errors.

    Idea: a device should change its estimate only for significant errors. Useful when devices far from the source need only coarse estimates. Flex gradient provides tunable trade-off between precision and communication cost.

    epsilon

    Parameter expressing tolerance wrt changes

    delta

    Distortion into the distance measure, such that neighbor distance is never considered to be less than delta * communicationRadius.

    source

    Source fields of devices from which the gradient is calculated

    Definition Classes
    Gradients
  40. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  41. def goesDown(value: Boolean): Boolean

    Permalink

    returns

    true when the given parameter goes from true to false (starting from false); false otherwise

    Definition Classes
    StateManagement
  42. def goesUp(value: Boolean): Boolean

    Permalink

    returns

    true when the given parameter goes from false to true (starting from false); false otherwise

    Definition Classes
    StateManagement
  43. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
    Annotations
    @HotSpotIntrinsicCandidate()
  44. def hopDistance(source: Boolean): Double

    Permalink

    Hop distance

    Hop distance

    Definition Classes
    BlockG
  45. def hopGradient(source: Boolean): Double

    Permalink
    Definition Classes
    Gradients
  46. object includingSelf extends (FieldUtils.this)#FieldOps

    Permalink
    Definition Classes
    FieldUtils
  47. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  48. def keep(expr: ⇒ Boolean): Boolean

    Permalink

    Remembers the occurrence of some condition or event

    Remembers the occurrence of some condition or event

    Definition Classes
    StateManagement
  49. def keep[T](expr: ⇒ Option[T]): Option[T]

    Permalink

    Remembers the provided optional value, unless empty

    Remembers the provided optional value, unless empty

    Definition Classes
    StateManagement
  50. def meanCounter(value: Double, frequency: Long): Double

    Permalink
    Definition Classes
    GenericUtils
  51. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  52. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  53. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @HotSpotIntrinsicCandidate()
  54. def once[T](expr: ⇒ T): Option[T]

    Permalink

    Returns a non-empty optional with the provided value just once, then None

    Returns a non-empty optional with the provided value just once, then None

    Definition Classes
    StateManagement
  55. def remember[T](value: ⇒ T): T

    Permalink

    Remembers the provided value

    Remembers the provided value

    Definition Classes
    StateManagement
  56. def roundCounter(): Long

    Permalink

    Counts the number of rounds, refreshing each time the computation is re-entered.

    Counts the number of rounds, refreshing each time the computation is re-entered. TODO: consider boundedness as a limitation for long-lived/eternal systems

    returns

    the number of the round

    Definition Classes
    StateManagement
  57. def summarize(sink: Boolean, acc: (Double, Double) ⇒ Double, local: Double, Null: Double): Double

    Permalink
  58. def svdGradient(lagMetric: ⇒ Double = nbrLag().toMillis)(source: Boolean, metric: (StdLib_BlocksWithGC.this)#Metric = nbrRange): Double

    Permalink
    Definition Classes
    Gradients
  59. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  60. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  61. def ultGradient(radius: Double = 0.2, factor: Double = 0.1)(source: Boolean, metric: (StdLib_BlocksWithGC.this)#Metric = nbrRange): Double

    Permalink
    Definition Classes
    Gradients
  62. final def wait(arg0: Long, arg1: Int): Unit

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

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  64. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Deprecated Value Members

  1. def G_along[V](g: Double, metric: (StdLib_BlocksWithGC.this)#Metric, field: V, acc: (V) ⇒ V): V

    Permalink

    Version of G (Gradient-Cast) that takes a potential field g as input

    Version of G (Gradient-Cast) that takes a potential field g as input

    V

    type of the value to be accumulated

    g

    potential field

    metric

    metric to use for the "last step"

    field

    value of the field for sources

    acc

    aggregator

    returns

    a field that locally provides the value of the gradient-cast (field at sources, and an accumulation value along the way)

    Definition Classes
    BlockG
    Deprecated

    As it seems buggy.

  2. def Gg[V](gradient: (BlocksWithGC.this)#Gradient, field: V, acc: (V) ⇒ V): V

    Permalink

    Version of G (Gradient-Cast) that takes a Gradient algorithm as input.

    Version of G (Gradient-Cast) that takes a Gradient algorithm as input. This is motivated by the desire of speeding G up by using

    gradient

    The gradient algorithm to use -- notice that this encapsulates details about the gradient field (e.g., the sources)

    Definition Classes
    BlockG
    Deprecated

    As it seems buggy: see G_along method.

  3. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @Deprecated @deprecated @throws( classOf[java.lang.Throwable] )
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from (StdLib_BlocksWithGC.this)#BlockC

Inherited from (StdLib_BlocksWithGC.this)#BlockG

Inherited from (StdLib_BlocksWithGC.this)#FieldUtils

Inherited from (StdLib_BlocksWithGC.this)#Gradients

Inherited from (StdLib_BlocksWithGC.this)#StateManagement

Inherited from (StdLib_BlocksWithGC.this)#GenericUtils

Inherited from AnyRef

Inherited from Any

Ungrouped