Stat. functions: safeguard against divide by zero, return nominal value

This commit is contained in:
Holger Vogt 2023-08-26 10:15:08 +02:00
parent 8837132f29
commit 0f14c690d5
2 changed files with 8 additions and 0 deletions

View File

@ -2363,6 +2363,8 @@ static double
agauss(double nominal_val, double abs_variation, double sigma)
{
double stdvar;
if (abs_variation <= 0 || sigma <= 0)
return nominal_val;
stdvar = abs_variation / sigma;
return (nominal_val + stdvar * gauss1());
}
@ -2372,6 +2374,8 @@ static double
gauss(double nominal_val, double rel_variation, double sigma)
{
double stdvar;
if (rel_variation <= 0 || sigma <= 0)
return nominal_val;
stdvar = nominal_val * rel_variation / sigma;
return (nominal_val + stdvar * gauss1());
}

View File

@ -47,6 +47,8 @@ static double
agauss(double nominal_val, double abs_variation, double sigma)
{
double stdvar;
if (abs_variation <= 0 || sigma <= 0)
return nominal_val;
stdvar = abs_variation / sigma;
return (nominal_val + stdvar * gauss1());
}
@ -56,6 +58,8 @@ static double
gauss(double nominal_val, double rel_variation, double sigma)
{
double stdvar;
if (rel_variation <= 0 || sigma <= 0)
return nominal_val;
stdvar = nominal_val * rel_variation / sigma;
return (nominal_val + stdvar * gauss1());
}