Random size generator for experimental sieve curve. More...
#include <randomizer.hpp>
Public Types | |
| typedef vector< array< double, 2 > > | sieve_curve |
| typedef for sieve curve | |
| typedef vector< double > | sizes_t |
| typedef for sizes type | |
Public Member Functions | |
| ExperimentalSieveCurveRandomizer () | |
| Default constructor, sets values to ((0.5e-3,0.0),(16e-3,1.0)) | |
| ExperimentalSieveCurveRandomizer (int n, const sieve_curve &v) | |
| Constructor from nMinValues and sieve_curve. More... | |
| ExperimentalSieveCurveRandomizer (int n, const sieve_curve &v, const string &m) | |
| Constructor from nMinValues, sieve_curve and file name. More... | |
| const sieve_curve & | getValues () const |
| Getter for values (returns by const reference) | |
| sieve_curve | getValues () |
| Getter for values (returns by value) | |
| void | setValues (const sieve_curve &sc) |
| Setter for values. | |
| virtual double | cdf (double size) const |
| virtual double | getMinSize () const |
| Returns minimum defined size. | |
| virtual double | getMaxSize () const |
| Returns maximum defined size. | |
| virtual const string & | getClassName () |
| Returns string representation of ExperimentalSieveCurveRandomizer class name. | |
| double | take () const |
| Returns random size. A lot of random sizes should converge to the prescribed sieve curve. Mass/volume of aggregate is assumed pow(size,3) | |
| const sizes_t & | getSizes () |
| Getter for sizes. | |
| string | getFileName () |
| Getter for file name. | |
| virtual void | save (const string &fName) const |
| Saves receiver into specified file. More... | |
| virtual void | save () const |
| Saves receiver into this->fileName. | |
| virtual bool | load (const string &fName) |
| Loads receiver from specified file. More... | |
| virtual bool | load () |
| Loads receiver from this->fileName. More... | |
Static Public Member Functions | |
| static double | random () |
| Returns random number in the interval [0,1) (with uniform distribution) | |
| static double | randint (int m) |
| Returns random integer in the interval [0,m-1] (with uniform istribution) More... | |
| static int | getSeed () |
| Getter for seed. | |
| static void | setSeed (int s) |
| Setter for seed. More... | |
Static Public Attributes | |
| static const string | className = "ExperimentalSieveCurveRandomizer" |
| String representation of ExperimentalSieveCurveRandomizer class name. | |
Protected Member Functions | |
| void | check () |
| Checks, if given sieve curve is correct. Throw error if not. | |
| int | findInterval (double size) const |
| Finds an interval which size blongs to. More... | |
| void | initSizes (unsigned int nMinValues) |
| According to given parameters, constructs sizes. It is numerically converted sieve curve from terms of cumulative volume to the terms of sizes. | |
| void | saveSizes (ostream &os) const |
| Save sizes to ostream. More... | |
| void | loadSizes (istream &is) |
| Load sizes from istream. More... | |
Static Protected Member Functions | |
| static AggregSizeRandomizer * | Load (istream &is) |
| Create and return a new AggregSizeRandomizer from given istream. More... | |
Protected Attributes | |
| sieve_curve | values |
| Sieve curve as a pair array (size,relative cumulative mass) | |
| sizes_t | sizes |
| Array of increasing sizes. Discrete representation of given sieve curve in terms of aggregate size. | |
| string | fileName |
| File name for saving itself. | |
Friends | |
| ostream & | operator<< (ostream &f, const ExperimentalSieveCurveRandomizer &o) |
| ExperimentalSieveCurveRandomizer to ostream shift operator. | |
| istream & | operator>> (istream &f, ExperimentalSieveCurveRandomizer &o) |
| ExperimentalSieveCurveRandomizer from istream shift operator. | |
Random size generator for experimental sieve curve.
Define by pair array (size,relative cumulative mass)
|
inline |
Constructor from nMinValues and sieve_curve.
| n | minimum number of sizes |
| v | sieve curve |
|
inline |
Constructor from nMinValues, sieve_curve and file name.
| n | minimum number of sizes |
| v | sieve curve |
| m | file name |
|
virtual |
Cumulative relative mass function. Returns what is the total mass of all aggregates spmaller than given size (normalized with total mass of all aggregates)
| size | given size |
Implements aggregpacking::AggregSizeRandomizer.
|
protected |
Finds an interval which size blongs to.
| size | given size |
|
staticprotectedinherited |
Create and return a new AggregSizeRandomizer from given istream.
| is | input stream |
|
inlinevirtualinherited |
Loads receiver from specified file.
| fName | given file name |
|
inlinevirtualinherited |
Loads receiver from this->fileName.
|
protectedinherited |
Load sizes from istream.
| is | input stream |
|
inlinestaticinherited |
Returns random integer in the interval [0,m-1] (with uniform istribution)
| m | upper limit if the interval |
|
inlinevirtualinherited |
Saves receiver into specified file.
| fName | given file name |
|
protectedinherited |
Save sizes to ostream.
| os | output stream |
|
inlinestaticinherited |
Setter for seed.
| s | new seed |
1.8.6