! gtapone.tab file...maximum frosize rea4 headerd elements m file gtapsets "h5"; set...

24
!____________________________GTAPONE.TAB FILE_____________________________! ! ! ! Global Trade Analysis Project ! ! The GTAP Modeling Framework ! ! Closed Economy Model ! ! Version 2.1: March 2002 ! ! Prepared by Padma Swaminathan and Tom Hertel ! !_________________________________________________________________________! ! < -------------------- HISTORY of this file -------------------- Version 1.1 January 1995 Used in AGEC 618, Applied General Equilibrium Analysis, Spring 1995 semester. Version 1.2 January 1996 Used in AGEC 618, Applied General Equilibrium Analysis, Spring 1996 semester. Version 2.0 January 2001 Used in AGEC 618, Applied General Equilibrium Analysis, Spring 2001 semester. This brings in the new final demand theory developed by Robert McDougall, as well as associated changes in the welfare decomposition. Version 2.1 March 2002 Corrects error in equations for qva, qf: missing variable ao(j) inside substitution expression. ---------------------------------- Overview of the GTAP.TAB Structure ---------------------------------- Preliminaries: FILE declarations SET declarations Common Variables: Quantity variables Price variables Technical variables Policy variables Value, Income, utility and welfare variables Slack variables Distribution parameter variables Base Data Common Coefficients READ statements of Basa Data Equations >! !< ----- FILES ----- >! FILE GTAPSETS # set specification # ; FILE GTAPDATA # one region data base # ; FILE GTAPPARM # behavioral parameters # ; !< ---- SETS ---- Sets define relevant groupings of entities over which we will be performing operations in the model. SUBSETS are defined in order to facilitate

Upload: others

Post on 31-Jul-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

!____________________________GTAPONE.TAB FILE_____________________________!! !! Global Trade Analysis Project !! The GTAP Modeling Framework !! Closed Economy Model !! Version 2.1: March 2002 !! Prepared by Padma Swaminathan and Tom Hertel !!_________________________________________________________________________!

! < -------------------- HISTORY of this file --------------------

Version 1.1 January 1995 Used in AGEC 618, Applied General Equilibrium Analysis, Spring 1995 semester.

Version 1.2 January 1996 Used in AGEC 618, Applied General Equilibrium Analysis, Spring 1996 semester.

Version 2.0 January 2001 Used in AGEC 618, Applied General Equilibrium Analysis, Spring 2001 semester. This brings in the new final demand theory developed by Robert McDougall, as well as associated changes in the welfare decomposition.

Version 2.1 March 2002 Corrects error in equations for qva, qf: missing variable ao(j) inside substitution expression. ---------------------------------- Overview of the GTAP.TAB Structure ---------------------------------- Preliminaries: FILE declarations SET declarations Common Variables: Quantity variables Price variables Technical variables Policy variables Value, Income, utility and welfare variables Slack variables Distribution parameter variables Base Data Common Coefficients READ statements of Basa Data Equations >!

!< ----- FILES ----->!

FILE GTAPSETS # set specification # ;FILE GTAPDATA # one region data base # ;FILE GTAPPARM # behavioral parameters # ;

!< ---- SETS ----

Sets define relevant groupings of entities over which we will be performing operations in the model. SUBSETS are defined in order to facilitate

Page 2: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

summation over only a portion of a given group, e.g. tradeable commodities. Users with access to GEMPACK can increase the maximum set sizes to permit larger aggregations, provided you have sufficient RAM for implementing them The standard model (10x10 aggregation with decomposition code) is designed to run with 16 Mb of RAM.

Aide-Memoire for Sets ---------------------

|--------------------------------------| | DEMD_COMM | |----------------------------------------------------| | ENDW_COMM | TRAD_COMM | CGDS_COMM | |----------------------------------------------------| | NSAV_COMM | |----------------------------------------------------| | PROD_COMM | |----------------------------------------|

For Endowments, |-------------------------| | ENDW_COMM | |-------------------------| | ENDWM_COMM | ENDWS_COMM | |-------------------------|

>!

! Sets define relevant groupings of entities over which we will be performing operations in the model. SUBSETS are defined in order to facilitate summation over only a portion of a given group, e.g. tradeable commodities. !

SET TRAD_COMM # traded commodities # maximum size 3 READ elements from file GTAPSETS header "H2" ;

SET NSAV_COMM # non-savings commodities # maximum size 8 read elements from file GTAPSETS header "H3" ;

SET DEMD_COMM # demanded commodities # maximum size 6 read elements from file GTAPSETS header "H4" ;

SET PROD_COMM # produced commodities # maximum size 4 read elements from file GTAPSETS header "H5" ;

SET ENDW_COMM # endowment commodities # maximum size 3 read elements from file GTAPSETS header "H6" ;

SET ENDWS_COMM # sluggish endowment commodities # maximum size 3 read elements from file GTAPSETS header "H7" ;

SET ENDWM_COMM # mobile endowment commodities # maximum size 3 read elements from file GTAPSETS header "H8" ;

SET CGDS_COMM # capital goods commodities # maximum size 1 read elements from file GTAPSETS header "H9" ;

SET ENDWC_COMM # capital endowment commodity # (capital) ;

Page 3: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

!-------------------------------------------------------------------------!! SUBSETS !!-------------------------------------------------------------------------!

SUBSET PROD_COMM IS SUBSET OF NSAV_COMM ;SUBSET DEMD_COMM IS SUBSET OF NSAV_COMM ;SUBSET CGDS_COMM IS SUBSET OF NSAV_COMM ;SUBSET ENDWC_COMM IS SUBSET OF NSAV_COMM ;SUBSET ENDW_COMM IS SUBSET OF DEMD_COMM ;SUBSET TRAD_COMM IS SUBSET OF DEMD_COMM ;SUBSET TRAD_COMM IS SUBSET OF PROD_COMM ;SUBSET CGDS_COMM IS SUBSET OF PROD_COMM ;SUBSET ENDWS_COMM IS SUBSET OF ENDW_COMM ;SUBSET ENDWM_COMM IS SUBSET OF ENDW_COMM ;

!-------------------------------------------------------------------------!! VARIABLES !!-------------------------------------------------------------------------!

! Variables are percentage changes in the original (levels) variables. Variables are conveniently grouped into: quantity variables, prices variables, technical change variables, policy variables, income and utility variables, slack variables, and dummy variables (to prevent meaningless changes in initially zero variables). In GEMPACK, variables refer to those items which will be changing endogenously with each Johansen solution. They are assigned lower case labels to denote the fact that they are proportional changes. (This is purely for convenience, since GEMPACK is not case sensitive.) !

!-------------------------------------------------------------------------!! quantity variables !!-------------------------------------------------------------------------!

VARIABLE (Orig_level=VOM)(all,i,NSAV_COMM) qo(i)# percentage change in output of non-savings commodity i # ;

VARIABLE (all,i,ENDWS_COMM)(all,j,PROD_COMM) qoes(i,j)# percentage change in quantity of sluggish endowment i to firms in sector j # ;

VARIABLE (all,i,ENDW_COMM)(all,j,PROD_COMM) qfe(i,j)# percentage change in quantity of endowment i to firms in sector j # ;

VARIABLE (all,j,PROD_COMM) qva(j)# percentage change in the quantity of value-added output by firms in j # ;

VARIABLE (all,i,TRAD_COMM)(all,j,PROD_COMM) qf(i,j)# percentage change of tradable commodity i demanded by firms in j # ;

VARIABLE (all,i,TRAD_COMM) qp(i)# percentage change of tradable commodity i demanded by pvt household # ;

VARIABLE (all,i,TRAD_COMM) qg(i)# percentage change of tradable commodity i demanded by govt # ;

VARIABLE qcgds# percentage change in the quantity of capital goods supplied # ;

VARIABLE qsave# percentage change in the quantity of savings demanded # ;

VARIABLE kb# percentage change in the quantity of beginning-of-period capital stock # ;

Page 4: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

VARIABLE ke# percentage change in the quantity of end-of-period capital stock # ;

VARIABLE ksvces# percentage change in the quantity of capital services supplied # ;

VARIABLE walras_dem# percentage change in the quantity demanded in the omitted market savings # ;

VARIABLE walras_sup# percentage change in the supplied omitted market capital goods # ;

VARIABLE (Orig_level = GDP) qgdp# percentage change in the GDP quantity index # ;

VARIABLE pop# percentage change in population # ;

!-------------------------------------------------------------------------!! price variables !!-------------------------------------------------------------------------!

VARIABLE (Orig_level = 1.0)(all,i,NSAV_COMM) pm(i)# percentage change in the market price of non-savings commodity i # ;

VARIABLE (all,i,ENDWS_COMM)(all,j,PROD_COMM) pmes(i,j)# percentage change in the market price of sluggish endowment i to sector j # ;

VARIABLE (all,i,NSAV_COMM) ps(i)# percentage change in the supply price of non-savings commodity i # ;

VARIABLE (all,i,ENDW_COMM)(all,j,PROD_COMM) pfe(i,j)# percentage change in the price of endowment i demanded by firms in sector j# ;

VARIABLE (all,j,PROD_COMM) pva(j)# percentage change in the price of value-added output by firms in sector j # ;

VARIABLE (all,i,TRAD_COMM)(all,j,PROD_COMM) pf(i,j)# percentage change in the price of tradable i demanded by firms in sector j # ;

VARIABLE (all,i,TRAD_COMM) pp(i)# percentage change in the price of tradable i demanded by pvt household # ;

VARIABLE (all,i,TRAD_COMM) pg(i)# percentage change in the price of tradable i demanded by government # ;

VARIABLE psave# percentage change in the price of savings # ;

VARIABLE pcgds# percentage change in the price of capital goods supplied = ps("cgds") # ;

VARIABLE (Orig_level = 1.0) pgdp# percentage change in the GDP price index # ;

VARIABLE pgov# percentage change in the price index for government expenditure # ;

VARIABLE ppriv# percentage change in the price index for private household expenditure # ;

Variable uepriv

Page 5: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

# elasticity of cost wrt utility from private consumption#;

!-------------------------------------------------------------------------!! technical change variables !!-------------------------------------------------------------------------!

! Specification: If, for example, technical progress is Hicks-neutral across all inputs at the rate of 1 percent, then ao(j) = 1. !

VARIABLE (all,j,PROD_COMM) ao(j)# percentage change in the output augmenting technical change in sector j # ;

VARIABLE (all,i,ENDW_COMM)(all,j,PROD_COMM) afe(i,j)# percentage change in primary factor i augmenting technical change in j # ;

VARIABLE (all,i,TRAD_COMM)(all,j,PROD_COMM) af(i,j)# percentage change in int.input i augmenting technical change in sector j # ;

VARIABLE (all,j,PROD_COMM) ava(j)# percentage change in value added augmenting technical change in sector j # ;

!-------------------------------------------------------------------------!! policy variables !!-------------------------------------------------------------------------!

VARIABLE (all,i,NSAV_COMM) to(i)# percentage change in power of tax(PT) on output of non-savings commodity i # ;

VARIABLE (all,i,ENDW_COMM)(all,j,PROD_COMM) tfe(i,j)# percentage change in PT on endowment i demanded by firms in sector j # ;

VARIABLE (all,i,TRAD_COMM)(all,j,PROD_COMM) tf(i,j)# percentage change in PT on tradable i demanded by firms in sector j # ;

VARIABLE (all,i,TRAD_COMM) tp(i)# percentage change in PT on tradable i purchased by private household # ;

VARIABLE (all,i,TRAD_COMM) tg(i)# percentage change in the PT on tradable i purchased by government # ;

!-------------------------------------------------------------------------!! value, income, utility, and welfare variables !!-------------------------------------------------------------------------!

VARIABLE vgdp# percentage change in the value of GDP = linearized form of GDP # ;

VARIABLE y# percentage change in regional household income =linearized form of Income # ;

VARIABLE yp# percentage change in private household exp = linearized form of PRIVEXP # ;

Variable yg# regional government consumption expenditure#;

VARIABLE up# percentage change in per capita utility from private household expenditure # ;

VARIABLE ug# percentage change in aggregate utility from government expenditure # ;

Page 6: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

VARIABLE u# percentage change in per capita utility from aggregate household exp. # ;

VARIABLE (CHANGE) EV# Hicksian equivalent variation, in $ US million # ;

!-------------------------------------------------------------------------!! slack variables !!-------------------------------------------------------------------------!

VARIABLE (all,j,PROD_COMM) profitslack(j)# slack variable in ZEROPROFITS equation. Exogenous when QO(j)is endogeneous # ;

VARIABLE incomeslack# slack variable in REGINCOME equation. Exogenous when Y is endogenous# ;

VARIABLE (all,i,ENDW_COMM) endwslack(i)# slack in MKTCLENDWM and ENDW_SUPPLY.Exogenous PM(i>/PMES(i,j) is endogenous#;

VARIABLE (all,i,TRAD_COMM) tradslack(i)# slack variable in the MKTCLTRD equation. Exogenous when PM(i) is endogenous #;

VARIABLE cgdslack# slack variable in the CAPGOODS equation. Exogenous when QCGDS is endogenous#;

VARIABLE walraslack ! slack variable in the WALRAS equation. This is _endogenous_ as long as price of savings, PSAVE is determined exogenously, as is the case in a standard GE closure. When any one of the GE links is broken, then it must be swapped with the numeraire, thereby forcing savings to explicitly equal investment. ! ;

!-------------------------------------------------------------------------!!distribution parameter variables (replace slacks in final demand) !!-------------------------------------------------------------------------!

Variable dppriv# private consumption distribution parameter#;

Variable dpgov# government consumption distribution parameter#;

Variable dpsave# saving distribution parameter#;

Variable dpfpriv# private-consumption-specific distparam shift#;

Variable dpfgov# government-consumption-specific distparam shift#;

Variable dpfsave# saving-specific distparam shift#;

Variable dpshift# generic distparam shift#;

Equation DPARPRIV #private consumption distribution parameter# dppriv = dpfpriv + dpshift;Equation DPARGOV #government consumption distribution parameter# dpgov = dpfgov + dpshift;Equation DPARSAVE #saving distribution parameter# dpsave = dpfsave + dpshift;

Page 7: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

!-------------------------------------------------------------------------!! DATA BASE !!-------------------------------------------------------------------------!

! The BASE DATA are divided into three sections: base revenues / expenditures at agent's prices, base revenues / expenditures at market prices, and technology, preference and mobility parameters. Since these are invariant for each solution of the model, they are termed coefficients. Coefficients are assigned upper case to distinguish them from variables. (Again, this is purely cosmetic, as GEMPACK is not case sensitive.)

The updating command indicates how the new level of the coefficient will be computed based on the previous Johansen solution. Note that the notation used in the update commands is a shorthand for total differentials of these coefficient values. Thus, w * v indicates that we want to take the total differential of W * V, plug in the calculated values of w and v, and add this to the base level in order to obtain a revised value for this product. Finally, the technology & preference parameters do not change at all and so require no update statement. !

!-------------------------------------------------------------------------!! base revenues and expenditures at agent's prices !!-------------------------------------------------------------------------!

COEFFICIENT (GE 0)(all,i,ENDW_COMM) EVOA(i)# value of endowment commodity i output or supplied at agents prices# ;UPDATE (all,i,ENDW_COMM) EVOA(i) = ps(i) * qo(i) ;

COEFFICIENT (all,i,DEMD_COMM)(all,j,PROD_COMM) VFA(i,j)# value of demanded commodity i by firms in sector j at agents' prices # ;UPDATE (all,i,ENDW_COMM)(all,j,PROD_COMM) VFA(i,j) = pfe(i,j) * qfe(i,j) ;UPDATE (all,i,TRAD_COMM)(all,j,PROD_COMM) VFA(i,j) = pf(i,j) * qf(i,j) ;

COEFFICIENT (all,i,TRAD_COMM) VPA(i)# value of private household's expenditure on tradable i at agents prices #;UPDATE (all,i,TRAD_COMM) VPA(i) = pp(i) * qp(i) ;

COEFFICIENT (all,i,TRAD_COMM) VGA(i)# value of government's expenditure on tradable i at agents prices # ;UPDATE (all,i,TRAD_COMM) VGA(i) = pg(i) * qg(i) ;

COEFFICIENT SAVE# expenditure on net savings valued at agents' prices # ;UPDATE SAVE = psave * qsave ;

COEFFICIENT (GE 0) VDEP# value of capital depreciation, is exogenous hence not updated # ;UPDATE VDEP = kb * pcgds ;

COEFFICIENT (GE 0) VKB# value of beginning-of-period capital stock # ;UPDATE VKB = kb * pcgds ;

!-------------------------------------------------------------------------!! base revenues and expenditures at market prices !

Page 8: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

!-------------------------------------------------------------------------!

COEFFICIENT (GE 0)(all,i,DEMD_COMM)(all,j,PROD_COMM) VFM(i,j)# value of demanded commodity i by firms in sector j at market prices # ;UPDATE (all,i,ENDWM_COMM)(all,j,PROD_COMM) VFM(i,j) = pm(i) * qfe(i,j) ;UPDATE (all,i,ENDWS_COMM)(all,j,PROD_COMM) VFM(i,j) = pmes(i,j) * qfe(i,j) ;UPDATE (all,i,TRAD_COMM)(all,j,PROD_COMM) VFM(i,j) = pm(i) * qf(i,j) ;

COEFFICIENT (all,i,TRAD_COMM) VPM(i)# value of private household's expenditure on tradable i at market prices # ;UPDATE (all,i,TRAD_COMM) VPM(i) = pm(i) * qp(i) ;

COEFFICIENT (all,i,TRAD_COMM) VGM(i)# value of government's expenditure on tradable i at market prices # ;UPDATE (all,i,TRAD_COMM) VGM(i) = pm(i) * qg(i) ;

!-------------------------------------------------------------------------!! technology, preference, and mobility parameters !!-------------------------------------------------------------------------!

COEFFICIENT (all,j,PROD_COMM) ESUBVA(j)# elasticity of substitution between primary factors in CES value-added nest # ;

COEFFICIENT (all,i,PROD_COMM) ESUBT(i)# elasticity of substitution between value-added and intermediate inp in CES#;

COEFFICIENT (all,i,TRAD_COMM) SUBPAR(i)# substitution parameter for tradable in the CDE minimum expenditure function #;

COEFFICIENT (all,i,TRAD_COMM) INCPAR(i)# expansion parameter for tradable commodity i in CDE function #;

COEFFICIENT (all,i,ENDWS_COMM) ETRAE(i)# elasticity of transformation between uses for sluggish primary factor i # ;

!-------------------------------------------------------------------------!! reading model parameters and base data !!-------------------------------------------------------------------------!

READ(all,i,ENDW_COMM) EVOA(i) from file GTAPDATA header "EVOA" ;(all,i,DEMD_COMM)(all,j,PROD_COMM) VFA(i,j) from file GTAPDATA header "VFA" ;(all,i,TRAD_COMM) VPA(i) from file GTAPDATA header "VPA" ;(all,i,TRAD_COMM) VGA(i) from file GTAPDATA header "VGA" ; SAVE from file GTAPDATA header "SAVE" ; VDEP from file GTAPDATA header "VDEP" ; VKB from file GTAPDATA header "VKB" ;(all,i,DEMD_COMM)(all,j,PROD_COMM) VFM(i,j) from file GTAPDATA header "VFM" ;(all,i,TRAD_COMM) VPM(i) from file GTAPDATA header "VPM" ;

Page 9: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

(all,i,TRAD_COMM) VGM(i) from file GTAPDATA header "VGM" ;

READ SUBPAR from file GTAPPARM header "SUBP";READ INCPAR from file GTAPPARM header "INCP";READ ESUBVA from file GTAPPARM header "ESBV";READ ESUBT from file GTAPPARM header "ESBT";READ ETRAE from file GTAPPARM header "ETRE";

!-------------------------------------------------------------------------!! DERIVATIVES OF THE DATA BASE !!-------------------------------------------------------------------------!

! Derivatives of the base data include computations of household income, budget shares, and demand elasticities. Since these are constant for each Johansen solution, they are termed coefficients. !

ZERODIVIDE (ZERO_BY_ZERO) DEFAULT 0 ;

COEFFICIENT (all,i,NSAV_COMM) VOA(i)# value of commodity i output, at agents prices # ;FORMULA (all,i,ENDW_COMM) VOA(i) = EVOA(i) ;FORMULA (all,i,PROD_COMM) VOA(i) = sum{j,DEMD_COMM, VFA(j,i)} ;

COEFFICIENT (all,i,NSAV_COMM) VOM(i)# value of commodity i output, at market prices # ;FORMULA (all,i,ENDW_COMM) VOM(i) = sum{j,PROD_COMM, VFM(i,j)} ;FORMULA (all,i,TRAD_COMM) VOM(i) = VPM(i) + VGM(i) + sum{j,PROD_COMM, VFM(i,j)} ;FORMULA (all,i,CGDS_COMM) VOM(i) = VOA(i) ;

COEFFICIENT PRIVEXP# private consumption exenditure # ;FORMULA PRIVEXP = sum{i,TRAD_COMM, VPA(i)} ;

COEFFICIENT GOVEXP# government expenditure # ;FORMULA GOVEXP = sum{i,TRAD_COMM, VGA(i)} ;

COEFFICIENT INCOME# super household income equals aggregate expenditure # ;FORMULA INCOME = PRIVEXP + GOVEXP + SAVE ;

COEFFICIENT GDP# Gross Domestic Product # ;FORMULA GDP = sum{i,TRAD_COMM, VGA(i)} + sum{i,TRAD_COMM, VPA(i)} + sum{k,CGDS_COMM, VOA(k)} ;

COEFFICIENT GROSSINV# gross investment i.e., value of output of sector "cgds" # ;FORMULA GROSSINV = sum{k,CGDS_COMM, VOA(k)} ;

COEFFICIENT NETINV# net investment, netting out depreciation # ;FORMULA NETINV = sum{k,CGDS_COMM, VOA(k)} - VDEP ;

Page 10: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

! compute budget shares, income shares, market shares, and shares in final demand !

COEFFICIENT (all,i,TRAD_COMM) PCONSHR(i)# private household's budget share of commodity i # ;FORMULA (all,i,TRAD_COMM) PCONSHR(i) = VPA(i) / sum{m,TRAD_COMM, VPA(m)} ;

COEFFICIENT (all,i,TRAD_COMM) GCONSHR(i)# government's budget share of commodity i # ;FORMULA (all,i,TRAD_COMM) GCONSHR(i) = VGA(i) / sum{m,TRAD_COMM, VGA(m)} ;

COEFFICIENT XSHRPRIV# private household's share of super household income # ;FORMULA XSHRPRIV = PRIVEXP / INCOME ;

COEFFICIENT XSHRGOV# government's share of super household income # ;FORMULA XSHRGOV = GOVEXP / INCOME ;

COEFFICIENT XSHRSAVE# savings' share of super household income # ;FORMULA XSHRSAVE = SAVE / INCOME ; COEFFICIENT (all,i,TRAD_COMM)(all,j,PROD_COMM) SHRFM(i,j)# share of intermediate demand by sector j in output of sector i # ;FORMULA (all,i,TRAD_COMM)(all,j,PROD_COMM) SHRFM(i,j) = VFM(i,j)/VOM(i) ;

COEFFICIENT (all,i,TRAD_COMM) SHRPM(i)# share of private household demand in output of sector i # ;FORMULA (all,i,TRAD_COMM) SHRPM(i) = VPM(i)/VOM(i) ;

COEFFICIENT (all,i,TRAD_COMM) SHRGM(i)# share of government demand in output of sector i # ;FORMULA (all,i,TRAD_COMM) SHRGM(i) = VGM(i)/VOM(i) ;

! compute cost shares for the firms and endowment market shares !

COEFFICIENT (all,i,ENDW_COMM)(all,j,PROD_COMM) SVA(i,j)# share of endowment i in total value-added of sector j # ;FORMULA (all,i,ENDW_COMM)(all,j,PROD_COMM) SVA(i,j) = VFA(i,j)/sum{k,ENDW_COMM, VFA(k,j)} ;

COEFFICIENT (all,i,ENDW_COMM)(all,j,PROD_COMM) SENT(i,j)# share of endowment input i in total costs of sector j # ;FORMULA (all,i,ENDW_COMM)(all,j,PROD_COMM) SENT(i,j) = VFA(i,j) / VOA(j) ;

COEFFICIENT (all,i,TRAD_COMM)(all,j,PROD_COMM) SINT(i,j)# share of intermediate input i in total costs of sector j # ;FORMULA (all,i,TRAD_COMM)(all,j,PROD_COMM) SINT(i,j) = VFA(i,j) / VOA(j) ;

COEFFICIENT (all,i,ENDW_COMM)(all,j,PROD_COMM) REVSHR(i,j)# share of sector j in market for primary factor i # ;FORMULA (all,i,ENDW_COMM)(all,j,PROD_COMM) REVSHR(i,j) = VFM(i,j)/sum{k,PROD_COMM, VFM(i,k)} ;

! gross - net ratio !

Page 11: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

COEFFICIENT INVKERATIO# ratio of gross investment to end-of-period capital stock # ;FORMULA INVKERATIO = GROSSINV / [VKB + NETINV] ;

!-------------------------------------------------------------------------!! new coefficients associated with final demand revisions !!-------------------------------------------------------------------------!

Coefficient UELASPRIV #elasticity of cost wrt utility from private consumption#;Formula UELASPRIV = sum{i,TRAD_COMM, PCONSHR(i)*INCPAR(i)};

!-------------------------------------------------------------------------!! price and income elasticities of demand for private household !!-------------------------------------------------------------------------!

! Compute the Allen partial elasticities of substitution, price and income elasticities of demand for the private household characterized by Constant Difference Elasticity (CDE) preferences. !

COEFFICIENT (all,i,TRAD_COMM) ALPHA(i)# one minus the substitution parameter in the CDE minimum expenditure function#;FORMULA (all,i,TRAD_COMM) ALPHA(i) = (1 - SUBPAR(i)) ;

COEFFICIENT (all,i,TRAD_COMM)(all,k,TRAD_COMM) APE(i,k)# the Allen partial elasticity of substitution between composite goods i k #;FORMULA (all,i,TRAD_COMM)(all,k,TRAD_COMM) APE(i,k) = ALPHA(i) + ALPHA(k) - sum{m,TRAD_COMM, PCONSHR(m) * ALPHA(m)} ;FORMULA (all,i,TRAD_COMM) APE(i,i) = 2.0 * ALPHA(i) - sum{m,TRAD_COMM, PCONSHR(m) * ALPHA(m)} - ALPHA(i) / PCONSHR(i) ;

COEFFICIENT (all,i,TRAD_COMM) EY(i)# income elasticity of household demand for tradable commodity i #;FORMULA (all,i,TRAD_COMM) EY(i) = [1.0/sum{m,TRAD_COMM, PCONSHR(m) * INCPAR(m)}] * (INCPAR(i) * [1.0 - ALPHA(i)] + sum{m,TRAD_COMM, PCONSHR(m) * INCPAR(m) * ALPHA(m)}) + [ALPHA(i) - sum{m,TRAD_COMM, PCONSHR(m) * ALPHA(m)}] ;

COEFFICIENT (all,i,TRAD_COMM)(all,k,TRAD_COMM) EP(i,k)# uncompensated cross-price elasticity of household demand i wrt k# ;FORMULA (all,i,TRAD_COMM)(all,k,TRAD_COMM) EP(i,k) = 0 ;FORMULA (all,i,TRAD_COMM)(all,k,TRAD_COMM) EP(i,k) = (APE(i,k) - EY(i)) * PCONSHR(k) ;

ZERODIVIDE (ZERO_BY_ZERO) OFF ;

!-------------------------------------------------------------------------!! EQUATIONS !!-------------------------------------------------------------------------!

! The following equations determine the equilibrium of a single region, closed economy. These equations are written up in the course notes for AGEC618: Applied General Equilibrium Analysis, authored by Tom Hertel

Page 12: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

and Padma Swaminathan. The equations numbers below cross reference with this documentation. For example, (HS#1) refers to equation (1) in those notes.

With a few exceptions, these equations are a simpler version of the equilibrium structure of the multiregion model described in Hertel, T.W. and M.E. Tsigas "Structure of the Standard GTAP Model", Chapter 2 in T.W. Hertel (editor) Global Trade Analysis: Modeling and Applications, Cambridge University Press, 1996.

We begin with the accounting relationships comprising of the market clearing equations and the zero profits equation. This is followed by the income equations, investment equations and the price linkage equations. Next come the behavioral equations for firms. The next set of equations compute utility indices. Then come the private household and government demand equations. The last set of equations compute summary indices for GDP. !

!-------------------------------------------------------------------------!! accounting relationships !!-------------------------------------------------------------------------!

! Accounting relationships include market clearing equations and the zero profits equation. The market clearing equations enforce market clearing for all the tradable and endowment commodities. Due to Walras' Law we exclude the market clearing equation for capital goods. This offers a consistency check on the model under the usual, general equilibrium closure. Therefore we check for equilibrium in the savings-investment market by examining the solution value of walraslack. Note that walraslack must be endogenous in the usual general equilibrium closure. However, in any of the partial equilibrium closures it will be exogenous. !

EQUATION MKTCLTRD# This equation assures market clearing in the traded goods markets (HS1) #(all,i,TRAD_COMM)qo(i) = sum{j,PROD_COMM, SHRFM(i,j) * qf(i,j)} + SHRPM(i) * qp(i) + SHRGM(i) * qg(i) + tradslack(i) ;

EQUATION MKTCLENDWM# This equation assures market clearing for perfectly mobile endowment(HS2) #(all,i,ENDWM_COMM)qo(i) = sum{j,PROD_COMM, REVSHR(i,j) * qfe(i,j)} + endwslack(i) ;

EQUATION MKTCLENDWS# This equation assures market clearing for imperfectly mobile endowment(HS3)#(all,i,ENDWS_COMM)(all,j,PROD_COMM)qoes(i,j) = qfe(i,j) ;

EQUATION ENDW_SUPPLY# This equation distributes the sluggish endowments across sectors(HS4) #(all,i,ENDWS_COMM)(all,j,PROD_COMM)qoes(i,j) = qo(i) - endwslack(i) + ETRAE(i) * [pm(i) - pmes(i,j)] ;

EQUATION ENDW_PRICE# This equation generates the composite price for sluggish endowments (HS5) #(all,i,ENDWS_COMM)pm(i) = sum{k,PROD_COMM, REVSHR(i,k) * pmes(i,k)} ;

Page 13: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

EQUATION ZEROPROFITS# Zero profits permits us to determine the endogenous output (HS6) #(all,j,PROD_COMM)ps(j) = sum{i,ENDW_COMM, SENT(i,j) * [pfe(i,j) - afe(i,j) - ava(j)]} + sum{i,TRAD_COMM, SINT(i,j) * [pf(i,j) - af(i,j)]} - ao(j) + profitslack(j) ;

EQUATION WALRAS_S# This equation computes change in supply in the omitted market(HS7) # NETINV * walras_sup = GROSSINV * qcgds - VDEP * kb ;

EQUATION WALRAS_D# This equation computes change in demand in the omitted market (HS8) #NETINV * walras_dem = SAVE * qsave ;

EQUATION WALRAS# Checks Walras Law. Endogenous slack variable should be zero (HS9) #walras_sup = walras_dem + walraslack ;

!-------------------------------------------------------------------------!! income equations !!-------------------------------------------------------------------------!

EQUATION REGINCOME# Income is sum of primary factor payments and net tax receipts.(HS10)#INCOME * y = sum{i,ENDW_COMM, VOA(i) * [ps(i) + qo(i)]} - VDEP * [pcgds + kb] + sum{i,NSAV_COMM, VOM(i) * [pm(i) + qo(i)] - VOA(i) * [ps(i) + qo(i)]} + sum{j,PROD_COMM, sum{i,ENDWM_COMM, VFA(i,j) * [pfe(i,j) + qfe(i,j)] - VFM(i,j) * [pm(i) + qfe(i,j)]}} + sum{j,PROD_COMM, sum{i,ENDWS_COMM, VFA(i,j) * [pfe(i,j) + qfe(i,j)] - VFM(i,j) * [pmes(i,j) + qfe(i,j)]}} + sum{j,PROD_COMM, sum{i,TRAD_COMM, VFA(i,j) * [pf(i,j) + qf(i,j)] - VFM(i,j) * [pm(i) + qf(i,j)]}} + sum{i,TRAD_COMM, VPA(i) * [pp(i) + qp(i)] - VPM(i) * [pm(i) + qp(i)]} + sum{i,TRAD_COMM, VGA(i) * [pg(i) + qg(i)] - VGM(i) * [pm(i) + qg(i)]} + INCOME * incomeslack ;

!-------------------------------------------------------------------------!! investment equations !!-------------------------------------------------------------------------!

EQUATION CAPGOODS# Defines a variable for gross investment.There is one capital goods(HS12)#qcgds = sum{h,CGDS_COMM, [VOA(h) / GROSSINV] * qo(h)} + cgdslack ;

EQUATION PRCGOODS# Defines the price of capital goods(HS13) #pcgds = sum{h,CGDS_COMM, [VOA(h) / GROSSINV] * ps(h)} ;

EQUATION KAPSVCES# This equation defines a variable for capital services (HS14) #ksvces = sum{h,ENDWC_COMM, [VOA(h) / sum{k,ENDWC_COMM, VOA(k)}] * qo(h)} ;

EQUATION KBEGINNING# Associates any change in capital services with change in capital stock#kb = ksvces ;

EQUATION KEND# Ending capital stock equals beginning stock plus net investment(HS16) #

Page 14: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

ke = INVKERATIO * qcgds + [1.0 - INVKERATIO] * kb ;

!-------------------------------------------------------------------------!! price linkage equations !!-------------------------------------------------------------------------!

! The following equations serve to link agents' prices and market prices in various transactions taking into account taxes/subsidies. There are 4 types of transaction taxes in this model: taxes on supply of produced output, taxes on supply of endowments, taxes on demand for primary factor inputs, and taxes on demand for tradable commodities. For a subsidy the notation remains the same, with the inequalities getting reversed.

!

EQUATION SUPPLYPRICES#This equation links pre-and post-tax supply prices for all industries(HS17)#(all,i,NSAV_COMM)ps(i) = to(i) + pm(i) ;

EQUATION MPFACTPRICE#Links market and firm demand prices for mobile endowments(HS18)#(all,i,ENDWM_COMM)(all,j,PROD_COMM)pfe(i,j) = tfe(i,j) + pm(i) ;

EQUATION SPFACTPRICE# Links market and firm demand prices for sluggish endowment(HS19) #(all,i,ENDWS_COMM)(all,j,PROD_COMM)pfe(i,j) = tfe(i,j) + pmes(i,j) ;

EQUATION DMNDPRICE# Links market and firm demand prices for tradables(HS20) #(all,i,TRAD_COMM)(all,j,PROD_COMM)pf(i,j) = tf(i,j) + pm(i) ;

EQUATION PHHPRICE# Links market and private household demand prices for tradables(HS21) #(all,i,TRAD_COMM)pp(i) = tp(i) + pm(i) ;

EQUATION GHHPRICE# Links market and government demand prices for tradables(HS22) #(all,i,TRAD_COMM)pg(i) = tg(i) + pm(i) ;

EQUATION PRICESAVE# Equates price of savings(numeraire) to price of investment goods(HS23)#psave = pcgds ;

! We now turn to the behavioral equations for firms. The following picture describes factor demands, associated cost shares and technical change variables for each level of the production tree. The first set of equations describes demands for primary factors and the second set describes demand for value-added and intermediate inputs. !

!------------------------------------------------------------------------!! Production structure !! qo(j) [ao(j)] !! /\ !! / \ <------- CES !! / \ !

Page 15: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

! {SVAT(j)} / \ {SINT(i,j)} !! / \ !! [ava(j)] qva(j) qf(i,j) [af(i,j)] !! /|\ !! CES -----> / | \ !! / | \ !! {SVA(i,j)} / | \ !! / | \ !! Land Labor Capital !! qfe(i,j) !! [afe(i,j)] !!------------------------------------------------------------------------!

!-------------------------------------------------------------------------!! behavioral equations for firms !!-------------------------------------------------------------------------!

EQUATION VAPRICE# Computes price of primary factor composite in each sector(HS24) #(all,j,PROD_COMM)pva(j) = sum{k,ENDW_COMM, SVA(k,j) * [pfe(k,j) - afe(k,j)]} ;

EQUATION ENDWDEMAND# Determines demand for endowment commodities by the sector(HS25) #(all,i,ENDW_COMM)(all,j,PROD_COMM)qfe(i,j) = -afe(i,j) + qva(j) - ESUBVA(j) * [pfe(i,j) - afe(i,j) - pva(j)] ;

EQUATION VADEMAND# Determines demand for primary factor composite by the sector(HS26) #(all,j,PROD_COMM)qva(j) = - ava(j) + qo(j) - ao(j) - ESUBT(j) * [pva(j) - ava(j) - ps(j) - ao(j)] ;

EQUATION INTDEMAND# Determines demand for intermediate inputs by the sector(HS27) #(all,i,TRAD_COMM)(all,j,PROD_COMM)qf(i,j) = - af(i,j) + qo(j) - ao(j) - ESUBT(j) * [pf(i,j) - af(i,j) - ps(j) - ao(j)] ;

!-------------------------------------------------------------------------!! regional hhld demands and utility !!-------------------------------------------------------------------------!

Variable dpav #average of the distribution parameters#;Equation DPARAV #average distribution parameter# INCOME*dpav = PRIVEXP*dppriv + GOVEXP*dpgov + SAVE*dpsave;

Equation PRIVCONSEXP #private consumption expenditure# yp - y = -[1.0 - XSHRPRIV]*uepriv + dppriv - dpav;

Equation GOVCONSEXP #government consumption expenditure# yg - y = XSHRPRIV*uepriv + dpgov - dpav;

Equation SAVING #saving# psave + qsave - y = XSHRPRIV*uepriv + dpsave - dpav;

Variable uelas #percent change in elasticity of cost of utility wrt utility#;

Page 16: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

Equation UTILITELASTIC #elasticity of cost of utility wrt utility# uelas = XSHRPRIV*uepriv - dpav;

Coefficient UTILELAS #elasticity of cost of utility wrt utility#;Read UTILELAS from file GTAPDATA header "UE";Update UTILELAS = uelas;

Variable p #price index for disposition of income by regional household#;Equation PRICEINDEXREG #price index for disposition of income by regional household# p = XSHRPRIV*ppriv + XSHRGOV*pgov + XSHRSAVE*psave ;

Equation UTILITY #regional household utility# y - pop = p + UTILELAS*u;

!-------------------------------------------------------------------------!! private household demand equations !!-------------------------------------------------------------------------!

EQUATION PRIVDMNDS# Private household demands (percapita) for composite commodities(HS32)#(all,i,TRAD_COMM)qp(i) = sum{k,TRAD_COMM, EP(i,k) * pp(k)} + EY(i) * [yp - pop] + pop ;

EQUATION PHHLDINDEX# Computes price index for private household expenditure (HS33) #ppriv = sum{i,TRAD_COMM, PCONSHR(i)* pp(i)} ;

EQUATION PRIVATEU# Private consumption utility for representative household (HS28) #yp - pop = ppriv + UELASPRIV * up ;

Equation UTILELASPRIV#percent change in elasticity of expenditure wrt utility from priv cons # uepriv = sum{i,TRAD_COMM,PCONSHR(i)*[(INCPAR(i)/UELASPRIV) - 1.0]*[pp(i) + qp(i) - yp]};

!-------------------------------------------------------------------------!! government demand equations !!-------------------------------------------------------------------------!

Equation GOVU# Computation of utility from government consumption # yg - pop = pgov + ug;

EQUATION GOVDMNDS# Government demands for tradable commodities. (HS34)#(all,i,TRAD_COMM)qg(i) - pop = ug - [pg(i) - pgov] ;

EQUATION GPRICEINDEX# Price index for aggregate government purchases (HS35) #

Page 17: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

pgov = sum{i,TRAD_COMM, GCONSHR(i) * pg(i)} ;

!-------------------------------------------------------------------------!! GDP value, price, and quantity indices !!-------------------------------------------------------------------------!

EQUATION GDP_v# This equation computes GDP index.(HS37) #GDP * vgdp = sum{i,TRAD_COMM, VGA(i) * [qg(i) + pg(i)]} + sum{i,TRAD_COMM, VPA(i) * [qp(i) + pp(i)]} + GROSSINV * [qcgds + pcgds] ;

EQUATION GDP_p# This equation computes GDP price index (HS38)#GDP * pgdp = sum{i,TRAD_COMM, VGA(i) * pg(i)} + sum{i,TRAD_COMM, VPA(i) * pp(i)} + GROSSINV * pcgds ;

EQUATION GDP_q# This equation computes GDP quantity index (HS39) #qgdp = vgdp - pgdp ;

!< A-1. Computation of Equivalent Variation --------------------------

A-1-0. Shared variables A-1-1. Private consumption shadow demand system A-1-2. Regional household shadow demand system A-1-3. Equivalent variation

This appendix calculates equivalent variation "EV" by determining the income "yev" that would be required to achieve the current actual utility level "u" in a shadow demand system in which prices are fixed.

Section A-1-1 calculates the utility elasticity of private consumption expenditure, "ueprivev", within a shadow demand system for private consumption, for use in section A-1-2. A-1-2 calculates private consumption expenditure "ypev" for use in A-1-1, and regional income "yev" for use in A-1-3, within a shadow demand system for the regional household. A-1-3 calculates "EV".>!

!< A-1-0. Shared variables .......................>!

Variable ueprivev #elasticity of cost wrt utility from private consn, for EV calc.#;Variable yev #regional household income for EV calc.#;Variable ypev #regional private consumption expenditure for EV calc.#;

!< A-1-1. Private consumption shadow demand system ...............................................

Page 18: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

>!

Variable (all,i,TRAD_COMM) qpev(i) #private hhld demand for commodity i for EV calc.#;

Coefficient (all,i,TRAD_COMM) VPAEV(i) #private hhld expend. on i in r valued at agent's prices, for EV calc.#;Formula (initial) (all,i,TRAD_COMM) VPAEV(i) = VPA(i);Update (all,i,TRAD_COMM) VPAEV(i) = qpev(i);

Coefficient VPAREGEV #private consumption expenditure for EV calc.#;Formula VPAREGEV = sum{i,TRAD_COMM, VPAEV(i)};

Coefficient (all,i,TRAD_COMM) CONSHREV(i) #share of private hhld consn devoted to good i in r, for EV calc.#;Formula (all,i,TRAD_COMM) CONSHREV(i) = VPAEV(i)/VPAREGEV ;!< VPAREGEV should agree with PRIVEXPEV. >!Coefficient (all,i,TRAD_COMM) EYEV(i) #expend. elast. of private hhld demand for i in r, for EV calc.#;Formula (all,i,TRAD_COMM) EYEV(i) = [1.0/[sum{n, TRAD_COMM, CONSHREV(n)*INCPAR(n)}]] * [INCPAR(i)*[1.0 - ALPHA(i)] + sum{n, TRAD_COMM, CONSHREV(n)*INCPAR(n)*ALPHA(n)}] + ALPHA(i) - sum{n, TRAD_COMM, CONSHREV(n) * ALPHA(n)} ;

Equation PRIVDMNDSEV #private hhld demands for composite commodities, for EV calc.# (all,i,TRAD_COMM) qpev(i) - pop = EYEV(i)*[ypev - pop ];

Coefficient UELASPRIVEV #elast. of cost wrt utility from private consn, for EV calc.#;Formula UELASPRIVEV = sum{i,TRAD_COMM, CONSHREV(i)*INCPAR(i)};

Coefficient (all,i,TRAD_COMM) XWCONSHREV(i) #expansion-parameter-weighted consumption share, for EV calc.#;Formula (all,i,TRAD_COMM) XWCONSHREV(i) = CONSHREV(i)*INCPAR(i)/UELASPRIVEV ;

Equation UTILELASPRIVEV #elasticity of cost wrt utility from private consn, for EV calc.# ueprivev = sum{i,TRAD_COMM, XWCONSHREV(i)*[qpev(i) - ypev ]};

!<

A-1-2. Regional household shadow demand system ..............................................

Page 19: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

>!

Coefficient PRIVEXPEV #private consumption expenditure for EV calc.#;Formula (initial) PRIVEXPEV = PRIVEXP ;Update PRIVEXPEV = ypev ;!< PRIVEXPEV should agree with VPAREGEV. >!

Coefficient INCOMEEV #regional income, for EV calc.#;Formula (initial) INCOMEEV = INCOME ;Update INCOMEEV = yev ;

Coefficient XSHRPRIVEV #private expenditure share in regional income, for EV calc.#;Formula XSHRPRIVEV = PRIVEXPEV /INCOMEEV ;

Equation PCONSEXPEV #private consumption expenditure, for EV calc.# ypev - yev = -[1.0 - XSHRPRIVEV ]*ueprivev + dppriv - dpav ;

Variable uelasev #elasticity of cost of utility wrt utility, for EV calc.#;Equation UTILITELASTICEV #elasticity of cost of utility wrt utility, for EV calc.# uelasev = XSHRPRIVEV *ueprivev - dpav ;

Coefficient UTILELASEV #elasticity of cost of utility wrt utility, for EV calc.#;Formula (initial) UTILELASEV = UTILELAS ;Update UTILELASEV = uelasev ;

Equation INCOME_EQUIV #equivalent income# yev - pop = UTILELASEV *u ;

!< A-1-3. Equivalent variation ...........................>!

Equation EVREG #regional EV (HT 67)# EV = [INCOMEEV /100.0]*yev ;

! -------------------------------------------------------------------------- !! A-2: Welfare Decomposition !! -------------------------------------------------------------------------- !! WEL_1REG.TAB is supplemental code for GTAPONE.TAB. It provides a !! decomposition of the equivalent variation measure of welfare change for !! the single region model. !

Page 20: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

! !! Written by Karen M. Huff and modified by Thomas Hertel to incorporate !! code from Robert McDougall's technical paper on a new final demand !! system for GTAP. !! -------------------------------------------------------------------------- !

Coefficient EVSCALFACT #equivalent variation scaling factor#;Formula EVSCALFACT = [UTILELASEV/UTILELAS]*[INCOMEEV/INCOME];

COEFFICIENT (all,i,NSAV_COMM) PTAX(i)# Output tax on good i # ;

FORMULA (all,i,NSAV_COMM) PTAX(i) = VOM(i) - VOA(i) ;

COEFFICIENT (all,i,ENDW_COMM)(all,j,PROD_COMM) ETAX(i,j)# Tax on use of endowment good i in industry j # ;

FORMULA (all,i,ENDW_COMM)(all,j,PROD_COMM) ETAX(i,j) = VFA(i,j) - VFM(i,j) ;

COEFFICIENT (all,i,TRAD_COMM)(all,j,PROD_COMM) DFTAX(i,j)# Tax on use of domestic int. good i in industry j # ;

FORMULA (all,i,TRAD_COMM)(all,j,PROD_COMM) DFTAX(i,j) = VFA(i,j) - VFM(i,j) ;

COEFFICIENT (all,i,TRAD_COMM) DPTAX(i)# Tax on private consumption of domestic good i # ;

FORMULA (all,i,TRAD_COMM) DPTAX(i) = VPA(i) - VPM(i) ;

COEFFICIENT (all,i,TRAD_COMM) DGTAX(i)# Tax on government consumption of domestic good i # ;

FORMULA (all,i,TRAD_COMM) DGTAX(i) = VGA(i) - VGM(i) ;

VARIABLE (LINEAR,CHANGE) EV_ALT# expression for regional EV computed in alternative way # ;

EQUATION EV_DECOMPOSITION EV_ALT = {.01 * EVSCALFACT} * { sum(i,ENDW_COMM, VOA(i) * [qo(i)-pop]) - VDEP * [kb-pop] + sum(i,NSAV_COMM, PTAX(i) * [qo(i)-pop]) + sum(i,ENDW_COMM, sum(j,PROD_COMM, ETAX(i,j) * [qfe(i,j)-pop])) + sum(j,PROD_COMM, sum(i,TRAD_COMM, DFTAX(i,j) *[qf(i,j)-pop])) + sum(i,TRAD_COMM, DPTAX(i) * [qp(i)-pop]) + sum(i,TRAD_COMM, DGTAX(i) * [qg(i)-pop]) + sum(i,TRAD_COMM, VOA(i) * ao(i)) + sum(i,ENDW_COMM,sum(j,PROD_COMM,VFA(i,j) * [afe(i,j) + ava(j)])) + sum(j,PROD_COMM,sum(i,TRAD_COMM, VFA(i,j) * af(i,j))) } + .01*INCOMEEV*pop ;

VARIABLE (LINEAR,CHANGE) CNTqo # Contribution to EV of changes in output of all NSAV_COMM # ;

Page 21: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

EQUATION CONT_EV_qo CNTqo = sum(i,NSAV_COMM, PTAX(i) * [.01*EVSCALFACT] * [qo(i)-pop] ) ;

VARIABLE (LINEAR,CHANGE) (all,i,NSAV_COMM) CNTqoi(i) # Contribution to EV of changes in output of NSAV_COMM i # ;

EQUATION CONT_EV_qoi (all,i,NSAV_COMM) CNTqoi(i) = PTAX(i) * [.01*EVSCALFACT] * [qo(i)-pop] ;

VARIABLE (LINEAR,CHANGE) CNTqfe # Contrib. to EV of changes in use of all ENDW_COMM in all IND # ;

EQUATION CONT_EV_qfe CNTqfe = sum(i,ENDW_COMM, sum(j,PROD_COMM, ETAX(i,j) * [.01*EVSCALFACT] * [qfe(i,j)-pop] )) ;

VARIABLE (LINEAR,CHANGE) (all,i,ENDW_COMM) CNTqfei(i) # Contrib. to EV of changes in use of ENDW_COMM i in all IND # ;

EQUATION CONT_EV_qfei (all,i,ENDW_COMM) CNTqfei(i) = sum(j,PROD_COMM, ETAX(i,j) * [.01*EVSCALFACT] * [qfe(i,j)-pop]);

VARIABLE (LINEAR,CHANGE) (all,j,PROD_COMM) CNTqfej(j) # Contrib. to EV of changes in use of all ENDW_COMM in IND j # ;

EQUATION CONT_EV_qfej (all,j,PROD_COMM) CNTqfej(j) = sum(i,ENDW_COMM, ETAX(i,j) * [.01*EVSCALFACT] * [qfe(i,j)-pop]);

VARIABLE (LINEAR,CHANGE) (all,i,ENDW_COMM)(all,j,PROD_COMM) CNTqfeij(i,j) # Contribution to EV of changes in use of ENDW_COMM i in IND j # ;

EQUATION CONT_EV_qfeij (all,i,ENDW_COMM)(all,j,PROD_COMM) CNTqfeij(i,j) = ETAX(i,j) * [.01*EVSCALFACT] * [qfe(i,j)-pop] ;

VARIABLE (LINEAR,CHANGE) CNTqf # contrib. to EV of changes in use of domestic int. in all IND # ;

EQUATION CONT_EV_qf CNTqf = sum(j,PROD_COMM, sum(i,TRAD_COMM, DFTAX(i,j) * [.01*EVSCALFACT] * [qf(i,j)-pop])) ;

VARIABLE (LINEAR,CHANGE) (all,i,TRAD_COMM) CNTqfi(i) # Contrib. to EV of changes in use of dom. int. i in all IND # ;

EQUATION CONT_EV_qfi (all,i,TRAD_COMM) CNTqfi(i) = sum(j,PROD_COMM, DFTAX(i,j) * [.01*EVSCALFACT] * [qf(i,j)-pop]);

VARIABLE (LINEAR,CHANGE) (all,j,PROD_COMM) CNTqfj(j) # Contrib. to EV of changes in use of domestic int. in IND j # ;

EQUATION CONT_EV_qfj (all,j,PROD_COMM) CNTqfj(j) = sum(i,TRAD_COMM, DFTAX(i,j) * [.01*EVSCALFACT] * [qf(i,j)-pop]);

VARIABLE (LINEAR,CHANGE) (all,i,TRAD_COMM)(all,j,PROD_COMM) CNTqfij(i,j) # Contrib. to EV of changes in use of domestic int. i in IND j # ;

EQUATION CONT_EV_qfij (all,i,TRAD_COMM)(all,j,PROD_COMM) CNTqfij(i,j) = DFTAX(i,j) * [.01*EVSCALFACT] * [qf(i,j)-pop] ;

VARIABLE (LINEAR,CHANGE) CNTqp # Contrib. to EV of changes in consumption of domestic goods # ;

EQUATION CONT_EV_qp

Page 22: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

CNTqp = sum(i,TRAD_COMM, DPTAX(i) * [.01*EVSCALFACT] * [qp(i)-pop] ) ;

VARIABLE (LINEAR,CHANGE) (all,i,TRAD_COMM) CNTqpi(i) # Contrib. to EV of changes in consumption of domestic good i # ;

EQUATION CONT_EV_qpi (all,i,TRAD_COMM) CNTqpi(i) = DPTAX(i) * [.01*EVSCALFACT] * [qp(i)-pop] ;

VARIABLE (LINEAR,CHANGE) CNTqg # Contrib. to EV of changes in gov't consumption of domestics # ;

EQUATION CONT_EV_qg CNTqg = sum(i,TRAD_COMM, DGTAX(i) * [.01*EVSCALFACT] * [qg(i)-pop] ) ;

VARIABLE (LINEAR,CHANGE) (all,i,TRAD_COMM) CNTqgi(i) # Contrib. to EV of changes in gov't consumption of domestic i # ;

EQUATION CONT_EV_qgi (all,i,TRAD_COMM) CNTqgi(i) = DGTAX(i) * [.01*EVSCALFACT] * [qg(i)-pop] ;

VARIABLE (LINEAR,CHANGE) CNTpop # Contribution to EV of changes in population # ;

EQUATION CONT_EV_pop CNTpop = [.01*INCOMEEV] * pop ;

VARIABLE (LINEAR,CHANGE) CNTalleff # Total contribution to EV of allocative effects # ;EQUATION CONT_EV_alleff CNTalleff = [.01*EVSCALFACT] * [ sum(i,NSAV_COMM, PTAX(i) * [qo(i)-pop]) + sum(i,ENDW_COMM, sum(j,PROD_COMM, ETAX(i,j) * [qfe(i,j)-pop])) + sum(j,PROD_COMM, sum(i,TRAD_COMM, DFTAX(i,j) * [qf(i,j)-pop])) + sum(i,TRAD_COMM, DPTAX(i) * [qp(i)-pop]) + sum(i,TRAD_COMM, DGTAX(i) * [qg(i)-pop])] ;

VARIABLE (LINEAR,CHANGE) (all,i,ENDW_COMM) CNTalleffei(i) # Total contribution to EV of allocative effects by endowment # ;EQUATION CONT_EV_alleffei (all,i,ENDW_COMM) CNTalleffei(i) = [.01*EVSCALFACT] * [ PTAX(i) * qo(i) + sum(j,PROD_COMM, ETAX(i,j) * [qfe(i,j)-pop])] ;

VARIABLE (LINEAR,CHANGE)(all,i,TRAD_COMM) CNTalleffti(i) # Total contribution to EV of allocative effects by tradeable commodity # ;EQUATION CONT_EV_alleffti (all,i,TRAD_COMM) CNTalleffti(i) = [.01*EVSCALFACT] * [ PTAX(i) * qo(i) + sum(j,PROD_COMM, DFTAX(i,j) * [qf(i,j)-pop]) + DPTAX(i) * [qp(i)-pop] + DGTAX(i) * [qg(i)-pop]] ;

VARIABLE (LINEAR,CHANGE) CNTendwch # Contribution to regional EV of changes in all ENDW_COMM # ;

EQUATION CONT_EV_endwch CNTendwch = [.01*EVSCALFACT] * [ sum(i,ENDW_COMM, VOA(i) * [qo(i)-pop]) - VDEP * [kb-pop]];

VARIABLE (LINEAR,CHANGE) (all,i,ENDW_COMM) CNTendwchi(i) # Contribution to regional EV of changes in ENDW_COMM i # ;

EQUATION CONT_EV_endwchi (all,i,ENDW_COMM)

Page 23: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

CNTendwchi(i) = [.01*EVSCALFACT] * {VOA(i) * [qo(i)-pop] - VDEP * [kb-pop]} ;

VARIABLE (LINEAR,CHANGE) CNTtechch # Contribution to regional EV of all technical change # ;

EQUATION CONT_EV_techch CNTtechch = [.01*EVSCALFACT] * [ sum(i,TRAD_COMM, VOA(i) * ao(i)) + sum(i,ENDW_COMM,sum(j,PROD_COMM,VFA(i,j) * [afe(i,j) + ava(j)])) + sum(j,PROD_COMM,sum(i,TRAD_COMM,VFA(i,j)*af(i,j))) ] ;

VARIABLE (LINEAR,CHANGE) CNTtechch_ao # Contribution to regional EV of output augmenting technical change # ;

EQUATION CONT_EV_techch_ao CNTtechch_ao = [.01*EVSCALFACT] * [sum(i,PROD_COMM, VOA(i) * ao(i))] ;

VARIABLE (LINEAR,CHANGE) (all,i,PROD_COMM) CNTtechch_aoi(i) # Cont. to regional EV of output augmenting tech change in TRAD_COMM i # ;

EQUATION CONT_EV_techch_aoi (all,i,PROD_COMM) CNTtechch_aoi(i) = [.01*EVSCALFACT] * VOA(i) * ao(i) ;

VARIABLE (LINEAR,CHANGE) CNTtechch_afe # Contribution to regional EV of primary factor augmenting tech change # ;

EQUATION CONT_EV_techch_afe CNTtechch_afe = [.01*EVSCALFACT] * [sum(i,ENDW_COMM,sum(j,PROD_COMM,VFA(i,j)*afe(i,j)))] ;

VARIABLE (LINEAR,CHANGE) (all,i,ENDW_COMM) CNTtechch_afei(i) # Cont. to regional EV of primary factor i augmenting tech change # ;

EQUATION CONT_EV_techch_afei (all,i,ENDW_COMM) CNTtechch_afei(i) = [.01*EVSCALFACT] * [sum(j,PROD_COMM,VFA(i,j)*afe(i,j))] ;

VARIABLE (LINEAR,CHANGE) (all,j,PROD_COMM) CNTtechch_afej(j) # Cont. to EV of primary factor augmenting tech change in sector j # ;

EQUATION CONT_EV_techch_afej (all,j,PROD_COMM) CNTtechch_afej(j) = [.01*EVSCALFACT] * [sum(i,ENDW_COMM,VFA(i,j)*afe(i,j))] ;

VARIABLE (LINEAR,CHANGE) (all,i,ENDW_COMM)(all,j,PROD_COMM) CNTtechch_afeij(i,j) # Cont. to EV of primary factor i augmenting tech change in sector j # ;

EQUATION CONT_EV_techch_afeij (all,i,ENDW_COMM)(all,j,PROD_COMM) CNTtechch_afeij(i,j) = [.01*EVSCALFACT] * VFA(i,j) * afe(i,j) ;

VARIABLE (LINEAR,CHANGE) CNTtechch_ava # Contribution to regional EV of value added augmenting tech change # ;

EQUATION CONT_EV_techch_ava CNTtechch_ava = [.01*EVSCALFACT] * [ sum(i,ENDW_COMM,sum(j,PROD_COMM,VFA(i,j) * ava(j) )) ] ;

VARIABLE (LINEAR,CHANGE) (all,i,ENDW_COMM) CNTtechch_avai(i) # Cont. to EV of value added augmenting tech change for ENDW_COMM i # ;

EQUATION CONT_EV_techch_avai (all,i,ENDW_COMM) CNTtechch_avai(i) = [.01*EVSCALFACT] * [ sum(j,PROD_COMM,VFA(i,j) * ava(j) ) ] ;

Page 24: ! GTAPONE.TAB FILE...maximum frosize rea4 headerd elements m file GTAPSETS "H5"; SET ENDW_COMM # endowment commodities # maximu mreasize elements3 d fro file GTAPSETS header "H6";

VARIABLE (LINEAR,CHANGE) (all,j,PROD_COMM) CNTtechch_avaj(j) # Cont. to EV of value added augmenting tech change in sector j # ;

EQUATION CONT_EV_techch_avaj (all,j,PROD_COMM) CNTtechch_avaj(j) = [.01*EVSCALFACT] * [ sum(i,ENDW_COMM,VFA(i,j) * ava(j) ) ] ;

VARIABLE (LINEAR,CHANGE) (all,i,ENDW_COMM)(all,j,PROD_COMM) CNTtechch_avaij(i,j) # Cont. to EV of VA augmenting tech change for ENDW_COMM i in sector j # ;

EQUATION CONT_EV_techch_avaij (all,i,ENDW_COMM)(all,j,PROD_COMM) CNTtechch_avaij(i,j) = [.01*EVSCALFACT] * VFA(i,j) * ava(j) ;

VARIABLE (LINEAR,CHANGE) CNTtechch_af # Cont. to EV of composite int. input augmenting tech change # ;

EQUATION CONT_EV_techch_af CNTtechch_af = [.01*EVSCALFACT] * [ sum(j,PROD_COMM,sum(i,TRAD_COMM,VFA(i,j)*af(i,j))) ] ;

VARIABLE (LINEAR,CHANGE) (all,j,PROD_COMM) CNTtechch_afj(j) # Cont. to EV of comp. int. input augmenting tech change in sector j # ;

EQUATION CONT_EV_techch_afj (all,j,PROD_COMM) CNTtechch_afj(j) = [.01*EVSCALFACT] * [ sum(i,TRAD_COMM,VFA(i,j)*af(i,j)) ] ;

VARIABLE (LINEAR,CHANGE) (all,i,TRAD_COMM) CNTtechch_afi(i) # Cont. to EV of composite int. i input augmenting tech change # ;

EQUATION CONT_EV_techch_afi (all,i,TRAD_COMM) CNTtechch_afi(i) = [.01*EVSCALFACT] * [ sum(j,PROD_COMM,VFA(i,j)*af(i,j)) ] ;

VARIABLE (LINEAR,CHANGE) (all,i,TRAD_COMM)(all,j,PROD_COMM) CNTtechch_afij(i,j) # Cont. to EV of composite int. i input augmenting tech change in sector j #;

EQUATION CONT_EV_techch_afij (all,i,TRAD_COMM)(all,j,PROD_COMM) CNTtechch_afij(i,j) = [.01*EVSCALFACT] * VFA(i,j) * af(i,j) ;

VARIABLE (LINEAR,CHANGE) CNTkb # Cont. to EV of changes to depreciation # ;EQUATION CONT_EV_kb CNTkb = - [.01*EVSCALFACT] * VDEP * [kb-pop] ;

!-------------------------------------------------------------------------!! END OF GTAPONE.TAB !!-------------------------------------------------------------------------!