$title 'MPSGE model used by CTRLC test' (GFT,SEQ=595) $if not set ds $set ds g20_001 $include gtap8data.inc parameter esub(g) Top-level elasticity indemand /C 1/; $onText $model:gtap8 $sectors: y(g,r)$vom(g,r) ! Supply m(i,r)$vim(i,r) ! Imports yt(j)$vtw(j) ! Transportation services ft(f,r)$(sf(f) and evom(f,r)) ! Specific factor transformation $commodities: p(g,r)$vom(g,r) ! Domestic output price pm(j,r)$vim(j,r) ! Import price pt(j)$vtw(j) ! Transportation services pf(f,r)$evom(f,r) ! Primary factors rent ps(f,g,r)$(sf(f) and vfm(f,g,r)) ! Sector-specific primary factors $consumers: ra(r) ! Representative agent $prod:y(g,r)$vom(g,r) s:esub(g) i.tl:esubd(i) va:esubva(g) o:p(g,r) q:vom(g,r) a:ra(r) t:rto(g,r) i:p(i,r) q:vdfm(i,g,r) p:(1+rtfd0(i,g,r)) i.tl: a:ra(r) t:rtfd(i,g,r) i:pm(i,r) q:vifm(i,g,r) p:(1+rtfi0(i,g,r)) i.tl: a:ra(r) t:rtfi(i,g,r) i:ps(sf,g,r) q:vfm(sf,g,r) p:(1+rtf0(sf,g,r)) va: a:ra(r) t:rtf(sf,g,r) i:pf(mf,r) q:vfm(mf,g,r) p:(1+rtf0(mf,g,r)) va: a:ra(r) t:rtf(mf,g,r) $prod:yt(j)$vtw(j) s:1 o:pt(j) q:vtw(j) i:p(j,r) q:vst(j,r) $prod:m(i,r)$vim(i,r) s:esubm(i) s.tl:0 o:pm(i,r) q:vim(i,r) i:p(i,s) q:vxmd(i,s,r) p:pvxmd(i,s,r) s.tl: a:ra(s) t:(-rtxs(i,s,r)) a:ra(r) t:(rtms(i,s,r)*(1-rtxs(i,s,r))) i:pt(j)#(s) q:vtwr(j,i,s,r) p:pvtwr(i,s,r) s.tl: a:ra(r) t:rtms(i,s,r) $prod:ft(sf,r)$evom(sf,r) t:etrae(sf) o:ps(sf,j,r) q:vfm(sf,j,r) i:pf(sf,r) q:evom(sf,r) $demand:ra(r) d:p("c",r) q:vom("c",r) e:p("c",rnum) q:vb(r) e:p("g",r) q:(-vom("g",r)) e:p("i",r) q:(-vom("i",r)) e:pf(f,r) q:evom(f,r) $offText $sysInclude mpsgeset gtap8 gtap8.workspace = 128; gtap8.iterlim = 0; $include GTAP8.GEN *solve gtap8 using mcp; * The elasticity for GAS is 34. This makes calculations difficult. esubm(i) = min(12,esubm(i)); esubd(i) = esubm(i)/2; rtxs(i,s,r) = 0; rtms(i,s,r) = 0; gtap8.iterlim = 10000; $include GTAP8.GEN solve gtap8 using mcp;