** Dynamic Model of Nepal developed with help of Professor Thomas F. Rutherford of the University of Colorado, Boulder, USA, in 1994 for PhD Dissertation. * File 1 Runone.bat : Run the model for a single case: : Argument 1: Model name : Argument 2: Horizon : Argument 3: Scenario : Argument 4: Save file identifier ECHO set struct(mdl) / %1 /; >scenario.gms ECHO set target(tp) / %2 /; >>scenario.gms ECHO set scenario(*) / %3 /; >>scenario.gms if not exist %1\nul mkdir %1 call gams nepal s=%1\%4 o=%1\%4.lst * File 2 Scenario.gms set struct(mdl) / blkhole /; set target(tp) / 2025 /; set scenario(*) / complete /; * File 3 Runall.bat call runone capflow 2020 partial case1 call runone capflow 2020 complete case2 call runone capflow 2020 food-crop case3 call runone capflow 2020 cash-crop case4 call runone capflow 2020 food-proc case5 call runone capflow 2020 textiles case6 call runone capflow 2020 chemical case7 call runone capflow 2020 capital case8 call runone capflow 2020 construct case9 call runone capflow 2020 tourism case10 call runone capflow 2020 public case11 call runone capflow 2025 partial case12 call runone capflow 2025 complete case13 call runone bopcon 2020 partial case1 call runone bopcon 2020 complete case2 call runone bopcon 2020 public case11 call runone bopcon 2025 partial case12 call runone bopcon 2025 complete case13 call runone nonss 2020 baseline case0 call runone nonss 2020 partial case1 call runone nonss 2020 complete case2 call runone nonss 2020 public case11 call runone nonss 2025 complete case13 call runone blkhole 2020 partial case1 call runone blkhole 2020 complete case2 call runone blkhole 2020 public case11 call runone blkhole 2025 complete case13 :end * File 4 Nepaldat.gms $STITLE 1990/91 Base Year Data for Nepal (nepaldat.gms) SET F Primary factors /L, K/, I Sectors / FOOD-CROP Agricultural food crops CASH-CROP Agricultural cash crops FOOD-PROC Food processing TEXTILES Textile goods CHEMICAL Chemical and minerals CAPITAL Metal products TRANSPORT Transport ELECTRIC Electricity CONSTRUCT Construction TOURISM Tourism and distribution SERVICES Private services PUBLIC Public services / HH Households and labor categories /RURAL, URBAN /, R Trading partners /INDIA, ROW/; ALIAS (I,J), (LC,HH), (H,HH); PARAMETER ER(R) Base year exchange rates / INDIA 1.68 ROW 49.78 / INCTAX(HH) Income tax payments ('91 million Nepal Rs) / URBAN 855.1 / TAXREV(*) Tax revenue ('91 million Nepal Rs) / URBAN 312.7 RURAL 1664.9 CORP 663.2 TOURIST 289.1 / TY0(R) Gross tourist income ('91 million Nepal rs) / INDIA 1593.8 ROW 1993.8 / LOANS Financial flows associated with various loans / * Foreign aid income and loans M. US$ AID 295.5 * Govt payments on foreign loans M.US$ GOVT 31.5 * Private payments on foreign loans M.US$ URBAN 44.6 * Indian exise tax refund (million Indian Rs) REFUND 447.7 * Loans to government from private sector M.RP LOAN 154.3 / FTRN(HH,R) Payments by households to foreigners M.US$ / URBAN.ROW 69.0 /; TABLE REMIT(R,HH) Ghorka remitances in foreign currency - M. US$ & India Rp RURAL URBAN ROW 19.3 28.1 INDIA 939.7 33.8; TABLE ENDOW(F,HH) Factor income M. N Rp RURAL URBAN L 29498.7 6337.3 K 48485.4 7952.4; TABLE IOF(I,J) Input-output flows ('91 million Nepal Rs) FOOD-CROP CASH-CROP FOOD-PROC TEXTILES CHEMICAL CAPITAL FOOD-CROP 5319.847 1011.540 3762.978 CASH-CROP 5648.229 314.546 347.228 4013.569 2691.578 1738.541 FOOD-PROC 4.879 2.833 1.986 60.261 6.696 TEXTILES 2.195 0.683 107.094 11.928 6.708 CHEMICAL 24.254 12.992 6.127 29.677 172.329 45.050 CAPITAL 21.930 3.406 1.341 8.933 10.325 343.970 TRANSPORT 550.367 143.483 26.304 133.132 100.105 85.416 ELECTRIC 0.360 3.103 4.972 50.936 68.010 25.623 TOURISM 0.425 0.156 0.562 1.419 1.440 SERVICES 598.829 99.996 6.934 98.362 98.081 50.306 PUBLIC 3.135 143.826 54.927 454.141 + TRANSPORT ELECTRIC CONSTRUCT TOURISM SERVICES PUBLIC FOOD-CROP 1170.105 6.384 CASH-CROP 1.194 264.234 294.285 FOOD-PROC 35.898 0.263 48.868 27.940 783.223 TEXTILES 51.078 0.390 0.057 112.593 130.203 CHEMICAL 159.896 9.603 2380.971 56.580 652.633 297.229 CAPITAL 158.506 11.684 2352.431 3056.319 515.039 TRANSPORT 2505.014 9.550 236.548 267.801 4617.214 2044.980 ELECTRIC 156.672 8.919 0.572 103.705 171.044 26.561 TOURISM 241.359 0.254 0.523 30.976 115.438 83.410 SERVICES 4224.293 175.279 740.709 160.301 6711.432 925.660 PUBLIC 230.276 *SOURCE: THESE TABLES ARE FROM NEPAL91.GMS FROM TIMOTHY BUEHRER, HARVARD UNIVERSITY AND *FILIPPO DI MAURO OF ADB, MANILA. TABLE IMA(I,J) Capital formation matrix ('91 million Nepal Rs) FOOD-CROP CASH-CROP FOOD-PROC TEXTILES CHEMICAL CAPITAL FOOD-CROP 364.405 208.046 CASH-CROP 310.472 85.370 0.308 1.810 4.136 CAPITAL 413.962 76.175 182.655 258.304 219.796 121.884 CONSTRUCT 1549.419 875.346 295.142 376.623 408.506 302.251 + TRANSPORT ELECTRIC CONSTRUCT TOURISM SERVICES PUBLIC CAPITAL 1299.240 346.107 1049.805 158.560 144.980 256.837 CONSTRUCT 304.409 150.197 581.400 357.897 5394.889 2833.010 TABLE WAG(I,LC) Wage bill by sector and labor category ('91 million Nepal Rs) RURAL URBAN FOOD-CROP 10170.876 699.382 CASH-CROP 4400.109 104.336 FOOD-PROC 419.027 153.535 TEXTILES 406.733 683.136 CHEMICAL 639.521 170.218 CAPITAL 94.589 164.555 TRANSPORT 2387.523 270.712 ELECTRIC 0.152 283.535 CONSTRUCT 4815.254 737.678 TOURISM 84.991 347.908 SERVICES 974.731 1794.524 PUBLIC 5105.196 1459.128 * TABLE UPDATED ACCODRIN TO POPULATION CENSUS, 1991. TABLE XLE(I,LC) Employment by sector and labor category (1000 persons) RURAL URBAN FOOD-CROP 5777.945 150.786 CASH-CROP 826.567 11.635 FOOD-PROC 48.149 9.308 TEXTILES 104.324 22.339 CHEMICAL 48.150 12.100 CAPITAL 48.149 9.308 TRANSPORT 256.797 21.408 ELECTRIC .015 18.616 CONSTRUCT 353.097 49.331 TOURISM 24.075 13.031 SERVICES 320.997 94.009 PUBLIC 216.673 53.520 * The table below is somewhat special in that it contains both SAM data * and data related to the parameters of the functions of the model. For * instance the items called sigc and sigcm are parameters for the * Armington functions used to calculate import demand. TABLE ZZ(*,I) MISCELLANEOUS PARAMETERS AND INITIAL DATA FOOD-CROP CASH-CROP FOOD-PROC TEXTILES CHEMICAL CAPITAL M0 112.047 2180.373 1842.668 2069.570 1714.674 8506.668 MI0 906.736 601.761 691.503 804.708 2333.491 2432.801 E0 263.374 242.016 68.038 5246.832 1.029 81.211 IE0 574.869 363.380 246.923 453.168 33.271 26.489 DT0 241.935 234.490 302.076 194.229 1477.884 IDT0 12.305 21.923 26.889 69.318 173.150 QR0 98.784 177.534 80.900 392.782 SALES0 99.291 72.239 66.874 19.104 338.220 SALESI0 16.720 8.415 49.144 33.584 146.408 ETDUTY 2.720 2.500 0.703 54.190 0.011 0.839 EITDUTY 5.937 3.753 2.550 4.680 0.344 0.274 ITN0 0.000 0.0093 0.0619 0.0085 0.050 0.000 XD0 53354.318 16622.235 8905.454 8224.082 6207.245 4368.751 K 80031 32746 14427 11267 10056 7077 DEP 424.000 973.281 163.364 218.539 409.220 119.130 SIGC 0.75 0.75 1.50 1.50 1.50 1.50 SIGCM 1.50 2.50 2.5 2.0 1.50 1.50 SIGT 0.75 0.75 1.50 1.50 1.50 1.50 SIGTE 1.50 2.50 2.5 2.0 1.50 1.50 TAX 196.153 177.020 415.791 495.265 282.318 347.535 EC0 CONSU 2902.316 413.141 1110.546 437.612 662.899 544.646 CONSR 38787.426 3036.366 9081.676 4754.928 5701.839 5652.421 TCONS 232.874 236.502 ID 572.451 402.097 4528.304 DST 10.468 10.468 398.700 231.404 406.521 284.319 + TRANSPORT ELECTRIC CONSTRUCT TOURISM SERVICES PUBLIC M0 895.911 MI0 13.574 1016.896 E0 1162.988 IE0 3.100 600.251 XD0 12337.092 1069.260 13429.089 3113.699 26820.871 11372.305 K 21590 2673 20144 3892 26821 17058 DEP 624.639 100.243 659.357 64.901 789.381 281.617 SIGC 0.75 0.75 0.75 0.75 1.50 0.75 SIGCM 0.75 2.50 0.75 0.75 2.50 0.75 SIGT 0.75 0.75 0.75 0.75 1.50 0.75 SIGTE 0.75 2.50 0.75 0.75 2.50 0.75 TAX 57.181 -14.681 6.825 3.306 657.587 CONSU 268.546 43.064 137.115 4052.828 CONSR 1209.435 416.194 658.410 8078.593 TCONS 139.197 1842.212 847.715 GD0 10486.000 ID 13429.089 DST 101.120 ; * THESE TABLE RELY ON ECONOMCI SURVEY, OF MINISTRY OF FINANCE, AND QUARTERLY BULLETINE OF NRB. PARAMETER M0(I,R) Value of imports by sector and partner M. N.Rp X0(I,R) Value of exports by sector and partner M. N.Rp SUPPLY(I,*) Additional output statistics ELAST(I,*) Elasticities of substitution and transformation MDUTY(I,R) Import duty collections M.N Rp RENT(I,R) Import quota rents M. N Rp MTAX(I,R) Import sales tax EDUTY(I,R) Export duty collections M.N Rp TARIFF(I,R) Tariff rate applied to Nepali exports D0(I,*) Components of final demand; SUPPLY(I,"XD0") = ZZ("XD0",I); SUPPLY(I,"K") = ZZ("K",I); SUPPLY(I,"DEP") = ZZ("DEP",I); SUPPLY(I,"TAX") = ZZ("TAX",I); ELAST(I,"SIGC" ) = ZZ("SIGC",I); ELAST(I,"SIGCM") = ZZ("SIGCM",I); ELAST(I,"SIGT" ) = ZZ("SIGT",I); ELAST(I,"SIGTE") = ZZ("SIGTE",I); M0(I,"INDIA") = ZZ("M0",I); M0(I,"ROW") = ZZ("MI0",I); X0(I,"INDIA") = ZZ("E0",I); X0(I,"ROW") = ZZ("IE0",I); MDUTY(I,"INDIA") = ZZ("DT0",I); MDUTY(I,"ROW") = ZZ("IDT0",I); RENT(I,"ROW") = ZZ("QR0",I); MTAX(I,"ROW") = ZZ("SALES0",I); MTAX(I,"INDIA") = ZZ("SALESI0",I); EDUTY(I,"INDIA") = ZZ("ETDUTY",I); EDUTY(I,"ROW") = ZZ("EITDUTY",I); TARIFF(I,"INDIA") = ZZ("ITN0",I); D0(I,"URBAN") = ZZ("CONSU",I); D0(I,"RURAL") = ZZ("CONSR",I); D0(I,"GOVT") = ZZ("GD0",I); D0(I,"TOURIST") = ZZ("TCONS",I); D0(I,"INVEST") = ZZ("ID",I); D0(I,"STOCK") = ZZ("DST",I); * THERE APPEARS TO HAVE BEEN A MISTAKE IN SPECIFICATION OF X0. * THIS SHOULD BE AT INTERNATIONAL PRICES: DISPLAY M0,X0,SUPPLY,ELAST,MDUTY,RENT,MTAX,EDUTY,TARIFF,D0; * Check supply-demand relations: SET FD /GOVT, TOURIST, INVEST, STOCK/; FD(HH) = YES; PARAMETER MKT Check of supply-demand balance; MKT(I) = SUPPLY(I,"XD0") + SUM(R, M0(I,R) + MDUTY(I,R) + MTAX(I,R) + RENT(I,R)) - SUM(R, X0(I,R)) + SUM(R, EDUTY(I,R)) - SUM(FD, D0(I,FD)) - SUM(J, IOF(I,J)); DISPLAY MKT; MKT(I)$SUPPLY(I,"XD0") = ROUND(100 * MKT(I) / SUPPLY(I,"XD0")); DISPLAY "Percentage deviation:", MKT; * Move imbalance into stock: D0(I,"STOCK") = D0(I,"STOCK") - MKT(I); PARAMETER LABMKT(LC) Labor payments - receipts balance; LABMKT(LC) = ENDOW("L",LC) + INCTAX(LC) - SUM(I, WAG(I,LC)); DISPLAY LABMKT, INCTAX; * ADJUST FACTOR ENDOWMENTS: ENDOW("L",LC) = SUM(I, WAG(I,LC)) - INCTAX(LC); * Fix tax payment to the public sector so that capital * earns a 10% rate of return: SUPPLY("PUBLIC","TAX") = SUPPLY("PUBLIC","XD0") - SUPPLY("PUBLIC","DEP") - SUM(J, IOF(J,"PUBLIC")) - SUM(LC, WAG("PUBLIC",LC)) - 0.1 * SUPPLY("PUBLIC","K"); PARAMETER PROFIT(I) Sectoral profits net depreciation; PROFIT(I) = SUPPLY(I,"XD0") - SUPPLY(I,"TAX") - SUPPLY(I,"DEP") - SUM(J, IOF(J,I)) - SUM(LC, WAG(I,LC)); DISPLAY PROFIT; PARAMETER ROR(I) Net rate of return; ROR(I) = NA; ROR(I)$SUPPLY(I,"K") = PROFIT(I) / SUPPLY(I,"K"); DISPLAY ROR; PARAMETER CAPMKT Capital earnings; CAPMKT = SUM(I, PROFIT(I)) - TAXREV("CORP") - SUM(HH, ENDOW("K",HH)); DISPLAY CAPMKT; * ADJUST CAPITAL ENDOWMENT EARNINGS TO CLEAR THIS MARKET: ENDOW("K","URBAN") = ENDOW("K","URBAN") + CAPMKT; PARAMETER SAVING(*) Benchmark savings; SAVING(HH) = SUM(R, REMIT(R,HH)*ER(R)) + SUM(F, ENDOW(F,HH)) - SUM(I, D0(I,HH)) - SUM(R,FTRN(HH,R)*ER(R)) - TAXREV(HH) - ER("ROW")*LOANS(HH); DISPLAY SAVING; SCALAR DEPR0; DEPR0 = SUM(I, SUPPLY(I,"DEP")); SAVING("GOVT") = SUM(I, D0(I,"INVEST")) - SUM(HH, SAVING(HH)) - DEPR0; PARAMETER TINCBAL INCOME BALANCE FOR TOURIST; TINCBAL = SUM(R, TY0(R)) - TAXREV("TOURIST") - SUM(I, D0(I,"TOURIST")); DISPLAY TINCBAL; PARAMETER FSAV IMPLICIT FOREIGN SAVINGS; FSAV = SUM((I,R), M0(I,R) - X0(I,R)) - SUM(R, TY0(R)) - ER("ROW") * LOANS("GOVT") - ER("ROW") * LOANS("AID") - ER("INDIA") * LOANS("REFUND") - ER("ROW") * SUM(HH,LOANS(HH)) - SUM((R,HH), ER(R) * REMIT(R,HH)) + SUM((HH,R), ER(R) * FTRN(HH,R)); DISPLAY FSAV; PARAMETER IOC(I,J) INPUT OUTPUT COEFFICIENT Y0(I) BASE YEAR SECTORAL OUTPUT .. VX0(I) VOLUE OF SECTORAL EXPORTS NET OF TAXES X0(I,R) AMOUNT OF SECTORAL EXPORT TO INDIA AND ROW PX0(I,R) SECTORAL EXPOR PRICES TO INDIA AND ROW S0(I) SUPPLY OF COMPOSITE COMMODITY OF THE SECTOR I M0(I,R) AMOUNT OF SECTORAL IMPORTS FROM INDIA ANR ROW PM0(I,R) IMPORT PRICES FROM INDIA AND ROW IDTOT0 TOTAL INVESTEMENT DEMAND IN THE BASE YEAR ID0(I) INVESTMENT BY ORIGIN D0(I,*) COMPONENTS OF FINAL DEMAND TI(I) INDIRECT TAX RATE TX(I,R) INDIRECT TAX ON INTERNATIONAL TRADE TM(I,R) TARIFFS VK0(I) BASE YEAR RETURN TO CAPITAL GROSS DEPRECIATION TY(R) INCOME OF INDIAN AND FOREIGN TOURISTS ETRNDX(I) ELASTICITY OF TRANSFORMATION OF EXPORTS ETRNXX(I) SIGMADM(I) ELASTICITY BETWEEN IMPORTS AND DOMESTIC PRODUCTS SIGMAMM(I) ELASTICITY OF SUBSTITUTION ALPHAK(I) CAPITAL'S SHARE OF OUTPUT ALPHAL(I,HH) LABOR'S SHARE IN OUTPUT; ETRNDX(I) = 2; ETRNXX(I) = 5; SIGMADM(I) = 4; SIGMAMM(I) = 8; Y0(I) = SUPPLY(I,"XD0"); IOC(I,J)=(IOF(I,J))/Y0(J); ALPHAL(I,HH) = WAG(I,HH)/Y0(I); ALPHAK(I) = 1-SUM(HH,ALPHAL(I,HH)); VX0(I) = SUM(R, X0(I,R) - EDUTY(I,R)); TX(I,R)$X0(I,R) = EDUTY(I,R) / X0(I,R); PX0(I,R) = 1 - TX(I,R); TM(I,R)$M0(I,R) = (MDUTY(I,R) + MTAX(I,R) + RENT(I,R)) / M0(I,R); PM0(I,R) = 1 + TM(I,R); S0(I) = SUM(R, PM0(I,R)*M0(I,R)) + Y0(I) - VX0(I); ID0(I) = D0(I,"INVEST"); IDTOT0 = SUM(I, ID0(I)); VK0(I) = PROFIT(I) + SUPPLY(I,"DEP"); TI(I) = SUPPLY(I,"TAX") / Y0(I); TY(R) = TY0(R); MKT(I) = S0(I) - SUM(J, IOF(I,J)) - ID0(I) - D0(I,"TOURIST") - D0(I,"GOVT") - SUM(HH, D0(I,HH)) - D0(I,"STOCK"); DISPLAY IOC,MKT, ALPHAL, ALPHAK; SCALAR TTR; TTR = TAXREV("TOURIST") / SUM(I, D0(I,"TOURIST")); * File 5 Nepal.gms $TITLE An Intertemporal CGE Model for Nepal -- ref case w/ capital flows SET MDL Alternative models /CAPFLOW, BOPCON, NONSS, BLKHOLE/; SET TP /1990*2100/, TFIRST(TP) /1990/, TLAST(TP), HORIZON(TP); SCALAR CAPFLOW Switch for free capital flows /1/, BLKHOLE Switch for rent-seeking losses /1/, NONSS Switch for non-steadystate growth path /0/, DEBUG Switch for benchmark replication /0/; $INCLUDE scenario * Set switches for alternative model structures: IF (STRUCT("CAPFLOW"), BLKHOLE = 0; NONSS = 0; CAPFLOW = 1; ); IF (STRUCT("BOPCON"), BLKHOLE = 0; NONSS = 0; CAPFLOW = 0; ); IF (STRUCT("BLKHOLE"), BLKHOLE = 1; NONSS = 0; CAPFLOW = 1; ); IF (STRUCT("NONSS"), BLKHOLE = 0; NONSS = 1; CAPFLOW = 1; ); SCALAR BOPCON Switch for period by period capital flow constraints; BOPCON = 1 - CAPFLOW; $INCLUDE nepaldat.gms * Initialize as though we are solving the entire horizon * in one shot: SCALAR G POTENTIAL GROWTH RATE /0.02/ NR NET INTEREST RATE /0.05/ DEPR DEPRECIATION RATE /0.07/ GOVFX Government foreign exchange balance GOVEXP Government net income; SET URBAN(HH) /URBAN/; PARAMETER QREF(TP) STEADY STATE QUANTITY INDEX PREF(TP) PRESENT VALUE PRICE QLAND(TP) GROWTH RATE OF ARABLE LAND QLABOR(LC,TP) GROWTH RATE OF LABOR YEAR(TP) YEAR ASSOCIATED WITH PERIOD TP INCBAL(*) CHECK OF INCOME BALANCE I0(J) BASE YEAR INVESTMENT BY SECTOR LAND(I) LAND INPUTS VKCHK(I,*) CAPITAL VALUE CROSS-CHECKS TAU(I) CALIBRATED SPREAD IN CAPITAL RENTS, RK0(*) BASE YEAR USER COST OF CAPITAL K0(I) BASE YEAR CAPITAL STOCK FXCHK CROSS CHECK OF FOREIGN EXCHANGE W0(HH) REFERENCE CONSUMPTION LEVEL THETA(HH) HOUSEHOLD SHARE OF GOVERNMENT INCOME&EXPENSE KSHR(HH) HOUSEHOLD SHARE OF INITIAL CAPITAL LSHR(HH) HOUSEHOLD SHARE OF LAND EXOGFX(TP,HH) EXOGENOUS FOREIGN INCOME INCADJ(HH) INTER-HOUSEHOLD TRANSFERS BOPDEF BASE YEAR FOREIGN EXCHANGE DEFICIT ESUBT(HH) INTERTEMPORAL ELASTICITY OF SUBSTITUTION / RURAL 0.25, URBAN 0.5 /; * Set up the time horizon: YEAR(TP) = 1990 + (ORD(TP)-1); LOOP(TARGET, HORIZON(TP) = YES$(YEAR(TP) LE YEAR(TARGET)) ); TLAST(TP) = YES$(ORD(TP) EQ CARD(HORIZON)); * Check income balances in the base year data: INCBAL(HH) = SUM(I,D0(I,HH)) + SAVING(HH) - ( ENDOW("L",HH) + ENDOW("K",HH) + SUM(R,ER(R)*(REMIT(R,HH)-FTRN(HH,R))) - ER("ROW")*LOANS(HH) - TAXREV(HH) ); INCBAL("GOVT") = SUM(I,D0(I,"GOVT")) + SAVING("GOVT") - ( SUM((I,R), X0(I,R) * TX(I,R)) + SUM((I,R), M0(I,R) * TM(I,R)) + SUM(I, D0(I,"TOURIST") * TTR) + SUM(J, Y0(J)*TI(J)) + SUM(HH, TAXREV(HH)) + SUM(LC,INCTAX(LC)) + TAXREV("CORP") + FSAV + ER("ROW")*(LOANS("AID")-LOANS("GOVT")) + ER("INDIA")*LOANS("REFUND") - SUM(I,D0(I,"STOCK")) ); DISPLAY INCBAL; * Move non-capital inputs from the investment demand to the stock * change vector: SET IK(I) Capital formation goods /CAPITAL, CONSTRUCT/; D0(I,"STOCK") = D0(I,"STOCK") + SUM(J,IMA(I,J))$(NOT IK(I)); IMA(I,J)$(NOT IK(I)) = 0; I0(J) = SUM(I, IMA(I,J)); * Extract land rents from capital income in the agricultural * sectors: SET IAGR(I) Agricultural goods /FOOD-CROP,CASH-CROP,FOOD-PROC/; LAND(IAGR) = VK0(IAGR) - I0(IAGR) / 0.3; VK0(IAGR) = VK0(IAGR) - LAND(IAGR); DISPLAY LAND; * Report statistics on the rates of return to capital and land, etc: VKCHK(I,"KVS") = (PROFIT(I)+SUPPLY(I,"DEP")) / (LAND(I) + PROFIT(I)+SUPPLY(I,"DEP") + SUM(LC,WAG(I,LC))); VKCHK(I,"LAND") = LAND(I) / (LAND(I) + PROFIT(I)+SUPPLY(I,"DEP") + SUM(LC,WAG(I,LC))); VKCHK(I,"PROFITSHR") = PROFIT(I)/VK0(I); VKCHK(I,"IKRATIO") = I0(I) / VK0(I); * Calibrate the spread from the base year investment, growth, * depreciation, interest rate and capital rents: TAU(I) = 1 - (DEPR + NR/(1-NR))*I0(I)/((DEPR+G)*VK0(I)); RK0("RISKLESS") = NR/(1-NR) + DEPR; RK0(I) = ( NR/(1-NR) + DEPR ) / (1-TAU(I)); K0(I) = VK0(I) / RK0(I); DISPLAY RK0; * Reporting capital-output ratio: VKCHK(I,"KYRATIO") = K0(I) / Y0(I); VKCHK(I,"TAU") = TAU(I); DISPLAY VKCHK; * Steady state growth path quantity and price indices: QREF(TP) = (1+G)**(ORD(TP)-1); PREF(TP) = (1-NR)**(ORD(TP)-1); QLAND(TP) = QREF(TP); QLABOR(LC,TP) = QREF(TP); DISPLAY QREF,PREF; * Calibrated foreign exchange flows (the whole economy): BOPDEF = FSAV + SUM(R, TY(R)) + ER("ROW") * LOANS("GOVT") + ER("ROW") * LOANS("AID") + ER("INDIA") * LOANS("REFUND") + ER("ROW") * SUM(HH, LOANS(HH)) + SUM((HH,R), ER(R) * REMIT(R,HH)) - SUM((HH,R), ER(R) * FTRN(HH,R)); FXCHK = BOPDEF - SUM((I,R), M0(I,R)-X0(I,R)); DISPLAY FXCHK; $ONTEXT $MODEL:NEPAL $SECTORS: W(HH) ! Welfare index Y(I,TP)$HORIZON(TP) ! PRODUCTION K(I,TP)$HORIZON(TP) ! CAPITAL INV(I,TP)$HORIZON(TP) ! INVESTMENT X(I,TP)$(VX0(I)$HORIZON(TP)) ! EXPORT A(I,TP)$HORIZON(TP) ! ARMINGTON AGGREGATION GOV(TP)$HORIZON(TP) ! GOVERNMENT OUTPUT U(HH,TP)$HORIZON(TP) ! UTILITY INDEX T(TP)$HORIZON(TP) ! PROVISION OF TOURISM $COMMODITIES: P(I,TP)$HORIZON(TP) ! SUPPLY PRICE PD(I,TP)$HORIZON(TP) ! DOMESTIC OUTPUT PRICE PX(I,TP)$(VX0(I)$HORIZON(TP)) ! EXPORT PRICE AGGREGATE RK(I,TP)$HORIZON(TP) ! CAPITAL RENTAL RATE PK(I,TP)$HORIZON(TP) ! CAPITAL PRICE PL(LC,TP)$HORIZON(TP) ! WAGE RATE PLAND(TP)$HORIZON(TP) ! RENTAL RATE ON LAND PG(TP)$HORIZON(TP) ! GOVERNMENT OUTPUT PT(TP)$HORIZON(TP) ! TOURSIST PRICE PR(TP)$HORIZON(TP) ! PRICE INDEX FOR GOVERNMENT TRANSFER PU(HH,TP)$HORIZON(TP) ! CONSUMPTION PRICE PW(HH) ! Welfare price index PTK(I) ! TERMINAL INVESMENT PREMIUM PVPFX$CAPFLOW ! PRESENT VALUE EXCHANGE RATE PFX(TP)$(BOPCON$HORIZON(TP)) ! PRESENT VALUE EXCHANGE RATE $CONSUMERS: TOURIST(TP)$HORIZON(TP) ! TOURISM DEMAND GOVT(TP)$HORIZON(TP) ! GOVERNMENT RA(HH) ! REPRESENTATIVE AGENT FININT(TP)$(BLKHOLE$HORIZON(TP)) ! FINANCIAL INTERMEDIATION COST $AUXILIARY: TK(I) ! TERMINAL CAPITAL DEMAND $PROD:Y(I,TP)$HORIZON(TP) s:0 t:ETRNDX(I) VA:1 L(VA):3 O:PD(I,TP) Q:(Y0(I)-VX0(I)) A:GOVT(TP) T:TI(I) O:PX(I,TP) Q:VX0(I) A:GOVT(TP) T:TI(I) I:P(J,TP) Q:IOF(J,I) I:PL(LC,TP) Q:WAG(I,LC) L: I:PLAND(TP) Q:LAND(I) VA: I:RK(I,TP) Q:K0(I) P:RK0(I) VA: $PROD:K(I,TP)$HORIZON(TP+1) s:0 O:RK(I,TP) Q:K0(I) + A:RA("URBAN")$(NOT BLKHOLE) A:FININT(TP)$BLKHOLE T:TAU(I) O:PK(I,TP+1) Q:(K0(I)*(1-DEPR)) I:PK(I,TP) Q:K0(I) $PROD:K(I,TP)$TLAST(TP) s:0 O:RK(I,TP) Q:K0(I) + A:RA("URBAN")$(NOT BLKHOLE) A:FININT(TP)$BLKHOLE T:TAU(I) O:PTK(I) Q:(K0(I)*(1-DEPR)) I:PK(I,TP) Q:K0(I) $PROD:INV(I,TP)$HORIZON(TP+1) s:0 O:PK(I,TP+1) Q:I0(I) I:P(J,TP) Q:IMA(J,I) $PROD:INV(I,TP)$TLAST(TP) s:0 O:PTK(I) Q:I0(I) I:P(J,TP) Q:IMA(J,I) * EXPORT ACTIVITY -- THIS IS A CET COMPOSITE OUTPUT OVER * FLOWS TO DIFFERENT TRADING PARTNERS. $PROD:X(I,TP)$(VX0(I)$HORIZON(TP)) t:ETRNXX(I) O:PVPFX#(R)$CAPFLOW + Q:(X0(I,R)*PREF(TP)) P:(PX0(I,R)/PREF(TP)) A:GOVT(TP) T:TX(I,R) O:PFX(TP)#(R)$BOPCON Q:X0(I,R) P:PX0(I,R) A:GOVT(TP) T:TX(I,R) I:PX(I,TP) Q:VX0(I) * ARMINGTON SUPPLY AGGREGATES DOMESTIC AND IMPORTED GOODS. * LIKE EXPORTS, HERE WE HAVE ONE IMPORT COEFFICIENT FOR EACH * REGION R. $PROD:A(I,TP)$HORIZON(TP) s:SIGMADM(I) m:SIGMAMM(I) O:P(I,TP) Q:S0(I) I:PD(I,TP) Q:(Y0(I)-VX0(I)) I:PVPFX#(R)$CAPFLOW + Q:(M0(I,R)*PREF(TP)) P:(PM0(I,R)/PREF(TP)) A:GOVT(TP) T:TM(I,R) m: I:PFX(TP)#(R)$BOPCON Q:M0(I,R) P:PM0(I,R) A:GOVT(TP) T:TM(I,R) m: $PROD:GOV(TP)$HORIZON(TP) O:PG(TP) Q:(SUM(I,D0(I,"GOVT"))) I:P(I,TP) Q:D0(I,"GOVT") $PROD:U(HH,TP)$HORIZON(TP) s:1 O:PU(HH,TP) Q:(SUM(I,D0(I,HH))) I:P(I,TP) Q:D0(I,HH) $PROD:W(HH) s:ESUBT(HH) O:PW(HH) Q:W0(HH) I:PU(HH,TP)$HORIZON(TP) Q:(QREF(TP)*SUM(I,D0(I,HH))) P:PREF(TP) $PROD:T(TP)$HORIZON(TP) O:PT(TP) Q:(SUM(I,D0(I,"TOURIST"))+TAXREV("TOURIST")) I:P(I,TP) Q:D0(I,"TOURIST") A:GOVT(TP) T:TTR $DEMAND:FININT(TP)$(BLKHOLE$HORIZON(TP)) D:PFX(TP)$BOPCON D:PVPFX$CAPFLOW $DEMAND:TOURIST(TP)$HORIZON(TP) E:PVPFX$CAPFLOW Q:(PREF(TP)*QREF(TP)*SUM(R, TY(R))) E:PFX(TP)$BOPCON Q:(QREF(TP)*SUM(R, TY(R))) D:PT(TP) Q:(QREF(TP) * SUM(R, TY(R))) $DEMAND:GOVT(TP)$HORIZON(TP) E:PVPFX$CAPFLOW Q:(QREF(TP)*PREF(TP)*GOVFX) E:PFX(TP)$BOPCON Q:(QREF(TP)*GOVFX) E:P(I,TP) Q:(-QREF(TP)*D0(I,"STOCK")) E:PL(HH,TP) Q:(QLABOR(HH,TP)*(TAXREV(HH)+INCTAX(HH))) D:PR(TP) Q:(QREF(TP)*GOVEXP) $DEMAND:RA(HH) E:PFX(TP)$((BLKHOLE*BOPCON)$HORIZON(TP)$URBAN(HH)) + Q:(SUM(I, TAU(I)*K0(I)*RK0(I)*QREF(TP))) E:PVPFX$((BLKHOLE*CAPFLOW)$URBAN(HH)) + Q:(SUM((I,TP)$HORIZON(TP),TAU(I)*K0(I)*RK0(I)*QREF(TP)*PREF(TP))) E:PW("URBAN") Q:INCADJ(HH) E:PVPFX$CAPFLOW Q:(SUM(TP$HORIZON(TP), PREF(TP)*EXOGFX(TP,HH))) E:PFX(TP)$BOPCON Q:EXOGFX(TP,HH) E:PR(TP)$HORIZON(TP) Q:(QREF(TP)*GOVEXP*THETA(HH)) E:PL(HH,TP)$HORIZON(TP) Q:(QLABOR(HH,TP)*(ENDOW("L",HH)-TAXREV(HH))) E:PLAND(TP)$HORIZON(TP) Q:(QLAND(TP)*SUM(I,LAND(I))*LSHR(HH)) E:PK(I,TFIRST) Q:(K0(I)*KSHR(HH)) E:PG(TP)$HORIZON(TP) Q:(-QREF(TP)*SUM(I,D0(I,"GOVT"))*THETA(HH)) E:PTK(I) Q:(-K0(I)*KSHR(HH)) R:TK(I) D:PW(HH) Q:W0(HH) $CONSTRAINT:TK(I) PTK(I)*I0(I) =E= SUM((J,TLAST), P(J,TLAST)*IMA(J,I)); $OFFTEXT $SYSINCLUDE mpsgeset NEPAL P.L(I,TP) = PREF(TP); PFX.L(TP) = PREF(TP); PD.L(I,TP) = PREF(TP); PX.L(I,TP)$VX0(I) = PREF(TP); RK.L(I,TP) = PREF(TP)*RK0(I); PK.L(I,TP) = PREF(TP)/(1-NR); PL.L(LC,TP) = PREF(TP); PLAND.L(TP) = PREF(TP); PG.L(TP) = PREF(TP); PT.L(TP) = PREF(TP); PU.L(HH,TP) = PREF(TP); PR.L(TP) = PREF(TP); Y.L(I,TP) = QREF(TP); K.L(I,TP) = QREF(TP); INV.L(I,TP) = QREF(TP); X.L(I,TP)$VX0(I)= QREF(TP); A.L(I,TP) = QREF(TP); GOV.L(TP) = QREF(TP); U.L(HH,TP) = QREF(TP); T.L(TP) = QREF(TP); * Allocate 20 megabytes of workspace for the solver: option mcp =PATH; NEPAL.WORKSPACE = 40; NEPAL.OPTFILE = 1; * Reduce the intermediation premium by 50%: *$LIBINCLUDE QADPLOT * Set price distortion levels: SET SC Economy-wide scenarios /BASELINE, PARTIAL, COMPLETE/; TLAST(TP) = YES$(ORD(TP) EQ CARD(HORIZON)); DISPLAY HORIZON, TLAST, TAU; PTK.L(I) = SUM(TLAST, PK.L(I,TLAST)*(1-NR)); TK.L(I) = (1+G)*SUM(TLAST,QREF(TLAST)); W0(HH) = SUM(TP$HORIZON(TP),PREF(TP)*QREF(TP)*SUM(I,D0(I,HH))); GOVFX = FSAV + ER("ROW") * LOANS("GOVT") + ER("ROW") * LOANS("AID") + ER("INDIA") * LOANS("REFUND"); GOVEXP = GOVFX - SUM((I), D0(I,"STOCK")) + SUM(HH, TAXREV(HH)+INCTAX(HH)) + SUM(I, D0(I,"TOURIST")*TTR) + SUM((I,R), M0(I,R)*TM(I,R)) + SUM((I,R), X0(I,R)*TX(I,R)) + SUM(I, Y0(I) *TI(I)); EXOGFX(TP,HH) = QREF(TP) * ( + ER("ROW") * LOANS(HH) + SUM(R, ER(R) * REMIT(R,HH)) - SUM(R, ER(R) * FTRN(HH,R) ) ); THETA(HH) = SAVING(HH) / SUM(H, SAVING(H)); KSHR(HH) = ENDOW("K",HH) / SUM(H, ENDOW("K",H)); LSHR("RURAL") = 1; INCADJ(HH) = PW.L(HH)*W0(HH) + SUM(I, PTK.L(I)*(K0(I)*KSHR(HH))*TK.L(I)) + SUM(TP$HORIZON(TP), PG.L(TP)*QREF(TP)*SUM(I,D0(I,"GOVT"))*THETA(HH)) - SUM(TP$HORIZON(TP), PREF(TP)*EXOGFX(TP,HH)) - SUM(TP$HORIZON(TP), QREF(TP) * ( PR.L(TP) * GOVEXP*THETA(HH) + PL.L(HH,TP) * (ENDOW("L",HH)-TAXREV(HH)) + PLAND.L(TP) * SUM(I,LAND(I))*LSHR(HH) )) - SUM((I,TFIRST), PK.L(I,TFIRST)*(K0(I)*KSHR(HH))); INCADJ("URBAN") = INCADJ("URBAN") - SUM((I,TP)$HORIZON(TP), K0(I)*K.L(I,TP)*RK.L(I,TP)*TAU(I)); DISPLAY INCADJ; * Work with a non-steady state baseline: * Assume that arable land grows at 1/3 the growth rate of other * factors, and urban labor grows at twice the underlying growth * rate: IF (NONSS, QLAND(TP) = (1+G/3)**(ORD(TP)-1); QLABOR("URBAN",TP) = (1+2*G)**(ORD(TP)-1); ); IF (DEBUG, NEPAL.ITERLIM = 0; $INCLUDE NEPAL.GEN SOLVE NEPAL USING MCP; ELSE TAU(I)$SCENARIO(I) = 0; TAU(I)$SCENARIO("PARTIAL") = TAU(I) / 2; TAU(I)$SCENARIO("COMPLETE") = 0; $INCLUDE NEPAL.GEN SOLVE NEPAL USING MCP; ); * File 6 Reportbat.gms :==>report.bat : Usage: report capflow case* cd %1 rem pkunzip %2 cd %2 cd .. gams report r=%1\%2 o=%1\%2.rep cd %1 rem del %2.g0? rem cd ..