Determining an aircraft component's reliability often involves estimating its mean life, although to do this, the appropriate statistical distribution must be applied. The exponential model is often used because of its simple application. However, this distribution has its limitations. To overcome the shortcomings of the exponential model, this thesis examines how Weibull Distribution Theory can be utilized to produce appropriate component reliability estimators with a degree of certainty.
The Weibull distribution is a flexible distribution in that it has the ability to approximate other distributions such as "Normal" and "Exponential”. Subsequently, appropriate mean life estimators can be determined for various types of life data.
The versatility offered by the Weibull Distribution model makes it ideal for selectively supplementing current methods of field reliability monitoring, especially when the onset of component wear out is suspected or the success of a modification is sought.
The type of field data encountered when monitoring aircraft reliability dictated that a Weibull model be developed for Type 1, multiply censored data. To determine whether data fitted a Weibull distribution, the Rank Regression method was used to produce median ranks for plotting on Weibull probability paper. To analytically determine Weibull parameter estimators and approximate confidence limits, the Maximum Likelihood method was utilized. Automation of both these methods was achieved using Fortran programming.
As the number of failures increase, Weibull parameters stabilize and the degree of certainty provided by Weibull confidence limits improves. This results in the Weibull model being able to produce mean life estimates in a timely manner. With the aid of Weibull shape parameters, field problems may be relatively quickly identified and/or confirmed, allowing for faster corrective action response.
ABSTRACT
Determining an aircraft component's reliability often involves estimating its mean life; although to do this, the appropriate statistical distribution must be applied. The exponential model is often used because of its simple application; however, this distribution has its limitations. To overcome the shortcomings of the exponential model, this thesis examines how Weibull Distribution Theory can be utilized to produce appropriate component reliability estimators with a degree of certainty.
The Weibull distribution is a flexible distribution in that it has the ability to approximate other distributions such as "Normal" and "Exponential". Subsequently, appropriate mean life estimators can be determined for various types of life data. In addition the Weibull's shape parameter (ß), is an indicator of manifesting failure mechanisms such as infant mortality or wearout.
The type of field data encountered when monitoring aircraft reliability dictated that a Weibull model be developed for Type 1 (time), multiply censored (incomplete) data. To determine whether data fitted a Weibull distribution, the Rank Regression method was used to produce median ranks for plotting on Weibull probability paper. To analytically determine Weibull parameter estimators and approximate confidence limits, the Maximum Likelihood method was utilized. Automation of both these methods was achieved using Fortran programming.
To demonstrate the capability of the automated model, two components were chosen whose data was representative of situations often encountered when monitoring and analyzing field reliability. A ground spoiler actuator and hydraulic pressure transmitter were analyzed, as the former was experiencing an increasing failure rate and the latter a sporadic failure rate.
Within five Ground Spoiler Actuator failures, the Weibull model was able to accurately produce a mean life estimator with a reasonable degree of certainty and indicate that this component was failing due to an early wearout mechanism.
The exponential model was not able to produce an accurate mean life estimator until atleast 45 failures had occurred.
Although somewhat more than five failures were required to determine the Hydraulic Pressure Transmitter's mean life estimator with a reasonable degree of certainty, the Weibull model was able to determine that the failures could be considered random and that the component field reliability was acceptable.
As the number of failures increase, Weibull parameters (aand ß) stabilize and the degree of certainty provided by Weibull confidence limits improves. This results in the Weibull model being able to produce mean life estimates in a timely manner. With the aid of Weibull shape parameters, field problems may be relatively quickly identified and/or confirmed, allowing for faster corrective action response.
The versatility offered by the Weibull Distribution model makes it ideal for selectively supplementing current methods of field reliability monitoring, especially when the onset of component wearout is suspected or the success of a modification is sought.
1. INTRODUCTION
This thesis examines how Weibull Distribution Theory can be utilized to analyze aircraft component reliability from an airframe manufacturer's perspective. Recognized in the engineering community for it's flexibility and uniqueness, this statistical distribution has become very popular amongst
numerous types of industry for modelling product life data.
It is the responsibility of aircraft manufacturers to monitor the reliability of the aircraft they produce. The intent of this monitoring is to detect situations which effect the safety and economics of airline operations. It is preferable that adverse conditions are revealed in the shortest possible time from the onset. The traditional method of monitoring focuses on component unscheduled removal rates, from which the "mean component life" is determined, once the percentage of failed units has been established. In doing so, it is often
- assumed that component life is exponentially distributed (ie. failures are the result of random causes or failure rate stabilization has taken place) and as such, the mean life determined from the inverse of the rates. However, this
assumption is not always valid. Using an exponential model in
- cases such as those involving early failures due to infant mortality or occurring with the onset of wearout, will result
in inaccurate product life data.
To overcome the shortcomings of the exponential modal, methods for producing appropriate component relial:>ility estimators with a degree of certainty are presented. Using these methods, an efficient automated model is developed to expedite calculations for the large data samples normally encountered.
An overview of Weibull and Exponential Distribution theory is followed by a discussion of the development of a Weibull model and associated programming. Problems encountered with field data are highlighted along with feasible solutions. To demonstrate the benefits of the model, two components from a
aircraft have been analyzed, using their Weibull reliability parameters. One of the cases involves an existing component with an initial failure free period, followed by a period of increasing failures. The other involves a modified component newly introduced into service, experiencing sporadic failures.
2.0 DISCUSSION
2.1 WEIBULL DISTRIBUTION THEORY
The Weibull Distribution was introduced in 1951 by Waloddi Weibull, in the paper "A Statistical Distribution Function of Wide Applicability". Since then, this distribution has been successfully applied to many "weakest link" type products.
The expression weakest link referring to multi-part components which cease to perform their intended function when apart
fails.
For this thesis, the assumption is made that all components
have no minimum guaranteed life and that they may fail anytime after being put in operation; hence, the Weibull shift parameter (1) equals zero and the expression (t-1), used in three-parameter Weibull equations, becomes (t). Therefore, the Weibull model presented in this paper has been developed from the following fundamental two-parameter (a,ß)Weibull
- equations:
Weibull Probabilitv Densitv Function
Illustrations are not included in the reading sample.
- Weibull Cumulative Distribution Function
Illustrations are not included in the reading sample.
Weibull Reliability Function
Illustrations are not included in the reading sample.
-- where,
- tis.the time parameter ( > O).
pis the shape parameter ( > O); a dimensionless number.
...... a is the scale parameter ( > O); called the "characteristic life", since it is always the 63.2 percentile (figure 2.1), no matter what the value of ß.This is shown by the cumulative distribution function when t = a:
F(t)= 1 - exp(-(t/ )ß]
F(t) = 1 - exp(-(1) J
F(t) = 1 - 0.368
F(t) = 0.632
Illustrations are not included in the reading sample
figure 2.1
The time and scale parameter units may be described using hours or cycles; since one of the units may be more appropriate than the other. Usually, the units are chosen based on which has the greatest influence on the component's "duty cycle".
The characteristic life does not always accurately reflect component mean life on its own; however, it can be easily converted to a mean life value using the Weibull mean [E(T)]
- equation:
E(T) = a * r[l+(l/ß)]
---- where,
r[l+(l/ß)] is the gamma function (see appendix for gamma function table).
- Since most aircraft components are repaired or replaced upon failure, Weibull "mean" life values are considered representative of mean time between failures (MTBF) values.
In general, when ß> 1, the characteristic life is O - 13% larger than the Weibull mean life; however, if ß< 1, the
Weibull mean life can easily be up to 100% larger than the characteristic life. The characteristic life and the Weibull
- mean life are equal when ß = 1 (exponential distribution).
2.2 EMULATIONS OF THE WEIBULL DISTRIBUTION
The Weibull Distributions flexibility allows it to closely emulate many other continuous distributions. Which distribution it approximately fits is revealed by the shape parameter (figure 2.2).
Illustrations are not included in the reading sample
figure 2.2
In addition, the shape parameter reveals clues to the type of failure mechanism which manifests the component being analyzed. ß< 1 indicates a decreasing failure rate, ß= 1 a
constant failure rate and ß> 1 an increasing failure rate.
Table 2.1 lists these distributions, their corresponding ß
values and associated failure mechanism.
Illustrations are not included in the reading sample
Table 2.1
These distributions are not flexible distributions such as the Weibull and as such, cannot be used to emulate each other, resulting in limited applications.
2.3 WEIBULL DISTRIBUTION OPPORTUNITIES
The well known bathtub curve is representative of a complete
- component life experience, although in the aircraft industry, this "complete" experience is seldom seen. However, in
general, it serves the purpose of illustrating a complete
"combination", which a component population could experience during its life.
In figure 2.3, the segment which is parallel to the abscissa is known as the "useful life" period and is well represented by the exponential distribution since the failure rate (A) is constant. However, this distribution will notaccurately estimate product life data in the inner and outer segments, where infant mortality and wearout occur respectively, during transition to or from the useful life period.
Illustrations are not included in the reading sample
figure 2.3
It is in these inner and outer segments where the flexibility of the Weibull distribution becomes apparent. For example, if a component failure rate begins to increase as a result of being operated beyond its useful life and the first generation of components begin to wearout, the mean life produced by the exponential distribution becomes temporarily invalid, until failure rate "stabilization" occurs. To correctly calculate the mean life during this period, the correct distribution theory must be utilized. If the component life data fits a
Weibull distribution, then a more accurate mean life can be determined from the scale parameter (a). Although the Weibull distribution has obvious applications in the inner and outer segments, it can also be used in the middle segment (useful life period) to confirm the exponential distribution's validity.
2.4 RELIABILITY ANALYSIS WITH THE EXPONENTIAL DISTRIBUTION
If failure rates are constant, the exponential distribution provides an extremely efficient method of determining component mean life data, primarily because it uses total component operating time and total failures to calculate mean life. However, a distribution such as Weibull requires individual component failure and running times.
In terms of the exponential model, the "mean life" of a
_.. component is expressed as the "mean time between failures (MTBF)" using the formula derived from the exponential reliability function, R(t) = e -At:
MTBF= 1/A, where A = failure rate
= total failures / total operating time
Essentially, failure rates are constant when; (1) failures are due to chance or (2) failure rate stabilization has occurred.
A means of increasing the validity of the exponential model, would involve having a component burn-in time prior to aircraft installation, inducing a purge of weak components. Also, the removal of components from service while they are still in their useful life phase would help avoid wearout situations. However, the tactic of early removal (hardtime), generally does not fit the present aircraft industry philosophy of "condition monitoring", although many components which are prone to deterioration as a function of time are hardtimed. Using condition monitoring, component failures of a non-safety critical nature are allowed to occur and trends are monitored, with corrective action being taken if the trends become adverse and surpass set targets. This is much unlike the early days of aircraft maintenance philosophy, where many non-safety critical components were hardtimed and removed for overhaul while still functional. Thus, in the airline environment, it becomes very useful to have a Weibull model as a tool for estimating component life.
If components are allowed to operate beyond their useful life, the exponential distribution is capable of modelling the components experiencing wearout, although, this is only possible after a few generations of components havebeen replaced and the failure rate has "stabilized". For example,
the theoretical "stabilization time" of a component whose mean wearout life (mean life) is 10,000 hours and standard
deviation is 1000 hours can be determined from1:
T = M2 / Ja, where, T is the stabilization time
M is the mean life
ais the standard deviation
T= (10,000)2/ 3(1000)
This phenomena occurs as components from one generation begin to wearout and the next generation of components is gradually introduced. If components are not replaced as they fail, stabilization will not occur. To illustrate this stabilization concept, each generation is represented by its own normal distribution and with each successive distribution, the curves begin to flatten and the standard deviations become larger. Figure 2.4 shows that the first two distributions do not superimpose upon one another, however, slowly they begin to overlap, as can be seen with the 3rd generation wearout.
Illustrations are not included in the reading sample
figure 2.4
Eventually, the different generations overlap to such a degree, due to the intermixing of generations, that the failure rate becomes constant (figure 2.5) and A = 1/M.
Illustrations are not included in the reading sample
figure 2.5
Of course in the aircraft manufacturing industry, aircraft are not introduced into the field on a one time batch basis; rather, aircraft are introduced one at a time over an extended period of time. In addition, aircraft utilization varies amongst airlines. All this results in the actual stabilization time deviating from the theoretical stabilization time and inflating the MTBF of "wearout" components somewwat (due to the "dilution" effect caused by the constant introduction of new aircraft). However, with failure rate stabilization, the mean life (M) can still be represented by the exponential model's mean time between failure (MTBF) parameter.
2.5 WEIBULL JUSTIFICATION
To ascertain the validity of the Weibull distribution for a given product life, the failure data•s median ranks, which are determined using the Rank Regression method, must approximately fall in a straight line on Weibull probability paper. If they do not, other factors must be investigated, such as the possibility of a non-zero origin (1+ O) or the presence of multiple failure modes. Following this, if a straight line still cannot be attained, then the Weibull should not be used and other distributions should be considered.
2.6 DEVELOPMENT OF THE WEIBULL MODEL
The field product life data dealt with from an aircraft manufacturer's perspective, is generated by aircraft which are introduced into service at different times, thus causing components to have differing running times on any particular date. In addition, varying utilization and the replacement of failed components perpetuates the differing running times.
This intermixing of times dictated that the Weibull model be developed for Type 1 (time), multiply censored (incomglete) data.
During the development of this model, it became apparent that the following criteria had tobe met.
1. - easy determination of Weibull Distribution fit
2. - confidence limits for Type 1 multiply censored data
3. - accurate Weibull parameter estimators
4. - ability to automate calculations
5. - efficiency
To meet these objectives, it was decided to use two different estimating methods.
2.6.1 RANK REGRESSION METHOD
This method was chosen to determine whether a Weibull
distribution is appropriate, as it produces the "median ranks" used for plotting on Weibull probability paper. These median ranks may be reasonably approximated using:
Benard's Formula 2
P.50= [(NR- 0.3)/(N 0 + 0.4)]* 100%
Johnson•s Formula 3
NR=
(No+1) - (NRprevious>
1+ (number of components beyond present suspension)
where,
NR= new rank of failure (taking suspensions into
consideration)
N 0 = total failures and suspensions
2.6.2 MAXIMUMLIKELIHOOD METHOD
-., The Rank Regression method can be used to obtain Weibull parameter estimates of ß and a,however, the "Maximum
Likelihood" method was chosen as the preferred method due to its greater accuracy, precision4 and ability to calculate
confidence limits for multiply censored data.
By definition, the Weibull Maximum Likelihood estimators are the parameters a and ßwhich maximize the likelihood function or in other words, maximize the "likelihood" of obtaining the
observed data. Although the exact distributions of many maximum likelihood estimators and confidence limits are not known, they are approximated by the asymptotic (large-sample) theory, which involves the asymptotic covariance and Fisher information matrices of the maximum likelihood estimates. For asymptotic theory tobe a good approximation, the number of
failures in the sample should be large; however, in practice, the asymptotic methods can be applied to small samples5.
When analyzing multiply censored data, the maximum likelihood method depends on a basic assumption. It is assumed that components censored at any specific time come from the same life distribution as the components that run beyond that time.
The maximum likelihood method can be used when a distribution depends on more than one parameter. In the case of two parameters, such as a and ß,to obtain the maximum value of a function, the function must first be partially differentiated with respect to one parameter, then the other, equating the derivatives to zero and solving to obtain the maximum likelihood estimates.
The maximum likelihood equation for Type 1 multiply censored data is a function of the summation of the probability density function and the reliability function, using failed and unfailed component times respectively.
Weibull Likelihood Function (with censored units)
Illustrations are not included in the reading sample.
where, ti
ti'
ti" = all times
= failure times
= running times
where, Ei
Ei'
Ei" = summation of function with all times
= summation of function with failure times
= summation of function with running times
Logs of the likelihood functions are taken to make the overall function more convenient to maximize.
Weibull Log Likelihood Function (with censored units) 6
Illustrations are not included in the reading sample
First Partial Derivative of Log Likelihood Function w.r.t. a 7
Illustrations are not included in the reading sample
First Partial Derivative of Log Likelihood Function w.r.t. B 8
otlap= Ei 1 [(l/P)+ln(ti/a)-(ti/a)Pln(ti/a)] Ei [(ti/a p) ln(ti/a)]
Combining the Weibull Log Likelihood function first partial derivatives (both equate to zero, since the functions are
being maximized), results in the following equation9 in which
ßcan be easily solved through iteration.
Illustrations are not included in the reading sample
= where, r = number of failures
Using ßfrom above, the scale parameter is determined withthe equation10:
Illustrations are not included in the reading sample
Note:
a... and ß...a 0 and ßoa and ß
represent the maximum likelihood parameters represent the true parameters
represent arbitrary parameters
To determine the associated two-sided approximate 1001% confidence limits for a0 and ßothe following equations11 are utilized:
Illustrations are not included in the reading sample.
where,
aL = lower a limit ßL = lower ßlimit au= upper a limit ßu = upper ßlimit
Var(aA) = maximum likelihood aA Variance
Var(ßA) = maximum likelihood ßA Variance
1001% = confidence interval (ie. 90%, 95%, 99%)
Ky = 1.96 (for 95% confidence limits)
= The inverse of the Fisher information matrix (a matrix of negative second partial derivatives), which is the true large sample covariance matrix of aA and ßA is used to solve for the
variances and covariances of the a and ßestimators.
Fisher Information Matrix (F)
Illustrations are not included in the reading sample
Covariance Matrix (CM)
Illustrations are not included in the reading sample.
The inverse Fisher Information Matrix is solved using an Inverse Matrix Solution:
Illustrations are not included in the reading sample.
Illustrations are not included in the reading sample.
Hence, expanding the inverse Fisher Information Matrix, gives:
Illustrations are not included in the reading sample.
Solving for the second partial derivatives yields the following equations (for detailed solutions reference appendix):
Second Partial Derivative of Log Likelihood Function w.r.t. a
Illustrations are not included in the reading sample. Second Partial Derivative of Log Likelihood Function w.r.t. ß
82r./8p2 = I:i1[-(1/P)2-(ln(ti/a))2(t1/a)PJ -
i:1"[(ln(t1/a))2(t1/a.)PJ
Second Partial Derivative of Log Likelihood Function wrt a & ß
a2t/aaap= E 1 i[-(1/a)+(ß/a)(ti/a)Pln(ti/a)+(ti/a)P(1/a)] +
E 11 i[(P/a)(ti/a)Pln(ti/a)+(ti/a)/3(1/a)]
Second Partial Derivative of Log Likelihood Function wrt ß & a
a2t/apaa= E1i[-(1/a)+(ti/a)/3(1/a)+ln(ti/a)(ß/a)(ti/a)P]
11
E i [(-1)(ti/a)P(1/a)-ln(ti/a)(/3/a)(ti/a)P1
To have a graphical representation of the maximum likelihood Weibull parameters, which can be plotted on Weibull
probability paper, the percentile estimates are calculated using the equation12:
Weibull Percentile
Illustrations are not included in the reading sample.
where,
YpA = 1A + UpoA is the maximum likelihood estimate of the lOOPth percentile of a smallest extreme value distribution
1A = ln(aA) is the location parameter of a smallest extreme value distribution
Up = ln[-ln(l-P)] is apercentile constant
oA = 1/ßA is the scale parameter of a smallest extreme value distribution
The corresponding two-sided approximate 1001% confidence limits are determined from13:
Illustrations are not included in the reading sample.
where,
YpL = lower percentile confidence limit Ypu = upper percentile confidence limit
Illustrations are not included in the reading sample.
Note:
Var () = true asymptotic variance var () = local estimate of Var ()
2.7 FIELD DATA ANOMALIE$
Using field data to describe the distribution of a particular population presents problems usually not encountered in controlled laboratory tests. Data received from airlines does not always contain all the desired elements, or is the product of a sample which does not easily lend itself to being considered "random".
2.7.1 MISSING COMPONENT AGE
One of the most vital elements in a failure record is the component age (hours and/or cycles). Obviously, a failure without any reported age cannot be used in a Weibull analysis. To resolve this deficiency and allow for maximum data capture, an age estimation program labelled TIMESEST was developed to fill in the missing hours or cycles by inference (see appendix for detailed program and accompanying JCL). However, it is necessary to assume for these components that:
1. All failure data is received from reporting airlines.
2. Components with zero time have been installed on aircraft.
Executing an existing program (REMSORT) to gather specific component removals, produces an outfile labeled userid.ll™v'L,(figure 2.6). Using this output, all component positions on the aircraft must be converted to their numerical equivalents,
if they are alphabetical characters (ie. LHS changed to #1). The L file then becomes the input for the TIMESEST JCL, which sorts the failures in the order of aircraft serial number, component position and date failed. Hours and cycles are then calculated with the aid of an existing airframe age database (HRSFLTS) for the following situations:
1. Component is sole component removed from an aircraft/position combination; hours and cycles are based on the time accumulated since the aircraft first went into service.
2. Component was previously removed from the same aircraft/position combination; hours and cycles are based on the time accumulated since the last component was removed.
In addition, as an integrity check, all hours and cycles reported by the airlines are compared withthe calculated hours and cycles. If the difference between the reported and calculated times exceeds 300, the failure record is copied into a file labeled •userid.ERRTIMES' (figure 2.7). Here the records are manually assessed for any anomalies.
All failure recerds are copied into •userid.ESTTIMES' (figure 2.8). These heurs and cycles which have been estimated are suffixed with 'EST'. These reported hours and cycles which differ from calculated values by more than 300 are flagged
Illustrations are not included in the reading sample.
2.7.2 RANDOM SAMPLING
To avoid misleading estimators, it is important to utilize data from random samples. Frequently airlines will incorporate a component improved by modification prior to the aircraft manufacturer's production cut in (PCI).
Consequently, pre-PCI aircraft often experience failures prior to post-PCI aircraft.
Although the aircraft manufacturer willusually obtain reports of those failures, they will not always know which pre-PCI aircraft have unfailed modified components. Thus it becomes difficult to consider this failure data a random sample.
To achieve a random sample, the monitoring of failures should begin at the manufacturer's PCI and end at a specified suspension date. Thus, there is some control of the sample (ie. knowledge that post-PCI aircraft are using new units).
2.7.3 MULTIPLE FAILURE MODES
Often components have more than one failure mode. If the life data for a specific mode is required, then that mode must be isolated and the remaining failures treated as censored (suspensions) units. In other words, these units will be
treated as non-failed components.
A product which may fail due to "N" different modes, has "N" potential failure times and is called a "series system". If the mode failure times are statistically independent, then the product is called a "series system with independent components". Hence, the life of the product is the smallest of its "N" potential failure times.
If product reliability parameters are required, with all failure modes acting, it is acceptable to use all failures (irrespective of modes) in a maximum likelihood analysis.
However, this method gives rough estimates14 which are only
satisfactory within the "range of the data".
2.8 PROGRAM DEVELOPMENT
The programs used to automate the Weibull model have all been written in Fortran. Program names are as follows:
1. Weibtime
2. Weibrank
3. Weibconv
4. Weibmax
(see appendix for detailed programs and accompanying JCL's)
2.8.1 WEIBTIME
This program is designed to produce the age of each component in each position, for all aircraft being analyzed, taking into account failures and suspensions in the L file. Certain parameters are required as inputs to the accompanying JCL. These include:
1. Suspension date (end of test date)
2. # of component positions on aircraft
3. component age being analyzed; hours or cycles
4. initial aircraft and last aircraft limits (sample)
5. aircraft within limits tobe excluded
Inputfiles are also required. These include:
1. .HRSFLTS'; existing file containing cumulative monthly aircraft times
2. •userid.FAILSORT'; failures in sort order created by accompanying WEIBRANK JCL using 'userid.-rnvL•as input. This input file contains the component
removals. These which are the failures being analyzed are manually flagged with an 'F' and the others (censored units) with an 'S'.
If aircraft hours and cycles are not available for the specified suspension date, then the hours and cycles for the latest date prior to the suspension date are chosen.
Failures are eliminated !rom the analysis 1! they are !or an excluded aircraft (ie. for which data is not being reported) or fall outside of the range of aircraft being analyzed.
The final output file (userid.WEIBULL) contains all failures and suspensions (which include current running times of in service components at the suspension date) for each aircraft's positions the component occupies.
2.8.2 WEIBRANK
Using the "Rank Regression" method, this program calculates the "median ranks" for the failures. It is the median rank which is plotted on Weibull probability paper as the ordinate, against the failure times (abscissa). Parameters required as input in the JCL are strictly for header information purposes. The input file, is labeled userid.WEIBSORT (failures and suspensions in sort order), created by accompanying WEIBRANK JCL using userid.WEIBULL as input.
The output of this program is written in userid.MEDRANK. Figure 2.9 is a sample of this output.
Illustrations are not included in the reading sample.
figure 2.9
2.8.3 WEIBCONV
WEIBCONV is a short read/write program which converts the userid.WEIBULL output file into three files which are required as input by the "Maximum Likelihood" program. The files are labelled:
1. userid.ALLTIME
2. userid.RUNTIME
3. userid.FAILTIME
2.8.4 WEIBMAX
This program uses the Maximum Likelihood model to determine the desired Weibull parameters using the three input files previously mentioned in WEIBCONV. The purpose of tbe first routine is to solve for the shape parameter (ß). This is accomplisbed using the combined first partials equations presented in 112.6.2 Maximum Likelibood Method" (p.18). All terms are moved to tbe left band side so tbat tbe function
equates to zero. an initial value. ßis solved through iteration, starting from Depending on tbe data's statistical distribution, this value may be modified to allow for shorter computing times. Tbe ßvalue is incrementally increased so that tha right hand side converges to zero. The final ßvalue
is determined when tbe rigbt band side incipiently exceeds zero. Tbe increments may be increased or decreased, depending upon the desired accuracy and computing speed; however, an increment of 0.001 was found tobe optimum. Using tbe final ßvalue, tbe scale parameter (a) is calculated.
The next routine in the WEIBMAX program is in place to calculate two-sided approximate 95% confidence limits for a0 and ß0• Prior to tbe actual calculation, tbe second partial
derivatives must be determined. Using tbese results, the covariance matrix entries, var(a), var(ß), cov(a,ß) and cov(ß,a) are solved using the inverse matrix solution.
The final WEIBMAX routine determines the percentiles and their two-sided approximate 95% confidence limits.
The output of this program is written in userid.MAXLIKE. Figure 2.10 is a sample of this output.
Illustrations are not included in the reading sample
figure 2.10
2.9 COMPONENT ANALYSIS
To demonstrate the Weibull model's usefulness, two components were selected based on (1) their removals being
driven by a single failure mode, (2) degree of confidence that their removals were the result of a genuine failure, (3) relative build simplicity, (4) representative of typical aircraft reliability monitoring situations, and lastly, (5) initial indications that they followed a Weibull distribution (figure 2.11 a&b).
One of the components chosen, a ground spoiler actuator, represents a classic case of premature wearout. This situation is often seen when a component design is inadequate for its application, resulting in it not being able to meet its •usetul li!e' expectations.
The second component analyzed is a modified hydraulic pressure transmitter. This transmitter represents a very common scenario in which a modification is introduced into the field for product improvement purposes. To ensure that safety is not sacrificed, vendors claims are being met and customer confidence is not lost, it becomes helpful if the modification's success can be determined in the shortest possible time.
Component test data summaries can be found in the appendix.
2.9.1 GROUND SPOILER ACTUATOR
During the first 4\ years of revenue service, no ground spoiler actuator failures were reported; however, in the latter half of the fourth year, a failure did occur. With the onset of the 5th year, more aircraft began experiencing failures of this component. With the exception of a few actuators, the majority of the first-generation actuators were still in service (approximately 500). At the time of the first failure, the exponential model (assuming this failure to be random) produced a MTBF in excess of 350,000 cycles, while the Weibull model yielded a mean life E(T) of 20,666 cycles (figure 2.12).
Illustrations are not included in the reading sample
figure 2.12
Although, the upper and lower life confidence bands of 129,979 and 3961 cycles respectively (figure 2.13), represented much too large a spread to confirm the mean life's validity, they did exclude the exponential model's MTBF.
Illustrations are not included in the reading sample
figure 2.13
From the initial failure (figure 2.14) until approximately the 20th failure, the scale parameter tended to oscillate about its initial value of 22,691 cycles with relative extremes of
+/- 6000 cycles. After the 20th failure, the parameter stabilized with a very slight downward trend, which would be anticipated to completely level off as the sample size becomes larger.
Illustrations are not included in the reading sample
figure 2.14
As mentioned earlier, the confidence limits of the 1st failure did not lend themselves to "certainty", however, they did quickly converge to a level where they could be "practically" used. At five failures (figure 2.13), a scale parameter of 25,707 cycles, was bounded by upper and lower limits of 52,474 and 12,594 cycles respectively. The lower limit was within 50% of the scale parameter at this point (figure 2.15).
Illustrations are not included in the reading sample
figure 2.15
Interestingly, also at this point, the sporadic 3-monthly MTBF was at approximately 225,315 cycles, over 200,000 cycles higher than the Weibull mean. To graphically illustrate this moment in time, Weibull probability paper (figure 2.16a) was used to plot the parameter percentiles. The confidence limits are tighter at the lower cumulative percent failure values and spread out as the cumulative percent failures increased. Note that on this graph paper, the scale parameter is found where the solid line intersects the 63.2 percentile.
By the time the 15th failure had occurred, the confidence limits where virtually parallel to one another. The analysis of the ground spoiler actuator was completed for a total of 45 failures; far from a "complete" test in which all components would be failures. However, at this specific time, the confidence limit percentiles became very tight (figure 2.16b), giving the scale parameter estimate a great deal of certainty. Coincidentally, the MTBF produced from the exponential model (figure 2.12), intercepted the scale parameter for the first time, 25 months after the initial failure.
A shape parameter of 4.4 (figure 2.17) calculated for the first ground spoiler failure suggested that the life distribution was similar to that of anormal distribution; in other words, the ground spoilers were succumbing to "early wearout". The confidence limits (figure 2.18) were widely spread out however, indicating that the distribution could be anything from exponential to smallest extreme value. In terms of failure mechanisms, anything from random failures to those brought about by rapid wearout. The latter case being of most concern, as this would have an impact on parts availability and required inventory stocking levels.
Illustrations are not included in the reading sample
figure 2.17
Illustrations are not included in the reading sample
figure 2.18
The shape parameter oscillated about 4.0 with relative extremes of up to +/- 0.9, however, as with the scale parameter, stabilization began toset in around the 20th failure. Here the upper and lower confidence limits (figure 2.19) bad converged to within 138% and 73% respectively of the shape parameter.
Illustrations are not included in the reading sample.
figure 2.19
Again as with the scale parameter, at five failures, meaningful conclusions could be drawn from the shape parameter and its confidence limits. The shape parameter was at 3.8, very close to what is considered anormal distribution (3.44) in a Weibull analysis and the lower confidence limit had increased to 2.0 (Rayleigh distribution), ruling out a random failure scenario. The upper confidence limit had decreased to 7.2, therefore rapid wearout could not be ruled out, although early wearout appeared tobe the manifesting failure mechanism.
At the 45th failure, the scale parameter was a very stable 3.4 bound by fairly tight upper and lower confidence limits of 4.2 and 2.7 respectively. Clearly, early wearout was responsible
for this component failing.
Tear-down analyses of ground spoiler actuators revealed that the cylinder bores were experiencing eccentric wear, due to higher than expected side loads. Eventually, this resulted in premature piston seal failures.
2.9.2 HYDRAULIC PRESSURE TRANSMITTER
The hydraulic pressure transmitter had in the past been susceptible to diaphragm leakage, resulting in inaccurate pressure readings. For the year prior to the introduction of a modified transmitter, the MTBF hovered around 6500 hours.
With the incorporation of a new laser weld manufacturing process, the vendor introduced an improved transmitter.
The new transmitter was productionized at aircraft 120, however, because of a lack of confidence in the reported transmitter failures on the first 30 post-modification aircraft, it was decided to start the Weibull analysis at aircraft 150. Even then, the reported data was not considered tobe perfect, as the type of failure mode in question may not have immediately made itself known, thus allowing the component to accumulate more time. It was assumed that results from this starting point would be similar to those obtained if aircraft 120 had been the starting point for the analysis. It should also be noted that in general, vendor components are not necessarily installed in the same order in which they were manufactured.
Using the transmitter•s incipient failure data, the shape parameter was calculated tobe 1.1, indicative of an exponential distribution. With the incipient upper and lower confidence limits at 6.2 and 0.2 respectively, the possible nature of failure mechanisms ranged from infant mortality to rapid wearout.
It very quickly became apparent that a rapid wearout process was not manifesting itself as evidenced by the decreasing upper confidence limit which passed through 2.0 (figure 2.20) at 5 failures. At this time the lower confidence limit was increasing through 0.5, hinting that infant mortality could also possibly be excluded as a cause of failure.
Approaching the 14th failure, the confidence limits bad completed the bulk of their convergence and were beginning to parallel one another. At 30 failures they appeared parallel (figure 2.21) and the shape parameter was stable at 0.9, with upper and lower confidence limits of 1.2 and 0.6 respectively (figure 2.20).
Illustrations are not included in the reading sample
figure 2.20
Illustrations are not included in the reading sample
figure 2.21
The scale parameter did not exhibit the same stable properties as did the shape parameter; however, after the initial failure it tended to oscillate about 25,000 hours (figure 2.22), much like the MTBF from the exponential model (figure 2.23).
Illustrations are not included in the reading sample
figure 2.22
Illustrations are not included in the reading sample
figure 2.23
The upper confidence limit did not come within twice the scale parameter•s value until the 37th failure (figure 2.24).
Fortunately, in this case, the upper limit was not of any significance, as it was the minimum life which was being sought and with the exception of the upper limits from the 18th to 23rd failure, the confidence limit remained well above this components MTBF target (figure 2.25). The lower confidence limit initially increased at a much slower rate than at which the upper rate decreased, however, by the 37th failure, the lower limit equalled 50% of the scale parameter. It could be postulated during the early failures that the transmitter would eventually reach its target due to the relatively large spread between the scale parameter and upper
Illustrations are not included in the reading sample
figure 2.24
Illustrations are not included in the reading sample
figure 2.25
limit and low spread between the scale parameter and the lower limit. It is anticipated that through increased experience, a knowledge base can be created for varying situations involving confidence limits. Eventually, in cases such as this, where the lower limit rises fairly slowly, more prudent judgements could be made.
Looking at the percentiles produced at failure 7 and 37 (figure 2.26 a&b), the slope of the lines are almost equal. The confidence limits are much wider with the earlier failures; however, for the 37th failure, they became quite narrow, easily lending themselves to practical use.
With the shape parameter stable at 0.9 and a Weibull mean life of 32947 hours at the 37th failure, the transmitter's distribution was considered exponentially distributed and the latest modification a success.
3.0 CONCLUSIONS
I. The Weibull distribution has the flexibility to emulate other distributions, thus permitting the substantiation or rejection of other statistical models.
II. From an aircraft manufacturer's perspective, a statistical model based on Weibull distribution theory provides an effective, versatile tool for assessing aircraft component reliability.
III. The Exponential and Weibull distributions both have the ability to estimate the mean life of components experiencing wearout. However, the Weibull distribution produces accurate estimators using considerably fewer failures than the exponential distribution.
IV. When product life data fits a Weibull distribution, an accurate component mean life estimator can be determined with as few as five failures.
V. Clues to the type of failure mechanism effecting components are revealed by Weibull's shape parameter and substantially help analyze component field performance.
VI. The Weibull 95% confidence limits improve the timeliness of determining component reliability. Thus, field problems may be relatively quickly identified and/or confirmed, allowing for a faster
corrective action response. This also has the benefit of allowing airlines to properly stock components in a timely manner and avoid grounded aircraft situations.
VII. As the number of failures increase, Weibull parameters (a and ß) stabilize and the degree of certainty provided by Weibull confidence limits improves. The confidence limits quickly begin to stabilize once the lower / upper limits converge to 50% / 200% of their Weibull parameter.
VIII. The lower aconfidence limit expedites the determination of whether a newly modified component's mean life is above a target value; whereas, the upper aconfidence limit expedites the determination of whether a component experiencing wearout has a mean life which is above a target value.
IX. The Weibull Fortran program is able to produce the running (suspensions) times of unfailed units with ease, combine these with specified failed components and execute the Weibull calculations efficiently.
4.0 RECOMMENDATIONS
I. The Weibull model should be used to selectively supplement current methods of field reliability monitoring, especially when the onset of component wearout is suspected.
II. The success of aircraft component modifications should be analyzed using the Weibull model as often as possible. The model may not apply to all components, however, with experience, a list of "Weibull feasible" components along with their aand ß histories can be compiled to provide guidance for future Weibull analyses.
NOTES
1. Igor Bazovsky, Reliability Theory and Practice, (Prentice Hall, 1963), 58
2. Kapur and Lamberson, Reliability in Engineering Design, John Wiley & Sons, 1977, 300
3. Leonard G. Johnson, The statistical Treatment of Fatique Experiments, Research Laboratories, General Motors Corporation, 1959, 44
4. Dr. R.B. Abernethy, Weibull Analysis Handbook, Pratt &
Whitney Aircraft, 1983, 183
5. Wayne Nelson, Applied Life Data Analysis, (John Wiley &
Sons, 1982), 314
6. Ibid.,
7. Ibid.
8. Ibid.
340
9. Ibid.
10. Ibid.,
341
11. Ibid.,
344
12. Ibid.,
345
13. Ibid.
14.Ibid.,
354
REFERENCES
Abernethy, Dr. R.B., et al. Pratt & Whitney Aircraft. 1983. Weibull Analysis Handbook
Anton, Howard. 1984. Elementary Linear Algebra. John Wiley & Sons.
Bartz, Albert E. 1988. Basic Statistical Concepts. 3rd ed. New York: MacMillan Publishing Company
Bazovsky, Igor. 1963. Reliability Theory and Practice. Prentice Hall.
Chatfield, Christopher. 1970. Statistics for Technology. Penguin Books.
Cranfield Institute of Technology. Reliability Course notes. 1979
Houston, Graeme D. 1990. Ground Spoiler Actuator Failures.
R&M Engineering Analysis
Jardin, A.K.S. 1973. Maintenance. Replacement and Reliability. Pitman Publishing
Mann, Nancy, Ray Schaferand, Nozer D singpurwalla. 1974. Methods for Statistical Analysis of Reliability and Life Data. John Wiley & sons.
Moore, John. Makela, Leo. 1981. Structured Fortran with Watfiv. Alternate ed. Reston Publishing Company, Inc.
Nelson, Wayne. 1982·. Applied Life Data Analysis. John Wiley & Sens.
Person, Russell V. 1970. Calculus with Analytical Geometry. Rinehart Press.
Pratt & Whitney Aircraft, statistical Engineering Group. 1981. Introduction to Weibull Analysis PWA 3001
Ross, Shepley L. 1980. Introduction to Ordinary Differential Eguations. 3rd ed. John Wiley & Sons.
Selby, Samuel M. 1975. Standard Mathematical Tables. 23rd ed. CRC Press.
Shooman, Martin L. 1968. Probabilistic Reliability: An Engineering Approach. McGraw-Hill.
Transport Canada. Airworthiness Manual. Chapter 571 Maintenance of Aeronautical Products
Weibull, Waloddi. 1951. A Statistical Distribution Function of Wide Applicability. Journal of Applied Mechanics. Vol.
18. •
APPENDIX
DETAILED SOLUTIONS FOR SECOND PARTIAL DERIVATIVES
Second Partial Derivative of Log Likelihood Function w.r.t. a
ar1aaar1aa
= Ei ' [-(/3/a)+(/3/a)(ti/a)ßJ + Ei"[(ß/a)(ti/a)ßJ
= Ei1[-(ßa-1)+({3a-1)(tia-l)/3] + Ei11[({3a-1)(tia-l)ß]
= Ei1[-(-/3a-2)+(ßa-1)(ß)(tia-l)ß-l(-tia-2)+(tia-l)ß(-ßa-2)J
+ i"[(ßa-1)(ß)(tia-l)ß-l(-tia-2)+(tia-1)ß(-ßa-2)]
= Ei1[(ß/a2)-(ß/a)(ß)(ti/a)ß-l(ti/a2)-(ti/a)ß(ß/a2)J +
Ei"[(/3/a)(/3)(ti/a)ß-l(-ti/a2)-(t1/a)ß(ß/a2)J
a2t/aa2= Ei1[/3/a2-(ß/a)(ß/a)(ti/a)ß-l(ti/a)-(ti/a)13(ß/a2)] +
Illustrations are not included in the reading sample.
Second Partial Derivative of Log Likelihood Function w.r.t. 8
arlaß= Ei'[(l/ß)+ln(t1/a)-(t1/a)ßln(ti/a)J - i"[(ti/a)ßln(t1/a))
arlap= i1[(ß-1)+ln(tia-1)-(tia-1)ßln(tia-1)J - Ei11[(tia-l)/3ln(tia-1)J
- a2r/ap2= Ei'[-(ß)-2-ln(tia-1)(tia-1)ß(l)ln(tia-1)J - Ei"[ln(tia-1)(tia-l)ß(l)ln(tia-1))
a2r/ap2 = Ei'[-(1//3)2-ln(ti/a)(ti/a)ßln(ti/a)] - Ei"[ln(t1/a)(ti/a)ßln(t1/a))
Second Partial Derivative of Log Likelihood Function w.r.t. a and ß
arlaa= Ei [-(ß/a)+(ß/a)(ti/a)ß] + Ei"[(ß/a)(ti/a) ]
arlaa= Ei1[-(ßa-1)+(ßa-1)(tia-l)ß] + Ei"[(ßa-1)(tia-l)ß]
a2r/aaaß= Ei1[-(a-1)+(ßa-1)(tia-1)ß(l)ln(tia-1)+(tia-1)ß(a-1)] +
Ei"[(ßa-1)(tia-1)P(1)ln(t1a-1)+(tia-1)ß(a-1)J
Illustrations are not included in the reading sample.
Second Partial Derivative of Log Likelihood Function w.r.t. 8 and a
arlaß= Ei'[(1/ß)+ln(ti/a)-(ti/a)ßln(ti/a)] - Ei" [(ti/a)ßln(ti/a)]
arlaß= Ei1[(ß-1)+ln(tia-1)-(tia-l)ßln(tia-1)] - Ei"[(tia-l)ßln(tia-1)]
a2r/aßaa= Ei1[(-tia-2/tia-1)-(tia-1)ß(-tia-2/tia-1)-ln(tia-1) *
(ß)(tia-l)ß-l(-tia-2)]- Ei"[(t1a-l)ß *
(-t1a-2/t1a-1)+ln(t1a-1)(ß)(t1a-1)ß-1(-t1a-2)]
a2r/aßaa= E11[-(tia/tia2)+(ti/a)ß(tia/t1a2)+1n(ti/a) *
(ß)(ti/a)ß-l(ti/a2)] - Ei"[(ti/a)ß *
(-t1a/t1a2)-ln(t1/a)(ß)(t1/a)ß-l(t1/a2)]
a2r/aßaa= E11[-(l/a)+(ti/a)ß(1/a)+ln(t1/a)(ß/a)(t1/a)ß-1ct1/a)] - E1"[(t1/a)ß(1/a)-ln(t1/a)(ß/a)(t1/a)ß-l(t1/a)]
Illustrations are not included in the reading sample.
PROGRAM JCL's (Job Control Language)
IIT43315A JOB (78119800,046,930),'TIMESEST',MSGCLASS=X,CLASS=T,
IINOTIFY=T43315,REGION=5000K,USER=T43315
IIJOBLIB DD DSNAME=ENC84AO.SOURCE.LOAD,DISP=(SHR,PASS)
II*
II*JCL TO ESTIMATE COMPONENT TIMES *
II**************************************************************
II*INPUT FILES ARE: 1. ENC84AO.....HRSFLTS *
II*2. T43315 L *
II* *
II*OUTPUT FILES ARE: 1. T43315.ERRTIMES *
II*2. T43315.ESTTIMES *
II*DATE: MARCH 28, 1992
II*
*
WRITTEN BY: HOLGER JEDEMANN *
*
NOTES: ENC84AO·-·•HRSFLTS MUST HAVE ATLEAST ONE *
II*ENTRY FOR EACH AIRCRAFT PRODUCED *
II*(IE. IF AN OPERATOR HAS RECEIVED AN *
II*AIRCRAFT, BUT HAS NEVER REPORTED FLIGHT *
II*TIMES, THEN AN ENTRY MUST BE MADE FOR THE *
II*MONTH AND YEAR OF DELIVERY USING ZERO *
II*HOURS AND CYCLES). THIS ENSURES THAT THE *
II*FORTRAN MATRICES ARE CORRECTLY SET-UP. *
*
IIII**HOURS OR CYCLES WHICH HAVE BEEN REPORTED *
I/*BY OPERATORS, ARE CHECKED AGAINST CALCULATED *
II*VALUES, USING THE FAILURE DATES AND HRSFLTS. *
II*DIFFERENCES GREATER THAN 300 ARE FLAGGED IN *
II*T43315.ESTTIMES FOR ASSESSMENT. *
II* *
II**************************************************************
II*
IISTEPA IIWIPEl
II
IIWIPE2
II
IIWIPE3
II
I*
EXEC PGM=IEFBR14
DD DSN=T43315.ESTTIMES,UNIT=SYSDA,DISP=(MOD,DELETE), SPACE=(TRK,(0,0))
DD DSN=T43315.ERRTIMES,UNIT=SYSDA,DISP=(MOD,DELETE),
SPACE=(TRK,(0,0))
DD DSN=T43315.SORTRMVL,UNIT=SYSDA,DISP=(MOD,DELETE), SPACE=(TRK,(0,0))
IISTEPl EXEC SORTC IISYSOUT DD SYSOUT=*
IISORTIN DD DSN=T43315 L,DISP=SHR
IISORTOUT DD DSN=&&SORTRMVL,UNIT=SYSDA,DISP=(NEW,PASS),
IIDCB=*.SORTIN,SPACE=(TRK,(3015))
//SORT.SYSIN DD *
SORT FIELDS=(SS,1,CH,A,62,4,CH,A,15,8,CH,A),SIZE=El6000 END
I*
IISTEP2 IISTEPLIB IIFT03F001 IIFT06F001
II
IIFT12F001
II
IIFTl0F00l IIFT0SF00l
I*
EXEC PGM=TIMESEST
DD DSNAME=ENC84A0.SOURCE.LOAD,DISP=(SHR,PASS) DD SYSOUT=*
DD DSN=T43315.ERRTIMES,UNIT=SYSDA,DISP=(NEW,CATLG), DCB=(RECFM=FB,LRECL=l32,BLKSIZE=11616),SPACE=(TRK,(20,5)) DD DSN=T43315.ESTTIMES,UNIT=SYSDA,DISP=(NEW,CATLG), DCB=(RECFM=FB,LRECL=132,BLKSIZE=ll616),SPACE=(TRK,(20,5)) DD DSN=&&SORTRMVL,DISP=SHR
DD DSN=ENC84A0..... HRSFLTS,DISP=SHR
IIT43315A JOB (78119800,046,930),'WEIBRANK',MSGCLASS=X,CLASS=T,
IINOTIFY=T43315,REGION=0K,USER=T43315
II**********************************************************************
II*JCL NAME: WEIBRANK *
II*JCL GENERATES RANK REGRESSION PARAMETERS REQUIRED FOR WEIBULL PLOT.*
II*
II********************************************************************** INPUT FILES ARE 1. ENC84A0..•••.HRSFLTS *
II*2. USERID L (OUTPUT FROM ENC84A0.JCL EP*
II*.REMSORT); NOTE THAT THE REMOVAL CODES U,S *
II*ETC. MUST BE CHANGED TO F (FAILURE) OR S *
II*(SUSPENSION) AND THAT THE COMPONENT *
II*POSITIONS ARE REPRESENTED BY A SINGLE *
II*INTEGER. *
II*IF COMPONENT ONLY OCCUPIES ONE POSITION ON *
II*THE AIRCRAFT, A 1 MUST BE PLACED IN COL 58. *
II*ENSURE # OF 'F'S IN L = # OF ITEMS IN *
II*MEDRANK. IF NOT, CHECK FOR FT03 MESSAGE. *
II*OUTPUT FILE IS 'MEDRANK' ATTACHED TO USERID *
II* *
II*DATE: JUNE 11, 1991 WRITTEN BY: H. JEDEMANN *
II********************************************************************** IIJOBLIB DD DSNAME=ENC84A0.SOURCE.LOAD,DISP=(SHR,PASS)
IISTEPA EXEC PGM=IEFBR14
IIWIPEl DD DSN=T43315.WEIBULL,UNIT=SYSDA,
IIDISP=(MOO,OELETE),SPACE=(TRK,0) IIWIPE2 00 DSN=T43315.RUNOATA,UNIT=SYSDA,
IIDISP=(MOD,DELETE),SPACE=(TRK,0)
'- IIWIPE3 DD DSN=T43315.WEIBSORT,UNIT=SYSDA,
IIDISP=(MOD,DELETE),SPACE=(TRK,0) IIWIPE4 00 DSN=T43315.MEORANK,UNIT=SYSDA,
// DISP=(MOD,DELETE),SPACE=(TRK,0) IIWIPES 00 OSN=T43315.FAILSORT,UNIT=SYSOA,
IIDISP=(MOD,DELETE),SPACE=(TRK,0)
IIWIPE6 DD DSN=T43315.FAILDATA,UNIT=SYSDA,
/IDISP=(MOD,DELETE),SPACE=(TRK,0)
I*
IISTEPl EXEC SORTC
IISYSOUT DD SYSOUT=*
IISORTIN DD DSN=T43315. L,DISP=SHR
I/SORTOUT 00 OSN=T43315.FAILSORT,UNIT=SYSOA,OISP=(NEW,CATLG),
I/DCB=*.SORTIN,SPACE=(TRK,(30,5))
IISORT.SYSIN DD *
SORT FIELDS=(62,4,CH,A,58,l,CH,A),SIZE=El6000 END
I*
IISTEP2 IIFT03F001 IIFT06F00l IIFT11F001 II
/IFT07F001
II
IIFT12F001
II
EXEC PGM=WEIBTIME DD SYSOUT=*
DD SYSOUT=*
DD DSN=T43315.RUNDATA,UNIT=SYSDA,DISP=(NEW,CATLG), DCB=(RECFM=FB,LRECL=132,BLKSIZE=11616),SPACE=(TRK,(20,5)) DD DSN=T43315.WEIBULL,UNIT=SYSDA,DISP=(NEW,CATLG), DCB=(RECFM=FB,LRECL=132,BLKSIZE=l1616),SPACE=(TRK,(20,5)) DD DSN=T43315.FAILDATA,UNIT=SYSDA,DISP=(NEW,CATLG), DCB=(RECFM=FB,LRECL=l32,BLKSIZE=ll616),SPACE=(TRK,(20,5))
IIFT04F001 DD DSN=T43315.FAIISORT,DISP=SHR IIFT02F001 DD DSN=ENC84AO·-·•HRSFLTS,DISP=SHR IIFTOlFOOl DD *
91$$ <------ SUSPENSION YEAR
09$$ <------ SUSPENSION MONTH (UP TO AND INCLUDING)
5$$ <------- # OF COMPONENT POSITIONS
1$$ <------- COMPONENT TIME BEING ANALYSED: HOURS (1) OR CYCLES (2)
0150$$ <----- INITIAL AIRCRAFT BEING ANALYSED (LOWER LIMIT)
0195$$ <----- LAST AIRCRAFT BEING ANALYSED (UPPER LIMIT)
8$$ <------ # OF A/C TOBE EXCLUDED BETWEEN INITIAL & LAST; LIST BELOW
0151$0153$0169$0170$0172$0177$0184$0189$ $ $ $ $ $ $
I*
IISTEP3 EXEC SORTC
IISYSOUT DD SYSOUT=*
IISORTIN DD DSN=T43315.WEIBULL,DISP=SHR
IISORTOUT DD DSN=T43315.WEIBSORT,UNIT=SYSDA,DISP=(NEW,CATLG),
IIDCB=*.SORTIN,SPACE=(TRK,(30,5)) IISORT.SYSIN DD *
SORT FIELDS=(30,5,CH,A,10,4,CH,A,40,5,CH,A,21,3,CH,A),SIZE=El6000
END
I*
IISTEP4 EXEC PGM=WEIBRANK
IIFT03F001 DD SYSOUT=* IIFT06F001 DD SYSOUT=*
IIFT21F001 DD DSN=T43315.MEDRANK,UNIT=SYSDA,DISP=(NEW,CATLG),
IIDCB=(RECFM=FB,LRECL=l32,BLKSIZE=ll616),SPACE=(TRK,(30,5))
IIFT19F001 DD DSN=T43315.WEIBSORT,DISP=SHR
'- IIFTOlFOOl DD *
HYD PRESSURE TRANSMITTER$$<--- ENTER NAME OF COMPONENT BEING ANALYZED 0150-0195 $$ <--- ENTER AIRCRAFT BEING ANALYZED (INITIAL - LAST)
8$$ <------ # OF A/C TOBE EXCLUDED BETWEEN INITIAL & LAST
9109$$ <--- ENTER SUSPENSION DATE (YEARIMONTH) HOLGER JEDEMANN $$ <--- ENTER YOUR NAME 920416 $$ <--- ENTER TODAY'S DATE (YRMTDY)
INCORRECT READINGSILEAKS $$ <--- FAILURE MODE BEING ANALYSED
I*
IIT43315A JOB (78119800,046,930),'WEIBCONV',MSGCLASS=X,CLASS=T,
IINOTIFY=T43315,REGION=OK,USER=T43315
II**********************************************************************
II*JCL NAME: WEIBCONV *
II*JCL TO CONVERT THE "RANK REGRESSION" WEIBULL OUTPUT FILE TO THE *
II*THREE INPUT FILES REQUIRED TO RUN THE "WEIBMAX" JCL. *
II********************************************************************** II*INPUT FILE IS: 1. USERID.WEIBULL (CREATED BY "WEIBRANK" JCL)* II*OUTPUT FILES ARE: 1. USERID.ALLTIME *
II*2. USERID.RUNTIME *
/ / * 3. USERID.FAILTIME *
II**
II*DATE: MARCH 7, 1992 WRITTEN BY.: H. JEDEMANN *
II********************************************************************** IIJOBLIB DD DSNAME=ENC84AO.SOURCE.LOAD,DISP=(SHR,PASS)
I/STEPA EXEC PGM=IEFBR14
IIWIPEl DD DSN=T43315.ALLTIME,UNIT=SYSDA,
IIDISP=(MOD,DELETE),SPACE=(TRK,O) IIWIPE2 DD DSN=T43315.RUNTIME,UNIT=SYSDA,
IIDISP=(MOD,DELETE),SPACE=(TRK,O) IIWIPE3 DD DSN=T43315.FAILTIME,UNIT=SYSDA,
IIDISP=(MOD,DELETE),SPACE=(TRK,O)
I*
IISTEPl IIFT03F001 IIFT06F001
EXEC DD DD
PGM=WEIBCONV SYSOUT=* SYSOUT=*
//FT07F001
II
/IFT08F001
II
IIFT09F001
II
IIFT02F001
I*
DD DSN=T43315.ALLTIME,UNIT=SYSDA,DISP=(NEW,CATLG), DCB=(RECFM=FB,LRECL=l32,BLKSIZE=11616),SPACE=(TRK,(20,5)) DD DSN=T43315.RUNTIME,UNIT=SYSDA,DISP=(NEW,CATLG), DCB=(RECFM=FB,LRECL=132,BLKSIZE=11616),SPACE=(TRK,(20,5)) DD DSN=T43315.FAILTIME,UNIT=SYSDA,DISP=(NEW,CATLG), DCB=(RECFM=FB,LRECL=132,BLKSIZE=11616),SPACE=(TRK,(20,5)) DD DSN=T43315.WEIBULL,DISP=SHR
IIT43315A JOB (78119800,046,930),'WEIBMAX',MSGCLASS=X,CLASS=T,
IINOTIFY=T43315,REGION=OK,USER=T43315
II**********************************************************************
II*JCL NAME: WEIBMAX *
II*JCL PRODUCES WEIBULL PARAMETERS AND CONFIDENCE LIMITS FOR *
II*MULTIPLY TIME CENSORED DATA USING MAXIMUM LIKELIHOOD EQUATIONS. *
II* *
II*DATE: FEB 13, 1992 WRITTEN BY: H. JEDEMANN *
II* *
II*
II**********************************************************************INPUT FILES ARE 1. 'T43315.FAILTIME' (LIST ALL FAILURE TIMES) *
II*2. 'T43315.RUNTIME' (LIST ALL CENSORED TIMES) *
II*3. 'T43315.ALLTIME' (LIST ALL TIMES) *
II* *
II*NOTE: THE DECIMAL POINT FOR THE TIMES IN THE ABOVE FILES MUST *
II*BE IN COLUMN 6 (RIGHT HAND JUSTIFIED). *
II* *
II*OUTPUT FILE IS: 'T43315.MAXLIKE' *
II**********************************************************************
IIJOBLIB DD DSNAME=ENC84AO.SOURCE.LOAD,DISP=(SHR,PASS) IISTEPA EXEC PGM=IEFBR14
IIWIPEl DD DSN=T43315.MAXLIKE,UNIT=SYSDA,
IIDISP=(MOD,DELETE),SPACE=(TRK,O)
I*
IISTEPl EXEC PGM=WEIBMAX
IIFTOJFOOl DD SYSOUT=* IIFT06F001 DD SYSOUT=*
IIFT07F001 DD DSN=T43315.MAXLIKE,UNIT=SYSDA,DISP=(NEW,CATLG),
IIDCB=(RECFM=FB,LRECL=132,BLKSIZE=11616),SPACE=(TRK,(20,5)) IIFTlOFOOl DD DSN=T43315.FAILTIME,DISP=SHR
IIFTllFOOl DD DSN=T43315.ALLTIME,DISP=SHR IIFT12F001 DD DSN=T43315.RUNTIME,DISP=SHR IIFTOlFOOl DD *
HYD PRESSURE TRANSMITTER$$<--- ENTER NAME OF COMPONENT BEING ANALYSED 0150-0195 $$ <--- ENTER AIRCRAFT BEING ANALYSED (INITIAL - LAST)
8$$ <--- NUMBER OF AIRCRAFT TOBE EXCLUDED BETWEEN INITIAL & LAST
9109 $$ <--- ENTER SUSPENSION DATE (YEAR - MONTH) HOLGER JEDEMANN $$ <--- ENTER YOUR NAME 920416 $$ <--- ENTER TODAY'S DATE (YRMTDY)
HQURS $$ <--- ENTER COMPONENT TIME BEING ANALYZED: HOURS OR CYCLES INCORRECT READINGSILEAKS $$ <--- FAILURE MODE BEING ANALYSED
I*
FORTRAN PROGRAMS
2.9.3 C **********************************************************************
C * PROGRAM NAME: TIMESEST *
2.9.4 C **********************************************************************
C * *
C * PROGRAM DESC: THIS FORTRAN PROGRAM ESTIMATES HOURS AND CYCLES *
C * FOR COMPONENTS USING COMPONENT REMOVAL DATES AND *
C * HRSFLTS. *
C * *
C * PROGRAMMER: HOLGER JEDEMANN *
C * CREATED: 910529 *
C * MODIFIED: 920404 *
C * *
2.9.5 C **********************************************************************
C
C CHARACTER DEFINITIONS C
C ACSN =
C CHOURS =
C CCYCLS =
C CYCLES =
C DAY =
C HOURS =
C J =
C K =
C L =
C MTH =
C NAC =
C PARMTH =
C PACSN =
C PCYCLS =
C PHOURS =
C PPOS =
AIRCRAFT SERIAL NUMBER CALCULATED COMPONENT HOURS CALCULATED COMPONENT CYCLES COMPONENT CYCLES
DAY COMPONENT FAILED COMPONENT HOURS ARRAY COLUMNS
LOWER LIMIT IN ARRAYS UPPER LIMIT IN ARRAYS MONTH COMPONENT FAILED COUNTER
PARTIAL MONTH
PREVIOUS AIRCRAFT SERIAL NUMBER PREVIOUS AIRCRAFT SERIAL NUMBER PREVIOUS HOURS
PREVIOUS POSITION
C RHOURS =
C RBHOUR =
C RCYCLS =
C RBCYCL =
C REC =
C YR = C
REPORTED AIRCRAFT REPORTED AIRCRAFT REPORTED AIRCRAFT REPORTED AIRCRAFT RECORD
YEAR
HOURS
HOURS ONE MONTH BEFORE CYCLES
CYCLES ONE MONTH BEFORE
C DECLARATION STATEMENTS
e
REAL PARMTH
INTEGER YR,MTH,DAY,ACSN,PACSN,HOURS,PHOURS,S,T,CYCLES,
*PCYCLS,RHOURS,RCYCLS,RBHOUR,RBCYCL,CHOURS,CCYCLS CHARACTER*12 REC*132,PPOS*2
DIMENSION S(l0000,5),T(500,2)
C
C READ IN HRSFLTS
C
NAC = 1
1 IF (NAC.GT.10000) GOTO 999 READ(5,100,END=2)(S(NAC,J),J=l,5)
100 FORMAT(I4,T43,2I2,T55,I5,T65,I5) NAC = NAC + 1
GOTO 1
2 NAC = NAC - 1
_ C DEFINITION OF BEGINNING AND END OF EACH ACSN IN ARRAY'S
T(S(l,1),1) = 1 DO 10,I=2,NAC
IF (S(I,1).NE.S(I-1,1)) THEN
T(S(I-1,1),2)=I-1
T(S(I,1),l)=I ENDIF
10 CONTINUE T(S(NAC,1),2)=NAC
C COMPONENT HOURS CALCULATION LOGIC (TAKES INTO ACCOUNT NUMEROUS C COMPONENT REMOVALS FROM SAVE AIRCRAFT AND SAME POSITION OR FROM C DIFFERENT POSITIONS)
PACSN = 0 PPOS =' '
20 READ (10,110,END=99) REC,YR,MTH,DAY,ACSN,HOURS,CYCLES
110 FORMAT (A,T15,I2,Tl8,I2,T21,I2,T62,I4,T77,I5,T85,I5)
K = T(ACSN,1)
L = T(ACSN,2) DO 30,I=K,L
IF (S(I,2).EQ.YR.AND.S(I,3).EQ.MTH) THEN RHOURS S(I,4)
RCYCLS = S(I,5) RBHOUR = S(I-1,4) RBCYCL = S(I-1,5)
GOTO 40 ENDIF
30 CONTINUE
40 IF ((ACSN.EQ.PACSN).AND.(REC(58:58).EQ.PPOS)) THEN PARMTH = DAY/31.0
CHOURS = ((RHOURS-RBHOUR)*(PARMTH))+RBHOUR-PHOURS CCYCLS = ((RCYCLS-RBCYCL)*(PARMTH))+RBCYCL-PCYCLS GOTO 50
ELSE
PHOURS = 0
PCYCLS = 0 PARMTH = DAY/31.0
CHOURS = ((RHOURS-RBHOUR)*(PARMTH))+RBHOUR-PHOURS CCYCLS = ((RCYCLS-RBCYCL)*(PARMTH))+RBCYCL-PCYCLS
ENDIF
C IF FAILURE OCCURRED DURING THE FIRST MONTH OF FLYING, THE TIMES C ARE CALCULATED BELOW
IF (S(I,1).NE.S(I-1,1)) THEN PHOURS = 0
PCYCLS = 0
RBHOUR = 0
RBCYCL = 0
PARMTH = DAY/31.0
CHOURS = ((RHOURS-RBHOUR)*(PARMTH))+RBHOUR-PHOURS CCYCLS = ((RCYCLS-RBCYCL)*(PARMTH))+RBCYCL-PCYCLS
ENDIF
50 IF ((HOURS.EQ.O).AND.(CYCLES.EQ.0)) THEN WRITE (12,120) REC,CHOURS,CCYCLS
120 FORMAT (Al32,T77,I5,'EST',T85,I5,'EST') PHOURS = PHOURS + CHOURS
PCYCLS = PCYCLS + CCYCLS
ENDIF
IF ((HOURS.EQ.0).AND.(CYCLES.NE.0)) THEN IF (ABS(CCYCLS-CYCLES).GT.300) THEN
WRITE (6,120) REC,CHOURS,CCYCLS
WRITE (12,125) REC,CHOURS
125
C
FORMAT (Al32,T77,I5,'EST',T97,
'!!!!! CHECK USERID.ERRTIMES !!!!!') GOTO 135
ENDIF
WRITE (12,130) REC,CHOURS
130 FORMAT (Al32,T77,I5,'EST')
135 PHOURS = PHOURS + CHOURS
PCYCLS = PCYCLS + CCYCLS
ENDIF
IF ((CYCLES.EQ.0).AND.(HOURS.NE.0)) THEN IF (ABS(CHOURS-HOURS).GT.300) THEN
WRITE (6,120) REC,CHOURS,CCYCLS
WRITE (12,137) REC,CCYCLS
137
C
FORMAT (Al32,T85,I5,'EST',T97,
'!!!!! CHECK USERID.ERRTIMES !!!!!') GOTO 142
ENDIF
WRITE (12,140) REC,CCYCLS
140 FORMAT (Al32,T85,I5,'EST')
142 PHOURS = PHOURS + CHOURS PCYCLS = PCYCLS + CCYCLS
ENDIF
IF ((HOURS.NE.0).AND.(CYCLES.NE.0)) THEN
IF ((ABS(CHOURS-HOURS).GT.300).OR.(ABS(CCYCLS-CYCLES).GT.300)) C THEN
WRITE (6,120) REC,CHOURS,CCYCLS
WRITE (12,145) REC
- 145 FORMAT (Al32,T91,'!!!!! CHECK USERID.ERRTIMES !!!!!') GOTO 155
ENDIF
WRITE (12,150) REC
150 FORMAT (A132)
155 PHOURS = PHOURS + CHOURS PCYCLS = PCYCLS + CCYCLS
ENDIF
PACSN = ACSN PPOS = REC(58:58) GOTO 20
C INCREASE ARRAY SIZE IN DIMENSION STATEMENT 999 WRITE (3,160)
160 FORMAT ('CHANGE S')
99 STOP END
C *********************************************************************
C •· PROGRAM NAME: WEIBTIME *
C *********************************************************************
C * *
C * PROGRAM DESC: THIS FORTRAN PROGRAM GIVES THE AGE OF EACH *
C * COMPONENT POSITION, TAKING INTO ACCOUNT FAILURES *
C * AND SUSPENSIONS USED FOR THE WEIBULL ANALYSES. *
C * *
C * PROGRAMMER: HOLGER JEDEMANN *
C * CREATED: 910610 *
C * MODIFIED: 920224 *
C * *
C *********************************************************************
C
C CHARACTER DEFINITIONS
C
C A = EXCLUDED AIRCRAFT COUNTER
C AC = AIRCRAFT
C CYCLES=COMPONENT CYCLES
C EXAC =NUMBER OF EXCLUDED AIRCRAFT AFTER INITIAL AIRCRAFT
C FC = FAILURE CODE (EITHER 'S' OR 'F')
C TIMES= COMPONENT HOURS/CYCLES TO SUSPENSION OR FAILURE
C HORC = HOURS OR CYCLES C HOURS= COMPONENT HOURS C I = COUNTER
C INITAC=INITIAL AIRCRAFT
C J = ARRAY COLUMNS C LASTAC=LAST AIRCRAFT C MT = MONTH
C NAC = AIRCRAFT COUNT
C NOPR = EXCLUDED AIRCRAFT C P = COMPONENT POSITION C PAC = PREVIOUS AIRCRAFT C PP = PREVIOUS POSITION C POS = COMPONENT POSITION
C POSN1= COMPONENT POSITION COUNTER
C PT = PREVIOUS TIME
C S = SUSPENSION
C SMTH = SUSPENSION MONTH C· SYR = SUSPENSION YEAR C YE = YEAR
C
C DECLARATION STATEMENTS
C
INTEGER SYR,SMTH,NAC,I,J,POS,YE,MT,AC,TIMES,P,POSNl,S,HORC,PP,PAC INTEGER HOURS,CYCLES,PT,EXAC,A,INITAC,LASTAC
INTEGER L(10000,4) INTEGER M(10000,5) INTEGER NOPR(l00) CHARACTER FC
C READ JCL INPUTS FOR HRSFLTS UPPER LIMIT (SUSPENSION DATE) AND C TOTAL# OF COMPONENT POSITIONS
5
FORMAT (I2,/,I2,/,Il,/,Il,/,I4,/,I4,/,I2) READ (1,6) (NOPR(A),A=l,EXAC)
6
FORMAT (14(I4,1X))
8
NAC = 1
IF (HORC.EQ.l) GOTO 20 IF (HORC.EQ.2) GOTO 35
C
READ IN HRSFLTS (AIRCRAFT SERIAL NUMBER, YEAR, MONTH, HOURS) 12 IF (NAC.GT.100000) GOTO 999 20 READ (2,22,END=98) (L(NAC,J),J=l,4) 22 FORMAT (I4,T43,2I2,T55,I5) 30 NAC=NAC + 1 GOTO 12 C
READ IN HRSFLts (AIRCRAFT SERIAL NUMBER, YEAR, MONTH, CYCLES) 35
IF (NAC.GT.100000) GOTO 999
36
READ (2,37,END=98) (L(NAC,J),J=l,4)
37
FORMAT (I4,T43,2I2,T65,I5)
38
NAC=NAC+l
98
NAC=NAC - 1
GOTO 35
2.9.6 C ******************************************************************
C NOTE: THE RECORD FOR I=l HAS BEEN SKIPPED TO AVOID (I-1) BEING C EQUAL TO ZERO, WHICH DOES NOT EXIST IN THE HRSFLTS ARRAY.
99 I=2
45 POSNl=l
50 I=I+l
55 IF (I.GT.NAC) GOTO 80
C CHECK IF HRSFLTS RECORD IS FOR SUSPENSION DATE AND IF YES, WRITE C RECORD.
IF (L(I,2).EQ.SYR.AND.L(I,3).EQ.SMTH) THEN
C AIRCRAFT PRIOR TO DESIRED INITIAL AIRCRAFT OR SUBSEQUENT TO THE C LAST SPECIFIED AIRCRAFT ARE EXCLUDED HERE
IF ((L(I,1).LT.INITAC).OR.(L(I,l).GT.LASTAC)) GOTO 50
C AIRCRAFT NOT BEING ANALYSED AFTER INITIAL A/C ARE EXCLUDED HERE DO 57,A=l,EXAC
IF (NOPR(A).EQ.L(I,l)) GOTO 50
57 CONTINUE
60 WRITE (11,61) L(I,l),L(I,2),L(I,3),L(I,4),POSNl
61 FORMAT (I4,Tl0,I2,Tl2,I2,T20,I5,T30,'POS=',Il)
POSNl=POSNl + 1
IF (POSNl.GT.POS) GOTO 45 GOTO 60
ENDIF
C CHECK IF LAST GIVEN DATE FOR AN AIRCRAFT IN HRSFLTS IS LESS THAN C SUSPENSION DATE.IF YES, WRITE HRS FOR THIS DATE FOR ALL POSITIONS. C AS WELL, AIRCRAFT WHICH BEGAN OPERATIONS AFTER THE SUSPENSION
C DATE ARE EXCLUDED.
IF (L(I-1,1).LT.L(I,l)) THEN
IF (L(I-1,2).GT.SYR) GOTO 50
IF (L(I-1,2).EQ.SYR) THEN
IF (L(I-1,3).GE.SMTH) GOTO 50 ENDIF
C AIRCRAFT PRIOR TO DESIRED INITIAL AIRCRAFT OR SUBSEQUENT TO THE C LAST SPECIFIED AIRCRAFT ARE EXCLUDED HERE
IF ((L(I,1).LT.INITAC).OR.(L(I,1).GT.IASTAC)) GOTO 50
C AIRCRAFT NOT BEING ANALYSED AFTER INITIAL A/C ARE EXCLUDED HERE DO 65,A=l,EXAC
IF (NOPR(A).EQ.L(I-1,1)) GOTO 50
65 CONTINUE
70 WRITE (11,61) L(I-1,1),L(I-1,2),L(I-1,3),L(I-1,4),POSNl POSNl=POSNl+l
IF (POSNl.GT.POS) GOTO 45 GOTO 70
ENDIF
GOTO 50
2.10 C ******************************************************************
C LOGIC BELOW EXCLUDES FAILURES WHICH OCCURRED AFTER SUSPENSION DATE
80 READ (4,85,END=899) FC,YE,MT,P,AC,HOURS,CYCLES
85 FORMAT (T3,Al,Tl5,I2,Tl8,I2,T58,Il,T62,I4,T77,I5,T85,I5)
IF (YE.GT.SYR) GOTO 80 IF (YE.EQ.SYR) THEN
IF (MT.GT.SMTH) GOTO 80 ENDIF
C AIRCRAFT NOT BEING ANALYSED AFTER INITIAL A/C ARE EXCLUDED HERE
00 90,A=l,EXAC
IF (NOPR(A).EQ.AC) GOTO 80
90 CONTINUE
WRITE (12,85) FC,YE,MT,P,AC,HOURS,CYCLES
GOTO 80
C ******************************************************************
C MERGE ALL SUSPENSIONS & FAILURES (SUSPENSIONS HAVING THE SAME C AIRCRAFT SERIAL NUMBER & COMPONENT POSITION COMBINATION AS
C A FAILURE, ARE SUPERCEDED BY THAT FAILURE).
899 I=O PP=O PT=O PAC=O
REWIND (11)
REWIND (12)
900 IF (HORC.EQ.1) THEN
C COMPONENT AGE DIMENSION IS HOURS; READ FAILDATA FILE
901 READ (12,902,END=915) FC,YE,MT,P,AC,HOURS
902 FORMAT (T3,Al,T15,I2,T18,I2,T58,I1,T62,I4,T77,I5)
C AIRCRAFT PRIOR TO DESIRED INITIAL AIRCRAFT OR SUBSEQUENT TO THE C LAST SPECIFIED AIRCRAFT ARE EXCLUDED HERE
IF ((AC.LT.INITAC).OR.(AC.GT.LASTAC)) GOTO 901 TIMES = HOURS
IF (AC.EQ.PAC.AND.P.EQ.PP) THEN
C NEW FAILURE FROM SAME AIRCRAFT, SAME POSITION I=I-1
BACKSPACE (11) ENDIF
IF (AC.EQ.PAC.AND.P.NE.PP) THEN
C NEXT FAILURE FROM SAME AIRCRAFT, HOWEVER, DIFFERENT POSITION WRITE (7,960) M(I,2),M(I,3),M(I,l),(M(I,4)-PT),M(I,5) PT=O
ENDIF
IF (AC.NE.PAC.AND.PAC.GT.O) THEN
- C NEXT FAILURE FROM NEXT AIRCRAFT
WRITE (7,960) M(I,2),M(I,3),M(I,1),(M(I,4)-PT),M(I,5) PT=O
ENDIF
C STATEMENT 915 DEDICATED FOR SUSPENSION RECORD WHICH PRECEEDS
C LAST FAILURE RECORD GOTO 916
915
WRITE (7,960) M(I,2),M(I,3),M(I,1),(M(I,4)-PT),M(I,5)
916
ENDIF
C
IF (HORC.EQ.2) THEN
COMPONENT AGE DIMENSION IS CYCLES; READ FAILDATA FILE
910
READ (12,911,END=917) FC,YE,MT,P,AC,CYCLES
911
FORMAT (T3,Al,T15,I2,T18,I2,T58,Il,T62,I4,T85,I5)
C
AIRCRAFT PRIOR TO DESIRED INITIAL AIRCRAFT OR SUBSEQUENT TO THE
C
LAST SPECIFIED AIRCRAFT ARE EXCLUDED HERE
IF ((AC.LT.INITAC).OR.(AC.GT.LASTAC)) GOTO 910
-
C
C
TIMES = CYCLES
IF (AC.EQ.PAC.AND.P.EQ.PP) THEN
NEW FAILURE FROM SAME AIRCRAFT, SAME POSITION I=I-1
BACKSPACE (11) ENDIF
IF (AC.EQ.PAC.AND.P.NE.PP) THEN
NEXT FAILURE FROM SAME AIRCRAFT, HOWEVER, DIFFERENT POSITION
C
C
WRITE (7,960) M(I,2),M(I,3),M(I,1),(M(I,4)-PT),M(I,5) PT=O
ENDIF
IF (AC.NE.PAC.AND.PAC.GT.0) THEN NEXT FAILURE FROM NEXT AIRCRAFT
WRITE (71960) M(I,2),M(I,3),M(I,1),{M{I,4)-PT),M{I,S) PT=O
ENDIF
STATEMENT 917 DEDICATED FOR SUSPENSION RECORD WHICH PRECEEDS
C
917
LAST FAILURE RECORD GOTO 918
WRITE (7,960) M(I,2),M(I,3),M(I,1),(M(I,4)-PT),M(I,5)
918
ENDIF
920
I=I+l
IF (I.GT.NAC) GOTO 9999
C
READ RUNDATA FILE
925
READ (111926,END=9999) M(I,1),M(I,2),M(I,3),M(I,4),M(I,5)
926
FORMAT (I4,T10,I2,T12,I2,T20,I5,T34,I1)
C
NEXT, FAILURE DATA COMPARED WITH SUSPENSION DATA; IF AIRCRAFT AND
C
POSITION MATCH, THEN FAILURE RECORD REPLACES SUSPENSION RECORD.
C
OTHERWISE, SUSPENSION RECORED IS WRITTEN.
930
940
IF (AC.EQ.M(I,1).AND.P.EQ.M(I,5)) THEN WRITE (7,940) FC,YE,MT,AC,TIMES,P
FORMAT (Al,T10,I2,Tl2,I2,T20,I4,T30,I5,T40,'POS=',Il)
PAC=AC PP=P PT=PT+TIMES
GOTO 900
ENDIF
C THIS IF STATEMENT ELIMINATES SUSPENSIONS WITH ZERO HOURS
IF(M(I,4).EQ.0)GOTO 920
950 WRITE (7,960) M(I,2),M(I,3),M(I,l),M(I,4),M(I,5)
960 FORMAT ('S',T10,I2,T12,I2,T20,I4,T30,I5,T40,'POS=',Il)
970 GOTO 920
999 WRITE (6,998) 'INCREASE DIMENSIONS',!
998 FORMAT (A20,T25,IS,'*')
9999 STOP
END
C *********************************************************************
C * PROGRAM NAME: WEIBRANK *
C *********************************************************************
C
C ** PROGRAM DESC: THIS FORTRAN PROGRAM DETERMINES "RANK REGRESSION" **
C * WEIBULL PARAMETERS REQUIRED TO PLOT COMPONENT *
C * FAILURES ON WEIBULL PAPER. *
C * *
C * PROGRAMMER: HOLGER JEDEMANN *
C * CREATED: 910627 *
C * MODIFIED: 920404 *
C * *
C *********************************************************************
C
C CHARACTER DEFINITIONS
C
C CMPNAM = COMPONENT NAME
C DATE= DATE OF ANALYSIS
C EXAC = NUMBER OF EXCLUDED AIRCRAFT
C F = FAILURE
C FMODE= FAILURE MODE
C IBPS = ITEMS BEYOND PREVIOUS SUSPENSION.
C K = ARRAY COLUMNS
C MR = MEDIAN RANK
C N = COUNTER
C NC = COUNTER
C NF = NUMBER OF FAILURES
C NFC = NUMBER OF FAILURES COUNT
C NAME = ANALYST NAME C NI = NEXT INCREMENT C NR = NEW RANK
C PRON = PREVIOUS RANK ORDER NUMBER. C RANGE= RANGE OF AIRCRAFT ANALYSED C RI = RANK INDEX
C s = SUSPENSION
C SDATE= SUSPENSION DATE
C
C DECLARATION STATEMENTS
C
CHARACTER*l F,S,NF
CHARACTER CMPNAM*25,RANGE*10,SDATE*4,NAME*20,DATE*7,FMODE*25 INTEGER N,K,IBPS,NC,NI,NFC,EXAC
INTEGER R(l0000,5) CHARACTER*l Rl(lOOOO) REAL NR,MR,RI,PRON
C THIS SECTION DETERMINES THE NUMBER OF FAILURES (FOR HEADER C INFORMATION ONLY)
NFC = 0
10 READ (19,20,END=90) NF
20 FORMAT(Al)
IF (NF.EQ.'F') THEN NFC = NFC + 1
ENDIF GOTO 10
90 REWIND (19)
C THIS SECTION READS THE WEIBULL JCL HEADER INPUT
C
READ (1,100) CMPNAM,RANGE,EXAC,SDATE,NAME,DATE,FMODE
100 FORMAT (A25,/,AlO,/,I2,/,A4,/,A20,/,A7,/,A25)
C
C THIS SECTION WRITES THE OUTPUT FILE HEADER
C
200
225
226
250
275
280
300
350
400
500
600
700
800
900
910
920
C
WRITE (21,200) FORMAT (' ') WRITE (21,225)
FORMAT (T33,'WEIBULL ANALYSIS') WRITE (21,226)
FORMAT (' ') WRITE (21,250)
FORMAT (T30,'RANK REGRESSION METHOD') WRITE (21,275)
FORMAT (' ') WRITE (21,280) FORMAT (' ')
WRITE (21,300) CMPNAM,FMODE
FORMAT ('COMPONENT NAME: ',A25,T45,'FAILURE MODE: ',A25) WRITE (21,350) RANGE,EXAC
FORMAT ('AIRCRAFT ANALYSED: ',A10,T4S,'NUMBER OF EXCLUDED AIRCRAFT
C: ',I2)
WRITE (21,400) SDATE,NFC
FORMAT ('SUSPENSION DATE: ',A4,T45,'NUMBER OF FAILURES: ',I3) WRITE (21,500)
FORMAT (' ')
WRITE (21,600) NAME
FORMAT ('ANALYSIS DONE BY: ',A20) WRITE (21,700) DATE
FORMAT ('ANALYSIS DONE ON: ',A7) WRITE (21,800)
FORMAT (' ') WRITE (21,900)
FORMAT('CODE',TlO,'DATE',T20,'ACSN',T30,'HR/CY',T40,'POSN',
*T50,'RANK',T58,'NEW RANK',T68,'MEDIAN RANK') WRITE (21,910)
FORMAT('****',T10,'****',T20,'****',T30,'*****',T40,'****',
*T50,'****',T58,'********',T68,'***********') WRITE (21,920)
FORMAT(' ')
C SORTED FAILURES & SUSPENSIONS (BY TIMES) ARE READ INTO A MATRIX AND C THE NUMBER OF ITEMS (NC) ARE DETERMINED.
C
1000
NC=l
1010
READ (19,1020,END=1035) Rl(NC),(R(NC,K),K=l,5)
1020
FORMAT (Al,T10,I2,T12,I2,T20,I4,T30,I5,T44,Il)
1030
NC=NC+l
1031 GOTO 1010
1035 NC=NC-1
C SELECT FAILED COMPONENTS (IGNORE SUSPENSIONS) NR=O
N=l
1040 IF (Rl(N).EQ.'S') GOTO 2000
C DETERMINE NUMBER OF FAILURES BEYOND PRESENT SUSPENDED ITEM IF (Rl(N).EQ.'F'.AND.N.EQ.l) THEN
IBPS=NC
PRON=0
RI=((NC+l)-PRON)/(l+(IBPS)) ELSE
IF (Rl(N).EQ.'F'.AND.Rl(N-1).EQ.'S') THEN IBPS=NC-(N-1)
PRON=NR
RI=((NC+l)-PRON)/(l+(IBPS)) ELSE
NI=2
GOTO 1060
1050 NI=NI+l
1060 IF (Rl(N).EQ.'F'.AND.Rl(N-NI).EQ.'S') THEN
PRON=NR
ELSE
GOTO 1050 ENDIF
ENDIF ENDIF
C CALCULATE RANK INCREMENT, NEW RANK & MEDIUM RANK FOR FAILURES NR=RI + PRON
MR=((NR-0.3)/(NC+0.4))*100
WRITE (21,1100) Rl(N),R(N,l),R(N,2),R(N,3),R(N,4),R(N,5),N,NR,MR
1100 FORMAT (Al,T10,I2,T12,I2,T20,I4,T30,I5,T40,'POS=',Il,T50,I4,T60,
*F6.2,T70,F5.2,'%')
C LOOP BACK TO 'FAILED COMPONENTS' LOGIC STATEMENTS 2000 N=N+l
2010 IF (N.GT.NC) GOTO 9999
GOTO 1040
- 9999 STOP
END
C ********************************************************************** C * PROGRAM NAME: WEIBCONV *
2.10.1 C **********************************************************************
C * *
C * PROGRAM DESC: THIS FORTRAN PROGRAM CONVERTS THE "RANK REGRESSION"* C * WEIBULL OUTPUT FILE TO THE THREE INPUT FILES *
C * REQUIRED TO RUN THE "WEIBULL" JCL. *
*
C * *
C * PROGRAMMER: HOLGER JEDEMANN
C * CREATED: 920307 *
C * *
2.10.2 C **********************************************************************
C
C CHARACTER DEFINITIONS
C
C C =
C F =
C FC =
C TIMES=
C s =
C
COUNTER FAILURE FAILURE CODE
COMPONENT TIMES SUSPENSION
C DECLARATION STATEMENTS C
CHARACTER*1 F,S,FC INTEGER C,TIMES
C
C=l
10 READ (2,11,END=9999) FC,TIMES
11 FORMAT (A1,T30,I5)
20 WRITE (7,21) TIMES
21 FORMAT (I5,'.')
IF (FC.EQ.'S') THEN WRITE (8,21) TIMES
ELSE
IF (FC.EQ.'F') THEN WRITE (9,21) TIMES
ELSE ENDIF
ENDIF C=C+l
30 GOTO 10
9999 STOP
END
C *****************************************************************
C * PROGRAM NAME: WEIBMAX *
C *****************************************************************
C * *
C * THIS FORTRAN PROGRAM CALCULATES WEIBULL PARAMETERS AND *
C * CONFIDENCE LIMITS FOR MULTIPLY CENSORED DATA USING MAXIMUM *
C * LIKELIHOOD EQUATIONS. *
C * *
C * PROGRAMMER: HOLGER JEDEMANN *
C * CREATED: MARCH 02, 1992 *
C * *
C *****************************************************************
C
C CHARACTER DEFINITIONS
C
C A = LN(FAILURE TIME)
C B =BETA ... WEIBULL SHAPE PARAMETER C BL = LOWER CONFIDENCE LIMIT OF BETA C BU = UPPER CONFIDENCE LIMIT OF BETA C C = # OF FAILURES COUNT
C CMPNAM = NAME OF COMPONENT
C D = SUMMATION OF A / # OF FAILURES COUNT
C DL= DELTA ... EXTREME VALUE PARAMETER
C DATE= DATE OF ANALYSIS C EXAC = EXCLUDED AIRCRAFT C E = PARTIAL CALCULATION
C F = PARTIAL CALCULATION
C FMODE = FAILURE MODE
C L = LAMBDA ... EXTREME VALUE PARAMETER C MA= VAR(N); VARIANCE OF N
C MB= VAR(N,B); COVARIANCE OF N,B C MC= VAR(B,N); COVARIANCE OF B,N C MD= VAR(B); VARIANCE OF B
C MDEN= DENOMINATOR OF ELEMENTS IN COVARIANCE MATRIX C N = WEIBULL SCALE PARAMETER (CHARACTERISTIC LIFE)
C NL= LOWER CONFIDENCE LIMIT FOR ALPHA (CHARACTERISTIC LIFE) C NU= UPPER CONFIDENCE LIMIT FOR ALPHA (CHARACTERISTIC LIFE) C NAME= NAME OF ANALYST
C P = PERCENTILE
C· PC= PERCENTILE CONSTANT
C RANGE= RANGE OF AIRCRAFT ANALYSED C SDATE = SUSPENSION DATE
C SA= SUMMATION OF A
C SE= SUMMATION OF E
C SF= SUMMATION OFF
C SPDA= SECOND PARTIAL DERIVATIVE WRT ALPHA C SPDB= SECOND PARTIAL DERIVATIVE WRT BETA
C SPDBA= SECOND PARTIAL DERIVATIVE WRT BETA AND ALPHA C SPDAB= SECOND PARTIAL DERIVATIVE WRT ALPHA AND BETA
C SPDAF= SECOND PARTIAL DERIVATIVE WRT ALPHA (FAILURE TIMES) C SPDBF= SECOND PARTIAL DERIVATIVE WRT BETA (FAILURE TIMES) C SPDAR= SECOND PARTIAL DERIVATIVE WRT ALPHA (RUNNING TIMES) C SPDBR= SECOND PARTIAL DERIVATIVE WRT BETA (RUNNING TIMES)
C SPDBAF= SECOND PARTIAL DERIVATIVE WRT BETA AND ALPHA (FAILURE TIMES)
C SPDABF= SECOND PARTIAL DERIVATIVE WRT ALPHA AND BETA (FAILURE TIMES) C SPDBAR= SECOND PARTIAL DERIVATIVE WRT BETA AND ALPHA (RUNNING TIMES) C SPDABR= SECOND PARTIAL DERIVATIVE WRT ALPHA AND BETA (RUNNING TIMES) C SSPDAF= SUMMATION OF SECOND PARTIAL DERIVATIVE WRT ALPHA (FAIL TIMES) C SSPDAR= SUMMATION OF SECOND PARTIAL DERIVATIVE WRT ALPHA (RUN TIMES) C SSPDBF= SUMMATION OF SECOND PARTIAL DERIVATIVE WRT BETA (FAIL TIMES) C SSPDBR= SUMMATION OF SECOND PARTIAL DERIVATIVE WRT BETA (RUN TIMES)
C SSPDXF= SUMMATION OF SECOND PARTIAL DERIVATIVE WRT BETA & ALPHA (FAIL) C SSPDXR= SUMMATION OF SECOND PARTIAL DERIVATIVE WRT BETA & ALPHA (RUN) C SSPDZF= SUMMATION OF SECOND PARTIAL DERIVATIVE WRT ALPHA & BETA (FAIL) C SSPDZR= SUMMATION OF SECOND PARTIAL DERIVATIVE WRT ALPHA & BETA (RUN)
C TA= ALL COMPONENT TIMES (FAILURES AND RUNNING) C TF= FAILURE TIMES
C TR= RUNNING TIMES
C TIME= AGE DIMENSION OF COMPONENT; HOURS (1) OR CYCLES (2)
C VARL = VARIANCE OF L C VARD = VARIANCE OF DL
C VARYP= VARIANCE OF PERCENTILE FOR EXTREME VALUE DISTRIBUTION C COVLD= COVARIANCE OF L & DL
C WP = WEIBULL PERCENTILE
C WPL = WEIBULL PERCENTILE LOWER CONFIDENCE LIMIT C WPU = WEIBULL PERCENTILE UPPER CONFIDENCE LIMIT
C Y = FIRST PARTIALS COMBINED EQUATION (MUST BE ITERATED TO ZERO) C YP = EXTREME VALUE PERCENTILE
C YPL = EXTREME VALUE PERCENTILE LOWER CONFIDENCE LIMIT C YPU = EXTREME VALUE PERCENTILE UPPER CONFIDENCE LIMIT
C
C DECLARATION STATEMENTS
C
REAL*S A,B,D,E,F,N,Y,SA,SE,SF,TA,TF,TR REAL*8 MA,MB,MC,MD,MDEN
REAL*S BL,BU,NL,NU
REAL*S SPDAF,SSPDAF,SPDAR,SSPDAR,SPDA REAL*S SPDBF,SSPDBF,SPDBR,SSPDBR,SPDB REAL*B SPDBAF,SSPDXF,SPDBAR,SSPDXR,SPDBA REAL*8 SPDABF,SSPDZF,SPDABR,SSPDZR,SPDAB
REAL*S L,DL,VARL,VARD,COVLD,P,PC,VARYP,YP,WP,YPL,YPU,WPL,WPU CHARACTER CMPNAM*25,DATE*7,NAME*20,RANGE*10,TIME*6,SDATE*4 CHARACTER FMODE*25
INTEGER C,EXAC
C
C INITIAL VALUES
C
1001 B=0.8
1002 C=0
1003 P=0
1004 SA=0
1005 SF=0
1006 SE=0
1007 SSPDAF=0
1008 SSPDAR=0
1009 SSPDBF=0
1010 SSPDBR=0
1011 SSPDXF=0
1012 SSPDXR=0
1013 SSPDZF=0
1014 SSPDZR=0
C
C START CALCULATING BETA VALUE
C
1100 REWIND 10
1200 REWIND 11
C
1300 B=B+0.001
1400 IF (B.GT.10) THEN
WRITE (6,1500)
1500 FORMAT ('BETA SURPASSED 20; MODIFY B INCREMENT OR START PT.') ENDIF
C
C READ FAILURE TIMES
C
2000 READ (10,2100,END=2600) TF
2100 FORMAT (F6.0)
2200 A=DLOG(TF)
2300 SA=SA+A
2400 C=C+l
2500 GOTO 2000
2600 D=SA/C
C
C READ FAILURE AND RUNNING TIMES
C
3000 READ (11,3100,END=3700) TA
3100 FORMAT (F6.0)
C
C CALCULATION OF COMBINED FIRST PARTIALS EQUATIONS
C
3200 E=(TA**B)*DLOG(TA)
3300 F=(TA**B)
3400 SE=SE+E
3500 SF=SF+F
3600 GOTO 3000
3700 Y=(SE/SF)-(1/B)-D
3800 IF (Y.GE.O) THEN
GOTO 4000 ENDIF
GOTO 1002
C
C CHARACTERISTIC LIFE CALCULATION
C
4000 N=(SF/C)**(l/B)
C
5100 REWIND 10
C
C READ FAILURE TIMES
C
5300 READ (10,5400,END=5600) TF
5400 FORMAT (F6.0)
C
C
C 5500 C 5501 C 5502 C 5503 C
C C
5506
5508
5509
5510
2.11 ·c
5520
C C C
5600
5700
C 5800 C 5801 C 5802 C
- 5803
C C C
5807
5808
5809
5810
C 5820 C
C C
5830
5840
5850
5860
C C C
SECOND PARTIAL DERIVATIVES FOR FAILURE TIMES
SPDAF=B/N**2-(B/N)**2*(TF/N)**B-(TF/N)**B*(B/N**2) SPDBF=-(1/B)**2-DLOG(TF/N)**2*(TF/N)**B
SPDBAF=-(1/N)+(TF/N)**B*(l/N)+DLOG(TF/N)*(B/N)*(TF/N)**B SPDABF=-(1/N)+(B/N)*(TF/N)**B*DLOG(TF/N)+(TF/N)**B*(l/N) SUMMATION OF SECOND PARTIAL DERIVATIVES FOR ALL FAILURE TIMES
SSPDZF=SSPDZF+SPDABF SSPDXF=SSPDXF+SPDBAF SSPDBF=SSPDBF+SPDBF SSPDAF=SSPDAF+SPDAF
GOTO 5300
READ RUNNING TIMES
READ (12,5700,END=5830) TR FORMAT (F6.0)
SPDAR=(-l)*(B/N)**2*(TR/N)**B-(TR/N)**B*(B/N**2) SPDBR=DLOG(TR/N)**2*(TR/N)**B
SPDBAR=(-l)*(TR/N)**B*(l/N)-DLOG(TR/N)*(B/N)*(TR/N)**B SPDABR=(B/N)*(TR/N)**B*DLOG(TR/N)+(TR/N)**B*(l/N)
SUMMATION OF SECOND PARTIAL DERIVATIVES FOR ALL RUNNING TIMES
SSPDZR=SSPDZR+SPDABR SSPDXR=SSPDXR+SPDBAR SSPDBR=SSPDBR+SPDBR SSPDAR=SSPDAR+SPDAR
GOTO 5600
COMBINING OF SECOND PARTIAL DERIVATIVES FAIL & RUN TIME SUMMATIONS SPDA=SSPDAF+SSPDAR
SPDB=SSPDBF-SSPDBR SPDBA=SSPDXF-SSPDXR SPDAB=SSPDZF+SSPDZR
COVARIANCE MATRIX CALCULATIONS
5870
MDEN=((-l*SPDA)*(-l*SPDB)-(-l*SPDAB)*(-l*SPDBA))
5880
MA=(-l*SPDB)/MDEN
5890
MB=-(-l*SPDAB)/MDEN
5900
MC=-(-l*SPDBA)/MDEN
5910 MD=(-l*SPDA)/MDEN
C
C CALCULATION OF WEIBULL PARAMETER CONFIDENCE LIMITS
C
5920 NL=N/DEXP(l.96*(MA**0.5)/N)
5930 NU=N*DEXP(l.96*(MA**0.5)/N)
5940 BL=B/DEXP(l.96*(MD**Ö.5)/B)
5950 BU=B*DEXP(l.96*(MD**0.5)/B)
C
C THIS SECTION READS THE WEIBULL JCL HEADER INPUT
C
READ (1,5960) CMPNAM,RANGE,EXAC,SDATE,NAME,DATE,TIME,FMODE
5960 FORMAT (A25,/,Al0,/,I2,/,A4,/,A20,/,A7,/,A6,/,A25)
C
C THIS SECTION WRITES THE OUTPUT FILE HEADER
C
WRITE (7,5961) 5961 FORMAT (' ')
WRITE (7, 5962)
5962 FORMAT (T19,'WEIBULL ANALYSIS') WRITE (7,5963)
5963 FORMAT (' ')
WRITE (7,5964)
5964 FORMAT (T15,'MAXIMUM LIKELIHOOD METHOD') WRITE (7, 5965)
5965 FORMAT(' ')
WRITE (7, 5966) .
5966 FORMAT(' ')
WRITE (7,5970) CMPNAM
5970 FORMAT ('COMPONENT NAME: ',A25) WRITE (7,5973) FMODE
5973 FORMAT ('FAILURE MODE: ',A25) WRITE (7,5974) RANGE
5974 FORMAT ('AIRCRAFT ANALYSED: ',Al0) WRITE (7,5975) EXAC
5975 FORMAT ('NUMBER OF EXCLUDED AIRCRAFT: ',I2) WRITE (7,5976) C
5976 FORMAT ('NUMBER OF FAILURES: ',13)
WRITE (7,5977) SDATE
5977 FORMAT ('SUSPENSION DATE: ',A4)
WRITE (7,5978) 5978 FORMAT (' ')
WRITE (7,5979) NAME
5979 FORMAT ('ANALYSIS DONE BY: ',A20) WRITE (7,5981) DATE
5981 FORMAT ('ANALYSIS DONE ON: ',A7) WRITE (7,5983)
5983 FORMAT (' ')
C THIS SECTION WRITES THE WEIBULL PARAMETERS
C
6000 WRITE (7,6001)
6001 FORMAT ('WEIBULL PARAMETERS WITH 2-SIDED 95% CONFIDENCE LIMITS')
6100 WRITE (7,6101)
6600
WRITE (7,6601)
BL
-
6601
FORMAT ('LOWER
CONFIDENCE
LIMIT
FOR
(B)
=
',Fl2.2)
6700
WRITE (7,6701)
BU
6701
FORMAT ('UPPER
CONFIDENCE
LIMIT
FOR
(B)
=
',F12.2)
6800
WRITE (7 ,.6801)
NL
6801
FORMAT ('LOWER
CONFIDENCE
LIMIT
FOR
(N)
=
',F12.2)
6900
WRITE (7,6901)
NU
6901
C
FORMAT ('UPPER
CONFIDENCE
LIMIT
FOR
(N)
=
',Fl2.2)
C
C
7000
THIS SECTION CALCULATES THE PERCENTILES
WRITE (7,7001)
& THEIR CONFIDENCE LIMITS
7001
FORMAT (' ')
7100
WRITE (7,7101)
7101
FORMAT ('PERCENTILE WEIB PERCENTILE
LOWER LIMIT UPPER LIMIT')
7200
WRITE (7,7201)
7201
8000
FORMAT('----------
r,...oLOG(N)
8010
DL=l/B
8020
VARL=(l/N)**2*MA
----------- ')
6101
FORMAT ('*****************************************************')
6200
WRITE (7,6201)
6201
FORMAT (' ')
6300
WRITE (7,6301) B
6301
FORMAT ('WEIBULL SHAPE PARAMETER (B) = ',F6.2)
6400
WRITE (7,6401) N,TIME
6401
FORMAT ('WEIBULL SCALE PARAMETER (N) = ',F8.0,A6)
6500
WRITE (7,6501)
6501
FORMAT (' ')
8030
VARD=(l/B**4)*MD
8040
COVLD=(-l)*B**(-2)*N**(-l)*MC
8050
P=P+0.10
8060
IF (P.GE.1.00) GOTO 9999
8070
PC=DLOG((-l)*DLOG(l-P))
8080
VARYP=VARL+PC**2*VARD+2*PC*COVLD
8090
YP=L+PC*DL
8100
WP=DEXP(YP)
8110
YPL=YP-1.96*(VARYP)**(0.5)
8120
YPU=YP+l.96*(VARYP)**(0.5)
8130
WPL=DEXP(YPL)
8140
WPU=DEXP(YPU)
8150
WRITE (7,8160) P,WP,WPL,WPU
8160
FORMAT (3X,F4.2,5X,Fll.2,5X,Fll.2,5X,Fll.2)
8170
C
GOTO 8050
9999
STOP END
WEIBULL TEST DATA SUMMARIES
WEIBULL TEST DATA SUMMARY COMPONENT: GROUND SPOILER ACTUATOR
Illustrations are not included in the reading sample
COMPONENT:
WEIBULL TEST DATA SUMMARY
HYDRAULIC PRESSURE TRANSMITTER
llustrations are not included in the reading sample
MTBF DATASUMMARIES
COMPONENT:
MTBF DATA SUMMARY
GROUND SPOILER ACTUATOR
QUANTITY PER AIRCRAFT: 4
Illustrations are not included in the reading sample
- 1 3-Monthly Running Averages
2 Multiplied by 1.25 to convert to cycles
COMPONENT:
MTBF DATA SUMMARY
HYDRAULIC PRESSURE TRANSMITTER QUANTITY PER AIRCRAFT:5
Illustrations are not included in the reading sample
1 3-Monthly Running Averages
2 Hours
GAMMAFUNCTION TABLE
GAMMA FUNCTIONS
Illustrations are not included in the reading sample.
Note: r(n+l) = nr(n)
-
-
-
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X. -
-
Téléchargez vos propres textes! Gagnez de l'argent et un iPhone X.