Bookmark and Share

Notice: On March 31, it was announced that Statalist is moving from an email list to a forum. The old list will shut down on April 23, and its replacement, statalist.org is already up and running.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: st: -nlsur- AIDS


From   Christian OTCHIA <bensamen@gmail.com>
To   statalist@hsphsun2.harvard.edu
Subject   Re: st: -nlsur- AIDS
Date   Thu, 10 Nov 2011 20:56:21 +0900

Dear Ivica,

You mentioned about a 5 goods AIDS model but you code looks like a 6
goods model.
You defined 25 parameters but for a 5 goods model, you should define
only 22 parameters and for a 6 goods model, parameters should be 30.

You should therefore define tempname a6 b6 and so on for 6 goods model
or delete scalar `a6' = 1-`a1'-`a2'-`a3'-`a4'-`a5' for a 5 goods
model.
Moreover, you must define tempname and scalar for lnexp because it
appears in your equations.

Christian

On Thu, Nov 10, 2011 at 7:17 PM, Ivica Rubil <irubil@eizg.hr> wrote:
> Dear all,
>
> I have a 5-good AIDS demand system. Below is the code for the function
> evaluator program followed by the -nlsur- command. The problem is that
> Stata returns the following message:
>
> nlsuraids returned 9
> verify that nlsuraidsmeso2 is a function evaluator program
>
> I've checked the code a number of times and I don't know where's the
> mistake. Is there anyone patient enough to try to find it? Thanks in
> advance!
>
> Ivica
>
>
>
> * function evaluator program
> *****************************
> program nlsuraids
>                version 11
>
>                syntax varlist(min=12 max=12) if, at(name)
>                tokenize `varlist'
>                args w1 w2 w3 w4 w5 lnp1 lnp2 lnp3 lnp4 lnp5 lnp6 lnexp
>
>                tempname a1 a2 a3 a4 a5
>                scalar `a1' = `at'[1,1]
>                scalar `a2' = `at'[1,2]
>                scalar `a3' = `at'[1,3]
>                scalar `a4' = `at'[1,4]
>                scalar `a5' = `at'[1,5]
>                scalar `a6' = 1-`a1'-`a2'-`a3'-`a4'-`a5'
>
>                tempname b1 b2 b3 b4 b5
>                scalar `b1' = `at'[1,6]
>                scalar `b2' = `at'[1,7]
>                scalar `b3' = `at'[1,8]
>                scalar `b4' = `at'[1,9]
>                scalar `b5' = `at'[1,10]
>                scalar `b6' = -`b1'-`b2'-`b3'-`b4'-`b5'
>
>                tempname g11 g12 g13 g14 g15 g16
>                tempname g21 g22 g23 g24 g25 g26
>                tempname g31 g32 g33 g34 g35 g36
>                tempname g41 g42 g43 g44 g45 g46
>                tempname g51 g52 g53 g54 g55 g56
>
>                scalar `g11' = `at'[1,11]
>                scalar `g12' = `at'[1,12]
>                scalar `g13' = `at'[1,13]
>                scalar `g14' = `at'[1,14]
>                scalar `g15' = `at'[1,15]
>                scalar `g16' = -`g11'-`g12'-`g13'-`g14'-`g15'
>
>                scalar `g21' = `g12'
>                scalar `g22' = `at'[1,16]
>                scalar `g23' = `at'[1,17]
>                scalar `g24' = `at'[1,18]
>                scalar `g25' = `at'[1,19]
>                scalar `g26' = -`g21'-`g22'-`g23'-`g24'-`g25'
>
>                scalar `g31' = `g13'
>                scalar `g32' = `g23'
>                scalar `g33' = `at'[1,20]
>                scalar `g34' = `at'[1,21]
>                scalar `g35' = `at'[1,22]
>                scalar `g36' = -`g31'-`g32'-`g33'-`g34'-`g35'
>
>                scalar `g41' = `g14'
>                scalar `g42' = `g24'
>                scalar `g43' = `g34'
>                scalar `g44' = `at'[1,23]
>                scalar `g45' = `at'[1,24]
>                scalar `g46' = -`g41'-`g42'-`g43'-`g44'-`g45'
>
>                scalar `g51' = `g15'
>                scalar `g52' = `g25'
>                scalar `g53' = `g35'
>                scalar `g54' = `g45'
>                scalar `g55' = `at'[1,25]
>                scalar `g56' = -`g51'-`g52'-`g53'-`g54'-`g55'
>
>
>                quietly {
>                                tempvar lnpindex
>                                gen double `lnpindex' = 5 + `a1'*`lnp1'
> + `a2'*`lnp2' + ///
>                                                            `a3'*`lnp3'
> + `a4'*`lnp4' + ///
>
> `a5'*`lnp5' + `a6'*`lnp6'
>                                        forvalues i = 1/5 {
>                                                forvalues j = 1/5 {
>                                                        replace
> `lnpindex' = `lnpindex' + 0.5*`g`i'`j''*`lnp`i''*`lnp`j''
>                                                }
>                                        }
>
>                                replace `w1' = `a1' + `g11'*`lnp1' +
> `g12'*`lnp2' + `g13'*`lnp3' + ///
>                                                      `g14'*`lnp4' +
> `g15'*`lnp5' + `g16'*`lnp6' + ///
>
> `b1'*(`lnexp' - `lnpindex')
>
>                                replace `w2' = `a2' + `g21'*`lnp1' +
> `g22'*`lnp2' + `g23'*`lnp3' + ///
>                                                      `g24'*`lnp4' +
> `g25'*`lnp5' + `g26'*`lnp6' + ///
>
> `b2'*(`lnexp' - `lnpindex')
>
>                                replace `w3' = `a3' + `g31'*`lnp1' +
> `g32'*`lnp2' + `g33'*`lnp3' + ///
>                                                      `g34'*`lnp4' +
> `g35'*`lnp5' + `g36'*`lnp6' + ///
>
> `b3'*(`lnexp' - `lnpindex')
>
>                                replace `w4' = `a4' + `g41'*`lnp1' +
> `g42'*`lnp2' + `g43'*`lnp3' + ///
>                                                      `g44'*`lnp4' +
> `g45'*`lnp5' + `g46'*`lnp6' + ///
>
> `b4'*(`lnexp' - `lnpindex')
>
>                                replace `w5' = `a5' + `g51'*`lnp1' +
> `g52'*`lnp2' + `g53'*`lnp3' + ///
>                                                      `g54'*`lnp4' +
> `g55'*`lnp5' + `g56'*`lnp6' + ///
>
> `b5'*(`lnexp' - `lnpindex')
>                }
> end
>
>
> * -nlsur-
> **********
> nlsur aids @ w1 w2 w3 w4 w5 lnp1 lnp2 lnp3 lnp4 lnp5 lnp6 lnexp, ///
>      ifgnls nequations(5) parameters(a1 a2 a3 a4 a5 b1 b2 b3 b4 b5 g11
> g12 g13 g14 g15 g22 g23 g24 ///
>                                      g25 g33 g34 g35 g44 g45 g55)
>
>
>
>
> --
> Ivica Rubil
> Ekonomski institut / The Institute of Economics, Zagreb
> a. Trg J. F. Kennedyja 7, 10 000 Zagreb, Croatia
> t. +385-1-2362-269
> f. +385-1-2335-165
> e. irubil@eizg.hr
> www.eizg.hr
>
>
>
> *
> *   For searches and help try:
> *   http://www.stata.com/help.cgi?search
> *   http://www.stata.com/support/statalist/faq
> *   http://www.ats.ucla.edu/stat/stata/
>



--
***************************************************************
OTCHIA SAMEN Christian
MA Student, Development Economics
NAGOYA University, Japan
E-mail : otchia.christian@e.mbox.nagoya-u.ac.jp
Blog : http://otchia.wordpress.com/
****************************************************************

*
*   For searches and help try:
*   http://www.stata.com/help.cgi?search
*   http://www.stata.com/support/statalist/faq
*   http://www.ats.ucla.edu/stat/stata/


© Copyright 1996–2014 StataCorp LP   |   Terms of use   |   Privacy   |   Contact us   |   Site index