package org.singinst.uf.model;
import org.singinst.uf.math.InvertableFunction;
public class IncidentFunction extends InvertableFunction {
@Override
public double apply(double x) {
double log1p = -1 * Math.pow(10, x);
double probability = -1 * Math.expm1(log1p);
return probability * 100;
}
@Override
public double invert(double y) {
double log1p = -1 * Math.log1p(-1 * y/100);
return Math.log10(log1p);
}
}