Commit 3e56242a authored by ThibautDemare's avatar ThibautDemare
Browse files

Don't compute directly the share by mode of transport (otherwise it is not...

Don't compute directly the share by mode of transport (otherwise it is not usable for analyses purpose in CSV)
parent 5e7cabe1
......@@ -203,9 +203,17 @@ experiment 'Every output' type: gui {
display 'Share of mode of transport (number of vehicles)' refresh:every(1) {
chart "Share of mode of transport (number of vehicles)" type: series {
data "Share of road" value: shareRoadVehicle * 100.0 color: rgb('green') ;
data "Share of river" value: shareRiverVehicle * 100.0 color: rgb('red') ;
data "Share of maritime" value: shareMaritimeVehicle * 100.0 color: rgb('blue') ;
float valRoad <- 0;
float valRiver <- 0;
float valMar <- 0;
if(sumVehicle > 0){
valRoad <- 1.0 * sumRoadVehicle / sumVehicle;
valRiver <- 1.0 * sumRiverVehicle / sumVehicle;
valMar <- 1.0 * sumMaritimeVehicle / sumVehicle;
}
data "Share of road" value: valRoad * 100.0 color: rgb('green') ;
data "Share of river" value: valRiver * 100.0 color: rgb('red') ;
data "Share of maritime" value: valMar * 100.0 color: rgb('blue') ;
}
}/**/
......@@ -217,10 +225,10 @@ experiment 'Every output' type: gui {
sr <- self;
}
}
if(sr!=nil){
data "Share of road" value: sr.shareRoadVehicleRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.shareRiverVehicleRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.shareMaritimeVehicleRO * 100.0 color: rgb('blue') ;
if(sr!=nil and sr.sumVehicleRO > 0){
data "Share of road" value: sr.sumRoadVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.sumRiverVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.sumMaritimeVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('blue') ;
}
else { // At step 0, RegionObserver are not initialized, so, sr = nil
data "Share of road" value: 0 color: rgb('green') ;
......@@ -238,10 +246,10 @@ experiment 'Every output' type: gui {
sr <- self;
}
}
if(sr!=nil){
data "Share of road" value: sr.shareRoadVehicleRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.shareRiverVehicleRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.shareMaritimeVehicleRO * 100.0 color: rgb('blue') ;
if(sr!=nil and sr.sumVehicleRO > 0){
data "Share of road" value: sr.sumRoadVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.sumRiverVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.sumMaritimeVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('blue') ;
}
else { // At step 0, RegionObserver are not initialized, so, sr = nil
data "Share of road" value: 0 color: rgb('green') ;
......@@ -259,10 +267,10 @@ experiment 'Every output' type: gui {
sr <- self;
}
}
if(sr!=nil){
data "Share of road" value: sr.shareRoadVehicleRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.shareRiverVehicleRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.shareMaritimeVehicleRO * 100.0 color: rgb('blue') ;
if(sr!=nil and sr.sumVehicleRO > 0){
data "Share of road" value: sr.sumRoadVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.sumRiverVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.sumMaritimeVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('blue') ;
}
else { // At step 0, RegionObserver are not initialized, so, sr = nil
data "Share of road" value: 0 color: rgb('green') ;
......@@ -272,18 +280,18 @@ experiment 'Every output' type: gui {
}
}/**/
display 'Share of mode of transport (number of vehicles) - Region Île-de-France' refresh:every(1) {
chart "Share of mode of transport (number of vehicles) - Region Île-de-France" type: series {
display 'Share of mode of transport (number of vehicles) - Region Ile-de-France' refresh:every(1) {
chart "Share of mode of transport (number of vehicles) - Region Ile-de-France" type: series {
RegionObserver sr <- nil;
ask RegionObserver {
if(self.name = "Île-de-France"){
if(self.name = "Ile-de-France"){
sr <- self;
}
}
if(sr!=nil){
data "Share of road" value: sr.shareRoadVehicleRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.shareRiverVehicleRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.shareMaritimeVehicleRO * 100.0 color: rgb('blue') ;
if(sr!=nil and sr.sumVehicleRO > 0){
data "Share of road" value: sr.sumRoadVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.sumRiverVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.sumMaritimeVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('blue') ;
}
else { // At step 0, RegionObserver are not initialized, so, sr = nil
data "Share of road" value: 0 color: rgb('green') ;
......@@ -301,10 +309,10 @@ experiment 'Every output' type: gui {
sr <- self;
}
}
if(sr!=nil){
data "Share of road" value: sr.shareRoadVehicleRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.shareRiverVehicleRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.shareMaritimeVehicleRO * 100.0 color: rgb('blue') ;
if(sr!=nil and sr.sumVehicleRO > 0){
data "Share of road" value: sr.sumRoadVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.sumRiverVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.sumMaritimeVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('blue') ;
}
else { // At step 0, RegionObserver are not initialized, so, sr = nil
data "Share of road" value: 0 color: rgb('green') ;
......@@ -322,10 +330,10 @@ experiment 'Every output' type: gui {
sr <- self;
}
}
if(sr!=nil){
data "Share of road" value: sr.shareRoadVehicleRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.shareRiverVehicleRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.shareMaritimeVehicleRO * 100.0 color: rgb('blue') ;
if(sr!=nil and sr.sumVehicleRO > 0){
data "Share of road" value: sr.sumRoadVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.sumRiverVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.sumMaritimeVehicleRO / sr.sumVehicleRO * 100.0 color: rgb('blue') ;
}
else { // At step 0, RegionObserver are not initialized, so, sr = nil
data "Share of road" value: 0 color: rgb('green') ;
......@@ -337,9 +345,17 @@ experiment 'Every output' type: gui {
display 'Share of mode of transport (quantities of goods)' refresh:every(1) {
chart "Share of mode of transport (quantities of goods)" type: series {
data "Share of road" value: shareRoadQuantities * 100.0 color: rgb('green') ;
data "Share of river" value: shareRiverQuantities * 100.0 color: rgb('red') ;
data "Share of maritime" value: shareMaritimeQuantities * 100.0 color: rgb('blue') ;
float valRoad <- 0;
float valRiver <- 0;
float valMar <- 0;
if(sumQuantities > 0){
valRoad <- 1.0 * sumRoadQuantities / sumQuantities;
valRiver <- 1.0 * sumRiverQuantities / sumQuantities;
valMar <- 1.0 * sumMaritimeQuantities / sumQuantities;
}
data "Share of road" value: valRoad * 100.0 color: rgb('green') ;
data "Share of river" value: valRiver * 100.0 color: rgb('red') ;
data "Share of maritime" value: valMar * 100.0 color: rgb('blue') ;
}
}/**/
......@@ -351,10 +367,10 @@ experiment 'Every output' type: gui {
sr <- self;
}
}
if(sr!=nil){
data "Share of road" value: sr.shareRoadQuantitiesRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.shareRiverQuantitiesRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.shareMaritimeQuantitiesRO * 100.0 color: rgb('blue') ;
if(sr!=nil and sr.sumQuantitiesRO > 0){
data "Share of road" value: sr.sumRoadQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.sumRiverQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.sumMaritimeQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('blue') ;
}
else { // At step 0, RegionObserver are not initialized, so, sr = nil
data "Share of road" value: 0 color: rgb('green') ;
......@@ -372,10 +388,10 @@ experiment 'Every output' type: gui {
sr <- self;
}
}
if(sr!=nil){
data "Share of road" value: sr.shareRoadQuantitiesRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.shareRiverQuantitiesRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.shareMaritimeQuantitiesRO * 100.0 color: rgb('blue') ;
if(sr!=nil and sr.sumQuantitiesRO > 0){
data "Share of road" value: sr.sumRoadQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.sumRiverQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.sumMaritimeQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('blue') ;
}
else { // At step 0, RegionObserver are not initialized, so, sr = nil
data "Share of road" value: 0 color: rgb('green') ;
......@@ -393,10 +409,10 @@ experiment 'Every output' type: gui {
sr <- self;
}
}
if(sr!=nil){
data "Share of road" value: sr.shareRoadQuantitiesRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.shareRiverQuantitiesRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.shareMaritimeQuantitiesRO * 100.0 color: rgb('blue') ;
if(sr!=nil and sr.sumQuantitiesRO > 0){
data "Share of road" value: sr.sumRoadQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.sumRiverQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.sumMaritimeQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('blue') ;
}
else { // At step 0, RegionObserver are not initialized, so, sr = nil
data "Share of road" value: 0 color: rgb('green') ;
......@@ -406,18 +422,18 @@ experiment 'Every output' type: gui {
}
}/**/
display 'Share of mode of transport (quantities of goods) - Region Île-de-France' refresh:every(1) {
chart "Share of mode of transport - Region Île-de-France" type: series {
display 'Share of mode of transport (quantities of goods) - Region Ile-de-France' refresh:every(1) {
chart "Share of mode of transport - Region Ile-de-France" type: series {
RegionObserver sr <- nil;
ask RegionObserver {
if(self.name = "Île-de-France"){
if(self.name = "Ile-de-France"){
sr <- self;
}
}
if(sr!=nil){
data "Share of road" value: sr.shareRoadQuantitiesRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.shareRiverQuantitiesRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.shareMaritimeQuantitiesRO * 100.0 color: rgb('blue') ;
if(sr!=nil and sr.sumQuantitiesRO > 0){
data "Share of road" value: sr.sumRoadQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.sumRiverQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.sumMaritimeQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('blue') ;
}
else { // At step 0, RegionObserver are not initialized, so, sr = nil
data "Share of road" value: 0 color: rgb('green') ;
......@@ -435,10 +451,10 @@ experiment 'Every output' type: gui {
sr <- self;
}
}
if(sr!=nil){
data "Share of road" value: sr.shareRoadQuantitiesRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.shareRiverQuantitiesRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.shareMaritimeQuantitiesRO * 100.0 color: rgb('blue') ;
if(sr!=nil and sr.sumQuantitiesRO > 0){
data "Share of road" value: sr.sumRoadQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.sumRiverQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.sumMaritimeQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('blue') ;
}
else { // At step 0, RegionObserver are not initialized, so, sr = nil
data "Share of road" value: 0 color: rgb('green') ;
......@@ -456,10 +472,10 @@ experiment 'Every output' type: gui {
sr <- self;
}
}
if(sr!=nil){
data "Share of road" value: sr.shareRoadQuantitiesRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.shareRiverQuantitiesRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.shareMaritimeQuantitiesRO * 100.0 color: rgb('blue') ;
if(sr!=nil and sr.sumQuantitiesRO > 0){
data "Share of road" value: sr.sumRoadQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('green') ;
data "Share of river" value: sr.sumRiverQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('red') ;
data "Share of maritime" value: sr.sumMaritimeQuantitiesRO / sr.sumQuantitiesRO * 100.0 color: rgb('blue') ;
}
else { // At step 0, RegionObserver are not initialized, so, sr = nil
data "Share of road" value: 0 color: rgb('green') ;
......
......@@ -302,42 +302,36 @@ global {
}
// Share by number of vehicles
float shareRoadVehicle;
float shareRiverVehicle;
float shareMaritimeVehicle;
int sumVehicle;
int sumRoadVehicle;
int sumRiverVehicle;
int sumMaritimeVehicle;
// Share by quantities of goods
float shareRoadQuantities;
float shareRiverQuantities;
float shareMaritimeQuantities;
float sumQuantities;
float sumRoadQuantities;
float sumRiverQuantities;
float sumMaritimeQuantities;
reflex averageModeShare {
int sumVehicle;
int sumRoadVehicle;
int sumRiverVehicle;
int sumMaritimeVehicle;
sumVehicle <- 0;
sumRoadVehicle <- 0;
sumRiverVehicle <- 0;
sumMaritimeVehicle <- 0;
int sumQuantities;
int sumRoadQuantities;
int sumRiverQuantities;
int sumMaritimeQuantities;
shareRoadVehicle <- 0;
shareRiverVehicle <- 0;
shareMaritimeVehicle <- 0;
shareRoadQuantities <- 0;
shareRiverQuantities <- 0;
shareMaritimeQuantities <- 0;
sumQuantities <- 0;
sumRoadQuantities <- 0;
sumRiverQuantities <- 0;
sumMaritimeQuantities <- 0;
ask RegionObserver {
sumVehicleRO <- 0;
shareRoadVehicleRO <- 0;
shareRiverVehicleRO <- 0;
shareMaritimeVehicleRO <- 0;
sumRoadVehicleRO <- 0;
sumRiverVehicleRO <- 0;
sumMaritimeVehicleRO <- 0;
sumQuantitiesRO <- 0;
shareRoadQuantitiesRO <- 0;
shareRiverQuantitiesRO <- 0;
shareMaritimeQuantitiesRO <- 0;
sumRoadQuantitiesRO <- 0;
sumRiverQuantitiesRO <- 0;
sumMaritimeQuantitiesRO <- 0;
int j <- 0;
loop while: j < length(buildings) {
......@@ -351,9 +345,9 @@ global {
sumMaritimeVehicle <- sumMaritimeVehicle + b.nbMaritimeVehiclesLastSteps[i];
sumVehicleRO <- sumVehicleRO + b.nbRoadVehiclesLastSteps[i] + b.nbRiverVehiclesLastSteps[i] + b.nbMaritimeVehiclesLastSteps[i];
shareRoadVehicleRO <- shareRoadVehicleRO + b.nbRoadVehiclesLastSteps[i];
shareRiverVehicleRO <- shareRiverVehicleRO + b.nbRiverVehiclesLastSteps[i];
shareMaritimeVehicleRO <- shareMaritimeVehicleRO + b.nbMaritimeVehiclesLastSteps[i];
sumRoadVehicleRO <- sumRoadVehicleRO + b.nbRoadVehiclesLastSteps[i];
sumRiverVehicleRO <- sumRiverVehicleRO + b.nbRiverVehiclesLastSteps[i];
sumMaritimeVehicleRO <- sumMaritimeVehicleRO + b.nbMaritimeVehiclesLastSteps[i];
sumQuantities <- sumQuantities + b.nbRoadQuantitiesLastSteps[i] + b.nbRiverQuantitiesLastSteps[i] + b.nbMaritimeQuantitiesLastSteps[i];
sumRoadQuantities <- sumRoadQuantities + b.nbRoadQuantitiesLastSteps[i];
......@@ -361,13 +355,13 @@ global {
sumMaritimeQuantities <- sumMaritimeQuantities + b.nbMaritimeQuantitiesLastSteps[i];
sumQuantitiesRO <- sumQuantitiesRO + b.nbRoadQuantitiesLastSteps[i] + b.nbRiverQuantitiesLastSteps[i] + b.nbMaritimeQuantitiesLastSteps[i];
shareRoadQuantitiesRO <- shareRoadQuantitiesRO + b.nbRoadQuantitiesLastSteps[i];
shareRiverQuantitiesRO <- shareRiverQuantitiesRO + b.nbRiverQuantitiesLastSteps[i];
shareMaritimeQuantitiesRO <- shareMaritimeQuantitiesRO + b.nbMaritimeQuantitiesLastSteps[i];
sumRoadQuantitiesRO <- sumRoadQuantitiesRO + b.nbRoadQuantitiesLastSteps[i];
sumRiverQuantitiesRO <- sumRiverQuantitiesRO + b.nbRiverQuantitiesLastSteps[i];
sumMaritimeQuantitiesRO <- sumMaritimeQuantitiesRO + b.nbMaritimeQuantitiesLastSteps[i];
i <- i + 1;
}
if(cycle > 5){
if(cycle > -1){
remove index: 0 from: b.nbRoadVehiclesLastSteps;
remove index: 0 from: b.nbRiverVehiclesLastSteps;
remove index: 0 from: b.nbMaritimeVehiclesLastSteps;
......@@ -386,41 +380,6 @@ global {
j <- j + 1;
}
}
if(sumVehicle > 0){
shareRoadVehicle <- sumRoadVehicle / sumVehicle;
shareRiverVehicle <- sumRiverVehicle / sumVehicle;
shareMaritimeVehicle <- sumMaritimeVehicle / sumVehicle;
ask RegionObserver {
if(sumVehicleRO > 0){
shareRoadVehicleRO <- shareRoadVehicleRO / sumVehicleRO;
shareRiverVehicleRO <- shareRiverVehicleRO / sumVehicleRO;
shareMaritimeVehicleRO <- shareMaritimeVehicleRO / sumVehicleRO;
}
else {
shareRoadVehicleRO <- 0.0;
shareRiverVehicleRO <- 0.0;
shareMaritimeVehicleRO <- 0.0;
}
}
}
if(sumQuantities > 0){
shareRoadQuantities <- sumRoadQuantities / sumQuantities;
shareRiverQuantities <- sumRiverQuantities / sumQuantities;
shareMaritimeQuantities <- sumMaritimeQuantities / sumQuantities;
ask RegionObserver {
if(sumQuantitiesRO > 0){
shareRoadQuantitiesRO <- shareRoadQuantitiesRO / sumQuantitiesRO;
shareRiverQuantitiesRO <- shareRiverQuantitiesRO / sumQuantitiesRO;
shareMaritimeQuantitiesRO <- shareMaritimeQuantitiesRO / sumQuantitiesRO;
}
else {
shareRoadQuantitiesRO <- 0.0;
shareRiverQuantitiesRO <- 0.0;
shareMaritimeQuantitiesRO <- 0.0;
}
}
}
}
// Average number of LSP for each strategy
......@@ -656,13 +615,13 @@ global {
to: filePath + date_simu_starts + "_average_costs" + params + ".csv" type: text rewrite: false;
save "" + ((time/3600.0) as int) + ";" + nbHavre + ";" + nbAntwerp
to: filePath + date_simu_starts + "_competition_between_LH_Antwerp" + params + ".csv" type: text rewrite: false;
save "" + ((time/3600.0) as int) + ";" + shareRoadVehicle + ";" + shareRiverVehicle + ";" + shareMaritimeVehicle
save "" + ((time/3600.0) as int) + ";" + sumRoadVehicle + ";" + sumRiverVehicle + ";" + sumMaritimeVehicle
to: filePath + date_simu_starts + "_share_transport_mode" + params + ".csv" type: text rewrite: false;
do saveShareTransportModeRegion(filePath, params, "Basse-Normandie");
do saveShareTransportModeRegion(filePath, params, "Haute-Normandie");
do saveShareTransportModeRegion(filePath, params, "Centre");
do saveShareTransportModeRegion(filePath, params, "Île-de-France");
do saveShareTransportModeRegion(filePath, params, "Ile-de-France");
do saveShareTransportModeRegion(filePath, params, "Picardie");
do saveShareTransportModeRegion(filePath, params, "Antwerpen");
......@@ -675,7 +634,9 @@ global {
sr <- self;
}
}
save "" + ((time/3600.0) as int) + ";" + sr.shareRoadVehicleRO + ";" + sr.shareRiverVehicleRO + ";" + sr.shareMaritimeVehicleRO
to: filePath + date_simu_starts + "_share_transport_mode_Picardie" + params + ".csv" type: text rewrite: false;
save "" + ((time/3600.0) as int) + ";" + sr.sumRoadVehicleRO + ";" + sr.sumRiverVehicleRO + ";" + sr.sumMaritimeVehicleRO
to: filePath + date_simu_starts + "_share_transport_mode_" + n + params + ".csv" type: text rewrite: false;
save "" + ((time/3600.0) as int) + ";" + sr.sumRoadQuantitiesRO + ";" + sr.sumRiverQuantitiesRO + ";" + sr.sumMaritimeQuantitiesRO
to: filePath + date_simu_starts + "_share_transport_mode_quantities_" + n + params + ".csv" type: text rewrite: false;
}
}
\ No newline at end of file
......@@ -7,15 +7,15 @@ species RegionObserver {
string name;
// Share by number of vehicle
float shareRoadVehicleRO <- 0.0;
float shareRiverVehicleRO <- 0.0;
float shareMaritimeVehicleRO <- 0.0;
float sumRoadVehicleRO <- 0.0;
float sumRiverVehicleRO <- 0.0;
float sumMaritimeVehicleRO <- 0.0;
int sumVehicleRO;
// Share by quantity of goods
float shareRoadQuantitiesRO <- 0.0;
float shareRiverQuantitiesRO <- 0.0;
float shareMaritimeQuantitiesRO <- 0.0;
float sumRoadQuantitiesRO <- 0.0;
float sumRiverQuantitiesRO <- 0.0;
float sumMaritimeQuantitiesRO <- 0.0;
int sumQuantitiesRO;
list<Building> buildings <- [];
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment