diff options
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/java/com/elisis/gtnhlanth/common/tileentity/LINAC.java | 4 | ||||
-rw-r--r-- | src/main/java/com/elisis/gtnhlanth/common/tileentity/Synchrotron.java | 15 |
2 files changed, 11 insertions, 8 deletions
diff --git a/src/main/java/com/elisis/gtnhlanth/common/tileentity/LINAC.java b/src/main/java/com/elisis/gtnhlanth/common/tileentity/LINAC.java index c9d9b125b4..e456813bc6 100644 --- a/src/main/java/com/elisis/gtnhlanth/common/tileentity/LINAC.java +++ b/src/main/java/com/elisis/gtnhlanth/common/tileentity/LINAC.java @@ -343,7 +343,7 @@ public class LINAC extends GT_MetaTileEntity_EnhancedMultiBlockBase<LINAC> imple outputEnergy = Math.min( (1 + inputEnergy / Particle.getParticleFromId(outputParticle) .maxSourceEnergy()) * machineEnergy, - 100_000); // TODO more complex calculation than just + 120_000); // TODO more complex calculation than just // addition inputRate = this.getInputInformation() @@ -554,7 +554,7 @@ public class LINAC extends GT_MetaTileEntity_EnhancedMultiBlockBase<LINAC> imple private static float calculateVoltageFactor(long voltage) { - float factor = (float) Math.pow(1.00009, -(voltage - 125000)); + float factor = (float) Math.pow(1.00009, -(0.1 * voltage - 114000)); return factor; } diff --git a/src/main/java/com/elisis/gtnhlanth/common/tileentity/Synchrotron.java b/src/main/java/com/elisis/gtnhlanth/common/tileentity/Synchrotron.java index 3eaa682381..6733bc5338 100644 --- a/src/main/java/com/elisis/gtnhlanth/common/tileentity/Synchrotron.java +++ b/src/main/java/com/elisis/gtnhlanth/common/tileentity/Synchrotron.java @@ -764,6 +764,7 @@ public class Synchrotron extends GT_MetaTileEntity_EnhancedMultiBlockBase<Synchr inputRate = this.getInputInformation() .getRate(); + outputRate = (int) (inputRate * getOutputRatetio(voltageFactor, this.antennaeTier)); if (outputRate == 0) { @@ -850,7 +851,7 @@ public class Synchrotron extends GT_MetaTileEntity_EnhancedMultiBlockBase<Synchr float factor = (float) -Math.pow(1.1, -mEU / 2000 * Math.pow(antennaTier, 2.0 / 3.0)) + 1; // Strictly improves // with higher tier // antenna - return factor; + return (float) Math.max(1.0, factor); } @@ -871,8 +872,8 @@ public class Synchrotron extends GT_MetaTileEntity_EnhancedMultiBlockBase<Synchr * \ +\ \frac{l^{1.11t^{\frac{1}{3}}}}{40000000} */ - double energy = (Math.pow(inputParticleEnergy, 1.13 * Math.pow(antennaTier, 1.0 / 3.0)) / 40_000_000) - * (-Math.pow(Math.pow(0.15, 2.0 / (Math.pow(antennaTier, 3.0 / 2.0))), voltage / 60768.0) + 1); // In + double energy = (Math.pow(inputParticleEnergy, 1.13 * Math.pow(antennaTier, 4.0 / 9.0)) / 40_000_000) + * (-Math.pow(Math.pow(0.15, 2.0 / (Math.pow(antennaTier, 5.0 / 2.0))), voltage / 60768.0) + 1); // In // keV return energy; @@ -886,9 +887,11 @@ public class Synchrotron extends GT_MetaTileEntity_EnhancedMultiBlockBase<Synchr // Punny, right? private static float getOutputRatetio(float voltageFactor, int antennaTier) { - return (float) (voltageFactor / 10 / Math.pow(2.5, antennaTier)); // Scale ratio with antenna tier, such a high - // exponential should be fine so long as there - // are only few antenna tiers + return (float) (voltageFactor / (10 / Math.pow(2.5, antennaTier))); // Scale ratio with antenna tier, such a + // high + // exponential should be fine so long as + // there + // are only few antenna tiers } @Override |