6#include <boost/serialization/export.hpp>
7#include <boost/archive/binary_oarchive.hpp>
8#include <boost/archive/binary_iarchive.hpp>
9#include "../Global/SimulationContext.h"
45 double trigger_probability, event_probability;
46 double act_t_minimum, act_alpha_parameter, act_beta_parameter;
47 double react_t_minimum, react_alpha_parameter, react_beta_parameter;
51 fin >> str >> trigger_probability
52 >> str >> event_probability
53 >> str >> act_t_minimum >> act_alpha_parameter >> act_beta_parameter
54 >> str >> react_t_minimum >> react_alpha_parameter >> react_beta_parameter
64 for (i = 0; i < n; i++) {
65 auto expected_alarm_state_pt = make_unique<KBExpectedAlarmStateUnit>();
66 expected_alarm_state_pt->readInfoFromFile(fin);
71 for (i = 0; i < n; i++) {
72 auto expected_component_state_pt = make_unique<KBExpectedComponentStateUnit>();
73 expected_component_state_pt->readInfoFromFile(fin);
85 for (i = 0; i < n; i++) {
86 auto expected_parameter_value_pt = make_unique<KBExpectedParameterValueUnit>();
87 expected_parameter_value_pt->readInfoFromFile(fin);
92 for (i = 0; i < n; i++) {
93 auto control_pt = make_unique<HardWiredControlActivity>();
94 control_pt->readInfoFromFile(fin);
99 for (i = 0; i < n; i++) {
100 auto mental_belief_pt = make_unique<HardWiredMentalBelief>();
101 mental_belief_pt->readInfoFromFile(fin);
113 for (i = 0; i < n; i++) {
114 auto expected_procedure_activity_pt = make_unique<HardWiredProcedureActivity>();
115 expected_procedure_activity_pt->readInfoFromFile(fin);
141 n_return = elem->getStateOfExpectation();
145 n_return = elem->getStateOfExpectation();
149 n_return = elem->getStateOfExpectation();
153 n_return = elem->getStateOfExpectation();
157 n_return = elem->getStateOfExpectation();
161 n_return = elem->getStateOfExpectation();
165 n_return = elem->getStateOfExpectation();
169 n_return = elem->getStateOfExpectation();
208 n_return = elem->checkForMatch(_alarm_name, _alarm_state);
212 if (n_return > 1) { n_return = 1; }
213 if (n_return < -1) { n_return = -1; }
220 n_return = elem->checkForMatch(_comp_name, _comp_state);
221 if (n_return > 1) { n_return = 1; }
222 if (n_return < -1) { n_return = -1; }
229 n_return = elem->checkForMatch(_ss_name, _ss_state);
230 if (n_return > 1) { n_return = 1; }
231 if (n_return < -1) { n_return = -1; }
238 n_return = elem->checkForMatch(_par_name, _par_value, _operator);
239 if (n_return > 1) { n_return = 1; }
240 if (n_return < -1) { n_return = -1; }
247 n_return = elem->checkForMatch(_par_name, _par_trend);
248 if (n_return > 1) { n_return = 1; }
249 if (n_return < -1) { n_return = -1; }
256 n_return = elem->checkForMatch(_ctrl_name, _ctrl_value);
257 if (n_return > 1) { n_return = 1; }
258 if (n_return < -1) { n_return = -1; }
265 n_return = elem->checkForMatch(_name, _state);
266 if (n_return > 1) { n_return = 1; }
267 if (n_return < -1) { n_return = -1; }
274 n_return = elem->checkForMatch(_name, _state);
275 if (n_return > 1) { n_return = 1; }
276 if (n_return < -1) { n_return = -1; }
300 auto pt = make_unique<KBExpectedAlarmStateUnit>();
301 pt->copyKBExpectedAlarmStateUnit(*src);
305 auto pt = make_unique<KBExpectedComponentStateUnit>();
306 pt->copyKBExpectedComponentStateUnit(*src);
310 auto pt = make_unique<KBExpectedSupportSystemStateUnit>();
311 pt->copyKBExpectedSupportSystemStateUnit(*src);
315 auto pt = make_unique<KBExpectedParameterValueUnit>();
316 pt->copyKBExpectedParameterValueUnit(*src);
320 auto pt = make_unique<KBExpectedParameterTrendUnit>();
321 pt->copyKBExpectedParameterTrendUnit(*src);
325 auto pt = make_unique<HardWiredControlActivity>();
326 pt->copyHardWiredControlActivity(*src);
330 auto pt = make_unique<HardWiredMentalBelief>();
331 pt->copyHardWiredMentalBelief(*src);
335 auto pt = make_unique<HardWiredProcedureActivity>();
336 pt->copyHardWiredProcedureActivity(*src);
362 fout <<
"KBHardWiredUnit ";
377 for (i = 0; i < num; i++) {
382 for (i = 0; i < num; i++) {
387 for (i = 0; i < num; i++) {
392 for (i = 0; i < num; i++) {
397 for (i = 0; i < num; i++) {
402 for (i = 0; i < num; i++) {
407 for (i = 0; i < num; i++) {
412 for (i = 0; i < num; i++) {
428 if (str !=
"KBHardWiredUnit") {
429 ofstream fout(
"err messages.txt", ios::app);
430 cout <<
"KBHardWiredUnit::retrieveKBHardWiredUnitFromFile error in previous function" << endl;
432 <<
" KBHardWiredUnit::retrieveKBHardWiredUnitFromFile retrieval error in previous function\n";
452 for (i = 0; i < num; i++) {
453 auto expected_alarm_state_pt = make_unique<KBExpectedAlarmStateUnit>();
454 expected_alarm_state_pt->retrieveKBExpectedAlarmStateUnitFromFile(fin);
456 ofstream fout(
"err messages.txt", ios::app);
457 cout <<
"Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->KBExpectedAlarmStateUnit loop " << i << endl;
459 <<
" Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->KBExpectedAlarmStateUnit loop " << i <<
'\n';
469 for (i = 0; i < num; i++) {
470 auto expected_component_state_pt = make_unique<KBExpectedComponentStateUnit>();
471 expected_component_state_pt->retrieveKBExpectedComponentStateUnitFromFile(fin);
473 ofstream fout(
"err messages.txt", ios::app);
474 cout <<
"Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->KBExpectedComponentStateUnit loop " << i << endl;
476 <<
" Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->KBExpectedComponentStateUnit loop " << i
487 for (i = 0; i < num; i++) {
488 auto expected_support_system_state_pt = make_unique<KBExpectedSupportSystemStateUnit>();
489 expected_support_system_state_pt->retrieveKBExpectedSupportSystemStateUnitFromFile(fin);
491 ofstream fout(
"err messages.txt", ios::app);
492 cout <<
"Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->KBExpectedSupportSystemStateUnit loop " << i << endl;
494 <<
" Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->KBExpectedSupportSystemStateUnit loop " << i
505 for (i = 0; i < num; i++) {
506 auto expected_parameter_value_pt = make_unique<KBExpectedParameterValueUnit>();
507 expected_parameter_value_pt->retrieveKBExpectedParameterValueUnitFromFile(fin);
509 ofstream fout(
"err messages.txt", ios::app);
510 cout <<
"Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->KBExpectedParameterValueUnit loop " << i << endl;
512 <<
" Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->KBExpectedParameterValueUnit loop " << i
523 for (i = 0; i < num; i++) {
524 auto expected_parameter_trend_pt = make_unique<KBExpectedParameterTrendUnit>();
525 expected_parameter_trend_pt->retrieveKBExpectedParameterTrendUnitFromFile(fin);
527 ofstream fout(
"err messages.txt", ios::app);
528 cout <<
"Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->KBExpectedParameterTrendUnit loop " << i << endl;
530 <<
" Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->KBExpectedParameterTrendUnit loop " << i
541 for (i = 0; i < num; i++) {
542 auto expected_control_pt = make_unique<HardWiredControlActivity>();
543 expected_control_pt->retrieveHardWiredControlActivityFromFile(fin);
545 ofstream fout(
"err messages.txt", ios::app);
546 cout <<
"Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->HardWiredControlActivity loop " << i << endl;
548 <<
" Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->HardWiredControlActivity loop " << i <<
'\n';
558 for (i = 0; i < num; i++) {
559 auto expected_mental_belief_pt = make_unique<HardWiredMentalBelief>();
560 expected_mental_belief_pt->retrieveHardWiredMentalBeliefFromFile(fin);
562 ofstream fout(
"err messages.txt", ios::app);
563 cout <<
"Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->HardWiredMentalBelief loop " << i << endl;
564 fout <<
r5pars_.timesno <<
" Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->HardWiredMentalBelief loop "
575 for (i = 0; i < num; i++) {
576 auto expected_procedure_activity_pt = make_unique<HardWiredProcedureActivity>();
577 expected_procedure_activity_pt->retrieveHardWiredProcedureActivityFromFile(fin);
579 ofstream fout(
"err messages.txt", ios::app);
580 cout <<
"Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->HardWiredProcedureActivity loop " << i << endl;
582 <<
" Err: KBHardWiredUnit::retrieveKBHardWiredUnitFromFile->HardWiredProcedureActivity loop " << i <<
'\n';
599#include <boost/archive/binary_oarchive.hpp>
600#include <boost/archive/binary_iarchive.hpp>
605void hw_vec_state_save(boost::archive::binary_oarchive& ar,
const V& v) {
606 const uint32_t n =
static_cast<uint32_t
>(v.size());
608 for (
const auto&
e : v)
e->state_save(ar);
611void hw_vec_state_load(boost::archive::binary_iarchive& ar, V& v) {
615 throw std::runtime_error(
"KB state overlay: expectation count mismatch against the seeded KB");
616 for (
auto&
e : v)
e->state_load(ar);
SimulationContext g_sim
Global simulation context: the single instance, defined in SimulationContext.cpp.
void setTempTypeOfConsequence(Consequence)
Stores the consequence of the end state the running sequence will get.
void setTempESMessage(std::string)
Stores the description of the end state the running sequence will get if it is terminated (set by mod...
void readInfoFromFile(std::ifstream &)
void retrieveKBElementFromFile(std::ifstream &)
void saveKBElementToFile(std::ofstream &)
void copyKBElement(KBElement &)
std::vector< std::unique_ptr< KBExpectedSupportSystemStateUnit > > expected_support_system_state
int number_of_fulfilled_procedure_activity
int getNumberOfFulfilledAlarmState()
void checkForComponentState(std::string, int)
int getNumberOfFulfilledControl()
void readInfoFromFile(std::ifstream &)
int number_of_fulfilled_parameter_value
void checkForAlarmState(std::string, int)
std::vector< std::unique_ptr< HardWiredProcedureActivity > > expected_procedure_activity
void checkForMentalBelief(std::string, int)
void checkForParameterTrend(std::string, int)
int getTotalNumberOfExpectation()
void setMentalProcedurePriority(int)
void calculateTotalNumberOfExpectation()
void setNumberOfFulfilledAlarmState(int)
std::vector< std::unique_ptr< KBExpectedComponentStateUnit > > expected_component_state
int total_number_of_expectation
Probability branch_probability
void state_load(boost::archive::binary_iarchive &ar)
void checkForProcedureActivity(std::string, int)
Probability activation_probability
int number_of_fulfilled_parameter_trend
void setNumberOfFulfilledComponentState(int)
int number_of_fulfilled_component_state
void copyKBHardWiredUnit(KBHardWiredUnit &)
void retrieveKBHardWiredUnitFromFile(std::ifstream &)
void checkForSupportSystemState(std::string, int)
std::vector< std::unique_ptr< KBExpectedParameterValueUnit > > expected_parameter_value
void setNumberOfFulfilledMentalBelief(int)
int number_of_fulfilled_alarm_state
std::vector< std::unique_ptr< KBExpectedParameterTrendUnit > > expected_parameter_trend
std::vector< std::unique_ptr< HardWiredMentalBelief > > expected_mental_belief
int getNumberOfFulfilledParameterTrend()
void setTotalNumberOfExpectation(int)
virtual ~KBHardWiredUnit()
std::vector< std::unique_ptr< HardWiredControlActivity > > expected_control
void setNumberOfFulfilledControl(int)
void recalculateConfidenceLevel()
int getMentalProcedurePriority()
std::vector< std::unique_ptr< KBExpectedAlarmStateUnit > > expected_alarm_state
double getConfidenceLevel()
void setNumberOfFulfilledParameterValue(int)
void saveKBHardWiredUnitToFile(std::ofstream &)
int number_of_fulfilled_mental_belief
int getNumberOfFulfilledComponentState()
void checkForControl(std::string, double)
int number_of_fulfilled_support_system_state
int getNumberOfFulfilledSupportSystemState()
int mental_procedure_priority
int number_of_fulfilled_control
int getNumberOfFulfilledParameterValue()
void checkForParameterValue(std::string, double, int)
void setNumberOfFulfilledSupportSystemState(int)
double calculateConfidenceLevel()
void state_save(boost::archive::binary_oarchive &ar) const
int getNumberOfFulfilledProcedureActivity()
int getNumberOfFulfilledMentalBelief()
void setNumberOfFulfilledProcedureActivity(int)
void setNumberOfFulfilledParameterTrend(int)
void copyProbability(Probability &)
void setProbability(double)
void saveProbabilityToFile(std::ofstream &)
void retrieveProbabilityFromFile(std::ifstream &)
void readInfoFromFile(std::ifstream &)
void copyProcedureStepInfo(ProcedureStepInfo &)
void saveProcedureStepInfoToFile(std::ofstream &)
void retrieveProcedureStepInfoFromFile(std::ifstream &)
void setStateOfActivation(int)
void saveStateOfActivationToFile(std::ofstream &)
int getStateOfActivation()
void retrieveStateOfActivationFromFile(std::ifstream &)
void copyStateOfActivation(StateOfActivation &)
void saveTimerToFile(std::ofstream &)
void retrieveTimerFromFile(std::ifstream &)
void setT_Minimum(double)
void timer_state_save(Archive &ar) const
void setBeta_Weibull(double)
void setAlpha_Weibull(double)
void timer_state_load(Archive &ar)
BranchRecord Branch_center
Dynamic event tree state.