Stat. functions: safeguard against divide by zero, return nominal value
This commit is contained in:
parent
8837132f29
commit
0f14c690d5
|
|
@ -2363,6 +2363,8 @@ static double
|
||||||
agauss(double nominal_val, double abs_variation, double sigma)
|
agauss(double nominal_val, double abs_variation, double sigma)
|
||||||
{
|
{
|
||||||
double stdvar;
|
double stdvar;
|
||||||
|
if (abs_variation <= 0 || sigma <= 0)
|
||||||
|
return nominal_val;
|
||||||
stdvar = abs_variation / sigma;
|
stdvar = abs_variation / sigma;
|
||||||
return (nominal_val + stdvar * gauss1());
|
return (nominal_val + stdvar * gauss1());
|
||||||
}
|
}
|
||||||
|
|
@ -2372,6 +2374,8 @@ static double
|
||||||
gauss(double nominal_val, double rel_variation, double sigma)
|
gauss(double nominal_val, double rel_variation, double sigma)
|
||||||
{
|
{
|
||||||
double stdvar;
|
double stdvar;
|
||||||
|
if (rel_variation <= 0 || sigma <= 0)
|
||||||
|
return nominal_val;
|
||||||
stdvar = nominal_val * rel_variation / sigma;
|
stdvar = nominal_val * rel_variation / sigma;
|
||||||
return (nominal_val + stdvar * gauss1());
|
return (nominal_val + stdvar * gauss1());
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -47,6 +47,8 @@ static double
|
||||||
agauss(double nominal_val, double abs_variation, double sigma)
|
agauss(double nominal_val, double abs_variation, double sigma)
|
||||||
{
|
{
|
||||||
double stdvar;
|
double stdvar;
|
||||||
|
if (abs_variation <= 0 || sigma <= 0)
|
||||||
|
return nominal_val;
|
||||||
stdvar = abs_variation / sigma;
|
stdvar = abs_variation / sigma;
|
||||||
return (nominal_val + stdvar * gauss1());
|
return (nominal_val + stdvar * gauss1());
|
||||||
}
|
}
|
||||||
|
|
@ -56,6 +58,8 @@ static double
|
||||||
gauss(double nominal_val, double rel_variation, double sigma)
|
gauss(double nominal_val, double rel_variation, double sigma)
|
||||||
{
|
{
|
||||||
double stdvar;
|
double stdvar;
|
||||||
|
if (rel_variation <= 0 || sigma <= 0)
|
||||||
|
return nominal_val;
|
||||||
stdvar = nominal_val * rel_variation / sigma;
|
stdvar = nominal_val * rel_variation / sigma;
|
||||||
return (nominal_val + stdvar * gauss1());
|
return (nominal_val + stdvar * gauss1());
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue