representation of VLBI multi scheduling tool
More...
#include <MultiScheduling.h>
|
| | MultiScheduling (std::unordered_map< std::string, std::vector< std::string >> sta_group, std::unordered_map< std::string, std::vector< std::string >> src_group, std::unordered_map< std::string, std::vector< std::string >> bls_group) |
| | constructor More...
|
| |
| void | setStart (const std::vector< boost::posix_time::ptime > &start) |
| | set session start times More...
|
| |
| void | addParameters (const std::string &name) |
| | add new boolean parameter More...
|
| |
| void | addParameters (const std::string &name, const std::vector< double > &values) |
| | add new value based parameter More...
|
| |
| void | addParameters (const std::string &name, const std::string &member, const std::vector< double > &values) |
| | add new value and member based parameter More...
|
| |
| std::vector< Parameters > | createMultiScheduleParameters (unsigned int maxNr) |
| | create vector of all possible multi scheduling parameter combinations More...
|
| |
| boost::property_tree::ptree | createPropertyTree () const |
| | create property tree used for parameter.xml file More...
|
| |
| | VieVS_Object (unsigned long id) |
| | constructor More...
|
| |
| const unsigned long | getId () const |
| | get object id More...
|
| |
| bool | hasValidId () const |
| | check if id is valid More...
|
| |
| bool | hasId (unsigned long id) const |
| | check if object has specific id More...
|
| |
| void | setId (unsigned long id) |
| | set object id More...
|
| |
| std::string | printId () const |
| | object id string More...
|
| |
|
| void | addParameter (std::vector< Parameters > &allPara, unsigned long &n_before, const std::string &name, bool pick_random=false) |
| | add boolean parameters More...
|
| |
| void | addParameter (std::vector< Parameters > &allPara, unsigned long &n_before, const std::string &name, const std::vector< double > &value, bool pick_random=false) |
| | add value based parameters More...
|
| |
| void | addParameter (std::vector< Parameters > &allPara, unsigned long &n_before, const std::string &name, const std::string &member, const std::vector< double > &value, bool pick_random=false) |
| | add value and member based parameters More...
|
| |
| std::vector< Parameters > | createMultiScheduleParameters_gridwise (unsigned int maxNr) |
| | create vector of all possible multi scheduling parameter combinations (gridwise selection) More...
|
| |
| std::vector< Parameters > | createMultiScheduleParameters_random (unsigned int maxNr) |
| | create vector of all possible multi scheduling parameter combinations (random selection) More...
|
| |
|
| template<typename T > |
| static std::vector< T > | collect (T Parameters::*f, std::vector< Parameters > const &v) |
| | collecs all entries of a fiven field of a vector of parameters More...
|
| |
representation of VLBI multi scheduling tool
- Author
- Matthias Schartner
- Date
- 03.09.2017
| MultiScheduling::MultiScheduling |
( |
std::unordered_map< std::string, std::vector< std::string >> |
sta_group, |
|
|
std::unordered_map< std::string, std::vector< std::string >> |
src_group, |
|
|
std::unordered_map< std::string, std::vector< std::string >> |
bls_group |
|
) |
| |
constructor
- Author
- Matthias Schartner
- Parameters
-
| sta_group | station groups |
| src_group | source groups |
| bls_group | baseline groups |
| void VieVS::MultiScheduling::addParameter |
( |
std::vector< Parameters > & |
allPara, |
|
|
unsigned long & |
n_before, |
|
|
const std::string & |
name, |
|
|
bool |
pick_random = false |
|
) |
| |
|
private |
add boolean parameters
- Author
- Matthias Schartner
- Parameters
-
| allPara | list of all parameters |
| n_before | number of blocks |
| name | parameter name |
| pick_random | enable random values of multi-scheduling parameters |
| void VieVS::MultiScheduling::addParameter |
( |
std::vector< Parameters > & |
allPara, |
|
|
unsigned long & |
n_before, |
|
|
const std::string & |
name, |
|
|
const std::vector< double > & |
value, |
|
|
bool |
pick_random = false |
|
) |
| |
|
private |
add value based parameters
- Author
- Matthias Schartner
- Parameters
-
| allPara | list of all parameters |
| n_before | number of blocks |
| name | parameter name |
| value | number of values |
| pick_random | enable random values of multi-scheduling parameters |
| void VieVS::MultiScheduling::addParameter |
( |
std::vector< Parameters > & |
allPara, |
|
|
unsigned long & |
n_before, |
|
|
const std::string & |
name, |
|
|
const std::string & |
member, |
|
|
const std::vector< double > & |
value, |
|
|
bool |
pick_random = false |
|
) |
| |
|
private |
add value and member based parameters
- Author
- Matthias Schartner
- Parameters
-
| allPara | list of all parameters |
| n_before | number of blocks |
| name | parameter name |
| member | member name |
| value | number of values |
| pick_random | enable random values of multi-scheduling parameters |
| void MultiScheduling::addParameters |
( |
const std::string & |
name | ) |
|
add new boolean parameter
- Author
- Matthias Schartner
- Parameters
-
| void MultiScheduling::addParameters |
( |
const std::string & |
name, |
|
|
const std::vector< double > & |
values |
|
) |
| |
add new value based parameter
- Author
- Matthias Schartner
- Parameters
-
| name | parameter name |
| values | parameter values |
| void MultiScheduling::addParameters |
( |
const std::string & |
name, |
|
|
const std::string & |
member, |
|
|
const std::vector< double > & |
values |
|
) |
| |
add new value and member based parameter
- Author
- Matthias Schartner
- Parameters
-
| name | parameter name |
| member | parameter member |
| values | parameter values |
template<typename T >
| static std::vector<T> VieVS::MultiScheduling::collect |
( |
T Parameters::* |
f, |
|
|
std::vector< Parameters > const & |
v |
|
) |
| |
|
inlinestaticprivate |
collecs all entries of a fiven field of a vector of parameters
- Author
- Matthias Schartner
- Template Parameters
-
- Parameters
-
| f | field |
| v | vector of parameters |
- Returns
- vector of field entries (type T)
create vector of all possible multi scheduling parameter combinations
- Author
- Matthias Schartner
- Parameters
-
| maxNr | maximum number of parameters |
- Returns
- all possible multi scheduling parameter combinations
create vector of all possible multi scheduling parameter combinations (gridwise selection)
- Author
- Matthias Schartner
- Parameters
-
| maxNr | maximum number of parameters |
- Returns
- all possible multi scheduling parameter combinations
create vector of all possible multi scheduling parameter combinations (random selection)
- Author
- Matthias Schartner
- Parameters
-
| maxNr | maximum number of parameters |
- Returns
- all possible multi scheduling parameter combinations
| boost::property_tree::ptree MultiScheduling::createPropertyTree |
( |
| ) |
const |
create property tree used for parameter.xml file
- Author
- Matthias Schartner
- Returns
- property tree for multiSched block
| vector< MultiScheduling::Parameters > MultiScheduling::evolution_step |
( |
int |
gen, |
|
|
const std::vector< Parameters > & |
old_pop, |
|
|
const std::map< int, double > & |
scores, |
|
|
const boost::property_tree::ptree & |
tree |
|
) |
| |
|
static |
generate new population of multi-scheduling parameters
- Author
- Matthias Schartner
- Parameters
-
| gen | generation number |
| old_pop | old populatoin of parameters |
| scores | score of each parameter |
| tree | xml property tree |
- Returns
- new population of parameters
| static void VieVS::MultiScheduling::pick_random_values |
( |
bool |
flag | ) |
|
|
inlinestatic |
set pick random values
- Author
- Matthias Schartner
- Parameters
-
| static void VieVS::MultiScheduling::setConstants |
( |
unsigned long |
nsta, |
|
|
unsigned long |
nsrc |
|
) |
| |
|
inlinestatic |
constructor
- Author
- Matthias Schartner
- Parameters
-
| nsta | number of stations |
| nsrc | number of sources |
| static void VieVS::MultiScheduling::setSeed |
( |
unsigned int |
seed | ) |
|
|
inlinestatic |
set seed for RNG generator
- Author
- Matthias Schartner
- Parameters
-
| void VieVS::MultiScheduling::setStart |
( |
const std::vector< boost::posix_time::ptime > & |
start | ) |
|
|
inline |
set session start times
- Author
- Matthias Schartner
- Parameters
-
| std::unordered_map<std::string, std::vector<std::string> > VieVS::MultiScheduling::baselineGroups_ |
|
private |
| std::vector<std::pair<std::string, std::pair<std::string, std::vector<double> > > > VieVS::MultiScheduling::doubleArgumentNumeric |
|
private |
value and member based parameters
| unsigned long MultiScheduling::nextId = 0 |
|
staticprivate |
| unsigned long MultiScheduling::nsrc_ = 0 |
|
staticprivate |
| unsigned long MultiScheduling::nsta_ = 0 |
|
staticprivate |
| bool MultiScheduling::pick_random = false |
|
staticprivate |
| std::default_random_engine MultiScheduling::random_engine_ = std::default_random_engine() |
|
staticprivate |
random number generator engine
| std::vector<std::string> VieVS::MultiScheduling::singleArgumentLogical |
|
private |
| std::vector<std::pair<std::string, std::vector<double> > > VieVS::MultiScheduling::singleArgumentNumeric |
|
private |
| std::unordered_map<std::string, std::vector<std::string> > VieVS::MultiScheduling::sourceGroups_ |
|
private |
| std::vector<boost::posix_time::ptime> VieVS::MultiScheduling::start_ |
|
private |
| std::unordered_map<std::string, std::vector<std::string> > VieVS::MultiScheduling::stationGroups_ |
|
private |
The documentation for this class was generated from the following files: