Interface Condition

    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
    • Field Summary

      Fields 
      Modifier and Type Field Description
    • Constructor Summary

      Constructors 
      Constructor Description
    • Enum Constant Summary

      Enum Constants 
      Enum Constant Description
    • Method Summary

      Modifier and Type Method Description
      abstract Condition<T> cloneCondition(Node<T> node, Reaction<T> reaction) This method allows to clone this action on a new node.
      abstract Context getContext()
      abstract ListSet<out Dependency> getInboundDependencies()
      abstract Node<T> getNode()
      abstract double getPropensityContribution() This method is a support for the propensity calculation inside the Reactions.
      abstract boolean isValid()
      void reactionReady() This method is called by the Simulation once the Reaction whose this Condition belongs to is the next one to be executed, and all its conditions passed (namely, the next operation will be the reaction execution).
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

    • Method Detail

      • cloneCondition

         abstract Condition<T> cloneCondition(Node<T> node, Reaction<T> reaction)

        This method allows to clone this action on a new node. It may result useful to support runtime creation of nodes with the same reaction programming, e.g. for morphogenesis.

        Parameters:
        node - The node where to clone this Condition
        reaction - The Reaction where to clone this Condition
        Returns:

        the cloned action

      • getInboundDependencies

         abstract ListSet<out Dependency> getInboundDependencies()
        Returns:

        The list of molecules whose concentration may influence the truth value of this condition

      • getNode

         abstract Node<T> getNode()
        Returns:

        the node this Condition belongs to

      • getPropensityContribution

         abstract double getPropensityContribution()

        This method is a support for the propensity calculation inside the Reactions. It allows this condition to influence the rate calculation in some way. It's up to the reaction to decide whether to use or not this information, and how.

        Returns:

        how this condition may influence the propensity.

      • isValid

         abstract boolean isValid()
        Returns:

        true if the condition is satisfied in current environment.

      • reactionReady

         void reactionReady()

        This method is called by the Simulation once the Reaction whose this Condition belongs to is the next one to be executed, and all its conditions passed (namely, the next operation will be the reaction execution). It can be used to perform sanity checks, as well as for registering the status of the simulated world for future comparisons. Defaults to an empty implementation.