[Developers] sd_phase question

John Sibert sibert at hawaii.edu
Tue Sep 20 12:24:50 PDT 2011


It looks like there is a separate sd_phase somewhere. sd_phase() appears 
to only return '1' after completion of Hessian computation.

Output from the attached simple example:

$ simple
sd_phase = 1; sd_phase() = 0

Initial statistics: 2 variables; iteration 0; function evaluation 0; phase 1
Function value   3.6493579e+01; maximum gradient component mag  -3.6127e+00
Var   Value    Gradient   |Var   Value    Gradient   |Var   Value    
Gradient
   1  0.00000 -3.61269e+00 |  2  0.00000 -7.27814e-01 |
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0

  - final statistics:
2 variables; iteration 7; function evaluation 19
Function value   1.4964e+01; maximum gradient component mag  -7.0014e-05
Exit code = 1;  converg criter   1.0000e-04
Var   Value    Gradient   |Var   Value    Gradient   |Var   Value    
Gradient
   1  1.90909 -7.00140e-05 |  2  4.07818 -2.08982e-05 |
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
Estimating row 1 out of 2 for hessian
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
Estimating row 2 out of 2 for hessian
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 0
sd_phase = 1; sd_phase() = 1
$


On 09/20/2011 08:48 AM, dave fournier wrote:
> On 11-09-20 10:50 AM, John Sibert wrote:
>
>
> Hard to say without the code. a small example would be good.
> ONly idea is that there is a separate sd_phase around.
> Note that sd_phase returns initial_params::sd_phase
>
>
>   static int sd_phase(void)
>  {
>     return initial_params::sd_phase;
>  }
>
>
>> Why do sd_phase() and sd_phase return different values? This may be a 
>> lex issue.
>>
>> From one of my ADMB applications:
>> line 655, file linux-gnu/tagest.cpp, sd_phase() = 0, sd_phase = 1
>>
>> John
>>
>
>

-- 
John Sibert
Emeritus Researcher, SOEST
University of Hawaii at Manoa

Visit the ADMB project http://admb-project.org/

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: simple.tpl
URL: <http://lists.admb-project.org/pipermail/developers/attachments/20110920/a55906c7/attachment.ksh>


More information about the Developers mailing list