diff --git a/bindings/python/ns3_module_core.py b/bindings/python/ns3_module_core.py index b680c1766..e584ab37f 100644 --- a/bindings/python/ns3_module_core.py +++ b/bindings/python/ns3_module_core.py @@ -1424,12 +1424,12 @@ def register_Ns3LogNormalVariable_methods(root_module, cls): return def register_Ns3NormalVariable_methods(root_module, cls): - ## random-variable.h: ns3::NormalVariable::INFINITE_VALUE [variable] - cls.add_static_attribute('INFINITE_VALUE', 'double const', is_const=True) ## random-variable.h: ns3::NormalVariable::NormalVariable() [constructor] cls.add_constructor([]) - ## random-variable.h: ns3::NormalVariable::NormalVariable(double m, double v, double b=ns3::NormalVariable::INFINITE_VALUE) [constructor] - cls.add_constructor([param('double', 'm'), param('double', 'v'), param('double', 'b', default_value='ns3::NormalVariable::INFINITE_VALUE')]) + ## random-variable.h: ns3::NormalVariable::NormalVariable(double m, double v) [constructor] + cls.add_constructor([param('double', 'm'), param('double', 'v')]) + ## random-variable.h: ns3::NormalVariable::NormalVariable(double m, double v, double b) [constructor] + cls.add_constructor([param('double', 'm'), param('double', 'v'), param('double', 'b')]) cls.add_copy_constructor() return diff --git a/src/core/random-variable.cc b/src/core/random-variable.cc index 3395db8ed..44a921348 100644 --- a/src/core/random-variable.cc +++ b/src/core/random-variable.cc @@ -906,6 +906,9 @@ RandomVariableBase* NormalVariableImpl::Copy() const NormalVariable::NormalVariable() : RandomVariable (NormalVariableImpl ()) {} +NormalVariable::NormalVariable(double m, double v) + : RandomVariable (NormalVariableImpl (m, v)) +{} NormalVariable::NormalVariable(double m, double v, double b) : RandomVariable (NormalVariableImpl (m, v, b)) {} diff --git a/src/core/random-variable.h b/src/core/random-variable.h index 5b5b557c4..ba811ea0f 100644 --- a/src/core/random-variable.h +++ b/src/core/random-variable.h @@ -476,20 +476,27 @@ public: class NormalVariable : public RandomVariable { public: - static const double INFINITE_VALUE; /** * Constructs an normal random variable with a mean * value of 0 and variance of 1. */ NormalVariable(); + /** + * \brief Construct a normal random variable with specified mean and variance. + * \param m Mean value + * \param v Variance + */ + NormalVariable(double m, double v); + /** * \brief Construct a normal random variable with specified mean and variance * \param m Mean value * \param v Variance - * \param b Bound. The NormalVariable is bounded within +-bound. + * \param b Bound. The NormalVariable is bounded symetrically about the mean + * [mean-bound,mean+bound] */ - NormalVariable(double m, double v, double b = INFINITE_VALUE); + NormalVariable(double m, double v, double b); }; /**