12 #ifndef SST_CORE_CORETEST_DISTRIBCOMPONENT_H
13 #define SST_CORE_CORETEST_DISTRIBCOMPONENT_H
15 #include "sst/core/component.h"
16 #include "sst/core/rng/distrib.h"
19 using namespace SST::RNG;
22 namespace CoreTestDistribComponent {
28 SST_ELI_REGISTER_COMPONENT(
31 "coreTestDistribComponent",
32 SST_ELI_ELEMENT_VERSION(1,0,0),
33 "Random Number Distribution Component",
34 COMPONENT_CATEGORY_UNCATEGORIZED
37 SST_ELI_DOCUMENT_PARAMS(
38 {
"count",
"Number of random values to generate from the distribution",
"1000"},
39 {
"distrib",
"Random distribution to use - \"gaussian\" (or \"normal\"), or \"exponential\"",
"gaussian"},
40 {
"mean",
"Mean value to use if we are sampling from the Gaussian/Normal distribution",
"1.0"},
41 {
"stddev",
"Standard deviation to use for the distribution",
"0.2"},
42 {
"lambda",
"Lambda value to use for the exponential distribution",
"1.0"},
43 {
"binresults",
"Print the results, only if value is \"1\"",
"1"},
44 {
"probcount",
"Number of probabilities in discrete distribution",
"1"},
45 {
"prob%(probcount)d",
"Probability values for discrete distribution",
"1"}
49 SST_ELI_DOCUMENT_STATISTICS(
53 SST_ELI_DOCUMENT_PORTS(
57 SST_ELI_DOCUMENT_SUBCOMPONENT_SLOTS(
69 virtual bool tick(SST::Cycle_t);
76 std::string dist_type;
78 std::map<int64_t, uint64_t>* bins;
Main component object for the simulation.
Definition: component.h:31
Definition: coreTest_DistribComponent.h:25
void setup()
Called after all components have been constructed and initialization has completed,...
Definition: coreTest_DistribComponent.h:62
Parameter store.
Definition: params.h:56
Base class of statistical distributions in SST.
Definition: distrib.h:23