private float interpolateGain(float alev0, float alev1, int iloc) {
    """
	calculates a fragment modification function
	the interpolated gain value between the gain values of two gain change
	positions is calculated by the formula:
	f(a,b,j) = 2^(((8-j)log2(a)+j*log2(b))/8)
    """
		final float a0 = (float) (Math.log(alev0)/Math.log(2));
		final float a1 = (float) (Math.log(alev1)/Math.log(2));
		return (float) Math.pow(2.0f, (((8-iloc)*a0+iloc*a1)/8));
	}
private float interpolateGain(float alev0, float alev1, int iloc) {
		final float a0 = (float) (Math.log(alev0)/Math.log(2));
		final float a1 = (float) (Math.log(alev1)/Math.log(2));
		return (float) Math.pow(2.0f, (((8-iloc)*a0+iloc*a1)/8));
	}
private float interpolateGain ( float alev0 , float alev1 , int iloc ) { final float a0 = ( float ) ( Math . log ( alev0 ) / Math . log ( 2 ) ) ; final float a1 = ( float ) ( Math . log ( alev1 ) / Math . log ( 2 ) ) ; return ( float ) Math . pow ( 2.0f , ( ( ( 8 - iloc ) * a0 + iloc * a1 ) / 8 ) ) ; }
calculates a fragment modification function
the interpolated gain value between the gain values of two gain change
positions is calculated by the formula:
f(a,b,j) = 2^(((8-j)log2(a)+j*log2(b))/8)
calculates a fragment modification function the interpolated gain value between the gain values of two gain change positions is calculated by the formula : f ( a b j ) = 2^ ((( 8 - j ) log2 ( a ) + j * log2 ( b )) / 8 )