Prevent p1 = p0

This commit is contained in:
dapplion 2019-08-11 23:53:01 +02:00
parent da6c8d3514
commit a77229768c
1 changed files with 5 additions and 4 deletions

View File

@ -24,9 +24,12 @@ export default function CurveDesignInputParams({
setVHalflife(curveParams.vHalflife);
}, [curveParams]);
const maxReturnRate = 10;
const minP1P0Rate = 1.5;
function _setP0(newP0: number) {
setP0(newP0);
if (p1 < newP0) setP1(newP0);
if (p1 < newP0 * minP1P0Rate) setP1(newP0 * minP1P0Rate);
else if (p1 > newP0 * maxReturnRate) setP1(newP0 * maxReturnRate);
}
@ -41,8 +44,6 @@ export default function CurveDesignInputParams({
}));
}
const maxReturnRate = 10;
const inputFields: InputFieldInterface[] = [
{
label: parameterDescriptions.theta.name,
@ -74,7 +75,7 @@ export default function CurveDesignInputParams({
description: parameterDescriptions.p1.text,
value: p1,
setter: setP1,
min: p0 || 0.1,
min: Number((minP1P0Rate * (p0 || 0.1)).toFixed(2)),
max: Number((maxReturnRate * p0).toFixed(2)),
step: 0.01,
toText: (n: number) => String(+n.toFixed(2)),