diff --git a/class_diagram_custom.plantuml b/class_diagram_custom.plantuml index 52070fd..878235f 100644 --- a/class_diagram_custom.plantuml +++ b/class_diagram_custom.plantuml @@ -28,6 +28,7 @@ class "carTemplate" { class "powerGrid" { energieAvailable : int + savedEnergie : int } "carGrid" --> "*" "car" : dockedCars diff --git a/src/main/java/de/mrgeorgen/v2g/car.java b/src/main/java/de/mrgeorgen/v2g/car.java index 75dfbf7..ae25e8d 100644 --- a/src/main/java/de/mrgeorgen/v2g/car.java +++ b/src/main/java/de/mrgeorgen/v2g/car.java @@ -24,8 +24,9 @@ public class car { if(chargeAmmount != 0) System.out.println(this.model + " nr. " + this.id + " is " + (chargeAmmount < 0 ? "dis" : "") + "charging with " + (double)Math.abs(chargeAmmount) / 1000 + " kW. battery: " + (double)this.battery / 1000 + "/" + (double)this.fullBattery / 1000 + " kWh (" + Math.round(getBatteryRelativ() * 100) + "%)"); this.battery += chargeAmmount; powerGrid.energieAvailable -= chargeAmmount; + if(chargeAmmount < 0) powerGrid.savedEnergie += Math.abs(chargeAmmount); } - public void setChargeLock(double chargeLock) { + private void setChargeLock(double chargeLock) { this.chargeLock = (int)(this.fullBattery * chargeLock); } public double getBatteryRelativ() { diff --git a/src/main/java/de/mrgeorgen/v2g/powerGrid.java b/src/main/java/de/mrgeorgen/v2g/powerGrid.java index 09f9adf..5cf9755 100644 --- a/src/main/java/de/mrgeorgen/v2g/powerGrid.java +++ b/src/main/java/de/mrgeorgen/v2g/powerGrid.java @@ -2,12 +2,13 @@ package de.mrgeorgen.v2g; import java.util.Random; public class powerGrid { public static int energieAvailable; + public static int savedEnergie; public static void main(String args[]) { - final carGrid carGrid = new carGrid(); if(args.length != 1) { System.out.println("Invalid Syntax. Use the number of days the simulation shell run as the first argument"); return; } + final carGrid carGrid = new carGrid(); carGrid.fillWithCars(); final int hourSimulationRuns = Integer.parseInt(args[0]) * 24; Random random = new Random(); @@ -22,5 +23,6 @@ public class powerGrid { energieAvailable = (int)(averageEnergie * (0.5 + 1.5 * random.nextDouble())); carGrid.chargeCars(); } + System.out.println("vehicle to grid saved " + (double)savedEnergie / 1000 + " kWh with " + carGrid.dockedCars.size() + " cars"); } }