This shows you the differences between two versions of the page.
Both sides previous revision Previous revision | Last revision Both sides next revision | ||
howtos:calibration:projecting_into_history [2009/12/01 13:57] shona.weldon |
howtos:calibration:projecting_into_history [2009/12/01 14:01] shona.weldon |
||
---|---|---|---|
Line 25: | Line 25: | ||
===== Ratio with linint ===== | ===== Ratio with linint ===== | ||
- | A safer way is to create an extra variable which is the ratio of the first year of pre-history to the first year of history and then linear interpret between these 2 points for the historic period. | + | A safer way is to create an extra variable which is the ratio of the first year of pre-history (ratioFamPerPer1910to1978) to the first year of history and then linear interpret between these 2 points for the historic period. |
<code> | <code> | ||
+ | ! Build an object to hold the time from beginning of pre history to end of history and put in the part we know | ||
local ratioFamPerPer[cr,t19782006] = familiesTot[cr,t19782006] / CTotPop[cr,t19782006] | local ratioFamPerPer[cr,t19782006] = familiesTot[cr,t19782006] / CTotPop[cr,t19782006] | ||
local ratioFamPerPerPHx[cr,t19101977] = changeseq (copyshape (ratioFamPerPer[cr,t19782006]); dim=time, start=1910) | local ratioFamPerPerPHx[cr,t19101977] = changeseq (copyshape (ratioFamPerPer[cr,t19782006]); dim=time, start=1910) | ||
ratioFamPerPerPHx[cr,t19101977] = insert (ratioFamPerPer[cr,t19782006]; time->time:1978) | ratioFamPerPerPHx[cr,t19101977] = insert (ratioFamPerPer[cr,t19782006]; time->time:1978) | ||
+ | |||
+ | ! Multiply the ratioFamPerPer1910to1978 agains against the first year of history and insert that as the first year of pre history | ||
ratioFamPerPerPHx[cr,t19101977] = insert (extract (ratioFamPerPer[cr,t19782006]; time:1978, shrink=on) * \ | ratioFamPerPerPHx[cr,t19101977] = insert (extract (ratioFamPerPer[cr,t19782006]; time:1978, shrink=on) * \ | ||
ratioFamPerPer1910to1978[cr]; time:1910) | ratioFamPerPer1910to1978[cr]; time:1910) | ||
+ | ! Do Linear interpolation between these values | ||
local ratioFamPerPerPH[cr,t19101977] = extract (linint (ratioFamPerPerPHx[cr,t19101977]); time:+0..1977) | local ratioFamPerPerPH[cr,t19101977] = extract (linint (ratioFamPerPerPHx[cr,t19101977]); time:+0..1977) | ||
+ | ! Apply the ratio | ||
familiesPH[cr,t19101977] = extract (CEEFpop[cr,t18511990]; time:1910..1977) * ratioFamPerPerPH[cr,t19101977] | familiesPH[cr,t19101977] = extract (CEEFpop[cr,t18511990]; time:1910..1977) * ratioFamPerPerPH[cr,t19101977] | ||
</code> | </code> |