praxis_cli / cli / fault_tree
Module fault_tree
Contents
- Structs
- Enums
- Functions
cli_build_optionsbuild_pdag_and_bddenumerate_cut_setsdiagram_cut_set_countchoose_zbdd_filters_interactivelyprint_cut_sets_summaryzbdd_wf1_no_approx_no_limitszbdd_wf2_approx_no_limitszbdd_wf3_no_approx_limitszbdd_wf4_approx_limitsapply_zbdd_filterscompute_approxrun_pre_event_tree_implrun_pre_event_tree_parsedrun_post_event_tree
- Type Aliases
Quick Reference
Structs
FaultTreePreState
struct FaultTreePreState {
pub fault_tree: praxis::core::fault_tree::FaultTree,
pub result: praxis::analysis::fault_tree::AnalysisResult,
pub computed_cut_sets: Option<Vec<praxis::algorithms::mocus::CutSet>>,
}Trait Implementations
impl<ST> CastableFrom for FaultTreePreState
impl Instrument for FaultTreePreState
impl IntoEither for FaultTreePreState
impl Pointable for FaultTreePreState
<span id="faulttreeprestate-pointable-const-align"></span>
const ALIGN: usize<span id="faulttreeprestate-pointable-type-init"></span>
type Init = T<span id="faulttreeprestate-pointable-init"></span>
unsafe fn init(init: <T as Pointable>::Init) -> usize<span id="faulttreeprestate-pointable-deref"></span>
unsafe fn deref<'a>(ptr: usize) -> &'a T<span id="faulttreeprestate-pointable-deref-mut"></span>
unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T<span id="faulttreeprestate-pointable-drop"></span>
unsafe fn drop(ptr: usize)
impl Read for FaultTreePreState
impl Same for FaultTreePreState
- <span id="faulttreeprestate-same-type-output"></span>
type Output = T
impl<SS> SupersetOf for FaultTreePreState
<span id="faulttreeprestate-supersetof-to-subset"></span>
fn to_subset(&self) -> Option<SS><span id="faulttreeprestate-supersetof-is-in-subset"></span>
fn is_in_subset(&self) -> bool<span id="faulttreeprestate-supersetof-to-subset-unchecked"></span>
fn to_subset_unchecked(&self) -> SS<span id="faulttreeprestate-supersetof-from-subset"></span>
fn from_subset(element: &SS) -> SP
impl<V> VZip for FaultTreePreState
- <span id="faulttreeprestate-vzip"></span>
fn vzip(self) -> V
impl WithSubscriber for FaultTreePreState
FaultTreeOutputs
struct FaultTreeOutputs {
pub fault_tree: praxis::core::fault_tree::FaultTree,
pub result: praxis::analysis::fault_tree::AnalysisResult,
pub computed_cut_sets: Option<Vec<praxis::algorithms::mocus::CutSet>>,
pub computed_monte_carlo: Option<praxis::mc::core::MonteCarloResult>,
pub computed_monte_carlo_config: Option<praxis::mc::core::MonteCarloRunConfig>,
}Trait Implementations
impl<ST> CastableFrom for FaultTreeOutputs
impl Instrument for FaultTreeOutputs
impl IntoEither for FaultTreeOutputs
impl Pointable for FaultTreeOutputs
<span id="faulttreeoutputs-pointable-const-align"></span>
const ALIGN: usize<span id="faulttreeoutputs-pointable-type-init"></span>
type Init = T<span id="faulttreeoutputs-pointable-init"></span>
unsafe fn init(init: <T as Pointable>::Init) -> usize<span id="faulttreeoutputs-pointable-deref"></span>
unsafe fn deref<'a>(ptr: usize) -> &'a T<span id="faulttreeoutputs-pointable-deref-mut"></span>
unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T<span id="faulttreeoutputs-pointable-drop"></span>
unsafe fn drop(ptr: usize)
impl Read for FaultTreeOutputs
impl Same for FaultTreeOutputs
- <span id="faulttreeoutputs-same-type-output"></span>
type Output = T
impl<SS> SupersetOf for FaultTreeOutputs
<span id="faulttreeoutputs-supersetof-to-subset"></span>
fn to_subset(&self) -> Option<SS><span id="faulttreeoutputs-supersetof-is-in-subset"></span>
fn is_in_subset(&self) -> bool<span id="faulttreeoutputs-supersetof-to-subset-unchecked"></span>
fn to_subset_unchecked(&self) -> SS<span id="faulttreeoutputs-supersetof-from-subset"></span>
fn from_subset(element: &SS) -> SP
impl<V> VZip for FaultTreeOutputs
- <span id="faulttreeoutputs-vzip"></span>
fn vzip(self) -> V
impl WithSubscriber for FaultTreeOutputs
Enums
FaultTreePreOutcome
enum FaultTreePreOutcome {
ExitOk,
Continue(Box<FaultTreePreState>),
}Trait Implementations
impl<ST> CastableFrom for FaultTreePreOutcome
impl Instrument for FaultTreePreOutcome
impl IntoEither for FaultTreePreOutcome
impl Pointable for FaultTreePreOutcome
<span id="faulttreepreoutcome-pointable-const-align"></span>
const ALIGN: usize<span id="faulttreepreoutcome-pointable-type-init"></span>
type Init = T<span id="faulttreepreoutcome-pointable-init"></span>
unsafe fn init(init: <T as Pointable>::Init) -> usize<span id="faulttreepreoutcome-pointable-deref"></span>
unsafe fn deref<'a>(ptr: usize) -> &'a T<span id="faulttreepreoutcome-pointable-deref-mut"></span>
unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T<span id="faulttreepreoutcome-pointable-drop"></span>
unsafe fn drop(ptr: usize)
impl Read for FaultTreePreOutcome
impl Same for FaultTreePreOutcome
- <span id="faulttreepreoutcome-same-type-output"></span>
type Output = T
impl<SS> SupersetOf for FaultTreePreOutcome
<span id="faulttreepreoutcome-supersetof-to-subset"></span>
fn to_subset(&self) -> Option<SS><span id="faulttreepreoutcome-supersetof-is-in-subset"></span>
fn is_in_subset(&self) -> bool<span id="faulttreepreoutcome-supersetof-to-subset-unchecked"></span>
fn to_subset_unchecked(&self) -> SS<span id="faulttreepreoutcome-supersetof-from-subset"></span>
fn from_subset(element: &SS) -> SP
impl<V> VZip for FaultTreePreOutcome
- <span id="faulttreepreoutcome-vzip"></span>
fn vzip(self) -> V
impl WithSubscriber for FaultTreePreOutcome
Functions
cli_build_options
fn cli_build_options(cli: &crate::cli::args::Args) -> praxis::algorithms::build::BuildOptionsbuild_pdag_and_bdd
fn build_pdag_and_bdd(fault_tree: &praxis::core::fault_tree::FaultTree, opts: praxis::algorithms::build::BuildOptions) -> Result<(praxis::algorithms::pdag::Pdag, Vec<praxis::algorithms::pdag::NodeIndex>, praxis::algorithms::bdd_engine::Bdd, praxis::algorithms::bdd_engine::BddRef), Box<dyn std::error::Error>>enumerate_cut_sets
fn enumerate_cut_sets(zbdd: &praxis::algorithms::zbdd_engine::ZbddEngine, root: praxis::algorithms::zbdd_engine::ZbddRef, pdag: &praxis::algorithms::pdag::Pdag, order: &[praxis::algorithms::pdag::NodeIndex]) -> Vec<praxis::algorithms::mocus::CutSet>diagram_cut_set_count
fn diagram_cut_set_count(zbdd: &praxis::algorithms::zbdd_engine::ZbddEngine, root: praxis::algorithms::zbdd_engine::ZbddRef) -> u64choose_zbdd_filters_interactively
fn choose_zbdd_filters_interactively(cli: &crate::cli::args::Args, zbdd: &mut praxis::algorithms::zbdd_engine::ZbddEngine, root: praxis::algorithms::zbdd_engine::ZbddRef) -> praxis::algorithms::zbdd_engine::ZbddRefprint_cut_sets_summary
fn print_cut_sets_summary(label: &str, ft_id: &str, cut_sets: &[praxis::algorithms::mocus::CutSet], verbosity_level: u32)zbdd_wf1_no_approx_no_limits
fn zbdd_wf1_no_approx_no_limits(cli: &crate::cli::args::Args, fault_tree: &praxis::core::fault_tree::FaultTree, pdag: &praxis::algorithms::pdag::Pdag, order: &[praxis::algorithms::pdag::NodeIndex], bdd: &mut praxis::algorithms::bdd_engine::Bdd, bdd_root: praxis::algorithms::bdd_engine::BddRef, verbosity_level: u32) -> Result<(Vec<praxis::algorithms::mocus::CutSet>, f64), Box<dyn std::error::Error>>zbdd_wf2_approx_no_limits
fn zbdd_wf2_approx_no_limits(cli: &crate::cli::args::Args, fault_tree: &praxis::core::fault_tree::FaultTree, pdag: &praxis::algorithms::pdag::Pdag, order: &[praxis::algorithms::pdag::NodeIndex], bdd: &mut praxis::algorithms::bdd_engine::Bdd, bdd_root: praxis::algorithms::bdd_engine::BddRef, verbosity_level: u32) -> Result<(Vec<praxis::algorithms::mocus::CutSet>, f64), Box<dyn std::error::Error>>zbdd_wf3_no_approx_limits
fn zbdd_wf3_no_approx_limits(cli: &crate::cli::args::Args, fault_tree: &praxis::core::fault_tree::FaultTree, pdag: &praxis::algorithms::pdag::Pdag, order: &[praxis::algorithms::pdag::NodeIndex], bdd: &mut praxis::algorithms::bdd_engine::Bdd, bdd_root: praxis::algorithms::bdd_engine::BddRef, verbosity_level: u32) -> Result<(Vec<praxis::algorithms::mocus::CutSet>, f64), Box<dyn std::error::Error>>zbdd_wf4_approx_limits
fn zbdd_wf4_approx_limits(cli: &crate::cli::args::Args, fault_tree: &praxis::core::fault_tree::FaultTree, pdag: &praxis::algorithms::pdag::Pdag, order: &[praxis::algorithms::pdag::NodeIndex], bdd: &mut praxis::algorithms::bdd_engine::Bdd, bdd_root: praxis::algorithms::bdd_engine::BddRef, verbosity_level: u32) -> Result<(Vec<praxis::algorithms::mocus::CutSet>, f64), Box<dyn std::error::Error>>apply_zbdd_filters
fn apply_zbdd_filters(zbdd: &mut praxis::algorithms::zbdd_engine::ZbddEngine, root: praxis::algorithms::zbdd_engine::ZbddRef, limit_order: Option<usize>, cut_off: Option<f64>) -> praxis::algorithms::zbdd_engine::ZbddRefcompute_approx
fn compute_approx(zbdd: &praxis::algorithms::zbdd_engine::ZbddEngine, root: praxis::algorithms::zbdd_engine::ZbddRef, approximation: Option<crate::cli::args::Approximation>) -> f64run_pre_event_tree_impl
fn run_pre_event_tree_impl(cli: &crate::cli::args::Args, fault_tree: praxis::core::fault_tree::FaultTree, verbose: bool, verbosity_level: u32) -> Result<FaultTreePreOutcome, Box<dyn std::error::Error>>run_pre_event_tree_parsed
fn run_pre_event_tree_parsed(cli: &crate::cli::args::Args, fault_tree: praxis::core::fault_tree::FaultTree, verbose: bool, verbosity_level: u32) -> Result<FaultTreePreOutcome, Box<dyn std::error::Error>>run_post_event_tree
fn run_post_event_tree(cli: &crate::cli::args::Args, pre: FaultTreePreState, verbose: bool, verbosity_level: u32) -> Result<FaultTreeOutputs, Box<dyn std::error::Error>>Type Aliases
BuiltPdagAndBdd
type BuiltPdagAndBdd = (praxis::algorithms::pdag::Pdag, Vec<praxis::algorithms::pdag::NodeIndex>, praxis::algorithms::bdd_engine::Bdd, praxis::algorithms::bdd_engine::BddRef);