How is it work? - zsnmwy/ONI-geyser-calculator GitHub Wiki

Except Leaky Oil Fissure, the Average Yield of a geyser roughly equals Daily Eruption x Active Percent (kg/600s).

These two parameters can't be reviewed directly in game, but can be calculated.


These two parameters are independent and uniform distribution.

Therefore, we can draw a rectangle in the coordinate system to represent the probability distribution of the Average Yield.

a, ka means min, max Daily Eruption;

b, mb means min, max Active Percent.


For a certain Average Yield n

we can draw a line

The upper right area of the line has larger yield.

The lower left area has lower yield.

The area of the rectangle

s=(k-1)(m-1)ab

z means the proportion of the lower left area to the total area of the rectangle

z=

When abk<n1, [n*ln(abkm/n)+n-abkm]/s+1

When abm<n2<abk, [n*ln(m)+(1-m)ab]/s

When n3<abm, [n*ln(n/ab)-n+ab]/s

Currently, for every kind of geyser

So

Assume

Now lets bring

into the original formula and get a simplified formula

z=

When x<2,=[x*ln(x)-x+1]/(k-1)

When 2<x<k,=[x*ln(2)-1]/(k-1)

When k<x,=[x*ln(2k/x)+x-2k]/(k-1)+1

In this formula, z means how many percents of same type of geyser are exceeded by this geyser.