Skip to content

scram::core::FaultTreeAnalyzer

Fault tree analysis facility with specific algorithms. More...

#include <fault_tree_analysis.h>

Inherits from scram::core::FaultTreeAnalysis, scram::core::Analysis, boost::noncopyable

Public Functions

Name
const Algorithm *algorithm() const
Algorithm *algorithm()
FaultTreeAnalysis(const mef::Gate & root, const Settings & settings, const mef::Model * model =nullptr)<br>Traverses a valid fault tree from the root gate to collect databases of events, gates, and other members of the fault tree.
Pdag *graph() const

Additional inherited members

Public Functions inherited from scram::core::FaultTreeAnalysis

Name
virtual~FaultTreeAnalysis() =default
const mef::Gate &top_event() const
voidAnalyze()<br>Analyzes the fault tree and performs computations.
const ProductContainer &products() const
boolhas_products() const
std::shared_ptr< Pdag >pdag()
const ProductSummary *last_product_summary() const
booladaptive_mode_used() const
doubleadaptive_target_probability() const
voidinitiating_event_frequency(double frequency)<br>Sets the initiating event frequency to be applied during analysis.

Public Functions inherited from scram::core::Analysis

Name
Analysis(Settings settings)
virtual~Analysis() =0<br>Abstract class.
const Settings &settings() const
const std::string &warnings() const
doubleanalysis_time() const

Protected Functions inherited from scram::core::Analysis

Name
Settings &settings()
voidAddWarning(std::string msg)<br>Appends a warning message to the analysis warnings.
voidAddAnalysisTime(double time)<br>Adds time to the total analysis time.

Detailed Description

cpp
template <class Algorithm >
class scram::core::FaultTreeAnalyzer;

Fault tree analysis facility with specific algorithms.

Template Parameters:

  • Algorithm Fault tree analysis algorithm.

This class is meant to be specialized by fault tree analysis algorithms.

Public Functions Documentation

function algorithm

cpp
inline const Algorithm * algorithm() const

Return: The analysis algorithm for use by other analyses.

function algorithm

cpp
inline Algorithm * algorithm()

function FaultTreeAnalysis

cpp
FaultTreeAnalysis(
    const mef::Gate & root,
    const Settings & settings,
    const mef::Model * model =nullptr
)

Traverses a valid fault tree from the root gate to collect databases of events, gates, and other members of the fault tree.

Parameters:

  • root The top event of the fault tree to analyze.
  • settings Analysis settings for all calculations.
  • model The Model containing substitutions if any.

Note: It is assumed that analysis is done only once.

Warning: If the fault tree structure is changed, this analysis does not incorporate the changed structure. Moreover, the analysis results may get corrupted.

The passed fault tree must be pre-validated without cycles, and its events must be fully initialized.

function graph

cpp
inline Pdag * graph() const

Return: Pointer to the PDAG representing the fault tree.


Updated on 2026-01-09 at 21:59:11 +0000