使用RunGTAP和WinGEM的操作 来介绍GTAP 和 GEMPACK
Ken Pearson and Mark Horridge
2005年4月
在这份文档中,我们给出了几个你可以操作的动手计算的例子来熟悉RunGTAP和GEMPACK软件的应用。A部分的案例旨在引导我们如何在GTAP数据库中找到相关的数据。B部分的案例旨在引导如何运用GTAP展开模拟。C部分介绍了如何使用RunGTAP软件产生一个新的文本以供使用(即GTAP数据库的聚集)。D部分假设你已经了解一些有关GEMPACK的知识——它告诉你如何在RunGTAP中调整和运行自己的经济模型。在E部分中,我们告知你如何找到更多的有关RunGTAP和GEMPACK的信息,而且提到了一些你更愿去尝试的其他模型而不只是GTAP模型来进行手动计算。附录A(并未在这个短期课程中使用)给出了在WinGEM下而不是通过RunGTAP进行GTAP模拟的详细指导。
这份文档是为2005年6月在克里特岛举办的GTAP短期课程而设计使用的,它也可以用于课程结束后,与会者结合从本课程中带回去的RunGTAP和GEMPACK软件来使用。并且由于在下文中提到的某些限制,这篇文档对其他学习使用RunGTAP软件操作的人也很有帮助。
此文档假设你拥有配置如下:
(a) RunGTAP的最近版本(版本3.10或者更新,发行于2001年7月或者更晚)
(b) 带有硬盘的奔腾处理器,至少有32MB的RAM(内存),在Windows95, 98, ME, NT, 2000
或者XP环境下运行
(c) 版本7.0或以上的GEMPACK的源代码或者可执行图像,并且各种有关GTAP的文件都
在你的电脑的GTAP目录项下
如果你没有配置(c)-- GEMPACK许可证和课程文件--你可以执行这份文档中的大多数但并非全部的活动。这个文本中像这样的文本框显示哪些部分需要一个GEMPACK许可证。如果没有许可证,或者跳过这些部分,或者不触摸键盘只是通读这些部分。使用WinGEM的活动需要一个GEMPACK许可证。 当你阅读此文档时,你可以根据设计的案例来使用RunGTAP和GEMPACK,以便熟悉这些软件的操作,并且更为重要的是熟悉GTAP模型的应用。RunGTAP是由Mark Horridge编写的自定义的windows程序,它使得交互式解决全球贸易分析变得更加容易。WinGEM是GEMPACK通用软件的Windows版本,用于实现和解决一般均衡和局部均衡模型。
1
本文档中的说明是相当详细的。我们的目的是提供充足的细节,以使此软件的新用户能够单纯依靠这篇文件来进行操作。
这篇文档是与“动手操作来介绍GEMPACK和GTAP”的操作文件紧密相关。此文件是在由Thomas W. Hertel编写的《全球贸易分析:建模与应用》【以下我们简称此书为“GTAP一书”】的第六章“使用 GEMPACK软件实施全球贸易分析”中提到的【详见参考文献中的Hertel (1997)】。GTAP一书的操作文件是基于GTAP数据库的一个早期的版本(第2版)而使用的一个早期的GEMPACK和GTAP数据库版本(前Windows),要不然那里面的案例就与本文档中的案例相同了。主要的区别是本文档假定你是在Windows项下运行,而GTAP一书的操作文件是要求在DOS项下(或Windows项下的DOS窗口)运行。
此文档假定你已经在你的电脑上安装了RunGTAP和WinGEM。详细安装说明会在短期课程分发的材料中的其他地方找到。
我们感谢Martina Brockmeier, Betina Dimaranan, Jill Harrison, Ken Itakura, Alejandro Nin Pratt, Padma Swaminathan 和 John Whiteman对此文档的早期版本给予的有益反馈。
A. 使用软件找到相关数据
这部分的案例主要集中在RunGTAP版本ACORS3X3中3x3数据集。在A.1节(案例A1-A4)中,您将使用RunGTAP直接在一个GTAP数据集中看到数据。在A.2节(案例A5-A6)中,您将看到GTPVEW.TAB,它是用于报告来自GTAP数据集中的许多有用的信息。在A.3节(案例A7-A10)中,您将学习如何使用WinGEM和GEMPACK程序TABLO,来计算来自GTAP数据集的其他信息。在A.4节(案例A11-A12)中,您将计算各种水平下的扭曲大小(例如,进口关税)。
启动RunGTAP
要运行RunGTAP,首先双击桌面上的RunGTAP图标,会看到如下界面:
RunGTAP: ACORS3x3/GTAP
------------------------------------------------------------------------------------------------------------------ File Copy View Version Tools Help
------------------------------------------------------------------------------------------------------------------ Title RunGTAP Version Closure Shocks Solve Results
------------------------------------------------------------------------------------------------------------------
RunGTAP使用一个控件访问标签页或者索引卡接口。前两页(Title and RunGTAP)包含一般信息。第三页包含有关当前文本的信息,和程序正在使用的GTAP的特定数据汇总信息。剩下的四页涉及到模拟——我们推迟到下面的B部分介绍。 选择 ACORS3X3版本
2
在这篇文档(供GTAP短期课程的前3天学习)中,您将根据3种商品,3个区域进行GTAP数据中的分析,也即我们提到的ACORS3X3版本。(以后您可以通过RunGTAP对可获得的数据使用其他的版本)
为了确保您能使用这种版本,请点击在RunGTAP主菜单中的:Version | Change。【即首先点击主菜单下的Version(并非RunGTAP中的 Version页),然后在下拉菜单中单击Change。我们在此文档中经常使用“|”来显示类似的选择。】
然后在出现的“Load version”列表中单击ACORS3X3,接着单击“OK”。关于此版本,请阅读RunGTAP中的 Version页的前几行信息。
A.1 使用 RunGTAP直接进行数据检验 与每个GTAP版本相关的有三个数据文件。他们分别是: 全球数据集(每个地区的进出口,贸易数据等) [GTAPDATA] 设置信息,集中给出地区和商品的名称 [GTAPSETS] 参数值 [GTAPPARM]
GTAPDATA等名称是在TABLO 的输入文件GTAP.TAB中使用的。GTAP.TAB奠定了全球贸易分析模型的基础。
案例 A1 – 查看全球数据
此全球数据文件包含大量的各个地区的进出口数据和贸易数据。
此文件的逻辑名称是GTAPDATA,是在TABLO 的输入文件GTAP.TAB项下。GTAP.TAB奠定了全球贸易分析模型的基础。要查看这个全球数据文件的信息,请选择:View | TAB files | Main Model
【这里的“Main Model”是几个菜单选项的第一个,当你点击“TAB files”时就会在旁边出现。当点击 “TAB files”后,你需要把鼠标滑动到右侧,然后当“Main Model”显示出后按下鼠标。】
一个文本编辑器就会出现,并且GTAP.TAB可见。这可能是嵌入RunGTAP中的最简单的编辑器/浏览器。它的主菜单包含如下按钮:
Back to RunGTAP Edit Search Help
这个编辑器的一个引人注目的特点(有时也是讨厌的)就是在你用RunGTAP重新开始其他的任务时,你必须要关闭它。
现在搜索GTAPDATA。【如要在RunGTAP编辑器中搜索,从编辑菜单中选择Search | Find...,然后打上你想搜索的内容,最后点击“Search”。使用这种方法来搜索GTAPDATA。如果你完成了GTAPDATA的首次搜索后还想再次搜索,你可以从编辑主菜单中再次选择Search | Search,也可以按下F3键(靠近键盘的顶部)。使用这种方法可以进行GTAPDATA的第3—4次搜索】
你会看到各种各种的数据都能从这个文件中读取。
3
其中之一是数组VDPA(i,r),它的值是在\标题下。要查看这个数组同时找出哪些数据在标题下并且哪些数据在GTAP.TAB中和VDPA(i,r)有联系,可以启动GTAP.TAB(使用Ctrl+Home,即按住Ctrl键并按下Home键)。然后搜索VDPA。你会看到VDPA(i,r)是作为一个系数来声明,这个系数包含国内商品i在地区j的私人消费支出的价格,此价格以代理商的价格表示。再次搜索VDPA你会发现,这个数据是从GTAPDATA文件中的标题\中读出。
现在通过单击编辑菜单中的Back to RunGTAP回到RunGTAP。
要观看3x3序列的VDPA 数据,单击RunGTAP菜单中的View | Base Data | Core Data【再一次“核心数据”是在“基础数据”的旁边】【RunGTAP把全球数据文件称作“核心数据”】
这将会启动ViewHAR程序的运行。ViewHAR将会开启ACORS3X3版本的全球数据文件夹并会在“Contents”屏幕上显示其内容。
每一排对应文件中不同列的数据。在“Name”标题列下,我们可以看到这些阵列如下:
Header Type Size Name
1 DVER RE 1 Version of GTAP data
2 VTWR RE MARG_COMM*TRAD_COMM*REG*REG Value of transport services at … (etc.)
14 VDPA RE TRAD_COMMxREG Intermediates - Household Domestic Purchases at
Agent’s Prices (etc)
你会发现排列数字14是在\标题下的数据。这个标题的数据是表示以代理商的价格采购的国内消费的金额。可以双击\行来看一下实际的数据。欧盟以代理商的价格来采购的制造品的国内消费的金额是多少?世界其他地区(ROW)中的食物和农产品的采购怎么样?撒哈拉以南非洲地区(SSA)的采购又如何?(单位以百万计的1995年的美元)
现在点击ViewHAR主菜单中的“Contents”按钮,你会回到全球数据文件中的排列内容列表。看VDFM行(排列数字11),你会发现相关数据是一个3维数组TRAD_COMMxPROD_COMMxREG, 并且这被称作是“中间商以市场价格进行的国内采购”。想要查看实际的数据,请双击VDFM行。你会看到一个3x4矩阵的数据(再加上一个总计行和一个总计列),其中的行标有:\\和 \,其中的列标有:\ \\和\。他们分别是集合TRAD_COMM(可贸易商品)和集合PROD_COMM(生产性商品) 中的元素。这个数据中的第三维REG又是什么呢?提示可以从靠近屏幕的右上角的3个独立的下拉列表All TRAD_COMM All PROD_COMM Sum REG中得到。由于你的电脑屏幕是2维的,你看到的是各个地区汇总(REG)的VDFM金额。那么各地区的食品和农产业企业以市场价格进行的国内服务采购的总额是多少?资本品公司的工业制成品的国内采购又是多少?
4
你怎样看到仅一个地区的公司采购金额,例如撒哈拉以南非洲地区(SSA)?想看到可以单击靠近右上角的“Sum REG”下拉列表框,在选项中选择“SSA”。然后数据就会改变,现在你就可以看到仅SSA地区的公司采购金额。SSA地区的制造企业以市场价格采购的服务的价值是多少?欧盟地区的制造企业又如何?
有许多方法查看3维数组的2维部分。想看另一个,可以单击TRAD_COMM 下拉列表框(3个中的第一个),选择Sum TRAD_COMM.
现在单击REG列表框,选择All REG。在“food”行、“ROW”列下的数字表示什么?欧盟对服务部门的所有中间投入的总价值(以市场价格)是多少?
ROW地区对资本品部门的制造品的中间投入以市场价格表示的价值是多少?【查看的方式有很多。一种方式是在REG列表框中选择“ROW”,另一种是在PROD_COMM列表框中选择\】
回想你在全球数据集的\标题下看到的TRAD_COMMxPROD_COMMxREG数据。要查看根据GTAP.TAB中的模型描述,你能从标题中读出哪些数据,在你的屏幕上找到RunGTAP,从RunGTAP的主菜单中选择View | TAB files | Main Model 来打开GTAP.TAB。在里面搜索VDFM ,直到你找到有一行提到哪些数据能从标题中读出 (它是系数VDFM(i,j,r)的价值,其中i代表可贸易商品,j代表生产性商品(公司),r代表地区)。回到文件的顶部(按Ctrl+Home),然后再次搜索VDFM,你的确会看到VDFM(i,j,r)被描述为“在r地区供j使用的国内货物i的购买”。现在通过Back to RunGTAP关闭GTAP.TAB。
ViewHAR可以向你展示某些部分以及实际数据。要查看请回到ViewHAR,然后回到“Contents”页(点击Contents),然后通过双击VDPA行来查看数据。注意靠近ViewHAR窗口左上角的两个下拉列表框。第一个现在可能显示的是None,第二个是一个0到6之间的数字。第一个可以在屏幕上显示矩阵的行、列或矩阵部分【我们把它叫做“份额列表框”】。
在份额列表框中选择“Row”,你会看到数字会变成按行得出的比例(每行的总额是1)。再改成Col ,然后Matrix,看看你能得到什么。回到None你又能看到实际数据。
左上角的第二个下拉列表框控制着每个数字小数点后的位数,可以改变它来看看。 现在通过ViewHAR菜单(不是RunGTAP菜单)的File | Exit 来退出ViewHAR窗口。 二进制文件(例如标题矩阵文件)不能在文本编辑器中查看。可以从RunGTAP主菜单中选择View | Other Text File来查看,然后在出现的“File name”文本框中打入“BASEDATA.HAR”就会打开BASEDATA.HAR(核心数据文件)。RunGTAP会告诉你不能把它作为一个文本文件而打开(甚至建议你用ViewHAR来打开)。
案例 A2 – 查看设置信息
设置信息告诉我们在当前的数据集中有哪些地区和商品被表述。设置信息文件是以GTAPSETS命名,并在TABLO 的输入文件GTAP.TAB中使用的。GTAP.TAB奠定了全球贸易分析模型的基础。要看设置信息文件中有哪些信息,可以通过选择View | TAB files | Main Model来打开GTAP.TAB,然后搜索GTAPSETS,你会看到:
5
地区名称(SET中称作REG)是在标题“H1”下
可贸易商品名称(SET中称作TRAD_COMM)是在标题“H2”下 并且还有几个其他的SET定义。
现在通过Back to RunGTAP关闭GTAP.TAB。
要看此版本中设置文件中的实际数据,单击View | Sets ,ViewHAR会再次启动,并且Contents列表显示如下:
Header 1 DVER 2 H1 3 H2 4 MARG 5 H9 6 H6
Type Size RE 1C 1C 1C 1C 1C
1
3 length 12 3 length 12 1 length 12 1 length 12 5 length 12
Name
Version of GTAP data
Set REG Regions in the model Set TRAD_COMM TRADED COMMODITIES Set MARG_COMM margins commodities Set CGDS_COMM capital goods commodities Set ENDW_COMM endowment commodities
数据类型下的“1C”是指字符数据(例如:名称列表),\是指(最大)长度为12的3个名称是在“H1”标题下。
要查看“H1”标题下的名称,双击Contents中的此行。这3个地区被叫做什么?返回Contents(点击Contents),并看“H2”标题下的数据。根据你从GTAP.TAB中得知的(如果不确定可以再看一遍),他们是3中贸易商品的名称。
现在通过ViewHAR菜单的File | Exit 来退出ViewHAR窗口。
案例A3 –查看参数值
像全球数据和设置信息,GTAP数据集的参数值是在Header Array文件中你可以点击View | Parameters 在ViewHAR中查看参数值。
然后在标题“ESBV”下查看ESUBVA。你会看到有4个值(其一是每个在PROD_COMM的商品),看看这些值。为了找到这些值的意义,你需要在GTAP.TAB中查看。重新回到RunGTAP,单击View | TAB files |Main Model 。搜索ESUBVA,你会发现这四个值是在每种商品的价值产生过程中加进的全部5种禀赋(例如:资本、劳动力)的替代弹性。
同样,你也可以通过View | parameters查看其它参数的值,并可以通过查看模型的TABLO文件随时检查使用的数据。
你可以在在ViewHAR中编辑参数值。测试请点击View | parameters来检验ESUBVA值。右击“food”值并键入一个新值。然后使用“File...Save as Header Array File ”把改后的名字保存到\,如未作修改可以使用“File...Close”。
案例 A4 (可选) –在其它 GTAP版本中查看数据
在课程中你可能会涉及到5个地区,7种商品的GTAP数据集,来分析撒哈拉以南非洲和欧盟之间的自由贸易协定。这个版本叫做ASA7X5。可以通过Version | Change改成此版
6
本并查看其全球数据、设置数据、参数数据【你可以根据上面案例A1-A3的操作方法】,特别看看哪些地区和商品在这个数据集中被确定?
A.2使用 GTAPVIEW来报告各方面数据
如果需要,双击RunGTAP按钮启动程序,确保选择ACORS3X3版本。
案例 A5 – GTAPVIEW 中在 ACORS3X3的 3x3 数据
GTPVEW.TAB包含了读取全球数据的某些部分、计算它的各种有用信息、并且把有用的信息写到另一个文件的相关说明。要查看请从RunGTAP主菜单中选择View | TAB files | GTAPView,然后在编辑器中搜索第2个或第3个出现的GTAPDATA。你会发现这部分的GTPVEW.TAB与先前的GTAP.TAB的相应部分颇为相似。
GTPVEW.TAB中的信息分为4组: ? 宏变量
? 贸易,运输和保护 ? 商品 ? 行业
在本案例中你将看到GDPEXP,GDPSRC和CURRENTACCT的值。搜索GDPEXP,GDPSRC和CURRENTACCT,这样你就知道这些系数都包含了哪些信息。
单击Back to RunGTAP ,然后单击View | Base Data | GTAPView Output 。这会打开一个ViewHAR窗口,显示的是GTAPVIEW输出的内容。
(a)GDPEXP和GDPSRC的值
与GTAPVIEW产生的各种矩阵数据相关的长名字明确了GDPEXP的值包含在标题AG01下(Contents页的第一行)
双击Contents页的AG01行来查看GDPEXP的值。SSA的GDP中来自支出方面的金额是多少?来自国内消费方面的金额是多少?出口方面又是多少?EU的情况又如何?保持ViewHAR窗口是打开的。
要看这些是如何计算的,找到RunGTAP主菜单,再次单击View | TAB files | GTAPView,切换到GTPVEW.TAB。首先搜索GDPEXP,找到公式GDPEXP(r,”cons”),你会发现“cons” 的值来自系数PRIVEXP。返回到GTPVEW.TAB的顶部,搜索PRIVEXP,看看这些值是怎样计算的【你可能会为GDPEXP的其他部分重复此操作】。保持GTPVEW.TAB在RunGTAP编辑器中的打开状态。
切换到ViewHAR窗口,看一下SSA地区的全部GDP来自支出方面的金额是多少。然后点击Contents页回到Contents列表(也可双击ViewHAR窗口的数据部分的任何地方)。
接下来我们要你看一下GDP中来自收入方面的金额是多少(由GDPSRC表示)。SSA地区中的这部分有多少来自要素收益?多少来自税收?SSA地区中来自收入方面的全部
7
GDP是多少?SSA地区中来自收入方面的全部GDP与来自支出方面的全部GDP相等吗?EU地区的又如何?
(b)CURRENTACCT的值
回想一下计算CURRENTACCT的公式(如果需要,可以在GTPVEW.TAB中看一下):
Formula (all,r,REG)(all,m,MARG_COMM)
CURRENTACCT(r,\
Formula (all,r,REG)(all,i,NMRG_COMM)
CURRENTACCT(r,\
Formula (all,r,REG)(all,i,TRAD_COMM)
CURRENTACCT(r,\
因此,CURRENTACCT(r,”exp”,i)的值是通过汇总来自进口地区s的VXWD(i,r,s)值再加上运输成本得出的。【如果商品是一个边缘商品,公式会略有不同,详见上述第一个公式】。CURRENTACCT(r,”imp”,i)的值是汇总出口地区的VIWS(i,s,r)值的相反数。
要查看CURRENTACCT的值,可以回到Contents列表(在ViewHAR窗口中),然后双击标题AG05行。所有商品的出口对SSA地区的经常账户的贡献有多少?所有商品的进口又对经常账户减少了多少?在基础数据中,SSA地区的经常账户平衡是什么?EU的情况又如何?
食品和农产品的出口对SSA地区经常账户的贡献是多少?【你可以通过改变ViewHAR右上角的Sum/All boxes来查看。目前可能显示如下:
All REG All CURACCT Sum TRAD_COMM
要查看得到的结果其中一种方法是把All CURACCT 变为 exp,然后把Sum TRAD_COMM变为 All TRAD_COMM】制造品的出口情况怎样?食品和农产品的进口对SSA地区的经常账户减少了多少?EU的情况又如何?
现在从ViewHAR中退出。同样通过Back to RunGTAP从GTPVEW.TAB中退出。然后通过File | Exit 来关闭ViewHAR(或者只是点击RunGTAP右上角的X)。
案例 A6 (可选) – GTAPVIEW中的其他数据
启动RunGTAP,通过Version | Change改为ASA7X5版本,看一下GTAP数据中在5个地区、7种商品基础上的GDPEXP, GDPSRC 和 CURRENTACCT 的值。例如,这里的EUNION地区的GDPEXP值在本质上应该和案例A5中EU地区的3x3 数据相同。但是现在你可以看到SAFRICA地区 (南非)、RESTSAF 地区(南非的其他地区)和 RESTSSH 地区(撒哈拉以南非洲的其它地区)单独的值,它们 在3x3数据中(如案例A5所示)都并入SSA地区(撒哈拉以南非洲国家,包括南非)。从ViewHAR和RunGTAP中退出。
总结: 数据和数据的结果
8
当你想找有关特定GTAP数据集(或版本)的东西,你可以通过View | Base Data | Core Data直接查看数据(如A.1节所示)或使用View | Base Data | GTAPView Output 来查看GTAPVIEW数据的总结(如A.2节所示)。如果你想看看实际数据库中包含哪些,可以查看核心数据(例如,VDPA值)。但如果你想知道的只能从实际数据的计算中才可以得出,你需要使用GTAPVIEW总结(例如,在每个地区的GDP的值)。
有时你需要了解的数据不显示在GTAPVIEW总结的结果中。那么你可能需要编写自己的公式去计算你需要的数字。这是下文A.3节背后的想法。
A.3 建立一个TABLO的输入文件来报告数据的其他方面
接下来的部分需要GEMPACK许可证。如果您没有,请直接跳到B.2节,或者不用您的电脑尝试操作来直接阅读接下来的部分。
有时您需要知道没有显示在GTAPVIEW总结中的数据的结果。那么您可能需要编写自己的公式来计算您需要的数据。这部分我们告诉您如何这样做。
您需要适当使用GEMPACK来建立和运行自己的TAB文件。做到这一点的最好办法是通过WinGEM,Windows界面来启动GEMPACK。
在本文件的其余部分,我们假设您已经从课程硬盘中提取了所有的GTAP文件,并把它们放入了目录C:\\GTAP。这包括在文件AGG4P04.ZIP,CMF4P04.ZIP和AGG4P05.ZIP中的所有文件。在任何阶段,如果您不小心删除一些这些文件,您可以通过再次提取有关ZIP的存档来找回他们。例如,如果您从存档CMF4P04.ZIP中删除了文件GTAPVIEW.TAB,您可以通过口令.\\pkunzip cmf4p04 gtapview.tab(在DOS框连接到目录C:\\ GTAP)来恢复它。
启动WinGEM
双击WinGEM图标来启动Windows 下的GEMPACK。 在屏幕上方的菜单显示如下:
--------------------------------------------------------------------------------------------------------------------- GEMPACK for Windows
---------------------------------------------------------------------------------------------------------- File Simulation HA files Other tasks Programs Options Window Help ---------------------------------------------------------------------------------------------------------------------
为WinGEM设置工作目录
这些例子开始之前,您应该有一个包含所有GTAP文件的目录。这份文档中,我们假设在C:驱动器下的目录\\ GTAP是这样的目录。[如果您的目录有不同的名称,或在不同的
9
驱动器上,当您阅读此文件时请作适当改变。]
首先选择File | Change both default directories[我们使用这个符号的意思是,首先单击在WinGEM菜单中的“File”。这将产生一个下拉菜单。在下拉菜单中,单击菜单上的项目Change both default directories]
在出现的文件选择框,选择驱动器C:,并双击子目录GTAP。[您应该看到C:\\GTAP是蓝色的] 点击“OK”按钮。
开展在TAB文件中的计算
您已经在A.2节中看到了如何在TAB文件GTAPVIEW.TAB中利用公式进行数值计算并通过RunGTAP在GTAPView Output中得到报告 。从TAB文件到能显示数字的数据文件需要有两个步骤。
1.运行GEMPACK程序TABLO。这能把在GTAPVIEW.TAB中的公式转换成计算机版本。[GTAPVIEW.TAB可以被人还有计算机读取出。TABLO运行时产生的所谓的GEMSIM辅助文件只能由计算机读出。]
2.运行GEMPACK程序GEMSIM。这始于当TABLO运行时GEMSIM辅助文件的输出。GEMSIM开展在GTAPVIEW.TAB中的各种公式的计算和组装在GTAPView输出文件的结果。当您运行GEMSIM时,您必须告诉它执行哪个公式(即辅助文件源自哪个TAB文件)以及是根据哪个核心GTAP数据库进行计算的。
当您使用RunGTAP时,这两个关于GTAPVIEW.TAB的步骤已经为您进行了(通过GTAP人员)。
在本节中,您将学习自己如何开展这些步骤,这是从一个类似GTAPVIEW.TAB部分的文件开始的。
案例A7——完成TABLO的输入文件GVIEWX.TAB
写一个TABLO的输入文件GVIEWX.TAB包含如下: (一)能读出在GTAP数据库中选定部分的READ声明 (二)用于计算的FORMULAs
(a)在每个地区的每种贸易商品以市场价格表示的国内销售总额, (b)在每个地区供私人使用的每种商品的国内生产份额, (c)在每个地区以市场价格表示的全部贸易商品的销售总额。
(三)用WRITEs把这些值写入一个用逻辑名称GVIEWX命名的新的(标题矩阵)文件。
一个TABLO输入文件的不完整版本VWX.TAB应该是在您正在使用的目录下。这个不完整文件的印刷本在下一页上。
完成这个例子的步骤被分成下面两个更短的例子。这些例子对应以上两个步骤(运行
10
TABLO,运行GEMSIM)。
!_________________ Incomplete GVIEWX.TAB FILE____________!
!---------------------------------------------------------------! ! FILES, SETS and SUBSET ! !---------------------------------------------------------------! FILE GTAPSETS # File with set specification #; SET REG # Regions in the model #
MAXIMUM SIZE 10 READ ELEMENTS FROM FILE gtapsets HEADER \SET TRAD_COMM # TRADED COMMODITIES #
MAXIMUM SIZE 10 READ ELEMENTS FROM FILE gtapsets HEADER \SET PROD_COMM # PRODUCED COMMODITIES #
MAXIMUM SIZE 11 READ ELEMENTS FROM FILE gtapsets HEADER \SUBSET TRAD_COMM IS SUBSET OF PROD_COMM ;
FILE GTAPDATA # The file containing all base data. # ;
!--------------------------------------------------------------! ! base revenues and expenditures at agent's prices ! !--------------------------------------------------------------! COEFFICIENT (all,i,TRAD_COMM)(all,j,PROD_COMM)(all,r,REG) VDFM(i,j,r)
# purchases of domestic i for use in j in region r # ; COEFFICIENT (all,i,TRAD_COMM)(all,r,REG) VDPM(i,r)
# private household expenditure on domestic i in r # ; COEFFICIENT (all,i,TRAD_COMM)(all,r,REG) VDGM(i,r)
# government household expenditure on domestic i in r # ;
!--------------------------------------------------------------! ! Reading basedata. ! !--------------------------------------------------------!
READ (all,i,TRAD_COMM)(all,j,PROD_COMM)(all,r,REG) VDFM(i,j,r) FROM FILE GTAPDATA HEADER \READ (all,i,TRAD_COMM)(all,r,REG) VDPM(i,r) FROM FILE GTAPDATA HEADER \READ (all,i,TRAD_COMM)(all,r,REG) VDGM(i,r) FROM FILE GTAPDATA HEADER \
!--------------------------------------------------------------! ! DERIVATIVES OF THE BASE DATA ! !--------------------------------------------------------------! COEFFICIENT (all,i,TRAD_COM)(all,r,REG) VDM(i,r)
# domestic sales of commodity i in region r, market prices # ; FORMULA (all,i,TRAD_COMM)(all,r,REG)
VDM(i,r) = VDPM(i,r) + ???(i,r) + sum(j,PROD_COMM, VDFM(i,j,r)) ; COEFFICIENT (all,i,TRAD_COMM)(all,r,REG) SHRDPM(i,r)
# the share of domestic production used by private hhlds # ;
FORMULA (all,i,TRAD_COMM)(all,r,REG) SHRDPM(i,r) = ???(i,r)/VDM(??) ; COEFFICIENT (all,r,REG) TOTVDM(r)
# Total dom sales of tradables in region r valued at market prices # ; FORMULA (all,r,REG) TOTVDM(r) = SUM( i, TRAD_COMM, ???) ; FILE (New) GVIEWX # File with headers for viewing # ; Write VDM to File GVIEWX Header “VDM “ ; Write SHRDPM to File GVIEWX Header “SDPM“ ;
! Note that headers are restricted to 4 characters ! Write TOTVDM to File GVIEWX Header ???? ;
案例A8 - 运行TABLO来处理GVIEWX.TAB
从WinGEM的主菜单中选择File | Edit file...并打开VWX.TAB。选择File | Save as...把此文件保存在GVIEWX.TAB下。然后作出适当的补充和/或改变来完善文件。[搜索?找到需要改变的地方] 当您已经做了所有的改变后,通过File | Exit来退出编辑。当您被问及是否想保存改变时,选择“Yes”。
您需要运行TABLO来处理这个文件。要做到这一点,通过点击在WinGEM主菜单中
11
的Simulation | TABLO Implement... 来打开一个TABLO程序窗口。
现在在产生的TABLO程序窗口中单击Select并打开文件GVIEWX.TAB,这是您想处理的TABLO输入文件。在点击“Run”按钮之前,您需要为运行TABLO设置选项之一。要做到这一点,从TABLO程序窗口中选择Options | TABLO options…并且点击选项 PGS Generate GEMSIM Auxiliary files(可能已被选中),然后点击OK关闭此选项菜单。这将返回您的TABLO窗口。通过点击Run来启动程序TABLO的运行。
当TABLO运行时,它会检查这个文件的说明来看看他们是否看起来一致。如果TABLO发现不一致时(不礼貌的说它称之为“错误”),它将在它完成运行后报告错误。
当TABLO运行完成后,如果发现一个或多个错误(正如它会做的那样,因为我们在已经给您的文件中制造了一个蓄意性的错误),在出现的窗口中会表明有一个错误,选择Edit 这将使您进入程序TABmate,并且您的TAB文件GVIEWX.TAB也会被加载。TABLO file。
在此TABmate窗口,错误是用红色显示的。如果您点击一个错误,错误的原因是用红色显示在屏幕底部附近。您可以在屏幕上做出改变。当您认为您已经删除了错误,点击靠近屏幕上方中间的Check按钮。这会使TABLO再次检查您的TAB文件。不断重复这个步骤直到您已删除所有错误。当您已经删除了所有的错误,从TABmate中退出。[每次您点击Check按钮,TABmate会保存更改,因此您无需在退出TABmate之前把他们再次保存。]
警告。我们已在TABLO的输入文件GVIEWX.TAB中做了一些,这会导致一些相应的错误。一旦您确定这个错误并清除,相应的错误也会被清除。[提示:如果您对于找到我们的蓄意错误有困难,请仔细看一下在COEFFICIENT VDM(I,R)声明中集TRAD_COMM的拼写,这是其中第一个错误。您会发现该集在声明时在其名称后有两个M,但是我们在VDM的声明中使用该集只写了一个M。一旦您添加第二个M,这个错误和相应的错误都会消失。]
要回到WinGEM,单击“Re-Run”来关闭Error running TABLO 窗口并在WinGEM中重新运行TABLO。这个时候不应该有错误,所以您将会被提供一个Go to GEMSIM按钮。点击并跳转到下面的案例A9。[这就完成上面的“在TAB文件中进行计算”标题下的的两个步骤中的第一步。]
案例A9 - 在GVIEWX.TAB运行GEMSIM来计算公式(等)
当TABLO的输入文件是正确的并且您已经准备好GEMSIM辅助文件时,您需要运行GEMSIM。在点击Go to GEMSIM(见上述案例A8的结尾),您会看到一个GEMSIM程序窗口。
在此GEMSIM窗口,单击Select并选择命令文件VWX4P04.CMF。
在运行之前,单击Edit来看一下这个命令文件VWX4P04.CMF的内容。如下所示。
12
!_____________________________vwx4p04.cmf_________________________ !
! Auxiliary files (where the formulas etc come from) !
auxiliary files = gviewx ; !
! Input data files !
file gtapsets = set4p04.har; file gtapdata = dat4p04.har; !
! Output File Specification !
file gviewx = vwx4p04.har ; !
Log File = vwx4p04.log ; !
!_________________________End of file._______________
您可以看到,这个文件指示GEMSIM来:
(这是在上述案例A8中通过TABLO产生的),这意味着GEMSIM?使用辅助文件GVIEWX
将执行在文件GVIEWX.TAB中的指示,
?读取被称为DAT4P04.HAR和SET4P04.HAR的GTAPDATA和GTAPSETS文件(这是您在上述A.1节中看到的3x3数据的全球数据和设置信息),
?把GVIEWX.TAB中说的要写入(逻辑)文件GVIEWX的“有用信息”写入实际文件名为VWX4P04.HAR 中,
?把所有程序输出写入一个被称为VWX4P04.LOG的LOG文件中。
现在要实际运行GEMSIM不只需要时间。要做到这一点,通过File | Exit关闭文件VWX4P04.CMF。这将返回到开启GEMSIM程序窗口。然后点击Run。GEMSIM将在一个DOS框中运行。当GEMSIM运行结束后,您会想看一下在GVIEWX.TAB中的公式(等)的结果。要做到这一点,点击View Input/Output Files,您会看到三个选择。点击最后一个HA output GVIEWX c:\\gtap\\vwx4p04.har,然后单击OK(或双击上述行)。这会启动“Contents”页。看一下VDM,ViewHAR运行并且您会进入相关文件的SHRDPM和TOTVDM中的值。确保您可以找到所有要求的(a),(b),(c)的结果(在上述案例A7中)。
您可能也想更详细地看看GEMSIM是如何来报告它执行的计算。如果这样,返回到GEMSIM窗口,然后单击View log file。滚动这个登陆文件(如果有必要可以进行搜索)要注意下列事项。
看看哪里地方GEMSIM已读取VWX4P04.CMF命令文件的说明(见上文)。?近文件的顶部,
13
?看看哪些地方GEMSIM已读取各种集的要素的名称(例如,从标题“H2”中读取TRAD_COMM的3要素)。
?看看哪些地方GEMSIM已读取数据的各个部分(例如“读取VDFM”)。
?看看哪些地方GEMSIM显示它已经写下各种COEFFICIENTs的值(例如VDM)。它把VDM和SHRDPM的值写进了哪个标题下?
?看看哪些地方GEMSIM已打开与逻辑名称GVIEWX相关的实际文件。(搜索“logical name”。这个文件的实际名称是什么,这个名字又来自哪里?)。
退出LOG文件,这时您会回到GEMSIM程序窗口。然后在WinGEM的主菜单中点击File | Exit退出GEMSIM(不是从GEMSIM窗口)。这将关闭TABLO并且GEMSIM窗口也会打开。
案例A10(可选) - 不同版本的GVIEWX结果
在上述案例中,您会计算ACORS3X3的3x3数据的GVIEWX结果。这里您也会计算作为ASA7X5的5个地区,7种商品的GVIEWX结果。这个版本的数据文件通常被给定名称DAT4P05.HAR(GTAPDATA文件),SET4P05.HAR(GTAPSETS文件)和PAR4P05.DAT(GTAPPARM文件)。这里的“4P05”用于表明这是来自初步发布的全球贸易分析数据第4版的5个数据集。
由于在GVIEWX.TAB的公式是和上面的例子一样的,您不需要重新运行TANLO。但是您需要运行GEMSIM,因为它是进行算术的程序。
启动WinGEM运行。要运行GEMSIM,您需要修改在上述案例A9中使用的命令文件VWX4P04.CMF。要做到这一点,通过WinGEM的主菜单中的File | Edit file编辑这个文件VWX4P04.CMF。首先使用Save As…来将这个文件保存为VWX4P05.CMF(因为您现在的工作文件在他们的名字中有“4P05”)。然后对VWX4P05.CMF作出适当的修改。[这些涉及把每次出现的“4P04”更改为“4P05”。不要改变“辅助文件”,因为TAB文件仍然是GVIEWX.TAB。] 当您已作出更改后,保存新的文件并退出编辑器。
现在,您要准备运行GEMSIM。要做到这一点,从WinGEM的主菜单中选择Simulation
然后选择命令文件VWX4P05.CMF。然后点击Run。当GEMSIM完成后,| GEMSIM Solve。
在产生的输出文件中看一下这个版本GTAP数据的VDM,当SHRDPM和TOTVDM的值。您完成后从WinGEM中退出。
A.4 找出现有扭曲的大小
在下面的案例A11中,您会写一个TABLO输入文件SHOCKSX.TAB,它可以计算在GATP数据集中的一些扭曲并告诉您给予模型什么样的冲抵可以删除这些扭曲。首先,在案例A11中我们给出一些关于我们认为的两种扭曲的背景资料。
4.1背景和符号 出口补贴/税收
VOA 以代理商价格计算的输出值 - 即由公司收到的是多少价值 VOM 按市场价格计算的输出值 - 即价值包括补贴/税收 TO_L 干预能力
14
计算公式:TO_L = VOA/VOM
如果 VOA > VOM (即TO_L>1)有补贴。 如果 VOA < VOM (即TO_L<1)有税收。 如果 VOA = VOM (即TO_L= 1)没有扭曲。 例子
VOA = 120 VOM = 100 TO_L = 1.2 (有补贴) 为了消除补贴,必须把TO_L从1.2减小到1
使TO_L等于1的变动百分率是:(-0.2/1.2)* 100 = - 16.67% [旁白:虽然有20%的扭曲,消除它的冲抵却不是20%]
在模型GTAP.TAB中,VARIABLE’to’是在TO_L中的变动百分率。 因此,我们必须把这个线性变量 'to' 冲抵{-0.2/1.2} *100%。 这就是TO_HAT的值,即TO_HAT = {-(TO_L -1)/TO_L} * 100
进口关税/补贴
VIMS 以国内市场价格计算的进口值 - 即包括任何关税/补贴 VIWS 以全球价格计算的进口值(CIF) TMS_L 干预能力
计算公式(您完成它):TMS_L =VIMS/VIWS
如果VIMS > VIWS (即TMS_L>1)有进口关税。 如果VIMS < VIWS (即TMS_L<1)有进口补贴。 如果VIMS = VIWS (即TMS_L= 1)没有扭曲。 例子
VIMS = 120 VIWS = 100 TMS_L = 1.2 (有进口关税) 要消除关税,必须把TMS_L从1.2减小到1
使TMS_L等于1的变动百分率是:(-0.2/1.2)* 100=-16.67% 在模型GTAP.TAB中,VARIABLE 'tms'是TMS_L的变动百分率。 因此,我们必须把这个线性变量 'tms' 冲抵{-0.2/1.2} *100%。
这是TMS_HAT的期望值,即(您自己填写)TMS_HAT ={-(TMS_L -1)/TMS_L} * 100
4.2 一个TABLO输入文件来报告扭曲和变化,以消除他们 案例A11 - 完成TABLO的输入文件SHOCKSX.TAB
编写一个TABLO 的输入文件SHOCKSX.TAB包含 (一)能读出GTAP数据库的选定部分的READ声明 (二)FORMULAs来计算
(a)现有的出口扭曲(即,TO_L值),
(b)用于冲抵的百分比改变变量 'to'来消除这些扭曲, (c)现有的进口扭曲(即,TMS_L值),
(d)用于冲抵的百分比改变变量 'tms'来消除这些扭曲, (三)用于显示TO_L和TMS_L的值的DISPLAY声明,
(四)把在(二)(b)、(d)中的冲抵写进文本文件的WRITE声明。
[在以上案例A7-A9中,您看到TABLO声明把系数值都写入到一个新的标题矩阵文件。看到选定系数值的其他方式是:
·将它们写到一个文本文件中(而不是一个标题矩阵文件),或
15
·显示它们。[显示的所有系数都把它们的值写进了一个所谓的Display文件中,这个文件是在GEMSIM运行时产生的。]
这些方法的优点是(与写进一个标题矩阵文件中相比):所产生的文本文件可以被打印,它也可以在编辑器中看到。
这样一个TABLO输入文件的完整版本SHKX.TAB是在您的\\GTAP目录下。这个不完整文件的印刷体在下一页上。
开展这个案例的建议步骤载于随后的页面中。
!____________ Incomplete SHOCKSX.TAB file _______________! ! FILEs, COEFFICIENTs, READs as required (see file on disk) ! ! FORMULAs for VOA,VOM as required (see file on your disk) ! ! There are no errors in this part of the file. !
! ----------------------------------------------------------! ! Calculation of Powers of distortions and ! ! percent changes to remove distortions !
!-----------------------------------------------------------!
ZERODIVIDE DEFAULT 1 ;
COEFFICIENT (all,i,NSAV_COMM)(all,r,REG) TO_L(i,r) # Output tax/subsidy powers in the benchmark data # ; FORMULA (all,i,NSAV_COMM)(all,r,REG) TO_L(i,r) = VO?(i,r)/VO?(i,r) ;
COEFFICIENT (all,i,NSAV_COMM)(all,r,REG) TO_HAT(i,r) # Liberalization shocks (output taxes/subsidies) # ; FORMULA (all,i,NSAV_COMM)(all,r,REG)
TO_HAT(i,r) = {[1-TO_L(i,r)] / TO_L(i,r)} * 100;
COEFFICIENT (all,i,TRAD_COMM)(all,r,REG)(all,s,REG) TMS_L(i,r,s)
# Import tax/subsidy powers in the benchmark data ! ; FORMULA (all,i,TRAD_COMM)(all,r,REG)(all,s,REG)
TMS_L(i,r,s) = ???? ;
COEFFICIENT (all,i,TRAD_COMM)(all,r,REG)(all,s,REG) TMS_HAT(i,r,s)
# Liberalization shocks (import taxes/subsidies) # ; FORMULA (all,i,TRAD_COMM)(all,r,???)(all,s,REG)
TMS_HAT(i,r,s) = ???? ;
FILE (NEW,TEXT) TOHAT # The file with shocks to obtain TO = 1 #;
FILE (NEW,TEXT) TMSHAT # The file with shocks to obtain TMS = 1 #;
WRITE TO_HAT TO FILE TOHAT ; WRITE ??? TO FILE ??? ; DISPLAY TO_L ; DISPLAY ??? ;
案例A11的建议步骤
这个例子中,您将使用WinGEM,TABLO和GEMSIM。 (1)开始。
选择File | Edit file...(从WinGEM的菜单中)并打开SHKX.TAB。选择File | Save as...把这个文件保存在名称SHOCKSX.TAB下。然后作出适当的补充和/或变动来完成这个文件。 (2)固定TABLO的输入文件。
16
您需要运行TABLO的来处理这个文件,您可以通过打开一个TABLO的程序窗口(通过Simulation | TABLO Implement...)并选择TABLO的输入文件SHOCKSX.TAB。
按照上述案例A8运行TABLO。如果TABLO发现一个或多个错误,如案例A8进行的那样予以更正并重新运行TABLO,直到没有错误存在。然后继续下面的步骤(3)。
[如果您对您的TABLO输入文件SHOCKSX.TAB不确定,您可以将它和我们已准备好的文件SHKXOK.TAB进行对比,它应该是在您的工作目录下] (3)准备命令文件。
(a)我们已经准备了一个不完整的命令文件SHKX.CMF。首先使用File | Save as…保存在名称SHKX4P04.CMF下。
(b)现在编辑文件SHKX4P04.CMF,取代里面的每个“?”。
(c)SHOCKSX.TAB包含一些指示来显示具体系数。请注意声明Display file = shkx4p04.dis ;是指定显示文件的名称。
(d)SHOCKSX.TAB包含着指令把 'to'和'tms'冲抵编写进两个新的文本文件,其(逻辑)名称是TOHAT和TMSHAT[看一下先前页的不完整SHOCKSX.TAB]。您的命令文件需要说明这些文件的实际名称应该是什么。您能看到命令文件中指定这些文件名称的那些行吗? (e)从编辑器GEMEDIT中退出,保存更改。
[如果您不确定,您可以比较文件SHKXOK.CMF和我们准备的文件SHKX4P04.CMF。] (4)运行GEMSIM,开展在SHOCKSX.TAB的计算。
要做到这一点,打开一个GEMSIM窗口,并选择您在上述(3)中准备的命令文件SHKX4P04.CMF。
如果GEMSIM报告有一个错误在命令文件中,使用提供的分屏编辑器,以找到并修复错误。 当GEMSIM运行时,它会产生一个显示文件(它的名字是什么?)和两个叫做TOHAT.SHK和TMSHAT.SHK的输出冲抵文件。 (5)看一下生成的显示文件。
显示文件SHKX4P04.DIS包含了TO_L和TMS_L结果。通过View Input/Output Files看一下这个显示文件SHKX4P04.DIS中的这些值。确保文件SHKX4P04.DIS中有这两个的多种值。
(a)有出口补贴吗?有出口税收吗?有不存在出口扭曲的例子吗? (b)有进口关税吗?有进口补贴吗?有不存在进口扭曲的例子吗? (6)看一下为消除出口补贴/税收而计算得出的冲抵。
要求的冲抵是要消除在文件TOHAT.SHK中的所有出口补贴/税收。选择一种商品和一个地区,检查在TOHAT.SHK中所示的冲抵与在SHKX4P04.DIS中所示的TO_L值是否一致。 (7)重复步骤(6)以得到在文件TMSHAT.SHK中为消除进口关税/补贴的冲抵。
案例A12 - 计算所有的扭曲和消除他们所需的所有冲抵
17
在SHOCKSX.TAB中,您计算的只是两种可能的扭曲。TABLO的输入文件SHOCKS.TAB(这是一个标准的GTAP TABLO输入文件)计算这些和其他大多数扭曲,并将消除他们所需的冲抵写入像案例A11中的TOHAT.SHK和TMSHAT.SHK文件里。
要在SHOCKS.TAB中开展所有计算,您需要按照上面像开展SHOCKS.TAB的两个步骤,简要阐述如下。
(a)通过运行TABLO来执行SHOCKS,按照上述案例A11。这将产生GEMSIM辅助文件SHOCKS.GSS和SHOCKS.GST。
(b)然后运行GEMSIM,这次从命令文件SHK4P04.CMF中输入。这会产生一些不同。SHK文件包含着对于GTAP模型要求的相应变量的冲抵值,以消除不同的扭曲。
例如,看一下消除所有出口补贴或税收的冲抵值(通过View Input/Output Files)。[这是逻辑名称为TOHAT的文件。] 您能说出哪些商品和地区有出口税收吗?出口补贴的情况又如何?
部分A的数据和数据结果的总结
当您想找一些关于GTAP数据集(或版本)的内容,您可以选择直接通过View | Base Data | Core Data(如上述A.1节所示)来查看数据或通过View | Base Data | GTAPView Output(如上述A.2节所示)来查看GTAPVIEW的数据总结。如果您想看一下实际数据库中的其他内容(例如,VDPA的值),您可以看一下Core Data。但如果您想了解的内容需要从实际数据中计算得出,您需要使用GTAPVIEW总结(例如,每个地区的GDP值)。
有时您需要了解的数据结果并没有在GTAPVIEW总结中显示。那么您可能需要编写公式来计算您需要的数据。如果是这样,您可以使用WinGEM和GEMPACK的程序TABLO和GEMSIM,如上述案例A8和A9,来计算和报告所需的数据。
当然,GTAP工作人员在准备跟您使用的RunGTAP相匹配的文件时,已经使用WinGEM,TABLO和GEMSIM计算了由GTPVEW.TAB报告得出的那些值。他们已为RunGTAP提供的不同版本做了这项工作。
此外,他们还在RunGTAP提供的每个版本的GTAP TAB的文件SHOCKS.TAB中进行了计算(见上述案例A12).
B模拟
B.1 压缩模型 本课程中使用的GTAP模型理论是包含在TABLO的输入文件中,您可以在RunGTAP下通过选择View TAB files | Main Model来查看。此文件在CMF4P04.ZIP中被叫做GTAP01.TAB。
为了用有限的RAM内存在Windows PC上来求解模型,必须要压缩模型。这种压缩减少了由软件在实际数值求解系统中的方程和变量的个数,从而降低了求解方程所需的内存。[更多有关压缩模型的细节,可以在GEMPACK文件GPD-1的3.8节中找到。]
您可以通过在RunGTAP下选择View | TAB files | Condensation来查看压缩文件。[压缩文件与在CMF4P04.ZIP中的GTAP01GS.STI文件非常相似。] 在GTAP01GS.STI中的压缩(这与在目前的课程中的使用的压缩是非常相似),
(a)某些政策变量已被省略。这意味着这些变量是外生的,但不能被冲抵。(当您使用这种压缩时,好像这些变量从来没出现在模型中。)。在这个文件的开头,您会发现在哪些地
18
方这些变量是作为不必要的政策变量而被省略的。 tf tpm tpd tgm tgd tfm tfd atall avaall
(b)某些变量已被选定为求解方程组。这意味着这些变量是作为内生而固有的。当您运行一次模拟,您可以获取这些变量的结果。然而,一旦执行完压缩,它们就不能被设置为外生变量。用于求解方程组的变量是:
pfd compvalad af ao ava afa ppm pfm pms pfob pcif pf ppd pgm pgd qfm pva qfe qva qf pgov qg pg qgm qp qpm qtmfsd ptrans atmfsd
您可以在GTAP01.TAB中找到更多关于这些变量的内容。 关于GTAP01的压缩可能有两种计算机版本。
(i)GEMSIM辅助文件版本,其中包括两个辅助文件GEMSIMGTAP01.GSS和GTAP01.GST。[这些可以通过运行TABLO,输入到存储输入文件GTAP01GS.STI中而产生。如上所述,该文件包含了相同的指示来省略和求解方程组。] 这是您将在课程中使用的版本,并且这个版本您离开时可以全部带走(见下面的案例B1)。 (ii)它包含可执行映像GTAP01.EXE和两个辅助文件GTAP01.AXSTABLO生成程序版本,
和GTAP01.AXT。当您回去后,如果您有一个GEMPACK的源代码版本,您可能会希望使用这一版本。[制作这些可以通过运行程序TABLO,输入到存储输入文件GTAP01.STI,然后运行LTG。文件GTAP01.STI包括着指示来省略和求解方程组,如上所述。]
案例B1(可选) - 压缩GTAP来为GEMSIM产生数据输出
从WinGEM的主菜单中选择Simulation | TABLO Implement...。这将打开一个TABLO窗口。下一步从TABLO窗口的菜单中选择Options | Run from STI file。然后选择存储输入文件GTAP01GS.STI。[这是一个所谓的存储输入文件,往往简称STI文件。它包含了为压缩模型而从程序TABLO中获得提示的所有反馈(如上所述的省略,求解方程组等等),并为GEMSIM产生的输出。] 然后点击Run。TABLO将花费一两分钟来运行。当它完成后您可以看看产生的LOG文件。
通过RunGTAP 进行GTAP的模拟
提供给RunGTAP的是TABLO的生成程序GTAP.EXE和辅助文件GTAP.AXS和GTAP.AXT[见上文(ii)]。这已由GTAP人员通过使用WinGEM和TABLO制作完成。凝要看看使用了哪种压缩方式(省略和求解方程组),从RunGTAP菜单中选择View | TAB files | Condensation。
下文B部分的所有剩下例子涉及到用GTAP进行模拟。大部分都是在3x3数据中进行的但一些是用其他的GTAP数据集进行的。
下一节,不需要GEMPACK许可证。 B.2用3x3数据进行的计量模拟 这是一个模拟,其中的GTAP通常计量单位增长10%(即变量pfactwld - 主要因素的世界价格指数)。
案例 B2- 进行基本计量模拟
19
开始运行RunGTAP,并确保选定ACORS3X3版本。您会看到一个屏幕显示如下:
RunGTAP: ACORS3x3/GTAP
------------------------------------------------------------------------------------------------------------------ File Copy View Version Tools Help
------------------------------------------------------------------------------------------------------------------ Title RunGTAP Version Closure Shocks Solve Results
------------------------------------------------------------------------------------------------------------------
对于模拟来说,最后的四页Closure - Shocks - Solve - Results通常是按照这种顺序浏览的(从左至右)。
首先点击RunGTAP的Closure页。您会看到在目前选定的closure页中的一个外生变量列表。当进行模拟时您可以在几种不同的闭包函数中进行选择。下面的面板显示哪些变量在选定的闭包函数中是外生的。RunGTAP允许您加载已经准备好了的不同的闭集。要查看这一点,使用Tools | Load Closure File菜单命令来加载book封闭文件。请注意不同的外生变量列表。在模拟中我们希望您使用GTAP标准的闭包函数,即提到的闭包函数是“标准的”。 要使用这个请再次用Tools | Load Closure File,这个时候选择Standard。请注意,pfactwld是外生变量之一。
现在点击Shocks页。单击Clear Shocks List按钮以清除任何显示的冲抵。现在,您将指定变量pfactwld的一个冲抵。要做到这一点,点击靠近Shocks页顶部的Variable to shock标签右边的向下箭头。所有在这个标准闭集的外生变量的下拉列表会出现。点击pfactwld。一个题为%Change Shock的新的编辑框会出现。点击并键入10。然后按一下按钮Add to Shock List。行Shock pfactwld = 10;应该出现在Shocks备忘录中,其占据Shocks页的下半部分。这是计量模拟唯一的冲抵。
现在单击RunGTAP的Solve页。 首先点击最上面的“Change”按钮(在它前面有Solution method字样)。点击Johansen1。
选择Johansen的方法。[在本文档的后面,您将了解更多有关这些不同的解决方法。] 2。确保Parameter file: default是显示在第二个Change按钮的左侧。[这意味着您使用的是默认值,或正常的参数值。]
3。如果它已经不在那里,在标有Experiment Description的文本框中插入文本Numeraire simulation。
4。接下来保存实验文件,其中包含您模拟的一个完整说明。如有必要这将使您以后可以重复模拟,同时也避免了提醒您保存实验细节的恼人消息。点击Save Experiment按钮,并键入“NUM2”作为新的文件名。然后点击OK。
5。现在点击“Solve”按钮。当该模型被求解时会出现一个“Please Wait”的窗口,当求解完成后,只要按下“OK”。RunGTAP将呈现给您一个框告诉您花了多长时间获得解决方案。 接下来自然而然要查看结果,这在下面的案例B3中会进行。
案例B3 - 查看结果
点击RunGTAP的Results页。您会看到Contents页面上列着模型的许多变量。 要按名称查看其中的一个变量的结果,只要双击Contents列表相应的行。找到qo行(您必须使用右侧滚动栏平稳的向下滚动)。然后双击此行查看这个变量的结果(r地区i商品的工业产值)。选择3位小数(见靠着Results页的顶部行的第三个下拉列表框—— 唯一
20
一个里面只有单个数字的列表框)。然后您可以看到如下所示: qo SSA EU ROW Land 0 0 0 UnskLab 0 0 0 SkLab 0 0 0 Capital 0 0 0 NatRes 0 0 0 Food -0.000 -0.000 -0.000 Mnfcs -0.000 0.000 0.000 Svces 0.000 -0.000 0.000 CGDS 0.000 0.000 0.000
前5行显示为红色,因为这些是外生的。其余的是内生变动百分率,均为零(如预期)。 在靠近屏幕上方第二个下拉列表框,您应该看到“1(Sim)”。这表明您所看到的是线性模拟结果(此变量的变动百分率)。此列表框(我们称之为求解列表框),可以用于查看其他的求解或相同求解的其他方面。
例如,要看到的这个变量的预期模拟水平值,点击这个求解列表框,并选择“2 Pre”。 然后您可以看到如下所示:
qo Land UnskLab SkLab Capital NatRes Food Mnfcs Svces CGDS
SSA 6052.497 115581.359 38094.156 103171.328 16539.744 115150.531 209986.375 280645.906 53911.820
EU
24710.801 3131426.000 1934923.625 2520859.000 43138.270 1293092.375 4820759.000 10201773.000 1567239.000
ROW
258133.000 6450964.500 3662705.750 7300757.000 310655.563 3713564.000 12375034.000 20614170.000 4452204.500
这些都是模拟前的水平值。数量单位是一百万预期模拟美元所能购买的量。例如,在
如果您把求解列表框改变为“3 Post”,SSA地区的粮食产量在模拟前的水平是115150单位。
您可以看到模拟后的水平,而如果您把它变为“4 Chng”,您可以看到从模拟前的水平到模拟后的水平的变化(不是百分比变化)。[在这种情况下的变化都是很小的,由于变动百分率接近于零。]
现在,双击页面数字部分的任何地方(或单击“Contents”按钮)返回到Contents列表。 现在,双击pm行(它在更高一点的行上),看一下这个变量的结果(在r地区i商品的市场价格)。首先看一下百分比变化结果(在求解列表框中选择“1(Sim)”),然后看一下模拟前的水平,接着看一下模拟后的水平,最后看看从模拟前的水平到模拟后的水平的变化。这些都是按照您期望的那样吗?
请双击页面数字部分的任何地方返回到Contents列表。 对于只有一个参数的变量,您可以一次看到所有四项的结果。要查看首先把求解列表框变为“2 Pre”,然后双击pgdp行。您会看到这个变量的所有四个结果(GPD价格指数)。
现在返回到Contents列表(您还记得怎么做吗?)。
21
不是所有的变量都能有水平结果。要查看首先把求解列表框变为“1(Sim)”,然后双击qcgds行可以看到这个变量的结果(资本商品部门的输出)。然后当您把求解列表框变为“2 Pre”时,您只能看到n.a.,这就是说这些结果是不可用的。
然后双击数字部分的任何地方返回到Contents列表,并再次通过单击求解列表框的“1(Sim)”来选择线性的结果。
要看看在Contents列表中列出变量的另一种有效方式的影响,单击靠近屏幕上方两个下拉列表框之间的V(就在Title页和 RunGTAP页之间的空隙下面)。您可以看到如下所示:
Variable Size No. Name
Macros 1 12
Vectors size:1 MARG_COMM 2
Vectors size:3 REG 49
Vectors size:3 TRAD_COMM 9
af 3*4*3 1 composite interm. input i augmenting tech .. afe 5*4*3 1 primary factor i augmenting tech change .. (and so on).
要看看只有一个参数的所有变量在介于集REG之间的结果,双击上面的第3行。这时您会看到49个这样的变量的线性(百分比变化)结果(包括qcgds,pop和pgov)。再次通过在下拉列表框中做出选择,您可以看到其他的结果。下拉列表框控制着很多您目前正在查看(一个显示着“1(Sim)”)的结果。当您查看完结果,双击数字部分返回到Contents列表。
通过再次点击V,您可以返回到Contents列表的其他视图。
案例B4 - 查看更新后的数据
除了产生在价格和数量方面百分变动的模拟结果,上述案例B2的模拟还产生了更新了的数据文件,尤其是模型中的全球数据的一个更新版本。此更新数据反映了经济状况因为这是在对经济的冲抵之后(在计量上增加10%)。您可以通过从RunGTAP菜单中选择View | Updated Data | Updated Core Data看到此更新的数据。像往常一样,RunGTAP会开启ViewHAR来显示数据。
在标题VIPA下的3x3阵列数据包含私人住户按照代理商的价格在每个区域的每种进口商品上的开支。双击Contents列表下的VIPA行来看一下数据。为了使数据只占据屏幕的左半边,(小心的)单击靠近ViewHAR窗口右下角的在左侧附近的X状图的左半部分。[这个X状图就在ViewHAR窗口右下角6个向上/向下箭头的左边。如果您找到这个X状图有困难,首先最大化ViewHAR以便它能占据整个屏幕。]
现在,为得到数据的原始(模拟前)版本,回到RunGTAP并选择View |Base Data | Core Data 。再次双击选择VIPA数据,这次仔细X状图的右半部分,使ViewHAR占据右半边的屏幕。
然后(通过任务栏或Alt + Tab),把其他的ViewHAR窗口(在屏幕的左半部分)移到顶端。
22
现在在您的屏幕上既有原始的也有更新的数据,以一个特定的单元格为例,就拿在SSA地区的食物这一相应的对比。想一想在模拟中价格和数量都发生什么变化,因而可以推断出价值发生了什么变化。检查前后模拟的VIPA值(“food”,”SSA”)是与此相一致的。您可能想在其他的单元格和/或其他标题下重复这一步骤。当您完成后关闭这两个ViewHAR窗口。
在开始前关闭RunGTAP和所有相关的窗口。
B.3一个模拟减少一个失真
如果有必要,启动RunGTAP并检查确保选择了ACORS3X3版本。
模拟
在随后案例中的模拟是一个适用于欧盟对于撒哈拉以南非洲地区进口食品(和农业)产品的关税力度减少10%的冲抵。
案例B5 - 关税的力度在模拟前是多少?
要看到模拟前的关税值,从RunGTAP的主菜单中选择View | Base Data | GTAPView Output 。这将打开一个ViewHAR窗口,它会显示给您运用模拟前的数据计算得出的GTAPVIEW的输出。
进口关税信息是在标题BI02中。双击Contents页下的这一行。接下来,由于您对EU来自SSA的进口感兴趣,把第二,第三和第四个框从All REG Sum REG Sum IMPVALUE 变为SSA EU All IMPVALUE
现在impcost列表示以世界市场价格表示的进口价值(VIWS),mtax列表示进口关税的值。对于(food,SSA,EU),您可以看到VIWS=10133.91,mtax=1321.69。从SSA地区到EU地区食品进口的从价关税率是多少?欧盟对来自撒哈拉以南非洲地区进口食品的关税力度是多少?
10%的减少量适用于关税的力度(而不是从价关税率)。模拟后的关税力度是多少?模拟后的从价税税率是多少?
在继续开始进行前关闭此GTAPVIEW输出窗口。
案例B6 - 实施冲抵并进行模拟
点击Closure。当进行模拟时您可以在几种不同的闭包函数中进行选择。下面的面板显示哪些变量在选定的闭包函数中是外生的。RunGTAP允许您加载已经准备好的不同的闭包函数。查看请使用Tools...Load closure命令,选择book,然后点击OK。请注意不同的外生变量列表。在模拟中希望您使用GTAP标准的闭包函数,即提到的闭包函数是“标准的”。 要使用请再次点击Tools...Load closure,选择Standard,然后点击OK。 来到shocks页,介绍一下欧盟对于来自撒哈拉以南非洲地区的食品产品进口关税的10%减少量:
?首先通过点击Clear Shocks List按钮删除在shock列表中显示的默认shocks。
?现在使用左上方的组合框选择 variable to shock:点击右侧的箭头。这会显示一个变量列表。点击tms作为变量来进行冲抵并查到这是s地区对来自r地区的进口货物i的进口关税。 ?由于您已经选择了矩阵变量(tms),出现了一个两行的组合框,让您选择是否冲抵所有的元素,或者只是冲抵其中一个子集。点击目前显示为ALL TRAD_COMM的左边第一个框的箭头。由于您只想减少食品部分的进口关税,单击Food。现在点击目前显示为ALL REG的第二个框的箭头,它会显示一个3x3集的地区列表。
23
由于这些地区其中的商品是问题中的来源地,在这您需要选择SSA。最后查看右边的最后一个框,选择问题中商品合适的目的地,即EU。
?现在,来到第三行的列表框。在实验中您可以把冲抵值写在左边第一个框里:10,这意味着在选定的关税里削减10%。
?另一个框Type of Shock 提供了三种可选选项,即% change rate 、%change power 和 %target rate。选择% change power。请注意这非常有帮助的RunGTAP显示最初的从价税税率为13.04%(如您在上述案例B5中看到的),而且在进行冲抵后,最终(或模拟后)的从价税税率将是1.74%。
这是您在实验中需要的唯一冲抵。[如果需要?点击Add to shock list把冲抵加入冲抵列表中。
其他的,您可以选择并添加到shock列表中。] 回到Solve页面。
?使用时首先选择求解方法。可以点击Solution method标签右侧的“change”按钮。[此按钮是在页面最顶端的按钮。]在Method部分中选择约Johansen。[我们将在案例B14中讨论其他的方法。]点击OK。
通过键入几句话总结您即将开展?下面注意 Experiment description标签和它右侧的编辑框。
的模拟是很好的做法。因此,首先用鼠标选择现有的条目,然后用10 percent reduction in
power of import tariff on food from SSA into EU取代它。
您应该在文件夹中保存所有细节(shocks, closure, solution method等)?现在是最重要的一步。
以便有必要的话您可以接下来重复模拟。点击Save Experiment按钮,键入“TMSFSE”作
为新的文件名。如果有必要的话编辑实验说明。然后按OK。注意RunGTAP顶部的标题栏反映了新的实验名。
随后,您可以使用Load Experiment按钮来记住TMSFSE模拟的所有细节。 ?现在点击Solve来启动求解过程。
RunGTAP会运行TABLO的生成程序GTAP.EXE来求解全球贸易分析。
案例B7 - 查看结果
当开始求解时,RunGTAP将呈现给您一个框告诉您花费了多长时间获得求解。有时它会建议您保存一个包含您开展模拟的完整规范的实验文件。这次不应该发生,因为您在进行模拟之前把模拟的细节作为一个EXP文件保存了。直接去Results页看一下实验结果。
在此页面您可以检验在上次成功的求解过程中计算得出的变量值。首先显示一个内容窗口,列出模型的变量。您可以双击您感兴趣的变量行来看一下模拟的结果。[您不能双击内容列表左侧列中的变量,必须双击右侧列之中的一个。另外您可以通过点击先点击右侧部分,然后按空格键来查看结果;如果您已经点击了这里,您可以通过箭头键上下移动。]
正如您在上面的案例B3看到的,同样您有两种方法来使用标有“V”的按钮排列内容列表:
·变量单独列出
·相同设置的变量组合到一起。
试验一下直到您看到的如下所示:
Variable Macros af afe
Size No. 1 12 3*4*3 1 5*4*3 1
Name
composite interm. input i augmenting tech
primary factor i augmenting tech change in j of r
24
ams ao au ava cgdslack (etc) DTBAL DTBALi
3*3*3 1 4*3 1 3 1 4*3 1 3 1
import i from region r augmenting tech ch in region s output augmenting technical change in sector input-neutral shift in utility function Value added augmenting tech change in sector slack variable for qcgds(r)
composition of value added for good i and region r
compvalad 4*3 1
3 1 3*3 1
Change in trade balance X - M, $ US million Change in trade balance by commodity and
先看看贸易平衡(变量DTBAL)的结果。SSA地区的结果是多少?这里显示的数字是什么意思?要返回Contents列表,您可以双击现在您正在查看的变量的results页面的数字部分(或者可以点击Contents按钮)。跟着做。
现在,看看SSA地区不同商品的输出产生了什么结果(这是变量qo)。SSA地区食品输出发生了什么(您对这一结果感到惊讶吗)以及SSA地区制造品输出发生了什么?注意外生变量的结果显示为红色(这也解释了为什么一些qo的结果是红色)。还请注意您可以通过点击results页面的组合框之一来改变结果的小数位数。qo(“food”,“SSA”)的结果是3.116 - 在后面当我们讨论其他求解方法时我们会提高这个结果。
通过在求解列表框中选择,您可以看看qo在模拟前后的水平值(按上述案例B3所示)。 Contents页列出了所有可视的变量。您可以筛选变量只显示那些包含筛选元素的变量。例如,点击屏幕左上角框中的箭头(目前显示的可能是Everything)。选择Capital。现在您改变了内容窗口,这只显示包含组成Capital的变量。用这种方式筛选的效果是:不显示宏变量;每个包含Capital作为其组成部分之一的向量变量变成了一个标量;每个矩阵变成了1维或2维向量(2维是当Capital既是行标签又是列标签);每个3维数组变成了1,2或3维矩阵。再次选择Everything关闭筛选。
案例B8 - 查看更新后的数据
模拟完成后,在RunGTAP主菜单中有一个新的选项可用。点击View | Updated Data。菜单将显示以下选项: ? ? ? ? ?
Updated Core Data
Updated GTAPView Output Updated Tax Rates Welfare Decomposition Volume Changes
Updated Core Data是供GTAP使用的主要数据文件中的数据(在GTAP.TAB里的逻辑名称是GTAPDATA ),但在这种情况下是更新后的版本(即模拟后)。更新后的数据反映了经济状况,因为这是在冲抵后(对于从撒哈拉以南非洲到欧洲的食品进口关税的10%减少量)。
GTAPView使用更新后的核心数据,计算各种有用的分类汇总和比率理解和解释结果。 点击View | Updated Data | Updated Core Data。一个ViewHAR窗口会打开。模拟后从SSA向EU的食品出口以世界市场价格表示的值是多少?您认为是大于或小于模拟前的出
25
口值?查看可以从RunGTAP的主菜单中选择View | Base data |Core data(是的,RunGTAP可以很容易地看到模拟前的数据)并查看从SSA到EU的食品出口价值。[现在您将有两个打开的ViewHAR窗口,一个是模拟前的核心数据,一个是模拟后的核心数据。使用靠近屏幕右下方的X状图使这两个各占据屏幕一半对您来说很有帮助。]
当您完成比较模拟前和模拟后数据的比较后关闭这两个ViewHAR窗口。
您也可以看看关于模拟后的GTAPVIEW信息。可以点击View | Updated Data | Updated GTAPView Output。例如,您可以查看国内生产总值在支出方面的构成。您可以跟模拟前的这些值和份额进行比较(您可以通过View | Base Data | GTAPView Output)。
案例B9 - 保存求解方法和冲抵
要永久保存模拟结果,在RunGTAP的主菜单中选择File | Save Outputs… | Solution file 。在最终的Solution file对话框中,在对话框的文件名部分输入名称TMSFSE.sl4。求解文件将会被保存在哪个目录下(默认的)?单击OK以保存这些模拟结果,并作为文件TMSFSE.sl4保存在目录C:\\ TEMP下。 GEMPACK用户稍后可以使用ViewSOL查看结果,但目前RunGTAP 不提供任何功能来再次查看结果(除非您重新载入试验文件TMSFSE并重新进行模拟)。
通过RunGTAP的File | Save Outputs…您也可以保存更新后的核心数据(您可以选择任何名称)和更新后的GTAPView输出结果(这是GTPVEW.TAB运用模拟后的数据计算得的结果)。或者,您可以在ZIP存档中保存所有的或部分的输出结果。
案例B10 - 更改求解方法
在上述案例B6中,您在RunGTAP中采用的是Johansen方法来求解模型。用Johansen方法只能获得模型的非线性方程的近似解。RunGTAP(如GEMPACK)还提供了多步骤的求解过程,被称为Euler求解方法和Gragg求解方法。再加上外推法(在科学和工程各分支中的一个标准的数值方法),这些都是能提供给模型方程准确的求解。
要更改RunGTAP的求解方法,来到solve页并点击 Solution method标签右边的change按钮。[此按钮是页面最顶端的按钮。] 在Method部分选择Gragg,然后确保您选择了 3 solutions 和2,4,6 steps。[如果他们在您单击“Gragg”后没被选择请选择。] 确保“Automatic Accuracy”框没有被选中,“Subintervals”框中显示1。然后单击“OK”。然后求解该模型。
既然您改变了实验,系统会提示您保存实验细节。单击“Yes”并用先前相同的名称保存实验:TMSFSE。忽略RunGTAP警告您覆盖了以前的实验记录。求解过程将开始。
一旦解决了这个,其显示了有多少变量精确在1,RunGTAP会展示一个精度分析图表,
2,3,4,5或6位数的水平。一张小脸总结了总体精度——希望这是面带微笑的。更新后的数据准确性也以同样的方式进行了总结。单击“Help”了解更多信息,然后点击“OK”继续进行。
另一个消息现在告诉您求解花费了多长时间。单击“OK”,然后选择“View | Updated data |XAC file。在这个外推精度文件中,您可以看到不同的求解方法的效果和外推。具体而言,看一下变量qo的6个组成部分的结果; 这些都是qo(“food”,”SSA”)的结果。XAC文件的该行是:
6 3.83714 3.85428 3.85755 3.86020 CX 4 L5
这里的结果分别是第2步(3.83714),第4步(3.85428),第6步(3.85755),推
26
算结果(3.86020)。符号CX 4意味着您可以在相信推算结果(这是CX)并且您可以确信至少数字的4位(即,至少在3.854部分)的推算结果是准确的。L5意味着至少5个数字的相应水平结果(作为不同于百分比变化结果)是准确的。记得前面的例子中相同模拟的Johansen结果是(实际上是1步的结果)3.116。您可以看到,Johansen结果只是一个与准确结果3.860的一个近似值。在产生Johansen结果时,GEMPACK只求解一次与模型相关的线性方程系统(这就是为什么Johansen被称为1步方法),而6个不同的线性方程组系统求解可获得6个步骤的求解结果。
当您看完外推精度文件中的结果后(RunGTAP中简称XAC文件),单击 Back to RunGTAP。
RunGTAP求解后显示的精度分析图是XAC文件的简短摘要。您可以选择View | Accuracy Summary来再看一下。
案例B11 - 关税的力度真的减少了10%吗?
要检查EU从SSA进口食品的进口关税力度是否实际减少了10%,您需要知道在模拟前的数据和更新后的数据中力度的大小。RunGTAP使您很容易看到这些值。
您可以在上面的案例B5中看到模拟前的值。
要看一下模拟后力度值的大小,从RunGTAP的主菜单中选择View | Updated data | Updated GTAPView Output。这将打开一个ViewHAR窗口,显示给您用更新后的数据计算得出的GTAPVIEW输出结果(也就是说,模拟后)。如案例B5所示,双击标题BI02查看数据。按案例B5进行来计算(模拟后)从SSA到EU进口食品的从价税税率是多少?模拟后从SSA到EU进口食品的关税力度是多少?这种力度比模拟前的力度低10%吗?
关闭ViewHAR窗口。
案例B12 - 把结果复制到电子表格
RunGTAP很容易让您把模拟结果(或数据)复制到其它windows程序中,例如电子表格或文字处理器。当您在准备报告时,您会发现这个很宝贵。
拿一个例子来说,下面我们展开需要的简单步骤把qo结果从以前的模拟复制到Excel(或其他电子表格)。
点击Results,然后到qo的结果(百分比变化的)。您应该看到像如下所示:
qo Land UnskLab SkLab Capital NatRes Food Mnfcs Svces CGDS
SSA 0 0 0 0 0 3.860 -2.198 -0.366 -0.001
EU 0 0 0 0 0 -0.367 0.082 0.004 -0.002
ROW 0 0 0 0 0 -0.019 0.003 0.001 -0.003
现在从RunGTAP的主菜单中点击copy。一个Data copied to Clipboard的会显示几秒钟。
现在启动Excel(或您最喜爱的电子表格程序)运行。在一个新的工作表,点击左上角
27
单元格,然后从主菜单中选择Edit | Paste。您会看到在Excel中出现上表。注意在RunGTAP中选择的小数位数影响复制的确切数字。
关闭Excel。
案例B13 - 看一下量的变化
当您用RunGTAP进行模拟时,有关量的结果主要是以量的百分比变化表示。(例如,
)但您可以单击View | Updated qo的结果提供的是在不同地区不同商品产出率变化的信息。
Data | Volume Changes得到量的变化信息。[RunGTAP使用GTPVOL.TAB来计算量的变化。]
例如,变量qo(i,r)显示的是商品i在地区r的产出百分比变化。要将其转换为产出变化DQO(i,r),GTAPVOL使用公式DQO(i,r) = [qo(i,r)/100] * VOM(i,r) (1) 来计算DQO(i,r)。在这里VOM(i,r)是在最初平衡时,按市场价格计算的模拟前的产出值。虽然全球数据文件会告诉我们这些产出在模拟前用美元表示的价值,但它不会告诉我们模拟前的产量。要获得模拟前产量唯一的可能是我们作出一些关于体积测量单位的决定。
GTAPVOL把它的产量基于理念单位产出的数量最初是和VOM(i,r)一样的;也就是说,i商品在r地区的单位产量被定义为一美元所能购买的数量(在模拟前的市场价格)。量的变化是由GTAPVOL以相同的单位表示出的。因此DQO(i,r)不等于输出产值的变化,因为它不包括由冲抵引起的价格变化。
例如,在3x3数据集中,VOM(\是1293092.375百万美元。[查看请选择View | Base Data | GTAPView Output,并看一下在标题CM04下的VOM值。] GTAPVOL显示的是欧盟食品输出在模拟前是1293092.375百万单位。
您可以在RunGTAP主菜单中选择View | Updated Data | Volume changes看一下由上述模拟所产生的数量变化(案例B10)。要看欧盟食品输出量的变化,在内容列表中选择DQO行。您会看到粮食产量减少了约4740单位。
这与模拟结果和初始量一致吗?要对此进行检查,找到 qo(“food”,”EU”)的模拟结果和欧盟在模拟前的食品产量。
请注意,您还可以通过在Results页面中查找变量qo看一下qo(“food”,”EU”)的变化并在求解列表框中选择“4 CHng”。要查看变化也可以使用RunGTAP的View |Updated Data | Volume changes来替代。
您可能想看看其他由RunGTAP描述的量的变化。
B.4 用3x3数据消除几个扭曲的模拟
在下面的例子中,您会进行了模拟来消除EU的Food中的几个扭曲。更确切地说,您将消除:
·在欧盟地区食品和农产品的产出补贴to(\),
·从欧盟出口到另两个地区的食品和农产品的出口补贴txs(\和txs(\
·从其他两个地区进口到欧盟的食品和农产品的进口税tms(\和tms (\
这将在3x3数据集中开展,其中商品“food”包括农产品。
案例B14 - 进行模拟
通常的程序是在这里重复。第一次检查RunGTAP使用的是3x3集(ACORS3X3)。点击Closure并检查使用的是标准的闭包函数。
28
转到Shocks页。
(a)选择Shocks窗口中显示的任何冲抵并删除它们,以便您可以重新开始。 (b)首先添加冲抵以消除在欧盟的食品产出补贴。 ·选择“to”作为第一个变量来冲抵
·转到“Elements to shock”。选择在第一个框中的“Food”和在第二个框的“EU” ·现在,来到第三行的框。您可以把实验中的冲抵值写在左侧的第一框中:-100,这意味着在欧盟消除食品的产出补贴。
?选择“%change rate”作为 Type of shock,这是因为这里的意图是为了消除100%的补贴。
?单击 Add to shock list把冲抵添加到下面的面板中 (c)下面添加冲抵以消除对欧盟出口的食品出口补贴。 ·选择“txs”作为第二个变量来冲抵。
·首先选择组合txs (“food”,”EU”,”SSA”),然后选择-100作为冲抵值,%change rate”作为 冲抵类型。通过Add to shock list把冲抵添加到冲抵列表中。 ·txs(“food”,”EU”,”ROW”)也这样重复.
(d)接下来添加冲抵以消除从其他地区进口到欧盟的食品关税(变量tms)。
接下来去Solve页面并选择一个求解方法。选择求解方法是:Gragg: 2-4-6 steps extrapolation。输入一个合适的实验描述并保存实验细节[点击Save Experiment并键入新的文件名“CUTSUBS”]。然后点击Solve开始求解过程。
当计算完求解后,您会看到Accuracy Summary 对话框。使用其Help按钮来学习一下它会告诉您什么。然后去检查一些结果。
案例B15 - 使用汇总来分割冲抵的影响。 [可选]
如果您的模拟涉及到几个不同的冲抵,GEMPACK为您提供一个非常强大的工具被称为“subtotals”。 这允许您在各种冲抵中分配所有内生变量的总变化。
使用上述案例B14的模拟来尝试,重新加载您保存的CUTSUBS实验文件]。[如果需要,
转到Shocks页面。您将定义3个汇总,他们将结果分解为to变化,txs变化和tms变化。
进行可以首先点击Define Subtotal按钮。 选择变量to。
点击Add variable to subtotal按钮 点击OK按钮。
点击OK以接受Subtotal Description 的“to changes”。 您将返回到Shocks页面。请注意该行
Subtotal to = to changes ;已被添加到Shocks页面。
重复变量txs,得到行Subtotal txs = txs changes ;的添加,然后重复变量tms,添加行 Subtotal tms = tms changes ;
然后去Solve页面并保存实验细节[点击Save Experiment并重新使用的文件名称“CUTSUBS”]。然后点击Solve。
当计算完求解后,检查EV的结果。您应该看到有4列数字。第一列显示了如案例B14中计算得出的相同EV变化。接下来的3列显示了EV的总变化有多少可以归因于分别在to,txs,tms中的外生变化。点击结果上面的Description按钮来验证这一点。
分类汇总的列显示了在SSA的福利收益主要来源于tms关税削减(最后一列),而EU和ROW的福利变化主要来自减少出口补贴txs(汇总2)。
转到Shocks页面并再次单击Define Subtotal按钮。正如您上面所看到的,这启动一
29
个窗口,它可以帮助您撰写像原先您添加过的三个汇总阐述。使用“Help”按钮,找到如何使用这个窗口,并找出更多关于汇总背后的理论。
C.制作一个RunGTAP新版本
要遵循C部分的案例,您需要下面提到的GTAPAgg程序。这不是与RunGTAP自动打包在一起—— 必须从普渡大学有别于GTAP而另行购买。 正如您所看到的,在RunGTAP下也有许多不同版本。每一个这样的版本基本上是一个完整的GTAP数据库的不同集合。您怎么添加另一个版本?您会在本节看到如何来进行(确实很容易)。
在GTAP数据库的第四版(这是当前的版本),完整的数据认可45个地区,50个部门(或商品)和5个主要因素。汇聚这个意味着把几个地区组合到复合的地区,商品和要素也是这样。例如,在ACORS3X3版本中,
·saf地区(南非关税同盟),rsa地区(南非其他地区)和rss地区(撒哈拉以南非洲的其他地区)已汇总在ACORS3X3中记为SSA的地区,许多地区已被汇总在ACORS3X3中记为EU的地区,其他地区被汇总在ROW中,
·50种商品已被汇总到3种总商品中,
·在ACORS3X3中的5种因素仍与原始数据的相同。
最简单的产生一个新的GTAP数据集的方法是使用GTAPAgg软件。一旦您使用GTAPAgg创建了一个新集,很容易将其纳入RunGTAP的一个新版本中。在本节中,您将执行两个步骤来在RunGTAP中创建一个新版本。
案例C1 - 使用GTAPAgg制作一个新集
通过双击图标启动GTAPAgg运行。
GTAPAgg提供一个它所谓的默认集,从中您可以制作其他集。要启动默认集,在出现的打开对话框中单击按钮Read aggregation scheme from file,点击Default.agg然后再点击 Open。
现在,首先让我们在区域集上开展工作。[随后您会开展部门和生产要素集。] 要进行请点击在底部表中的按钮View/change regional aggregation。您可以看到默认集中认可的3个复合区域,
第一个叫做NAFTA,包括地区加拿大,美国,墨西哥,
第二称叫做EU,包括英国,德国,丹麦,瑞典,芬兰,留尼汪 第三个叫做ROW,包括其余的36个地区。
假设您将采取一个应用与澳大利亚和新西兰有关,您想要把这两个地区从ROW中分开,整合进一个新的地区,叫做ANZ。您可以如下进行。
在屏幕底部的表中右击包含区域ROW的框[即点击鼠标右侧(不是左侧)]。您会看到一个弹出菜单。在菜单中,选择选项Insert before。一个新的叫做New1的集聚区域会出现在ROW的上面和EU的下面。
点击New1,把它变成ANZ。 现在来到地区列表,点击在aus(第一个地区)旁的列标题“New region”下的4 ROW。单击在框中出现的箭头,会显示一个可能的集聚区域的下拉菜单。单击ANZ,表明aus应该属于ANZ。
nzl(新西兰)也这样重复。
这就完成了区域集的改变。点击OK按钮。您会回到GTAPAgg主页。 现在开展部门集。单击按钮View/change sectoral aggregation,您会看到有四种集聚商品,
30
叫做Food, OthPrimary, Mnfcs 和 Svces。您可以看看原来的50个部分分属他们之中的哪个。您可以在这做出与区域集中相同的改变。为了简化案例,这里不要做任何改变。因此只需点击OK返回到GTAPAgg主页。
同样您可以点击View/change factor aggregation来看一下生产要素集。
您可以看到5种生产要素仍然独立,并且要素 UnSkLab, SkLab 和 Capital为流动的生产要素。同样为了简化案例,这里不要做任何改变。点击OK返回到GTAPAgg主页。
现在点击Save aggregation scheme to file。
在出现的保存对话框中,在“File name:”框中键入new4x4.agg,然后单击保存。
在这个阶段,您已经指定了地区,部门和生产要素集的映射,但GTAPAgg尚未按照要求进行汇总数据的算术计算。进行请点击:Create aggregated database
一个保存对话框会出现:您可以选择您的集将被保存在哪个文件下(记住它以供以后参考)。点击Save按钮并接受建议的名称new4x4.zip。如果您被问到: “do you want to compute aggregated time series data?”,单击No(同样是为了简化)
这将花费GTAPAgg一分或两分钟来进行算术计算。当这正在进行时,您会看到一个信息“”(靠近屏幕底部)。
当聚合完成后,GTAPAgg会给出一个信息,表明聚合如您的要求存储在ZIP存档
请注意此文件的位置。出现一个按钮这样您就可以立刻查看输出文件 ——new4x4.zip中。
现在忽略这个。
这就完成了新集的创建。[简单吗?]
通过单击屏幕右上角的X来关闭GTAPAgg。
案例C2 - 把该集作为一个新版本加入RunGTAP中
这里您将在RunGTAP下添加先前案例中作为一个新版本生成的集。通过双击图标启动RunGTAP。从主菜单中选择Version | New。会出现一个向导(伴随一个非常友好的面孔)您通过接下来的步骤。单击 Next。
在接下来的屏幕,单击 New aggregation(在顶部的框中)。然后点击右边询问新版本名称的框,把名字改成new4x4,然后点击Next。
在出现的屏幕上,单击底部的 Locate按钮,它的右边有ZIP archive ??。在出现的开放对话框,您将需要找到您在上述案例C1中创建的文件new4x4.zip。要做到这一点,用一般的Windows方式进入目录:C\\ GTAPAGG(或进入GTAPAgg安装的目录),单击文件new4x4.zip,并点击Open。靠近底部Locate按钮的标签将改变为:ZIP archive: c:\\gtapagg\\new4x4.zip。
然后单击 Next 。现在单击屏幕上显示的 FINISH来完成添加这个新版本。
RunGTAP告知您要切换到这个版本。单击OK。 RunGTAP现在需要进行各种计算,准备您期望有可用于任何版本的相关文件(如GTAPView等)。当这些计算完成后,您会看到一条消息,其表明已产生新的解决方案。单击OK。
这就完成了在RunGTAP下一个新版本的安装。现在您可以按照通常的RunGTAP运行方式来用这个版本进行模拟。
在关闭RunGTAP之前,点击RunGTAP的Version页面。您会看到,要真正完成新版本的安装,您应该完成RunGTAP显示在它的Version页的VERSION.TXT文件,它会告知您和他人有关这个版本的信息。我们要求您改日再这样做。
现在关闭RunGTAP。
31
D.自定义RunGTAP
您需要一个GEMPACK许可证来进行本节中的案例,这同样假定您在使用GEMPACK上有少许经验。从在RunGTAP中开始,您可以使用Help..GEMPACK licence以确认您有一个正确的安装的GEMPACK许可证。 早在20世纪,RunGTAP坚持同一套TABLO生成程序(由TAB文件指定)能用于所有的版本。从2000年开始,那种限制就不再适用。现在您可以有使用特定版本的GTAP模型的不同变形。
要看这个的案例,使用Version...Change来改变到TP16版本并且看一下Version 页上的信息。接下来选择菜单项的 Version...Modules:会出现一个窗口显示这个版本的全球贸易分析模块(即,主模型)已被存储在版本文件夹中的模块GTAPE替换。点击Help按钮,并探讨2个或3个解释“模块”——行话术语——如何使用的帮助主题。然后关闭Help并点击单词“GTAPE”,这在Version...Modules窗口右上角可见。第二个窗口出现了,列出所有GTAPE模块的组件——有些文件名称相同,但扩展名不同。单击Cancel 两次返回到RunGTAP。
TP16版本使用标准的GTAP.TAB文件的自身变形GTAPE.TAB,其中包含一些额外的方程和变量。在接下来的段落中我们会解释您如何也利用GTAP模型的自身变形来创建一个新版本。我们把过程分为两个阶段。第一个阶段是筹备;它包括使用与GTAP.TAB文件有关的自身副本文件创建一个新版本。 唯一的区别是,新版本将使用GEMSIM执行GTAP而不是使用 RunGTAP默认的基于Fortran的GTAP.EXE。
第1阶段:筹备
基于ACOR3x3版本创建一个新版本
使用Version...Change切换到ACORS3x3版本。然后使用 Version...New 创建一个称为NEWVER的新版本,并通过从ACORS3x3中“simply copying everything”和ACORS3x3“based on the same aggregation”。RunGTAP将切换到NEWVER版本,并运行测试模拟。
进入开发模式,并使用TABmate作为文本编辑器
使用Tools...Options启动选项对话框。检查RunGTAP可以找到程序TABLO,GEMSIM和TABmate(最有可能全部在C:\\GP 目录下)。同时开启选项 Developer Mode并使用TABmate作为text editor。关闭 Options对话框。
一个新的顶部菜单项Developer会出现。使用Developer...DOS box in version dir启动NEWVER子目录下的DOS会话。然后键入命令行:copy ..\\GTAP.*
这将把主RunGTAP文件夹的文件数目复制到NEWVER子目录。其中的三个是不需要的,所以键入这三个命令来删除他们:
del GTAP.EXE del GTAP.AXS del GTAP.AXT
返回到RunGTAP(无需关闭DOS窗口)。 再生GTAP作为一个 GEMSIM程序
使用View...Other text file在NEWVER文件夹中打开文件GTAP.STI。 TABmate编辑器会随着文件打开而出现。来到该文件的底部,通过压缩指示,找到以wfp开始的一行。
32
把wfp改为pgs。这指示TABLO去准备一个GEMSIM程序(wfp使一个Fortran程序被写入)。使用TABmate的Save 按钮保存STI的文件。
在TABmate中,使用Options..Code and Other菜单项,以确保“TABLO CODE产生的是GEMSIM文件”。如果有必要,并告知TABmateTABLO 程序位于哪里。
现在使用TABmate的Open按钮,打开文件GTAP.TAB。最后使用 TABLO STI按钮来从STI文件中运行TABLO 。在TABmate底部会出现消息“busy TABLOing”。经过一段时间一个框会出现,通知您GEMSIM文件的MIN,GSS和GST文件已经制作完成。关闭TABmate并返回RunGTAP。 为此版本使用GEMSIM程序
使用Version...Modules 来启动 Modules对话框。点击主模型中代表特定版本的TAB文件的白色框(在最右边列的顶部)。第二个对话框出现 - 选择第二个选项“stored in version folder”。然后点击在出现在列表下方的GTAP.TAB文件。一个组成GTAP模型的文件列表会出现,并连同令人鼓舞的消息“all necessary parts are present and up-to-date”。单击OK两次,会出现一个警告说,主模块已发生变化。按照其建议并选择Tools...Run Test Simulation菜单项。 一个带有旋转球的等待框会出现 - 仔细研究它。在等待框的中间是一行在计算经过的时间,略低于这一行,是列出目前正在运行的程序名称的一行。您应该可以看到,GTAP模块(一)位于NEWVER文件夹中(二)使用GEMSIM执行。如果执行的太快,单击Solve按钮,并再次学习等待框。
第2阶段:改变GTAP.TAB
在GTAP.TAB里添加1个新方程和1个新变量
使用View...TAB files...Main model在NEWVER文件夹中打开文件GTAP.TAB。在这个文件底部,添加以下行:
Variable
(all,j,PROD_COMM)(all,r,REG) pmat(j,r) # price index for intermediate inputs #; Equation E_PMAT # price index for intermediate inputs # (all,j,PROD_COMM)(all,r,REG)
[sum(i,TRAD_COMM, VFA(i,j,r))] * pmat(j,r) = sum(i,TRAD_COMM, VFA(i,j,r) *pf(i,j,r));
上述行声明一个新变量 pmat,然后将其指定为每个企业的物质投入的平均价格(把光标移到VFA的和pf,然后点击Gloss来提示这些符号是什么)。当您键入它们后,点击TABLO Check按钮 - 消息“no errors found”应该出现在TABmate窗口的底部......如果没有,改正您犯的任何错误并用TABLO Check再次检查:重复这个直到您看到消息“no errors found”。
接下来,使用使用 TABLO STI按钮来从STI文件中运行TABLO。在TABmate底部会出现消息“busy TABLOing”。经过一段时间一个框会出现,通知您GEMSIM文件的MIN,GSS和GST文件已经制作完成。 把新变量添加到GTAP.MAP
最后一个困难时RunGTAP并不按惯例在其 Results页面上显示所有变量 - 只有那些在MAP文件中列出的。您必须添加新的变量 pmat到MAP文件中。文件GTAP.MAP的每一行包含一个4个字符的标题(内容并不重要但必须是唯一的),后跟一个空格,其次是变量的名称。
33
使用TABmate的Open按钮,打开在NEWVER文件夹中的文件GTAP.MAP(要在打开对话框中看到这个文件,把Files of type设置为all files)。在该文件的底部添加一个新行:0160 pmat
在点击Save 按钮后,关闭TABmate,并返回到RunGTAP。 运行新模型
从RunGTAP中选择Tools...Run Test Simulation 菜单项。模型已解决后,转到Results页面,寻找变量pmat。从模拟测试得到的结果是相当烦人的(这是一个计量冲抵),所以您可能想进行一个更有趣的实验,并再次检查pmat结果。 被避免的困难
在上面的例子中,我们增加了一个新的内生变量pmat,连同一个解释它的等式。因此,没有必要改变任何指定闭包函数的文件。如果您的修改涉及到增加外生变量,您将不得不把它们添加到该版本的所有实验文件(在版本文件夹中用EXP扩展名的文件)以及下列文件中:
GTAP.CLG:用于SAGEM GE Elasticities的闭包函数。
GTAP.CLP:(大部分)用于ALTERTAX运行的闭包函数。
如果您做出的改变很大,您可能更喜欢在对RunGTAP添加新的模块前,在WinGEM下运行几个模拟。如果是这样,您可以在附录A的在 WinGEM和GEMPACK下运行模拟找到详细的信息。
E.寻找更多关于RunGTAP与GEMPACK的信息
短期课程期间,您会学到很多关于RunGTAP的信息。每当您进行模拟时,RunGTAP会准备大量的模拟信息来协助您分析模拟。此信息的大部分是可以通过View菜单获得。特别是,RunGTAP:
?显示模拟前税率的细节,GE和PE弹性(见 View | Base Data )。
?显示模拟后的税率的模拟数据的GTAPVIEW总结,福利分解结果和量的变化(见View | Updated Data )。
?使您更容易开展有关参数变化或冲抵的系统灵敏度(见Tools | Sensitivity)。 ?让您可以估计有多少模拟的变化是由于冲抵的部分造成的(分类汇总工具)。
您可以通过咨询由RunGTAP提供的扩展的Help文件来找到更多有关RunGTAP的详细信息。(见在RunGTAP主菜单的Help。)
您可能不知道在RunGTAP的Closure 和Shocks页所使用的语法。这里所使用的语法是与在GEMPACK中开展模拟所需的 Command文件(见下文)的有关部分是相同。您可以在GEMPACK用户文档中找到更多细节(见本文档末尾的参考文献部分)。
RunGTAP和GEMPACK之间的连接
RunGTAP是一个功能强大的Windows界面,其把用GTAP开展工作的进入成本降到最低。当您使用RunGTAP来解决全球贸易分析,RunGTAP通过在后台运行相应的
(在DOS框中)。特别是,GEMPACK程序来解决模型RunGTAP准备了所有的GEMPACK
所需文件,并以一种您几乎不能意识到接口的方式管理用户您和GEMPACK程序之间的接口。这是RunGTAP功能的一部分。
对于大多数用途,您可以无需知道后台的GEMPACK来使用RunGTAP 。正如您现在所看到的,RunGTAP提供了非常有效的方法来开展模拟,并寻找模拟前和模拟后的数据。
34
它也经常计算与模拟相关的其他各种信息,包括结果的福利分解,更新后数据的GTAPVIEW总结和量的变化。
然而,在这短短的课程中,我们明确地向您介绍WinGEM和GEMPACK有三个原因。 ?我们不希望这个基本的建模任务对您来说看起来像一个“未知框”。例如,我们希望您了解在TABLO文件中的声明(例如,公式)是如何产生所需的计算和输出。
?当您在分析模拟结果时,有可能有您需要的关于模型的信息并未由RunGTAP和标准的GTAP TABLO输入文件打包,但您可以通过WinGEM相对容易地获得这些信息。例如,您可能需要计算在GTAPVIEW中没有的一些比例::您可以使用在上述A.3和A.4节中使的方法计算。
?当您变得更有经验时,您所承担的建模任务可能需要您以某种方式来修改标准的GTAP模型(建立在GTAP.TAB下)。 [例如,您可能需要添加一些不存在的行为,或者您可能需要修改现有的方程。]某些情况下,您会想自定义RunGTAP来包括模型的新版本,正如上述D部分所示。您可能更愿意在您将您的修改纳入RunGTAP之前,在WinGEM下运行几个模拟。在其他情况下,您可能无法使用RunGTAP来求解修改后的模型,但可以使用WinGEM。
在附录A中,我们开展了所需的步骤来使用WinGEM进行上述B部分的模拟。每当您使用GEMSIM或TABLO生成程序来进行模拟时,您会把模拟的细节(包括闭包函数和冲抵)指定在一个GEMPACK命令文件中。附录A包含其中几个例子。当您使用RunGTAP工作时,它为您准备了命令文件。[例如,RunGTAP把从 Closure 和Shocks 页的几行添加到模拟的命令文件中。]
其他除了GATP的模型
GEMPACK可用于执行和求解一系列的除了GATP的模型。
除了GATP外的几个案例模型都在您电脑上的子目录\\GP\\EXAMPLES下。关于这些模型文件的详情载于GEMPACK文件GPD-1的第1章(见参考文献)。提供的模型包括
Stylized Johansen - 教学的两部门模型 Miniature ORANI - 教学的单一国家模型
ORANIG- 一个知名的关于澳大利亚经济的ORANI模型的23个部门版本;ORANIG理论已被用于许多其他国家的模型包括丹麦,南非,中国,泰国和印度尼西亚
DMR - 韩国的德维斯,德梅洛和罗宾逊模型和三跨(即动态)模型 TREES - 林业程式化模型
CRTS- 一个单一部门投资模型 5SECT- 5部门投资模型
例如,用程式化的约翰森模型工作,制作一个目录,改变它并通过DOS命令复制相关文件
md \\sj cd \\sj
copy \\gp\\examples\\sj*.*
使用WinGEM手动操作一些模型的建议在GPD-8的第二章中给出。如果您对看一下除了GTAP,GEMPACK是如何用这些模型开展工作感兴趣,您可以通过GPD-8的第二章的手动操作来进行。
您可以在本文档结尾部分的参考文献中找到一个GEMPACK用户文档的完整列表。所有这些文件的电子副本是在短期课程磁盘上。
35
附录A:使用WinGEM模拟
您需要一个GEMPACK许可证以及发给课程成员的样本文件来进行本节中的案例。 在本附录中,我们告诉您如何按照在上面B部分使用RunGTAP开展的模拟来使用WinGEM进行模拟。[跟从前一样,如果您修改了GTAP模型,您可能无法使用RunGTAP来模拟,或者您可能更愿意使用WinGEM,直到您检查到您的新模型能正常工作。]
AA.0计量模拟 GEMPACK程序使用任何模型进行的模拟都显示在GTAP一书的第6章图1,或者在GEMPACK文件GPD-1的图2.5.1和2.5.2 中(见底部的参考文献部分)。在用GTAP进行模拟时,您会先运行GEMSIM(上述B.1节的案例(i))或GTAP.EXE(上述B.1节的案例(ii)),然后运行GEMPIE。运行GEMPIE的另一种方法是使用Windows程序ViewSOL;这是您在GTAP短期课程中会做的。
在案例AN1和AN2中,您将使用3x3数据开展两个步骤的计量模拟。在这个模拟中,通常的GTAP计量(即变量pfactwld- 主要因素的世界价格指数)增长了10%。
启动WinGEM并检查(通过File | Change both default directories)目录是C:\\GTAP。 首先,很有必要执行一个合适的GTAP模型版本。正如在接下来的例子中进行的那样,这是通过运行TABLO来完成的。
案例AA0 - 压缩GTAP以产生GEMSIM的输出
在此WinGEM部分,您将使用1998年11月版本的TABLO输入文件GTAP.TAB。 [这与目前短期课程期间使用的文件GTAP.TAB略有不同。当然,这里介绍的方法同样可以很好地应用到GTAP.TAB其他的变形中去。此外,使用GTAP.TAB1998年版得到的模拟结果与使用更高版本的GTAP.TAB获得的结果类似。]
从WinGEM的主菜单中选择Simulation | TABLO Implement... 。这将打开一个TABLO窗口。下一步从这个TABLO窗口选择 Options | Run from STI file。然后选择存储输入文件
往往简称STI文件。它包含为了压缩模型(省GTAPGS.STI.[这是一个所谓的存储输入文件,
略,求解方程组等)而来自程序TABLO的提示以及为GEMSIM产生输出结果GTAP.GSS和GTAP.GST的所有反应。]然后点击Run。TABLO将采取一两分钟来运行。当它完成后您可能想看看产生的LOG文件。
在文档的这部分中进行的所有模拟是使用GTAP.TAB的1998年11月的版本。您现在已经准备要开始模拟了。 案例AN1 - 开展基本的计量模拟
从WinGEM的主菜单中选择Simulation | GEMSIM Solve... 。这将开启一个GEMSIM窗口。然后 Command file选择为NUM4P04.CMF。[此命令文件包含了所有为模拟的说明,包括闭包函数和冲抵。您将在下面的案例AN3看到一些细节]然后点击Run。
在产生的DOS框中会有很多的屏幕活动。该程序正在读取3x3数据文件并应用冲抵。当这个完成后,在控制模拟的程序窗口中会建议您Go to ViewSOL。点击这个并转到下面的案例AN2中。
案例AN2 - 运行ViewSOL查看结果
36
在上面例子的求解文件NUM4P04.SL4中包含了所有内生变量的百分比变化(例如,某些价格和数量)。然而,此求解文件是一个二进制文件,所以您不能在一个文本编辑器如GEMEDIT中打印或查看。程序ViewSOL允许您查看的方式是与RunGTAP的 Results页非常相似。[这个例子与上面B部分的案例B3非常相似。]
您会在 Contents页面中看到列出的许多模型变量。 ViewSOL的Contents列表有3个略有不同的格式。从ViewSOL的主菜单里选择Format... 然后在那单击点击Arrange vectors by name(在面板中标为Vector 的选项),然后单击Ok,这将让您回到Contents列表。
要看一下按名称列出的这些变量中一个的结果,就在内容列表中相应的行上双击。首先双击qo行来看一下这个变量的结果(r地区i商品的工业产值)。选择3位小数(见靠着当前ViewSOL窗口的顶行的第三个下拉列表框- 唯一一个里面只有单个数字的列表框)。然后您可以看到如下所示:
qo SSA EU ROW Land 0 0 0 UnskLab 0 0 0 SkLab 0 0 0 Capital 0 0 0 NatRes 0 0 0 Food -0.000 -0.000 -0.000 Mnfcs -0.000 0.000 0.000 Svces 0.000 -0.000 0.000 CGDS 0.000 0.000 0.000
前5行显示为红色,因为这些是外生的。其余的是内生变动百分率,均为零(如预期)。 在靠近屏幕上方的第二个下拉列表框,您应该看到“1 num4p04”。这表明您所看到的是线性模拟结果(此变量的变动百分率)。此列表框(我们称之为求解列表框)可以用于查看其他的求解或相同求解的其他方面。
例如,要看到的这个变量的预期模拟水平值,点击这个求解列表框,并选择“2 Pre num4p04”。 然后您可以看到如下所示:
qo Land UnskLab SkLab Capital NatRes Food Mnfcs Svces CGDS
SSA 6052.497 115581.359 38094.156 103171.328 16539.744 115150.531 209986.375 280645.906 53911.820
EU
24710.801 3131426.000 1934923.625 2520859.000 43138.270 1293092.375 4820759.000 10201773.000 1567239.000
ROW
258133.000 6450964.500 3662705.750 7300757.000 310655.563 3713564.000 12375034.000 20614170.000 4452204.500
这些都是模拟前的水平值。数量单位是一百万预期模拟美元所能购买的量。例如,在SSA地区的粮食产量在模拟前的水平是115150单位。如果您把求解列表框改变为“3 Post num4p04”,您可以看到模拟后的水平,而如果您把它变为“4 Chng num4p04”,您可以看到从模拟前的水平到模拟后的水平的变化(不是百分比变化)。[在这种情况下的变化都
37
是很小的,由于变动百分率接近于零。]
请再次单击Contents返回到Contents列表。
现在,双击pm行看一下这个变量的结果(在r地区i商品的市场价格)。首先看一下百分比变化结果(在求解列表框中选择“1 num4p04”),然后看一下模拟前的水平,接着看一下模拟后的水平,最后看看从模拟前的水平到模拟后的水平的变化。这些都是按照您期望的那样吗?
请再次单击Contents。 对于只有一个参数的变量,您可以一次看到所有四项的结果。要查看首先把求解列表框变为“2 Pre num4p04”,然后双击pgdp行。您会看到这个变量的所有四个结果(GPD价格指数)。
再次返回到Contents列表。
不是所有的变量都能有水平结果。要查看首先把求解列表框变为“1 num4p04”,然后双击qcgds行可以看到这个变量的结果(资本商品部门的输出)。然后当您把求解列表框变为“2 Pre num4p04”时,您只能看到n.a.,这就是说这些结果是不可用的。
然后返回到Contents列表,并再次通过单击求解列表框的“1 num4p04”来选择线性的结果。
要看看在Contents页中列出变量的另一种有效方式的影响,从ViewSOL的主菜单中选择Format...,在那单击 Arrange vectors by size AND set 在面板中标为Vector 的选项)然后单击OK,您会返回到Contents列表。您可以看到如下所示:
Variable Size Macros 1 Vectors size:3 REG qo 9*3 qxs 3*3*3 qiw 3*3 qoes 2*4*3 qst 3*3 (and so on).
No. 15 65 1 1 1 1 1
Name
Vectors size:3 TRAD_COMM 13
industry output of commodity i in region r export sales of commodity i from r to … aggregate imports of i in region s, cif … supply of sluggish endowment i used in j, … sales of i from r to international transport
要看看只有一个参数的所有变量在介于集REG之间的结果,双击上面的第2行(在“Macros”下面的那个)。这时您会看到64个这样的变量的线性(百分比变化)结果(包括qcgds,pop和pgov)。再次通过在下拉列表框中做出选择,您可以看到其他的结果。下拉列表框控制着很多您目前正在查看(一个现在显示着“1 num4p04”)的结果。当您查看完结果,单击Contents返回到Contents列表。
当您看完结果后,从ViewSOL中退出。 案例AN2A(可选) - 运行GEMPIE把结果转换成人类可读的形式
它可用于把在求解文件中的结果转换成人GEMPIE程序是ViewSOL的一个替代形式。
类可读的形式,以便您可以打印所有或其中的一部分,或者您可以在一个文本编辑器如GEMEDIT中查看他们。要对NUM4P04.SL4进行这项工作,点击从上述案例AN1中打开的WinGEM窗口左侧(当您运行模拟时),点击“Go to GEMPIE”按钮。
然后在出现的GEMPIE程序窗口中单击Run 。
38
当这个完成后,注意产生的GEMPIE打印文件的名称(它总是有后缀.PI5)。您可以通过点击View file看一下模拟结果。
使用PgDn和PgUp键来在文件中移动,例如,注意在靠近文件的开始部分,它提醒您集和变量的名称,还告诉您哪些变量是外生的,哪些变量是内生的以及冲抵是什么。 要看一下qo的结果,通过CTRL + HOME来到文件顶部,然后搜索为4个字符串的qo( - 也就是说,“q”,然后“o”,然后再一个空格,然后“(”。这将使您来到qo结果的开始。
这个GEMPIE打印文件显示模拟前和模拟后水平的结果吗,如果是这样,如何显示的? 当您看完结果后,退出这个打印文件。 案例AN3 - 命令文件NUM4P04.CMF
模拟本身是在案例AN1中进行的。程序GEMSIM从GEMPACK命令文件NUM4P04.CMF中获得所有的输入。该文件会告知程序需要的所有信息来指定一个模拟,包括闭包函数,模拟前数据文件,冲抵和模拟后的数据文件(即更新后的数据)。
通过从WinGEM主菜单中的File | Edit file... 先来看看这个文件。围绕文件来看看文件的各个部分。以一个惊叹号!开始的行是被程序忽略的,但在使文件对人类来说是可理解方面以及模拟的很好记录方面是重要的。找到这些地方: (a)被指定的闭包函数, (b)被指定的冲抵,
(c)程序被告知要读取哪个模拟前的数据文件, (d)被指定的求解文件的名称,
(e)程序被告知要编写哪个模拟后的数据文件。
在随后您将会了解文件的其他部分。 案例AN3A(可选) - 为计量减少量的命令文件
现在假设您想改变这个文件,以便在计量上减少5%。要准备这样的命令文件,使用File | Save as... 改变您正编辑到NUM4P04X.CMF中的文件名。然后作出适当的修改,这样可以减少5%的计量。您还需要作出一些其他的变化。您应该 (四)把求解文件的名称变成NUM4P04X,
(五)把更新后的文件逻辑名称GTAPDATA 变为NUM4P04X.UPD, (六)把NUM4P04其他匹配项变为NUM4P04X,
(七)也应该看看建议和口头说明,并把它们变为与您的新冲抵兼容
当您完成修改后,退出编辑器。 [如果您对您的文件NUM4P04X.CMF不确定,我们已经准备好文件NM404XOK.CMF,您可以比较它们。]
在这儿您将不用使用NUM4P04X.CMF运行修改后的计量模拟,但您会在进行下面的案例AN6时做这个。 案例AN4 - 查看更新后的数据
除了产生一个包含价格和量的百分比变化的求解文件,上述案例AN1中的模拟还产生了更新后的数据文件,尤其是模型的全球数据的更新后的版本。更新后的数据反映了经济状况,因为这是在冲抵(在计量上增加10%)对经济造成影响后。对于在上述案例AN1的模拟,此更新后的全球数据在叫做NUM4P04.UPD的文件中。像模拟前的GTAPDATA文件DAT4P04.HAR,更新后的GTAPDATA文件NUM4P04.UPD是一个标题矩阵的文件。这意味着您需要一个程序的帮助(无论是ViewHAR或SeeHAR)来查看它的数据。下面我们可以告诉您如何使用ViewHAR来查看一些更新后的数据,并与相应的原始数据进行比较。 [您可以使用SeeHAR做大致相同的事情。]
39
在标题“VIPA”下的3x3阵列数据包含私人住户按照代理商的价格在每个区域的每种进口商品上的开支。
点击从模拟中(上述案例AN1)打开的GEMSIM窗口左侧的 View Input/Output File并选择 HA updated GTAPDATA C:\\GTAP\\NUM4P04.UPD。这将打开一个ViewHAR窗口来查看更新后数据的内容列表。双击标题VIPA来看看它的数据。为了使这只占据屏幕的左半部分,(小心的)单击靠近ViewHAR窗口右下角的在左侧附近的X状图的左半部分。[这个X状图就在ViewHAR窗口右下角6个向上/向下箭头的左边。如果您找到这个X状图有困难,首先最大化ViewHAR以便它能占据整个屏幕。]
现在,对于原始数据DAT4P04.HAR,回去您进行模拟的GEMSIM窗口并再次点击View 而这一次选择 HA input GTAPDATA C:\\GTAP\\DAT4P04.HAR。再次Input/Output Files ,
双击选择VIPA数据,这次仔细X状图的右半部分,使ViewHAR占据右半边的屏幕。
然后(通过任务栏或Alt + Tab),把其他的ViewHAR窗口(在屏幕的左半部分)移到顶部。
现在在您的屏幕上既有原始的也有更新的数据,以一个特定的单元格为例,就拿在SSA地区的食物这一相应的对比。想一想在模拟中价格和数量都发生什么变化,因而可以推断出价值发生了什么变化。检查前后模拟的VIPA值(“food”,”SSA”)是与此相一致的。您可能想在其他的单元格和/或其他标题下重复这一步骤。当您完成后关闭这两个ViewHAR窗口。 案例AN5(可选) - 在模拟后的数据上运行GTAPVIEW
更新后的全球数据NUM4P04.UPD(见上述案例AN4)应该跟原始数据DAT4P04.HAR满足相同的平衡条件(例如,双方的GDP应该相同)。您可以通过对NUM4P04.UPD(而非DAT4P04.HAR)执行在GTAPVIEW.TAB(见上述A.2节)中的指示来检查。
要做到这一点,您首先需要准备一个合适的命令文件来运行GEMSIM。当然做到这一点的方法是要修改用于在DAT4P04.HAR中对原始数据开展GTAPVIEW计算的命令文件VIEW4P04.CMF。所以选择 File | Edit file...并打开VIEW4P04.CMF。首先作为VWN4P04.CMF保存。然后编辑它来改变
?GTAPDATA文件的名称从DAT4P04.HAR改为NUM4P04.UPD。
?输出的GTAPVIEW和LOG文件名称分别改为VWN4P04.HAR和VWN4P04.LOG。 ?输出的TAXRATES文件名称改为TXN4P04.HAR。
?在第一行(一个注解)文件的名称改为VWN4P04.CMF。
然后退出,保存新的VWN4P04.CMF。
首先运行TABLO (通过Simulation | TABLO Implement… )并选择GTAPVIEW.TAB然后点击Run。这将产生GTAPVIEW.TAB的 GEMSIM辅助文件。
现在运行GEMSIM((通过Simulation | GEMSIM Solve...)并选择命令文件VWN4P04.CMF。当GEMSIM运行完毕后,看一下运行ViewHAR产生的输出结果标题矩阵文件(它的名字是什么?)。特别是,看一下CURRENTACCT的值。他们在更新后的数据中改变了吗?
案例AN6(可选) - 重复在计量上5%的减少量
要看一下5%的计量减少量的影响,重复在上述案例AN1和AN2中的模拟,但不同的是需要从您在上述案例AN3A中准备的命令文件NUM4P04X.CMF获得输入数据。检查结果是按照预期所示(即在数量和上没有变化,在价格和国内的美元价值减少了5%)。
40
案例AN7(可选) - 用一个更大的数据集进行计量模拟
在上述案例AN1和AN2中您使用的是3x3数据进行计量模拟(增加pfactwld10%)。在这个案例中,您会使用7X5数据进行相同的模拟。
准备这个模拟的命令文件的最简单的方法是立足于使用3x3的数据的NUM4P04.CMF。这个新的命令文件的名字自然为NUM4P05.CMF。您知道现在该如何做(使用Edit file...,以及Save As...)。当您编辑新文件时,把一切出现的“4P04”改为“4P05”并把所有出现的“3x3”改为“7X5”。无需其他的改变。
然后按案例AN1所示运行GEMSIM,然而使用的是命令文件NUM4P05.CMF而不是
然后按案例AN2所示运行ViewSOL(或如案例AN2A所示运行GEMPIE)。NUM4P04.CMF,
再次检查变量qo和ps的结果。
在进行前关闭WinGEM和所有相关的窗口。
AA.1一个模拟减少一个失真
在下面的AA1-AA4例子中,您会使用3x3数据进行模拟,其中的欧盟对于撒哈拉以南非洲地区进口食品的关税减少10% (在3x3数据基础上,这一关税的力度大约是1.13,正如您从上述案例A11中看到的TMS_L值)。
开始运行WinGEM并检查(通过 File | Change both default directories)目录是C:\\GTAP 。
案例AA1 - 准备一个命令文件
这里您将准备一个GEMPACK命令文件TMSFSE.CMF来开展这项模拟。从在计量模拟中使用的NUM4P04.CMF开始,Save As... TMSFSE.CMF然后编辑它作出如下的变化。 (1)冲抵。有问题的变量是tms(进口关税的力度TMS_L的百分比变化)。这个变量有三个参数。符号tms(i,r,s)意味着s对来自r地区的商品i的进口关税力度的百分比变化。因此要把欧盟对撒哈拉以南非洲进口食品的关税力度减少10%,您必须对tms(\指定一个-10的冲抵。找到文件TMSFSE.CMF的冲抵部分并通过声明shock tms(\;来替换它。
(2)求解文件名。改变“solution file =”声明以便求解文件名称变为TMSFSE.SL4。由于GEMSIM自动添加标准的求解文件后缀.SL4,您应该并声明改为:solution file = tmsfse ; (3)口头说明。这是模拟的文字描述中的几行。它被放置在求解文件中并当您查看模拟结果时报告出来。寻找声明“verbal description = ... ;”并适当改变它。您新的口头描述可以由几行描述组成。确保您最终以分号“;”结束。
(4)更新后的数据文件名称。模拟后的全球数据将与计量模拟中的不同,所以您应该把更新后的全球数据名称改变(它被称为文件GTAPDATA)。我们建议您把它叫做TMSFSE.UPD,按照在命令文件和求解文件名称中使用的根TMSFSE。因此,找到声明“updated file gtapdata = ... ;”,并做出相应改变。
[注意,尽管您必须指定的更新参数和设置信息的文件名称,“更新后”的版本是与原始版本相同。因此,没有必要改变他们的名字。] (5)记录和显示文件名。把LOG文件的名称改为TMSFSE.LOG(再次使用同根TMSFSE),并把显示文件名更改为TMSFSE.DIS。
(6)由于闭包函数和模拟后的数据与计量模拟中的相同,无需其他变化。
(7)更改在文件顶部的标题为TMSFSE.CMF。然后退出 edit,把改变保存到TMSFSE.CMF。
41
当您做完这些,退出编辑器,保存您的更改。如果您对您文件TMSFSE.CMF的任一部分不确定,您可以看看我们已经准备的文件TMSFSEOK.CMF。[如果,当您使用新的TMSFSE.CMF时,程序提示有一个您未检测到的错误,尝试使用文件TMSFSEOK.CMF来代替TMSFSE.CMF 。]
案例AA2 - 运行GEMSIM和ViewSOL(或GEMPIE)
打开一个如上述案例AN1中所示的GEMSIM窗口,选择命令文件TMSFSE.CMF然后运行该程序。当结束后,或者是运行ViewSOL(如案例AN2所示)来查看结果(或者是点击Go to GEMPIE 并运行GEMPIE)。
首先看看在qo结果。当您在ViewSOL中查看时,注意在ViewSOL工具栏显示的改变小数位数的选项。 [您可以把鼠标悬停在工具栏上的每个项目。尝试不同的直到您找到一个带有提示“Set decimal places”。]选择3位小数。例如,检查,在SSA的粮食产量qo(\增加了3.112%。
当您查看完结果后不要关闭ViewSOL。
使用GEMPIE选择3位小数(见上述案例AA2),当您运行GEMPIE时选择Options | GEMPIE options,并选择3 decimal places(而不是默认的6位小数)。然后GEMPIE将在它产生的打印文件的所有结果中放置3位小数。] 案例AA3 - 更改求解方法
在上述案例AA2中,模拟程序是使用Johansen方法来计算模拟结果。运用Johansen方法,只能得到模型的非线性水平公式的近似解。
GEMPACK还提供了 Euler(发音为“oilers”)和Gragg的求解方法。这些可以提供模型的水平方程准确的求解。这里您会进行与上述案例AA2中相同的模拟,但这次使用Gragg方法(在GEMPACK中默认)来计算结果。
要做到这一点,您应该(通过Save As...)把TMSFSE.CMF复制到TMSFSEN.CMF(“N”为非线性),然后如下所述编辑TMSFSEN.CMF。 (1)查找声明 method = johansen ; 用声明
method = gragg ; steps = 2 4 6 ;来取代
[确保您在命令文件中每一个声明用分号结束;]
这两个新声明告诉GEMSIM使用Gragg方法来计算所谓的2,4 ,6步结果,然后在此基础上推断,以获得最终的求解。已经在您的命令文件中的声明“extrapolation accuracy file = yes ;”要求GEMSIM创建一个您可以查看结果是否足够准确的所谓的外推精度的文件。
(2)把求解文件,更新后的GTAPDATA文件以及LOG和Display文件的名称更改到TMSFSEN中。
然后退出编辑器,把更改保存到TMSFSEN.CMF。
您可以查看我们已经准备好的文件[如果您不明朗确定TMSFSEN.CMF文件的任何一部分,
TMSFSNOK.CMF。如果当您使用新的TMSFSEN.CMF时,程序提示有一个您未检测到的错误,尝试使用文件TMSFSEOK.CMF来代替TMSFSE.CMF 。] 现在运行GEMSIM重新模拟并从TMSFSEN.CMF中获得输入数据,然后运行ViewSOL(或GEMPIE)。
案例AA4 - 比较这些结果
42
要看一下Johansen求解和在上述案例AA3中使用的Gragg方法得到的求解的不同, 您可以比较求解文件TMSFSE.SL4(案例AA2)和TMSFSEN.SL4(案例AA3)中的结果。要做到这一点,返回到ViewSOL(使用任务栏或Alt + Tab)。您应该仍能看到在TMSFSE.SL4中的结果(从案例AA2开始,您一直打开ViewSOL)。
查看请选择File... | Open... 并ViewSOL的优势之一是它可以同时查看几种不同的求解。
打开TMSFSEN.SL4。
单击qo行来看一下变量qo的结果。您可能会从工具栏上的一个框中看到(有提示 Choose which solution to view的那个)您在TMSFSEN求解中查看的结果。注意其中
要比较从TMSFSE求解中得到的值,点击工具栏上的“Choose which qo(\的值。
solution to view”框,并选择TMSFSE求解,您将立即看到该求解中的qo结果。注意两个求解中qo(“food”,“SSA”)结果的不同。
要看一下Gragg结果是如何精确的,查看在案例AA3中产生的外推精度文件TMSFSEN.XAC(它是一个文本文件,因此您可以使用GEMEDIT来查看)。例如,这部分的qo是以一行非常类似下面的数据开始的: 6 3.83168 3.84880 3.85207 3.85472 CX 4 L5
这些分别为qo的组成数字6(SSA地区的食品)的2步,4步,6步的推算结果。注释“CX 4”表明这个百分比变化结果被定为精确到至少4位数字并且我们可以对外推结果充满信心。注释“L5”意味着撒哈拉以南非洲地区粮食产量的水平值的相应的结果精确到至少5位数字。
然后转到外推精度文件的结尾。这告诉您有多少结果被判为准确到3个数字,4位数字等等。
您可能想估算一下在Johansen求解(与更准确的Gragg求解相当)中模型的不同变量的错误大小。 [在TMSFSE.SL4中查看Johansen结果,在TMSFSEN.SL4中查看更准确的Gragg结果。]例如,试着查看一下数量变量qo和qxs以及福利措施u和EV的相对误差。您会看到,福利措施的相对误差大于数量变量的相对误差。最大的相对误差也许是等量变量EV(“eu”),精度结果大约是-615百万美元并且Johansen结果是约-203亿美元。
当您完成后,关闭ViewSOL(通过文件|退出 File | Exit)。
AA.2使用3x3数据消除几个扭曲的模拟
在下面的案例AA5中,您将进行模拟来消除欧盟地区食品的扭曲。更确切地说,您将消除
- 欧盟地区食品和农产品的产出补贴, - 从欧盟出口的食品和农产品的出口补贴, - 进口到欧盟的食品和农产品的进口税。
这将在3x3数据集上开展,其中单一商品“食品”包括农产品。
上述三个扭曲(分别为TO_L,TXS_L和TMS_L)的水平值以及分别为消除这些扭曲而对变量做出的冲抵to,消除这些扭曲所需的冲抵txs和tms已经在上述案例A12中被计算了。
分别在文件TO4P04.SHK ,TX4P04.SHK和TMS4P04.SHK中。然而,在这个模拟中我们只希望消除那些影响食物和欧盟的冲抵,也就是说,我们希望只把适当的冲抵给: to(\ ! 在欧盟的粮食产量,
txs(\ and txs(\ !从欧盟出口的食品, tms(\ and tms(\ ! 进口到欧盟的食品。
首先是通过在命令文件中的声明shock to(\实现;
43
\告诉GEMSIM在文件TO4P04.SHK中仅选择to组件的适当的冲抵。类似的声明实现对变量txs和tms相关组件所需的冲抵。
您应该查看我们已经准备好的命令文件CAPSIM.CMF。您会看到shock声明和其他为开展这项模拟的各种声明。
下面的例子AA5依靠在上述案例A12中产生的三个文件TO4P04.SHK,TXS4P04.SHK和TMS4P04.SHK。在开始案例AA5之前,检查一下这三个文件是通过一个DOS框而呈现(您可以通过在WinGEM主菜单中选择File | Shell to DOS)。在此框中,发出命令dir t*.shk。然后发出命令exit 关闭DOS窗口。 案例AA5 - 开展这项模拟
首先运行GEMSIM,从命令文件CAPSIM.CMF中输入数据。一旦完成运行,转到ViewSOL或GEMPIE(或许再次为这些结果选择3位小数)。检查结果,看看他们是否是您期望从改造中得到的结果。 (例如,对于在SSA和ROW的食品产量发生了什么?为什么?)
此模拟应用2,4,6步Gragg计算来获得一个相当准确的求解。或许可以检查一下外推精度文件CAPSIM.XAC来看一下这些结果是如何准确的。在文件的末尾看一下总结。 案例AA6 - 检查模拟已经生效
从模拟中输出的部分是更新后的全球数据文件CAPSIM.UPD。这包含一旦有关的扭曲已被消除后它的全球数据。检查一下(如何可以做到这一点?)应使您能够确认这些扭曲实际上已被消除。
最好的检查办法也许是再次使用SHOCKS.TAB。我们的想法是使用在SHOCKS.TAB中的指示说明来计算在更新后(即模拟后)的数据中有关扭曲的大小。要做到这一点,您将需要修改SHK4P04.CMF(您在上述案例A12中使用的来计算CAP改造模拟的冲抵)来计算在更新后数据的扭曲水平。要做到这一点,首先复制SHK4P04.CMF到一个新的文件SHKCAP.CMF中(使用File | Edit file... 和 Save As...),然后编辑SHKCAP.CMF。确保CAPSIM.UPD是它读取的全球数据集(编辑“文件gtapdata”的声明),并通过在所有名称中用 CAP替换4P04来改变.SHK文件的输出名称(例如“file TOHAT = tocap.shk ;“)。然后保存新的SHKCAP.CMF。 [如果您对您的文件不确定,检查我们已经准备好的文件SHKCAPOK.CMF。]
现在运行GEMSIM并从SHKCAP.CMF中输入数据。一旦已经运行,查看新的输出文件。例如,要看一下欧盟粮食的输出补贴是否已取消,查看文件TOCAP.SHK(通过View
。这里 (food,EU) 的值是消除输出补贴所需的冲抵。这应该几乎为零(表Input/Output Files)
示补贴已被取消);这是您看到的吗?对在TMSCAP.SHK和TXSCAP.SHK中的相关值重复此步。 [如果其中任何一个没有足够接近零,您可以重复在CAPSIM.CMF中的模拟,这次增加步骤的数量,以得到更准确的求解。]
44