https://raw.githubusercontent.com/MatthewReid854/reliability/master/docs/images/logo.png

Fit_Normal_Power_Exponential

class reliability.ALT_fitters.Fit_Normal_Power_Exponential(failures, failure_stress_1, failure_stress_2, right_censored=None, right_censored_stress_1=None, right_censored_stress_2=None, use_level_stress=None, CI=0.95, optimizer=None, show_probability_plot=True, show_life_stress_plot=True, print_results=True)

This function will Fit the Normal_Power_Exponential life-stress model to the data provided. Please see the online documentation for the equations of this model.

This model is most appropriate to model a life-stress relationship with thermal and non-thermal stresses. It is essential that you ensure your thermal stress is stress_1 (as this will be modeled by the Exponential) and your non-thermal stress is stress_2 (as this will be modeled by the Power). Also ensure that your temperature data are in Kelvin.

Parameters:
  • failures (array, list) – The failure data.

  • failure_stress_1 (array, list) – The corresponding stress 1 (thermal-stress) at which each failure occurred. This must match the length of failures as each failure is tied to a failure stress.

  • failure_stress_2 (array, list) – The corresponding stress 2 (non-thermal stress) at which each failure occurred. This must match the length of failures as each failure is tied to a failure stress.

  • right_censored (array, list, optional) – The right censored failure times. Optional input.

  • right_censored_stress_1 (array, list, optional) – The corresponding stress 1 (thermal stress) at which each right_censored data point was obtained. This must match the length of right_censored as each right_censored value is tied to a right_censored stress. Conditionally optional input. This must be provided if right_censored is provided.

  • right_censored_stress_2 (array, list, optional) – The corresponding stress 1 (non-thermal stress) at which each right_censored data point was obtained. This must match the length of right_censored as each right_censored value is tied to a right_censored stress. Conditionally optional input. This must be provided if right_censored is provided.

  • use_level_stress (array, list optional) – A two element list or array of the use level stresses in the form [stress_1, stress_2] at which you want to know the mean life. Optional input.

  • print_results (bool, optional) – True/False. Default is True. Prints the results to the console.

  • show_probability_plot (bool, object, optional) – True/False. Default is True. Provides a probability plot of the fitted ALT model. If an axes object is passed it will be used.

  • show_life_stress_plot (bool, str, object, optional) – If True the life-stress plot will be shown. To hide the life-stress plot use False. To swap the axes and show a stress-life plot use ‘swap’. If an axes handle is passed it will be used. Default is True.

  • CI (float, optional) – Confidence interval for estimating confidence limits on parameters. Must be between 0 and 1. Default is 0.95 for 95% CI.

  • optimizer (str, optional) – The optimization algorithm used to find the solution. Must be either ‘TNC’, ‘L-BFGS-B’, ‘nelder-mead’, or ‘powell’. Specifying the optimizer will result in that optimizer being used. To use all of these specify ‘best’ and the best result will be returned. The default behaviour is to try each optimizer in order (‘TNC’, ‘L-BFGS-B’, ‘nelder-mead’, and ‘powell’) and stop once one of the optimizers finds a solution. If the optimizer fails, the initial guess will be returned. For more detail see the documentation.

Returns:

  • a (float) – The fitted parameter from the Power_Exponential model

  • c (float) – The fitted parameter from the Power_Exponential model

  • n (float) – The fitted parameter from the Power_Exponential model

  • sigma (float) – The fitted Normal_2P sigma parameter

  • loglik2 (float) – Log Likelihood*-2 (as used in JMP Pro)

  • loglik (float) – Log Likelihood (as used in Minitab and Reliasoft)

  • AICc (float) – Akaike Information Criterion

  • BIC (float) – Bayesian Information Criterion

  • a_SE (float) – The standard error (sqrt(variance)) of the parameter

  • c_SE (float) – The standard error (sqrt(variance)) of the parameter

  • n_SE (float) – The standard error (sqrt(variance)) of the parameter

  • sigma_SE (float) – The standard error (sqrt(variance)) of the parameter

  • a_upper (float) – The upper CI estimate of the parameter

  • a_lower (float) – The lower CI estimate of the parameter

  • c_upper (float) – The upper CI estimate of the parameter

  • c_lower (float) – The lower CI estimate of the parameter

  • n_upper (float) – The upper CI estimate of the parameter

  • n_lower (float) – The lower CI estimate of the parameter

  • sigma_upper (float) – The upper CI estimate of the parameter

  • sigma_lower (float) – The lower CI estimate of the parameter

  • results (dataframe) – A dataframe of the results (point estimate, standard error, Lower CI and Upper CI for each parameter)

  • goodness_of_fit (dataframe) – A dataframe of the goodness of fit criterion (Log-likelihood, AICc, BIC)

  • change_of_parameters (dataframe) – A dataframe showing the change of the parameters (mu and sigma) at each stress level.

  • mean_life (float) – The mean life at the use_level_stress (only provided if use_level_stress is provided).

  • mu_at_use_stress (float) – The equivalent Normal mu parameter at the use level stress (only provided if use_level_stress is provided).

  • distribution_at_use_stress (object) – The Normal distribution at the use level stress (only provided if use_level_stress is provided).

  • probability_plot (object) – The figure object from the probability plot (only provided if show_probability_plot is True).

  • life_stress_plot (object) – The figure object from the life-stress plot (only provided if show_life_stress_plot is True).

static LL(params, t_f, t_rc, S1_f, S2_f, S1_rc, S2_rc)
static logR(t, S1, S2, a, c, n, sigma)
static logf(t, S1, S2, a, c, n, sigma)