function bbVar(pontos, i, entropia, erro=1e-6, passos=40) {
function bbVarRec(variancia, limiteInf, limiteSup) {
const probabilidades = calcPi(pontos, i, variancia),
entropiaAtual = calcEntropia(probabilidades);
if (passos-- <= 1 || Math.abs(entropiaAtual - entropia) <= erro)
return probabilidades;
if (entropiaAtual > entropia)
return bbVarRec((limiteInf+variancia)/2, limiteInf, variancia);
else
return bbVarRec((variancia+limiteSup)/2, variancia, limiteSup);
}
const MINVAR = 0.01,
MAXVAR = 50;
return bbVarRec((MINVAR+MAXVAR)/2, MINVAR, MAXVAR);
}