timeTable.transportNetwork
Interface FlowableArc

All Known Implementing Classes:
Arc

public interface FlowableArc

Interface pour les flots, plus précisément pour les arêtes.
Les arêtes représentées dans cette interface doivent posséder un intervalle de valuations, pouvoir accepter des flots, et permettre un accès aux sommets adjacents. Le réseau mis en place ici doit admettre le flot nul comme solution réalisable. Une valuation strictement négative est interprétée ici comme une absence de borne. Une valuation négative doit être implémentée comme une valuation positive sur l'arc inconforme.


Method Summary
 double getConformResidualValue()
          Quantité de flot qu'il est encore possible de faire passer dans cet arc.
 double getFlowValue()
          Valeur effective du flot.
 FlowableVertex getInVertex()
          Si l'arc courant (u, v) est orienté de u vers v, cette méthode retourne le sommet u.
 double getMaxCapacity()
          Capacité de l'arc conforme, c'est-à-dire flot maximal qu'il est possible d'y faire passer.
 double getMinCapacity()
          Capacité de l'arc inconforme, c'est-à-dire flot qu'il est possible de faire passer dans le sens inverse.
 FlowableVertex getOutVertex()
          Si l'arc courant (u, v) est orienté de u vers v, cette méthode retourne le sommet v.
 double getUnconformResidualValue()
          Quantité de flot qu'il est possible de faire passer dans l'arc non conforme.
 void increaseConformFlow(double increment)
          Pour augmenter le flot dans l'orientation conforme.
 void increaseUnconformFlow(double increment)
          Pour augmenter le flot dans l'orientation non conforme.
 

Method Detail

getMinCapacity

double getMinCapacity()
Capacité de l'arc inconforme, c'est-à-dire flot qu'il est possible de faire passer dans le sens inverse. Cette valeur peut aussi être vue comme une borne inférieure pour un flot négatif. Si il n'existe pas de borne inférieure, donc que l'arc non conforme est de capacité infinie, il faut renvoyer une valeur strictement positive.


getMaxCapacity

double getMaxCapacity()
Capacité de l'arc conforme, c'est-à-dire flot maximal qu'il est possible d'y faire passer. Si la capacité de cet arc est infinie, il faut renvoyer une valeur strictement négative.


getFlowValue

double getFlowValue()
Valeur effective du flot.


getConformResidualValue

double getConformResidualValue()
Quantité de flot qu'il est encore possible de faire passer dans cet arc. C'est à dire sa valeur dans le graphe résiduel. Renvoyer 0 s'il n'est plus possible d'en faire passer, un nombre strictement négatif si cette arête est dans le graphe résiduel de capacité infinie.


getUnconformResidualValue

double getUnconformResidualValue()
Quantité de flot qu'il est possible de faire passer dans l'arc non conforme. Valeur résiduelle de l'arc dans le sens inverse. On peut aussi voir cela comme la quantité de flot qu'il est possible de retrancher sur cet arc. S'il n'est plus possible d'ajouter du flot sur l'arc inconforme, renvoyer 0. Si l'arc inconforne est de capacité infinie, renvoyer une valeur strictement négative.


getInVertex

FlowableVertex getInVertex()
Si l'arc courant (u, v) est orienté de u vers v, cette méthode retourne le sommet u.


getOutVertex

FlowableVertex getOutVertex()
Si l'arc courant (u, v) est orienté de u vers v, cette méthode retourne le sommet v.


increaseConformFlow

void increaseConformFlow(double increment)
Pour augmenter le flot dans l'orientation conforme.


increaseUnconformFlow

void increaseUnconformFlow(double increment)
Pour augmenter le flot dans l'orientation non conforme.