aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/Ic2ExpReactorPlanner/SimulationData.java
diff options
context:
space:
mode:
authorMartin Robertz <dream-master@gmx.net>2022-01-22 23:35:39 +0100
committerGitHub <noreply@github.com>2022-01-22 23:35:39 +0100
commitfc44183236f57dadddc44c643b15d2ff455c5767 (patch)
tree095ef51aa0aa41d2a27f3c768647a18d062dc1f0 /src/main/java/Ic2ExpReactorPlanner/SimulationData.java
parent4cf893076fb15e1c86810c68be36d683aa7c7e1b (diff)
parent7fc43346d46fab27e40abee85077172804e2450c (diff)
downloadGT5-Unofficial-fc44183236f57dadddc44c643b15d2ff455c5767.tar.gz
GT5-Unofficial-fc44183236f57dadddc44c643b15d2ff455c5767.tar.bz2
GT5-Unofficial-fc44183236f57dadddc44c643b15d2ff455c5767.zip
Merge pull request #93 from GTNewHorizons/New-Multis-3
New multis 3
Diffstat (limited to 'src/main/java/Ic2ExpReactorPlanner/SimulationData.java')
-rw-r--r--src/main/java/Ic2ExpReactorPlanner/SimulationData.java79
1 files changed, 79 insertions, 0 deletions
diff --git a/src/main/java/Ic2ExpReactorPlanner/SimulationData.java b/src/main/java/Ic2ExpReactorPlanner/SimulationData.java
new file mode 100644
index 0000000000..39ecdbc5f5
--- /dev/null
+++ b/src/main/java/Ic2ExpReactorPlanner/SimulationData.java
@@ -0,0 +1,79 @@
+/*
+ * To change this license header, choose License Headers in Project Properties.
+ * To change this template file, choose Tools | Templates
+ * and open the template in the editor.
+ */
+package Ic2ExpReactorPlanner;
+
+/**
+ * Simple container for data from a simulation of an IC2 nuclear reactor, to allow comparison wtih another simulation.
+ * @author Brian McCloud
+ */
+public class SimulationData {
+ // Values should only be written to by the simulator class and read by other classes, but this is not yet strictly enforced.
+ // Enforcement might require refactoring this to be an inner class of the simulator.
+
+ // Times to temperature thresholds
+ public int timeToBelow50 = Integer.MAX_VALUE;
+ public int timeToBurn = Integer.MAX_VALUE;
+ public int timeToEvaporate = Integer.MAX_VALUE;
+ public int timeToHurt = Integer.MAX_VALUE;
+ public int timeToLava = Integer.MAX_VALUE;
+ public int timeToXplode = Integer.MAX_VALUE;
+
+ // Special, for calculating efficiency
+ public int totalRodCount = 0;
+
+ // First component broken details
+ public int firstComponentBrokenTime = Integer.MAX_VALUE;
+ public int firstComponentBrokenRow = -1;
+ public int firstComponentBrokenCol = -1;
+ public String firstComponentBrokenDescription = "";
+ public double prebreakTotalEUoutput = 0;
+ public double prebreakAvgEUoutput = 0;
+ public double prebreakMinEUoutput = Double.MAX_VALUE;
+ public double prebreakMaxEUoutput = 0;
+ public double prebreakTotalHUoutput = 0;
+ public double prebreakAvgHUoutput = 0;
+ public double prebreakMinHUoutput = Double.MAX_VALUE;
+ public double prebreakMaxHUoutput = 0;
+
+ // First rod depleted details
+ public int firstRodDepletedTime = Integer.MAX_VALUE;
+ public int firstRodDepletedRow = -1;
+ public int firstRodDepletedCol = -1;
+ public String firstRodDepletedDescription = "";
+ public double predepleteTotalEUoutput = 0;
+ public double predepleteAvgEUoutput = 0;
+ public double predepleteMinEUoutput = Double.MAX_VALUE;
+ public double predepleteMaxEUoutput = 0;
+ public double predepleteTotalHUoutput = 0;
+ public double predepleteAvgHUoutput = 0;
+ public double predepleteMinHUoutput = Double.MAX_VALUE;
+ public double predepleteMaxHUoutput = 0;
+ public double predepleteMinTemp = Double.MAX_VALUE;
+ public double predepleteMaxTemp = 0;
+
+ // Completed-simulation details
+ public int totalReactorTicks = 0;
+ public int totalEUoutput = 0;
+ public int avgEUoutput = 0;
+ public double minEUoutput = Double.MAX_VALUE;
+ public int maxEUoutput = 0;
+ public int totalHUoutput = 0;
+ public int avgHUoutput = 0;
+ public double minHUoutput = Double.MAX_VALUE;
+ public int maxHUoutput = 0;
+ public int minTemp = (int) Double.MAX_VALUE;
+ public int maxTemp = 0;
+ public int explosionPower = 0;
+
+ // Heating and Cooling details
+ public double hullHeating = 0;
+ public double componentHeating = 0;
+ public double hullCooling = 0;
+ public double hullCoolingCapacity = 0;
+ public double ventCooling = 0;
+ public double ventCoolingCapacity = 0;
+
+}