options crt; ? 3e10 in poly; freq a; smpl 60,72; lnuc = log(ucostp); lncp = log(cump); olsq lnuc c lncp; ? (a) smpl 73,73; lncp = log(2*cump(-1)); ? forecast for double last production forcst lnucp; set fvar = @vcov(1,1) + 2*lncp*@vcov(2,1) + lncp*lncp*@vcov(2,2) + @s*@s; print lnucp,fvar; ? (b) - forecast and variance for log unit costs conb1 = lnucp-1.96*sqrt(fvar); conb2 = lnucp+1.96*sqrt(fvar); print conb1,lnucp,conb2; ? (c) - forecast and confidence bands for ? log unit costs ? Now do the forecast and bounds for plain unit costs (vs. log). ? Use the lognormal adjustment for an unbiased forecast set adj = fvar/2; ucp = exp(lnucp+adj); conb1 = exp(conb1+adj); conb2 = exp(conb2+adj); print conb1 ucp conb2; in tio2; freq a; smpl 55,70; ucostd = ucostt/defl; lnuc = log(ucostd); lncp = log(cumt); olsq lnuc c lncp; ? (a) smpl 71,71; lncp = log(2*cumt(-1)); ? forecast for double last production forcst lnucp; ? For variety, let's use matrix algebra instead of just repeating ? the expression for fvar from above. mmake x @rnms; ? this will probably create a row vector mat fvar = x*@vcov*x' + @s2; ? assuming x is a row vector print lnucp,fvar; ? (b) conb1 = lnucp-1.96*sqrt(fvar); conb2 = lnucp+1.96*sqrt(fvar); print conb1,lnucp,conb2; ? (c) ? Now do the forecast and bounds for plain unit costs (vs. log). ? Use the lognormal adjustment for an unbiased forecast set adj = fvar/2; ucp = exp(lnucp+adj); conb1 = exp(conb1+adj); conb2 = exp(conb2+adj); print conb1 ucp conb2;