Class RAW<T>

  • Type Parameters:
    T - The type of the variables of the BDD of the system
    All Implemented Interfaces:
    ImportanceMeasure, TimeDependentImportanceMeasure<T>

    public class RAW<T>
    extends java.lang.Object
    implements TimeDependentImportanceMeasure<T>
    The RAW class calculates the RAW values for coherent and non-coherent systems. Uses [Ali17] to calculate them. [Ali17] ( https://nbn-resolving.org/urn:nbn:de:bvb:29-opus4-87185 )
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.util.Map<T,​java.lang.Double> calculate​(double time)
      Calculates the RAW values for all components at the specified time.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • bdd

        protected final BDD<T> bdd
      • transformer

        protected final org.apache.commons.collections15.Transformer<T,​ReliabilityFunction> transformer
      • bddTTRF

        protected final BDDTTRF<T> bddTTRF
    • Constructor Detail

      • RAW

        public RAW​(BDD<T> bdd,
                   org.apache.commons.collections15.Transformer<T,​ReliabilityFunction> transformer)
        Returns a RAW calculator for a specific system with its BDD and ReliabilityFunction Transformer.
        Parameters:
        bdd - The BDD representing the system structure function
        transformer - The Transformer used to get the ReliabilityFunction of variables present in the BDD
    • Method Detail

      • calculate

        public java.util.Map<T,​java.lang.Double> calculate​(double time)
        Calculates the RAW values for all components at the specified time. Uses equation 4.7 of [Ali17] to calculate the RAW values from the conditional unreliability of the system if a component fails and the nominal system unreliability. Note: [BAGT16] (https://doi.org/10.1016/j.ejor.2016.03.054) use a slightly different notation. They use U_i^+ instead of U_i^- because they use failure probabilities, while this framework generally uses success probabilities for the components, as does [Ali17]. In [BAGT16] U_i^+ corresponds to the presence of a failure in a component. In [Ali17] U_i^- corresponds to the absence of a correctly working component. They are equivalent.
        Specified by:
        calculate in interface TimeDependentImportanceMeasure<T>
        Parameters:
        time - Time t at which the RAW values of all components is calculated. Must be greater than 0, otherwise an IllegalArgumentException is thrown.
        Returns:
        results Map of components and their respective RAW values at time t.