z0[i] = 0.5*((u-l)*TeuchosScalarTraits<Scalar>::random()+(u+l)), i=0...n-1.
More...
#include <RTOpPack_TOpRandomize.hpp>
Inheritance diagram for RTOpPack::TOpRandomize< Scalar >:
Overridden from RTOpT | |
| void | apply_op (const int num_vecs, const ConstSubVectorView< Scalar > sub_vecs[], const int num_targ_vecs, const SubVectorView< Scalar > targ_sub_vecs[], ReductTarget *reduct_obj) const |
| | |
Public Member Functions | |
| TOpRandomize (const Scalar &l=-Teuchos::ScalarTraits< Scalar >::one(), const Scalar &u=+Teuchos::ScalarTraits< Scalar >::one()) | |
| | |
| void | set_bounds (const Scalar &l, const Scalar &u) |
| | |
| void | set_seed (const unsigned int seed) |
| | |
| unsigned int | get_seed () const |
| | |
Static Public Member Functions | |
| static void | set_static_seed (const unsigned int static_seed) |
| | |
| static unsigned int | get_static_seed () |
| | |
z0[i] = 0.5*((u-l)*TeuchosScalarTraits<Scalar>::random()+(u+l)), i=0...n-1.
The seed for the random number generator can be set by TOpRandomize<Scalar>::set_seed(s) where s is some unsigned integer. Note that this class generates random numbers based on the initial seed and the global element ID so this should produce the same pseudo-random elements independent of the number of processors being used.
The seed changes every time a new object is created in order to improve the randomness to some degree.
Definition at line 50 of file RTOpPack_TOpRandomize.hpp.
| RTOpPack::TOpRandomize< Scalar >::TOpRandomize | ( | const Scalar & | l = -Teuchos::ScalarTraits<Scalar>::one(), |
|
| const Scalar & | u = +Teuchos::ScalarTraits<Scalar>::one() | |||
| ) | [inline] |
| static void RTOpPack::TOpRandomize< Scalar >::set_static_seed | ( | const unsigned int | static_seed | ) | [inline, static] |
| static unsigned int RTOpPack::TOpRandomize< Scalar >::get_static_seed | ( | ) | [inline, static] |
| void RTOpPack::TOpRandomize< Scalar >::set_bounds | ( | const Scalar & | l, | |
| const Scalar & | u | |||
| ) | [inline] |
| void RTOpPack::TOpRandomize< Scalar >::set_seed | ( | const unsigned int | seed | ) | [inline] |
| unsigned int RTOpPack::TOpRandomize< Scalar >::get_seed | ( | ) | const [inline] |
| void RTOpPack::TOpRandomize< Scalar >::apply_op | ( | const int | num_vecs, | |
| const ConstSubVectorView< Scalar > | sub_vecs[], | |||
| const int | num_targ_vecs, | |||
| const SubVectorView< Scalar > | targ_sub_vecs[], | |||
| ReductTarget * | reduct_obj | |||
| ) | const [inline, virtual] |
1.4.7