cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Browse apps to extend the software in the new JMP Marketplace
Choose Language Hide Translation Bar
galactus3000
Level IV

Capturing degradation fit parameters to table?

How do I capture reliability degradation fit parameters to table?

The four bolded lines are the crux of what I am trying to do.

Fitting the degradation and then simply capturing the fit parameters in a column.

 

Script below:

 

 

Degradation(
    Y( :current ),
    Time( :time ),
    Label( :DUT ),
    Application( Repeated Measures Degradation ),
    Connect Data Markers( 1 ),
    Show Fitted Lines( 0 ),
    Show Spec Limits( 1 ),
    Show Median Curves( 0 ),
    Show Legend( 0 ),
    No Tab List( 0 ),
    Set Upper Spec Limit( . ),
    Set Lower Spec Limit( . ),
    Set Censoring Time( . ),
    Show Residual Plot( 1 ),
    Show Inverse Prediction Plot( 1 ),
    Inverse Prediction Interval( No Interval ),
    Inverse Prediction Alpha( 0.05 ),
    Path Specifications(
        Simple Linear(
            Add Custom X Scale( {{"Linear", Function( {x}, x ), Function( {x}, x )}} ),
            Add Custom Y Scale( {{"Linear", Function( {x}, x ), Function( {x}, x )}} ),
            Slope( Different ),
            Intercept( Different ),
            Select X Scale( "Linear" ),
            Select Y Scale( "Linear" )
        ),
        Nonlinear Path(
            Add Formula(
                Formula Name( "modeledcurrent" ),
                Formula(
                    Parameter(
                        {b0 = 100, b1 = 40, b2 = 1},
                        b0[DUT] / (1 + Exp( (time - b1[DUT]) / b2[DUT] ))
                    )
                ),
                Fitting Method( QuasiNewton BFGS ),
                Fixed(
                    [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
                    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
                    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
                )
            ),
            Select Formula( "modeledcurrent" )
        )
    ),
    Nonlinear Path( 1 ),
    Mean Path( 1 ),
    SendToReport(
        Dispatch(
            {"Overlay", "current Residuals by time"},
            "7",
            ScaleBox,
            {Min( -350 ), Max( 325 ), Inc( 50 ), Minor Ticks( 1 )}
        ),
        Dispatch(
            {"Overlay", "current Residuals by time"},
            "13",
            ScaleBox,
            {Min( -350 ), Max( 325 ), Inc( 50 ), Minor Ticks( 1 )}
        ),
        Dispatch(
            {"Overlay", "Model Specification"},
            "Empty",
            TextEditBox,
            {Fixed Size( 1, 100, 14 ), Set Text( "modeledcurrent" )}
        )
    )
);

Caption( "Picking off parameters from MPD curves" );
Wait( 0 );
prgStatus = New Window( "Progress",
    Show Menu( 0 ),
    Show Toolbars( 0 ),
    V List Box(
        align( center ),
        dlg_gb = Graph Box(
            Title( "200hr ttfs from MPD curves" ),
            FrameSize( 200, 30 ),
            X Scale( 0, 100 ),
            Y Scale( 0, 1 ),
            xaxis( Inside Ticks( 1 ) ),
            yaxis( Show Major Ticks( 0 ), Show Minor Ticks( 0 ), Show Labels( 0 ) ),
            xname( "% Complete" ),
            yname( "" )
        ),
        Button Box( "Cancel", prgStatus << Close Window )
    )
);

dt = Current Data Table();
p# = N Row( dt );
dt << New Column( "bee0", Numeric, Continuous, Format( "Fixed Dec", 8, 1 ) );
dt << New Column( "bee1", Numeric, Continuous, Format( "Fixed Dec", 8, 1 ) );
dt << New Column( "bee2", Numeric, Continuous, Format( "Fixed Dec", 8, 1 ) );

For( i = 1, i <= p#, i++,
    prgrs = (i / p#) * 100;
    Try(
        prgStatus[FrameBox( 1 )] << Add Graphics Script(
            {Fill Color( "green" ), Rect( 0, 1, prgrs, 0, 1 )}
        ),
        i = p# + 1
    );
    Wait( 0 );
    Try( :bee0[i] = b0[:DUT[i]] );
    Try( :bee1[i] = b1[:DUT[i]] );
    Try( :bee2[i] = b2[DUT[i]] )

    ;
);

 

 

How do I access the fit parameters?

 

Thanks in advance!

 

 

11 REPLIES 11
galactus3000
Level IV

Re: Capturing degradation fit parameters to table?

 

 

Re: Capturing degradation fit parameters to table?

You do not need to press or click any button in this case. There is a message in the Degradation platform protocol for this very purpose.

 

Names Default To Here( 1 );

// example case
dt = Open( "$SAMPLE_DATA/Reliability/GaAs Laser.jmp" );

// launch simple degradation analysis
degr = dt << Degradation(
	Y( :Current ),
	Time( :Hours ),
	Label( :Unit )
);

// use default model
degr << Generate Report for Current Model;

// get reference to report layer
degr rep = degr << Report;

// option 1: get estimates in new table
parameter table = degr rep["Reports"]["Estimate"][TableBox(1)] << Make Into Data Table;

// option 2: get estimates as matrix
parameter = degr rep["Reports"]["Estimate"][TableBox(1)][StringColBox(1)] << Get;
estiamte  = degr rep["Reports"]["Estimate"][TableBox(1)][NumberColBox(1)] << Get As Matrix;