    # st: Scalars versus temporary variables in MLE

 From DEEPANKAR BASU To statalist@hsphsun2.harvard.edu Subject st: Scalars versus temporary variables in MLE Date Tue, 20 Jun 2006 17:13:44 -0400

```This is in response to the posts by Nick and Kit regarding my observations about the problems that I faced when using "scalars" in place of "temporary variables" (of double data type) for doing a maximum likelihood estimation using the -lf- method.

Nick and Kit both pointed out that scalars and variables of the double data type (whether temporary or permanent) have EXACTLY the same precision. Kit had provided a small program to test this, and indeed that program showed that scalars and temporary variables had the same precision. Here's the program:
http://www.stata.com/statalist/archive/2006-06/msg00580.html

I am sure they are right about the precision of the scalars. But I was still unable to understand why my program works with variables of the double data type but does not converge with sacalrs. So I did the following experiment: I replicated  a simple program (for estimating a Weibull model) from the book by Gould, Pitbaldo and Sribney (page 57) and then ran it twice.

Once I used temporary variables of the double data type (as is given in the original program in the book); and the second time I used scalars instead of the temporary variables leaving everything else unchanged. Result: I don't get convergence when I use scalars!

So, the question remains: is there something about the method -lf- which requires variables of the double data type or does scalars and variables (of the double data type) have different precision which could not be detected by Kit's simple program? Or, am I making some mistake?

I provide both the programs (FIRST PROGRAM has temporary variables; SECOND PROGRAM has scalars) and output from running them below; probably someone can throw some light on this perplexing issue.

Deepankar Basu

+++++++++++++++++++++++++++++++++++++++++++++++

FIRST PROGRAM
__________________________________________
capture program drop myweibul_lf
program myweibul_lf
version 8.1

args lnf leta lgam
tempvar p M R
quietly {
gen double `p' = exp(`lgam')
gen double `M' = (\$ML_y1*exp(-`leta'))^`p'
gen double `R' = ln(\$ML_y1)-`leta'
replace `lnf' = -`M' + \$ML_y2*(`lgam' - `leta' + (`p'-1)*`R')
}
end

__________________________________________

OUTPUT FOR FIRST PROGRAM

. do myweibul_lf

. capture program drop myweibul_lf

. program myweibul_lf
1. version 8.1
2.
. args lnf leta lgam
3. tempvar p M R
4. quietly {
5.    gen double `p' = exp(`lgam')
6.    gen double `M' = (\$ML_y1*exp(-`leta'))^`p'
7.    gen double `R' = ln(\$ML_y1)-`leta'
8.    replace `lnf' = -`M' + \$ML_y2*(`lgam' - `leta' + (`p'-1)*`R')
9. }
10. end

.
end of do-file

. sysuse cancer, clear
(Patient Survival in Drug Trial)

. gen drug2 = drug==2

. gen drug3 = drug==3

. ml model lf myweibul_lf (lneta: studytime died = drug2 drug3 age) /lngamma

. ml check

Test 1:  Calling myweibul_lf to check if it computes log likelihood and
does not alter coefficient vector...
Passed.

Test 2:  Calling myweibul_lf again to check if the same log likelihood value
is returned...
Passed.

Test 3:  Calling myweibul_lf to check if 1st derivatives are computed...
test not relevant for method lf.

Test 4:  Calling myweibul_lf again to check if the same 1st derivatives are
returned...
test not relevant for method lf.

Test 5:  Calling myweibul_lf to check if 2nd derivatives are computed...
test not relevant for method lf.

Test 6:  Calling myweibul_lf again to check if the same 2nd derivatives are
returned...
test not relevant for method lf.

------------------------------------------------------------------------------
Searching for alternate values for the coefficient vector to verify that
myweibul_lf returns different results when fed a different coefficient vector:

Searching...
initial:       log likelihood =     -<inf>  (could not be evaluated)
searching for feasible values +

feasible:      log likelihood = -41402.683
improving initial values ......+...
improve:       log likelihood = -1474.0159

continuing with tests...
------------------------------------------------------------------------------

Test 7:  Calling myweibul_lf to check log likelihood at the new values...
Passed.

Test 8:  Calling myweibul_lf requesting 1st derivatives at the new values...
test not relevant for method lf.

Test 9:  Calling myweibul_lf requesting 2nd derivatives at the new values...
test not relevant for method lf.

------------------------------------------------------------------------------
myweibul_lf HAS PASSED ALL TESTS
------------------------------------------------------------------------------

Test 10: Does myweibul_lf produce unanticipated output?
This is a minor issue.  Stata has been running myweibul_lf with all
output suppressed.  This time Stata will not suppress the output.
If you see any unanticipated output, you need to place quietly in
front of some of the commands in myweibul_lf.

-------------------------------------------------------------- begin execution
---------------------------------------------------------------- end execution

. ml max

initial:       log likelihood = -1474.0159
rescale:       log likelihood =       -744
rescale eq:    log likelihood = -131.26349
Iteration 0:   log likelihood = -131.26349  (not concave)
Iteration 1:   log likelihood = -121.25363
Iteration 2:   log likelihood = -112.44697
Iteration 3:   log likelihood = -110.48968
Iteration 4:   log likelihood = -110.26788
Iteration 5:   log likelihood = -110.26736
Iteration 6:   log likelihood = -110.26736

Number of obs   =         48
Wald chi2(3)    =      35.25
Log likelihood = -110.26736                       Prob > chi2     =     0.0000

------------------------------------------------------------------------------
|      Coef.   Std. Err.      z    P>|z|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
lneta        |
drug2 |   1.012966   .2903917     3.49   0.000     .4438086    1.582123
drug3 |    1.45917   .2821195     5.17   0.000     .9062261    2.012114
age |  -.0671728   .0205688    -3.27   0.001    -.1074868   -.0268587
_cons |   6.060723   1.152845     5.26   0.000     3.801188    8.320259
-------------+----------------------------------------------------------------
lngamma      |
_cons |   .5573333   .1402154     3.97   0.000     .2825162    .8321504
------------------------------------------------------------------------------

+++++++++++++++++++++++++++++++++++++++++++++++++

SECOND PROGRAM
__________________________________________
capture program drop myweibul1_lf
program myweibul1_lf
version 8.1

args lnf leta lgam
quietly {
scalar p = exp(`lgam')
scalar M = (\$ML_y1*exp(-`leta'))^(scalar(p))
scalar R = ln(\$ML_y1)-`leta'
replace `lnf' = -M + \$ML_y2*(`lgam' - `leta' + (scalar(p)-1)*scalar(R))
}
end
_____________________________________________

OUTPUT OF SECOND PROGRAM (There is no convergence and so I have to break off the output at some point).

. do myweibul1_lf

. capture program drop myweibul1_lf

. program myweibul1_lf
1. version 8.1
2.
. args lnf leta lgam
3. quietly {
4.    scalar p = exp(`lgam')
5.    scalar M = (\$ML_y1*exp(-`leta'))^(scalar(p))
6.    scalar R = ln(\$ML_y1)-`leta'
7.    replace `lnf' = -M + \$ML_y2*(`lgam' - `leta' + (scalar(p)-1)*scalar(R))
8. }
9. end

.
end of do-file

. sysuse cancer, clear
(Patient Survival in Drug Trial)

. gen drug2 = drug==2

. gen drug3 = drug==3

. ml model lf myweibul1_lf (lneta: studytime died = drug2 drug3 age) /lngamma

. ml check

Test 1:  Calling myweibul1_lf to check if it computes log likelihood and
does not alter coefficient vector...
Passed.

Test 2:  Calling myweibul1_lf again to check if the same log likelihood value
is returned...
Passed.

Test 3:  Calling myweibul1_lf to check if 1st derivatives are computed...
test not relevant for method lf.

Test 4:  Calling myweibul1_lf again to check if the same 1st derivatives are
returned...
test not relevant for method lf.

Test 5:  Calling myweibul1_lf to check if 2nd derivatives are computed...
test not relevant for method lf.

Test 6:  Calling myweibul1_lf again to check if the same 2nd derivatives are
returned...
test not relevant for method lf.

------------------------------------------------------------------------------
Searching for alternate values for the coefficient vector to verify that
myweibul1_lf returns different results when fed a different coefficient vector:

Searching...
initial:       log likelihood =     -<inf>  (could not be evaluated)
searching for feasible values +

feasible:      log likelihood = -578.85323
improving initial values +.........
improve:       log likelihood = -104.24511

continuing with tests...
------------------------------------------------------------------------------

Test 7:  Calling myweibul1_lf to check log likelihood at the new values...
Passed.

Test 8:  Calling myweibul1_lf requesting 1st derivatives at the new values...
test not relevant for method lf.

Test 9:  Calling myweibul1_lf requesting 2nd derivatives at the new values...
test not relevant for method lf.

------------------------------------------------------------------------------
myweibul1_lf HAS PASSED ALL TESTS
------------------------------------------------------------------------------

Test 10: Does myweibul1_lf produce unanticipated output?
This is a minor issue.  Stata has been running myweibul1_lf with all
output suppressed.  This time Stata will not suppress the output.
If you see any unanticipated output, you need to place quietly in
front of some of the commands in myweibul1_lf.

-------------------------------------------------------------- begin execution
---------------------------------------------------------------- end execution

. ml max

initial:       log likelihood = -104.24511
rescale:       log likelihood = -33.471997
rescale eq:    log likelihood =  30.938101
Iteration 0:   log likelihood =  30.938101  (not concave)
Iteration 1:   log likelihood =  61.946455  (not concave)
Iteration 2:   log likelihood =    101.889  (not concave)
Iteration 3:   log likelihood =  132.62134  (not concave)
Iteration 4:   log likelihood =    258.718  (not concave)
Iteration 5:   log likelihood =  293.02422  (not concave)
Iteration 6:   log likelihood =  297.67133  (not concave)
Iteration 7:   log likelihood =  324.81666
Iteration 8:   log likelihood =  388.00079  (not concave)
Iteration 9:   log likelihood =  404.77601  (not concave)
Iteration 10:  log likelihood =  425.60213  (not concave)
Iteration 11:  log likelihood =  488.80384
Iteration 12:  log likelihood =  488.96523  (not concave)
Iteration 13:  log likelihood =  501.07508  (not concave)
Iteration 14:  log likelihood =  566.34676  (not concave)
Iteration 15:  log likelihood =  584.91914  (not concave)
Iteration 16:  log likelihood =  610.62547  (not concave)
Iteration 17:  log likelihood =  648.77461  (not concave)
Iteration 18:  log likelihood =  654.53621
Iteration 19:  log likelihood =  654.92014  (not concave)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 20:  log likelihood =  654.92016
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 21:  log likelihood =  654.92873
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 22:  log likelihood =  654.92873
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 23:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 24:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 25:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 26:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 27:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 28:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 29:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 30:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 31:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 32:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 33:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 34:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 35:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 36:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 37:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 38:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 39:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 40:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 41:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 42:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 43:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 44:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 45:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 46:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 47:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 48:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 49:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 50:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 51:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 52:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 53:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 54:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 55:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 56:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 57:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 58:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 59:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 60:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 61:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 62:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 63:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 64:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 65:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 66:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 67:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 68:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 69:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 70:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 71:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 72:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 73:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 74:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 75:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 76:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 77:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 78:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 79:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 80:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 81:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 82:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 83:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 84:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 85:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 86:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 87:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 88:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 89:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 90:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 91:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 92:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 93:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 94:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 95:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 96:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 97:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 98:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 99:  log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 100: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 101: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 102: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 103: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 104: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 105: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 106: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 107: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 108: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 109: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 110: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 111: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 112: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 113: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 114: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 115: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 116: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 117: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 118: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 119: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 120: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 121: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 122: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 123: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 124: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 125: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 126: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 127: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 128: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 129: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 130: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 131: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 132: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 133: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 134: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 135: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 136: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 137: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 138: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 139: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 140: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 141: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 142: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 143: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 144: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 145: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 146: log likelihood =  654.92873  (backed up)
numerical derivatives are approximate
flat or discontinuous region encountered
Iteration 147: log likelihood =  654.92873  (backed up)

*
*   For searches and help try:
*   http://www.stata.com/support/faqs/res/findit.html
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/
```