An important feature of GTAPinGAMS package is that datasets may be freely aggregated into fewer regions, fewer sectors and even fewer primary factors. This feature permits a modeller to do preliminary model development using a small dataset to ensure rapid response and a short debug cycle. After having implemented a small model, it is then a simple matter to expand the number of sectors and/or regions in order to obtain a more precise empirical estimate.
All GTAP datasets are defined in terms of three primary sets: i, the set of sectors and produced commodities, r the set of countries and regions, and f the set of primary factors. Table 1 presents the identifiers for the 45 GTAP 4 sectors in their most disaggregate form. These are more-or-less identical to the GEMPACK model apart from the replacement of for in the original dataset by frs in this one. ("for" became a reserved keyword beginning with GAMS release 2.25.) These sectors may be aggregated freely to produce more compact datasets with one restriction: sector cgd must appear as a distinct sector in any aggregation.
SET i Sectors / PDR Paddy rice, B_T Beverages and tobacco, WHT Wheat, TEX Textiles, GRO Grains (except rice-wheat), WAP Wearing apparel, V_F Vegetable fruit nuts, LEA Leather goods, OSD Oil seeds, LUM Lumber and wood, C_B Sugar cane and beet, PPP Pulp and paper, PFB Plant-based fibers, P_C Petroleum and coal products, OCR Crops n.e.c., CRP Chemicals rubber and plastics, CTL Bovine cattle, NMM Non-metallic mineral products, OAP Animal products n.e.c., I_S Primary ferrous metals, RMK Raw milk, NFM Non-ferrous metals, WOL Wool, FMP Fabricated metal products, FRS Forestry, MVH Motor vehicles, FSH Fishing, OTN Other transport equipment, COL Coal, ELE Electronic equipment, OIL Oil, OME Machinery and equipment, GAS Natural Gas, OMF Other manufacturing products, OMN Other Minerals, ELY Electricity, CMT Bovine cattle meat products, GDT Gas manuf. and distribution, OMT Meat products n.e.c., WTR Water, VOL Vegetable oils, CNS Construction, MIL Dairy products, T_T Trade and transport, PCR Processed rice, OSP Other services (private), SGR Sugar, OSG Other services (public), OFD Other food products, DWE Dwellings, CGD Savings good/;
Table 2 presents regional identifiers in the full dataset many of which correspond to standard UN three-character country codes14. Table 3 presents the three-character identifiers used for primary factors. Note that these differ from the primary factor names employed in the GEMPACK model.
SET r Regions / AUS Australia, ARG Argentina, NZL New Zealand, BRA Brazil, JPN Japan, CHL Chile, KOR Republic of Korea, URY Uruguay, IDN Indonesia, RSM Rest of South America, MYS Malaysia, GBR United Kingdom, PHL Philippines, DEU Germany, SGP Singapore, DNK Denmark, THA Thailand, SWE Sweden, VNM Vietnam, FIN Finland, CHN China, REU Rest of EU, HKG Hong Kong, EFT European Free Trade Area, TWN Taiwan, CEA Central European Associates, IND India, FSU Former Soviet Union, LKA Sri Lanka, TUR Turkey, RAS Rest of South Asia, RME Rest of Middle East, CAN Canada, MAR Morocco, USA United States of America, RNF Rest of North Africa, MEX Mexico, SAF South Africa, CAM Central America and Caribbean, RSA Rest of South Africa, VEN Venezuela, RSS Rest of Sub-Saharan Africa, COL Columbia, ROW Rest of World /; RAP Rest of Andean Pact,
SET f Primary factors / LND Land, SKL Skilled labor, LAB Unskilled labor, CAP Capital, RES Natural resources /
GAMS code which declares all parameters in a GTAP dataset is shown in Table 4. The parameters beginning with v are base year (1995) value data, most of which are from the original GEMPACK implementation of GTAP. Not all value data from the original dataset are included here. The principal difference is that this dataset stores tax rates rather than gross and net of tax transaction values. The tax parameters, beginning with t are not in the original GEMPACK dataset.
alias (i,j), (r,s); PARAMETER ty(i,r) Output tax ti(j,i,r) Intermediate input tax tf(f,i,r) Factor tax tx(i,s,r) Export tax rate (defined on a net basis) tm(i,s,r) Import tariff rate tg(i,r) Tax rates on government demand tp(i,r) Tax rate on private demand vafm(j,i,r) Aggregate intermediate inputs vfm(f,i,r) Value of factor inputs (net of tax) vxmd(i,r,s) Value of commodity trade (fob - net export tax) vtwr(i,r,s) Transport services vst(i,r) Value of international transport sales vdgm(i,r) Government demand (domestic) vigm(i,r) Government demand (imported) vdpm(i,r) Aggregate private demands (domestic) vipm(i,r) Aggregate private demands (domestic);
parameter vim(i,r) Total value of imports (gross tariff) vxm(i,r) Value of export (gross excise tax) vdm(i,r) Value of domestic output (net excise tax) vdfm(i,r) Aggregate intermediate demand (domestic) vifm(i,r) Aggregate intermediate demand (imported) vom(i,r) Aggregate output value (gross of tax) vgm(i,r) Public expenditures vpm(i,r) Private expenditures vg(r) Total value of public expenditure vp(r) Total value of private expenditure vi(r) Total value of investment vt Value of international trade margins vb(*) Net capital inflows market(*,*) Consistency check for calibrated benchmark evoa(f,r) Value of factor income va(d,i,r) Armington supply vd(d,i,r) Domestic supply vm(d,i,r) Imported supply;
vxm(i,r) = sum(s, vxmd(i,r,s)) + vst(i,r); vim(i,r) = sum(s,(vxmd(i,s,r)*(1+tx(i,s,r))+vtwr(i,s,r))*(1+tm(i,s,r))); vdm(i,r) = ( sum(j, vafm(j,i,r)*(1+ti(j,i,r))) + sum(f, vfm(f,i,r)*(1+tf(f,i,r)))) / (1-ty(i,r)) - vxm(i,r); vdfm(i,r) = vdm(i,r) - vdgm(i,r) - vdpm(i,r) - vdm(i,r)$cgd(i); vi(r) = sum(cgd, vdm(cgd,r)); vifm(i,r) = vim(i,r) - vipm(i,r) - vigm(i,r); vom(i,r) = vdm(i,r) + vxm(i,r); vgm(i,r) = vigm(i,r)+vdgm(i,r); vpm(i,r) = vipm(i,r)+vdpm(i,r); vg(r) = sum(i, vgm(i,r) * (1 + tg(i,r))); vp(r) = sum(i, vpm(i,r) * (1 + tp(i,r))); vt = sum((i,r), vst(i,r)); evoa(f,r) = sum(i, vfm(f,i,r)); vb(r) = vp(r) + vg(r) + vdm("cgd",r) - sum(f, evoa(f,r)) - sum(i, ty(i,r) * vom(i,r)) - sum((i,j), ti(j,i,r) * vafm(j,i,r)) - sum((i,f), tf(f,i,r) * vfm(f,i,r)) - sum((i,s), tx(i,r,s) * vxmd(i,r,s)) - sum((i,s), tm(i,s,r) * (vxmd(i,s,r)*(1+tx(i,s,r)) + vtwr(i,s,r)) ) - sum(i, tg(i,r)*vgm(i,r)) - sum(i, tp(i,r)*vpm(i,r)); vm("c",i,r) = vipm(i,r); vd("c",i,r) = vdpm(i,r); vm("g",i,r) = vigm(i,r); vd("g",i,r) = vdgm(i,r); vm("i",i,r) = vifm(i,r); vd("i",i,r) = vdfm(i,r); va(d,i,r) = vm(d,i,r) + vd(d,i,r); market(r,i) = vdfm(i,r) + vifm(i,r) - sum(j, vafm(i,j,r)); market("world","t") = vt - sum((i,r,s), vtwr(i,r,s));
Whenever a GTAP dataset is read additional intermediate parameter values are assigned. Declarations for the computed parameters are presented in Table 5. Table 6 lists the GAMS parameter assignment statements for the computed items. Briefly, this is done as follows: (i) aggregate exports at market prices (vxm) are defined from the matrix of bilateral trade flows; (ii) aggregate imports at market prices (vim) are defined by bilateral exports, export taxes, transportation margins and tariff rates; (iii) domestic output (vdm) is determined as a residual through the zero profit condition; (vi) domestic supply to the intermediate demand (vdfm) is defined as a residual given domestic production and other demands for domestic output; (vii) import supply to intermediate demand (vifm) is also defined as a residual given aggregate imports, private and public import demand. This sequence of assignments implies that any imbalance in the dataset shows up as either a discrepancy in the demand and supply for intermediate inputs or as an imbalance between demand and supply of transportation services. The parameter market is created to generate a report of consistency of the benchmark data. (Primary factor markets always balance because endowments are computed residually given benchmark factor demands across sectors. Likewise, regional current account balances are computed from the income-expenditure identity.)
Table 7 lists declarations and assignments of reference prices for each of the benchmark transactions which are subject to tax. These parameters are used in the MPSGE and MCP models as part of the calibration of demand functions. Share parameters used solely in the MCP model are not included here.
parameter pc0(i,r) Reference price index for private consumption pf0(f,i,r) Reference price index for factor inputs pg0(i,r) Reference price index for public pi0(j,i,r) Reference price index for intermediate inputs pt0(i,s,r) Reference price index for transport px0(i,s,r) Reference price index for imports; px0(i,s,r) = (1+tx(i,s,r))*(1+tm(i,s,r)); pt0(i,s,r) = 1+tm(i,s,r); pc0(i,r) = 1+tp(i,r); pg0(i,r) = 1+tg(i,r); pi0(j,i,r) = 1+ti(j,i,r); pf0(f,i,r) = 1+tf(f,i,r);
It is a matter of personal taste in mathematics and computing, but I generally use one or two character identifiers in an algebraic exposition while employing GAMS parameters with as many as 10 characters. In order to avoid potential confusion due to differences in notation, Table 8 gives a cross-reference of symbols used in the algebraic formulation in this paper to the GAMS parameters which define the benchmark value of these variables in the GTAPinGAMS dataset.