|
|
@@ -398,27 +398,43 @@ class Port(CoupledDEVS):
|
|
|
}
|
|
|
|
|
|
|
|
|
- Z = 0.0
|
|
|
- S1 = 0.0
|
|
|
- S2 = 0.0
|
|
|
- S3 = 0.0
|
|
|
- S4 = 0.0
|
|
|
+ S1 = {
|
|
|
+ "strong": 0.0,
|
|
|
+ "average": 0.0,
|
|
|
+ "weak": 0.0
|
|
|
+ }
|
|
|
+ S2 = {
|
|
|
+ "strong": 0.0,
|
|
|
+ "average": 0.0,
|
|
|
+ "weak": 0.0
|
|
|
+ }
|
|
|
+ S3 = {
|
|
|
+ "strong": 0.0,
|
|
|
+ "average": 0.0,
|
|
|
+ "weak": 0.0
|
|
|
+ }
|
|
|
+ S4 = {
|
|
|
+ "strong": 0.0,
|
|
|
+ "average": 0.0,
|
|
|
+ "weak": 0.0
|
|
|
+ }
|
|
|
for vessel in list(self.pool.state["waiting"].values()) + self.sailer.state["vessels"]:
|
|
|
T_Tug_S = vessel.footprint.sailing_time / 3600
|
|
|
T_Tug_P = vessel.footprint.tugging_time / 3600
|
|
|
T_Tug_W = vessel.footprint.idle_time / 3600
|
|
|
|
|
|
- S1 += C_Tug_S[vessel.category] * T_Tug_S
|
|
|
- S2 += C_Tug_P[vessel.category] * T_Tug_P
|
|
|
- S3 += C_Tug_W[vessel.category] * T_Tug_W
|
|
|
- S4 += C_Tug_F[vessel.category] * 31
|
|
|
- Z += S1 + S2 + S3 + S4
|
|
|
-
|
|
|
- print("OVERALL COST: %f euros" % Z)
|
|
|
- print("Travelling: %f euros" % S1)
|
|
|
- print("Tugging: %f euros" % S2)
|
|
|
- print("Waiting: %f euros" % S3)
|
|
|
- print("Fixed: %f euros" % S4)
|
|
|
+ S1[vessel.category] += C_Tug_S[vessel.category] * T_Tug_S
|
|
|
+ S2[vessel.category] += C_Tug_P[vessel.category] * T_Tug_P
|
|
|
+ S3[vessel.category] += C_Tug_W[vessel.category] * T_Tug_W
|
|
|
+ S4[vessel.category] += C_Tug_F[vessel.category] * 31
|
|
|
+
|
|
|
+ for cat in ["strong", "average", "weak"]:
|
|
|
+ print("\ncategory:", cat)
|
|
|
+ print("OVERALL COST: %f euros" % (S1[cat] + S2[cat] + S3[cat] + S4[cat]))
|
|
|
+ print("Travelling: %f euros" % S1[cat])
|
|
|
+ print("Tugging: %f euros" % S2[cat])
|
|
|
+ print("Waiting: %f euros" % S3[cat])
|
|
|
+ print("Fixed: %f euros" % S4[cat])
|
|
|
# print("AVERAGE USAGES:")
|
|
|
# S = 0
|
|
|
# for vessel in list(self.pool.state["waiting"].values()) + self.sailer.state["vessels"]:
|