CPUBroadcastPower.java
package neureka.backend.main.implementations.broadcast;
import neureka.backend.main.implementations.fun.api.CPUBiFun;
public class CPUBroadcastPower extends CPUBroadcast
{
public CPUBroadcastPower() {}
@Override
protected CPUBiFun _getFun() {
return new CPUBiFun() {
@Override public double invoke(double a, double b) { return Math.pow(a, b); }
@Override public float invoke(float a, float b) { return (float) Math.pow(a, b); }
};
}
@Override
protected CPUBiFun _getDeriveAt0() {
return new CPUBiFun() {
@Override public double invoke(double a, double b) { return a * Math.pow( a, b - 1 ); }
@Override public float invoke(float a, float b) { return (float) (a * Math.pow( a, b - 1 )); }
};
}
@Override
protected CPUBiFun _getDeriveAt1() {
return new CPUBiFun() {
@Override public double invoke(double a, double b) { return Math.pow( a, b ) * Math.log(a); }
@Override public float invoke(float a, float b) { return (float) (Math.pow( a, b ) * Math.log(a)); }
};
}
}