Impact Calculation Tool code description
This page provides the detailed description of the calculation code in the key parameters of the Impact calculation tool (ICT) -model.
Mortality risk scenarios
Parameter identifier: Mort_risk_scenarios
Total mortality rate for different causes of death in different exposure scenarios is calculated based on the defined exposure levels, exposure-response functions (relative risk (RR) or absolute risk (AR)) and background mortality risk in the population. For those causes of death for which RR functions have been defined, change in the mortality rate is calculated based on the population attributable fraction (PAF) -method. In BAU scenario, the mortality rate is determined by the population and mortality input data. However, if the exposure in the BAU scenario is defined to change during the assessment follow-up period, the mortality and population input data only determine the mortality rate in the first year of the assessment, and any changes in the BAU exposure level in the following years will result in changes in the BAU mortality rate.
if Assessment_type='Exposure scenarios' then var a:= Exposures; var b:= Mortality_erf; var c:= Mort_erf_unit; c:= if c = 0 then 1 else c; var d:=Pop_frac; var e:= exp(ln(b[Erf_type='Relative Risk'])/c*a[@Fu_period=1]); var f:=((e*d)+(1-d))[Exposure='Reference']; var g:=((e*d)+(f*(1-d)))[Exposure='BAU']; g:=(g-1)/g; g:= Input_mort_risk*(1-g); f:=Table(Exposure)(f, f, 1); e:= exp(ln(b[Erf_type='Relative Risk'])/c*a); f:=(e*d)+(f*(1-d)); g:=f*g; var h:= a-a[Exposure='BAU', @Fu_period=1]; h:= b[Erf_type='Absolute Risk']/c*h*d; sum(Table(Erf_type)(g,h),Erf_type) else var j:=Input_mort_risk*(1+Change_mort[Scenario='BAU']/100); var k:=Input_mort_risk*(1+Change_mort[Scenario='Alternative']/100); var l:=Input_mort_risk*(1-Input_mort_abfrac); Table(Exposure)(j, k, l )
Code description line-by-line:
1: If the starting point for the assessment is ”Exposure scenarios”, then mortality risk in different scenarios is calculated based on the code on lines 2-18.
2: Exposure level in different scenarios.
3: Exposure-response functions for different mortality endpoints.
4-5: Exposure unit to which the exposure-response function relates to.
6: Fraction of exposed population in different scenarios.
7: Relative risk (RR) exposure-response function is adjusted to the exposure level in the first year of the assessment.
8: Calculation of the population average adjusted RR in reference scenario.
9: Calculation of the population average adjusted RR in BAU scenario.
10: Calculation of the population attributable fraction (PAF) in BAU scenario in the first year of the assessment.
11: Calculation of the baseline mortality risk, i.e. the mortality risk in the (theoretical) absence of the exposure.
12: Calculation of the adjusted RR for that fraction of population which is exposed only to the reference scenario level (i.e. no exposure or natural background exposure level).
13: Calculation of the adjusted RR for that fraction of population which is exposed to the exposure level defined in for the scenario.
14: Calculation of the population average adjusted RR in different exposure scenarios.
15: Morbidity rate in different scenarios is calculated for those causes of death for which RR exposure-response functions have been defined for by multiplying the baseline mortality risk in the theoretical absence of the exposure by the population average adjusted RR.
16: Difference in the exposure level in Reference and Alternative scenarios compared to BAU scenario.
17: Difference in mortality risk in Reference and Alternative scenarios compared to BAU scenario is calculated for those causes of death for which absolute risk (AR) exposure-response functions have been defined for.
18: Risk of mortality due to different causes of death and any changes in these risks compared to the BAU scenario are combined in one table.
19: If the starting point for the assessment is ”Health outcome scenarios”, then mortality risk in different scenarios is calculated based on the code on lines 20-23.
20: Mortality risk in BAU scenario is calculated based on the input data on the mortality risk, fraction of mortality cases attributable to the exposure/risk factor of interest in the input data, and the precentage change in the attributable mortality risk defined for the BAU scenario.
21: Mortality risk in Alternative scenario is calculated based on the input data on the mortality risk, fraction of mortality cases attributable to the exposure/risk factor of interest in the input data, and the precentage change in the attributable mortality risk defined for the Alternative scenario.
22: Mortality risk in Reference scenario is calculated based on the input data on the mortality risk and fraction of mortality cases attributable to the exposure/risk factor of interest in the input data.
23: Mortality risks in different scenarios are combined into one table.
Population in time, child
Parameter identifier: Pop_in_time_child
Population of 0-4 year-olds is projected in 1-year age and time steps for 100 years from the assessment start year onwards, after which the population in the beginning of each 5-year follow-up period is determined. Population of 0-4 year-olds is projected separately in 1-year age and time intervals because mortality risk can vary drastically within the 0-4 age group.
var k: Birth_rate[Fu_year=Year_lt]; k:= if k = null then {k[@Year_lt=Followup_time]} 0 else k; var a:= if @Year_lt = 1 then Pop_data else (if @Age=1 then k else 0); a:= a[Age=age_child]; var j:= sum(Mort_risk_scenarios,Mort_endpoint)[Age=age_child]; j:=if Mort_effect = 'Acute' then j[Exposure='BAU'] else j; j:=j[Fu_period=Period_lt]; j:= if j = null then j[Exposure='Reference',Period_lt=max(Fu_period)] else j; j:= Si_pi(j, 5, Period_lt, Year_lt, Year_help)*5; j:= if j < 0 then 0 else j; j:= if j > 1 then 1 else j; j:= 1-j; var x:= 1; while x<= min([size(age_child),size(Year_lt)]) do ( var b:= a*j; b:= b[@age_child=@age_child-1, @Year_lt=@Year_lt-1]; a:= if b=null then a else b; x:= x+1); sum(if Year_lt = period_vs_year then a else 0,Year_lt)
Code description line by line:
1-2: Annual birth rate for 100 year time period starting from the assessment start year and based on the birth rate input data. If the assessment follow-up time < 100 years, the birth rate in the last follow-up year applies for the rest of the 100 year time period.
3-4: The population table for 0-4 year olds for which the projection is based on (age*follow-up year array). Population for all 0-4 year olds in the first year is based on the population input data and the population for 0 year olds in the rest of the follow-up years on the birth rate data.
5: Calculation of the annual total mortality risk (1-year age interval).
6: If mortality effects are defined to be of acute nature (i.e. ERF represents impact on daily instead of annual mortality), the population is projected only based on the total mortality risk in the BAU scenario.
7-8: Mortality risk in all scenarios in the 100 year period following the assessment follow-up period is defined to be on the level of the last follow-up 5-year time step in the Reference scenario.
9: Mortality risk is changed from 5 to 1-year follow-up time steps.
10-11: Total mortality risk is limited to be between 0 and 1.
12: Calculation of the annual survival rate.
13-18: The child population is projected through the 100 year time period. Population at a given 1-year age group and year is multiplied with the annual survival rate for that age. The result is the population of the next 1-year age group in the following year.
19: Population in the beginning of each 5-year follow-up period is derived from the annual projection.
Population in time, beginning of time step
Parameter identifier: Pop_in_time_beg
Population is projected in 5-year age and calendar year intervals for 100 years from the assessment start year onwards. The resulting table gives the population in the beginning of each 5-year time step.
var a:= sum(if floor(Age/5)+1 = @Age_cat then Pop_data else 0 , Age); a:= if @Age_cat=1 then sum(Pop_in_time_child, Age_child) else (if @period_lt = 1 then a else 0); var j:= sum(Mort_risk_scenarios,Mort_endpoint); j:=if Mort_effect = 'Acute' then j[Exposure='BAU'] else j; j:=j[Fu_period=Period_lt]; j:= if j = null then j[Exposure='Reference',Period_lt=max(Fu_period)] else j; j:= if j < 0 then 0 else j; j:= if j > 1 then 1 else j; j:= 1-j; j:= sum(if floor(Age/5)+1 = @Age_cat then j else 0 , Age)/5; var m:=j[@Age_cat=@Age_cat+1]; m:= if m=null then 0 else m; var n:=((j^5)+(j^4*m)+(j^3*m^2)+(j^2*m^3)+(j*m^4))/5; var x:= 1; while x<= min([size(Age_cat),size(Period_lt)]) do ( var b:= a*n; b:= b[@Age_cat=@Age_cat-1, @Period_lt=@Period_lt-1]; a:= if b=null then a else b; x:= x+1); a
Code description line by line:
1-2: The population table for which the projection is based on (age*follow-up year array). Population in the beginning of first 5-year time step is based on the population input data, which is summed up to derive population in 5-year age intervals. Population in age group 0-4 for the 100 year period is based on the child (0-4 years old) population projection.
3: Calculation of the annual total mortality risk (1-year age interval).
4: If mortality effects are defined to be of acute nature (i.e. ERF represents impact on daily instead of annual mortality), the population is projected only based on the total mortality risk in the BAU scenario.
5-6: Mortality risk in all scenarios in the 100 year period following the assessment follow-up period is defined to be on the level of the last follow-up 5-year time step in the Reference scenario.
7-8: Total mortality risk is limited to be between 0 and 1
9: Calculation of the annual survival rate.
10: Calculation of the annual average survival rate for 5-year age groups.
11-1: Calculation of the average survival rate from one age group and 5-year follow-up period to the next age group and 5-year follow-up period.
16-22: The population is projected through the follow-up + 100 year time period. Population at a beginning of a given age group and 5-year follow-up period is multiplied with the average 5-year-period survival rate for the age group. The result is the population of the next age group in the beginning of the following 5-year follow-up period.
Population in time, average for time step
Parameter identifier: Pop_in_time_ave
Based on the population projection which determines the population structure in the beginning of 5-year time steps, the average number of population during each 5-year time step for the assessment follow-up period is calculated. However, if the follow-up period is only 1 year, the population structure during this year is defined based on the population input data.
var a:=Pop_in_time_beg[Period_lt=Fu_period]; var b:=(Pop_in_time_beg[@Period_lt=@Period_lt+1])[Period_lt=Fu_period]; b:= if b = null then a[Fu_period=max(Fu_period)] else b; b:=(a+b)/2; if followup_time=1 then a else b
Code description line by line:
1: Population in the beginning of each 5-year time step during the assessment follow-up period.
2-3: Population in the beginning of the next 5-year time step.
4: Based on these, the model calculates the average number of population within all age groups for each 5-year time step.
5: If the assessment follow-up period is 1 year, population structure is the same as in the beginning of the population projection (i.e. calculated directly from the population input data)
Life years in time
Parameter identifier: Life_years
Calculates the number of life years lived by a given 5-year age group in a given 5-year time step 100 years onwards from the beginning of the assessment.
var a:= Pop_in_time_beg; var b:=sum(Mort_risk_scenarios,Mort_endpoint); b:= if Mort_effect = 'Acute' then b[Exposure='BAU'] else b; b:=b[Fu_period=period_lt]; b:= if b = null then b[Exposure='Reference',Period_lt=max(Fu_period)] else b; b:= if b < 0 then 0 else b; b:= if b>1 then 1 else b; b:= 1-b; b:= sum(if floor(Age/5)+1 = @Age_cat then b else 0 , Age)/5; var c:=b[@Age_cat=@Age_cat+1]; c:= if c=null then c[Age_cat='90-94'] else c; var d:=((b^5)+(b^4*c)+(b^3*c^2)+(b^2*c^3)+(b*c^4))/5; var e:= a-(a*d); ((a*d*5)+e*2.5)*Age_weight*Pv_life_year
Code description line-by-line:
1: Population projection for 100 years in the different exposure scenarios (population in the beginning of each 5-year time)
2: Calculation of the annual total mortality rate in different scenarios (one year age interval).
3: If mortality effects are defined to be of acute nature (i.e. ERF represents impact on daily instead of annual mortality), the age-adjusted life expectancy is calculated only based on the total mortality rate in the BAU scenario.
4-5: Mortality risk in all scenarios in the 100 year period following the assessment follow-up period is defined to be on the level of the last follow-up 5-year time step in the Reference scenario.
6-7: Total mortality rate is limited to be between 0 and 1
8: Calculation of the annual survival rate in different scenarios (1-year age interval).
9: Calculation of the annual average survival rate for 5-year age groups.
10-12: Calculation of the average survival rate from one 5-year age group and 5-year follow-up period to the next 5-year age group and 5-year follow-up period.
13: Number of deaths in a given 5-year age group and 5-year follow-up period is calculated based on the population projection and survival rate.
14: Number of life years lived in a given 5-year age group and 5-year follow-up period is calculated based on the population projection, survival rate and number of deaths. Those who survive to the next 5-year follow-up period gain 5 life years. Those who die during the 5-year follow-up period are assumed to gain in average 2.5 life years. The total number of life years lived in a given 5-year age group and 5-year follow-up period are multiplied by age weight and present value of life years.
Age-adjusted life expectancy
Parameter indentifier: Ad_le
Var a:=Life_years; var b:= 0; var x:= 1; while x<= min([size(Age_cat),size(Period_lt)]) do ( b:= b + a; a:= a[@Age_cat=@Age_cat+1, @Period_lt=@Period_lt+1]; a:= if a=null then 0 else a; x:= x+1); b:=b[@Period_lt=1]/Pop_in_time_beg[@Period_lt=1]; if isnan(b)=1 then 0 else b
Code description line-by-line:
1: Life years lived (age group*calendar year array) in different scenarios
2-8: The model calculates the total number of expected life years during the following 100 years for the population in each age group in the beginning of the assessment. This is done by summing up the life years diagonally over age group and time dimensions.
9-10: The average age-adjusted life expectancy in at a given age is calculated by dividing the total number of expected life years by the size of the population in the same age group in the beginning of the assessment.
Life expectancy in a birth cohort
Parameter identifier: Le_cohort
var a:= sum(Mort_risk_scenarios,Mort_endpoint); a:= if Mort_effect = 'Acute' then a[Exposure='BAU'] else a; a:=a[Fu_period=period_lt]; a:= if a = null then a[Exposure='Reference',Period_lt=max(Fu_period)] else a; a:= Si_pi(a, 5, Period_lt, Year_lt, Year_help)*5; a:=if a < 0 then 0 else a; a:=if a>1 then 1 else a; a:= 1-a; var b:=1; var c:=0; var d:=0; var x:= 0; while x<=99 do ( c:=b*a[Age=x, @Year_lt=x+1]; d:=d+c+(b-c)/2; b:=c; x:= x+1); d
Code description line-by-line:
1: Calculation of the annual total mortality rate in different scenarios (1-year age interval).
2: If mortality effects are defined to be of acute nature (i.e. ERF represents impact on daily instead of annual mortality), the life expectancy in a birth cohort is calculated only based on the total mortality rate in the BAU scenario.
3-4: Mortality risk in all scenarios in the 100 year period following the assessment follow-up period is defined to be on the level of the last follow-up 5-year time step in the Reference scenario.
5: Mortality rate is changed from 5 to 1-year time step intervals.
6-7: Mortality rate is limited to be between 0 and 1.
8: Calculation of the annual survival rate (1-year age interval).
9-18: The model calculates the cumulative survival rate at all ages. Cumulative survival rates are then summed up to give the average life expectancy in a birth cohort. It is assumed, that those who die at a given age gain in average 0.5 years during the year when they die. If the exposure, and, hence, age-specific mortality risks change in the course of the assessment, the cumulative survival rates are summed up diagonally over age and calendar year dimensions.
Mortality, specified
Parameter identifier: Ab_mortality_spec
Calculation of the number of deaths attributable to the exposure or hazard in different scenarios. The attributable deaths are presented for different age groups and 5-year follow-up time steps.
var a:= Mort_risk_scenarios; a:=if a<0 then 0 else a; a:=if a>1 then 1 else a; a:= sum(if floor(Age/5)+1 = @Age_cat then a else 0 , Age)/5; a:=a-a[Exposure='Reference']; a:= a*Pop_in_time_ave; var b:=Table(Time_unit)(a, a*5); a:= if followup_time <2 then a else b; if Outcome= 'Change in EBD' then a[Exposure='Alternative']-a[Exposure='BAU'] else a
Code description line-by-line:
1: Annual mortality risk for different causes of death in different exposure scenarios in 1-year age groups.
2-3: Mortality risk is limited to be between 0 and 1.
4: Mortality risk in 5-year age groups is calculated based on the mortality risk in 1-year age groups. It is assumed that the population is distributed evenly within the 5-year age groups.
5: Mortality risk attributable to the exposure/risk factor of interest in BAU and alternative scenarios is calculated by subtracting the reference scenario mortality risk (i.e. the mortality risk at no exposure or natural background exposure level) from the mortality risk in BAU/Alternative scenario.
6: Attributable deaths are calculated by multiplying the attributable mortality risk with the average annual population during each 5-year time step in different scenarios.
7: A table is created, which presents the attributable deaths per different time units (average annual, per 5-year period).
8: If the assessment follow-up time is one year, the results are given in a table without the time unit dimension.
9: If the outcome of interest is "Change in EBD" (i.e. change in the environmental burden of disease in the alternative scenario compared to the BAU scenario), then the attributable deaths in BAU scenario are subtracted from the attributable deaths in alternative scenario.
YLL, specified
Parameter identifier: Yll_spec
Calculation of the years of life lost due to mortality (YLL) for the mortality endpoints of interest. YLL is presented for different age groups and 5-year follow-up time steps.
if Assessment_type = 'Total burden of disease' then var a:=Exposures; var b: Mort_erf_bod; var c:= Mort_erf_unit; c:= if c = 0 then 1 else c; var d:=Pop_frac; var e:= exp(ln(b)/c*a); var f:=((e*d)+(1-d))[Exposure='Reference']; var g:=((e*d)+(f*(1-d)))[Exposure='BAU']; g:=(g-1)/g; g:= As_total_yll*(1-g); f:=Table(Exposure)(f, f, 1); f:=(e*d)+(f*(1-d)); f:=f*g; f-f[Exposure='Reference'] else if Mort_effect = 'Acute' then Ab_mortality_spec*Life_lost*Pv_life_year[period_lt=Fu_period]*Age_weight else if App_yll = 'Life tables' then var a:=Life_years; a:= (a[Exposure='Reference']-a); if Outcome= 'Change in EBD' then a[Exposure='Alternative']-a[Exposure='BAU'] else a else Ab_mortality_spec*Ad_le[Exposure='Reference']*Pv_life_year[Period_lt=Fu_period]
Code description line-by-line:
1: If the starting point for the assessment is ”Total burden of disease”, i.e. the health impacts of an exposure are calculated based on exposure scenarios, exposure-response functions, and total burden of disease data for the mortality/morbidity endpoints of interest, then YLL is calculated based on the code on lines 2-15.
2: Exposure level.
3: Exposure-response functions (relative risks) for different mortality endpoints.
4-5: Exposure unit to which the exposure-response function relates to.
6: Fraction of exposed population.
7: Exposure-response function (relative risk) is adjusted to the exposure level defined for the scenario.
8: Calculation of the population average adjusted RR in reference scenario.
9: Calculation of the population average adjusted RR in BAU scenario.
10: Calculation of the fraction of mortality risk attributable to the exposure in BAU scenario.
11: Calculation of YLL in the absence of exposure.
12: RR for that fraction of population which is exposed only to the reference scenario level (zero or natural background exposure level).
13: Calculation of the population average adjusted RR in different exposure scenarios.
14: Calculation of total YLL for different mortality endpoints in different scenarios.
15: Calculation of YLL attributable to the exposure interest in BAU and Alternative scenarios.
16: If the starting point for the assessment is ”Exposure scenarios” or "Health outcome scenarios" and the mortality effects are defined to be acute (i.e. ERF represents impact on daily instead of annual mortality), then YLL is calculated based on the code on line 13.
17: YLL is calculated by multiplying the age-specific attributable deaths with the loss of life defined for an attributable death at a given age, age weights and the present value of future life years.
18: If the starting point for the assessment is ”Exposure scenarios” or "Health outcome scenarios" and the mortality effects are defined to be chronic (i.e. ERF represents impact on annual mortality), and the approach for YLL calculation is “Life tables” (i.e. YLL is calculated based on the differences in life year projections for different exposure scenarios) then YLL is calculated based on the code on lines 19-22.
19: The modeled life years lived during the assessment follow-up period + a 100 year period in different exposure scenarios (5-year age groups and 5-year time steps).
20: The absolute difference in life years lived in BAU and Alternative scenarios compared to Reference scenario.
21: If the outcome of interest is "Change in EBD" (i.e. change in the environmental burden of disease in the alternative scenario compared to the BAU scenario), then YLL in BAU scenario is deducted from YLL in alternative scenario.
22: If the starting point for the assessment is ”Exposure scenarios” or "Health outcome scenarios", the mortality effects are defined to be chronic (i.e. ERF represents impact on annual mortality), and the approach for YLL calculation is “Attributable deaths” (i.e. YLL is calculated based on the no. of age-specific attributable deaths in different exposure scenarios and age-adjusted life expectancy) then YLL is calculated based on the code on lines 24.
23: YLL is calculated by multiplying the no. of age-specific attributable deaths with the age-adjusted life expectancy in Reference scenario and present value of life years lost in the future.
Morbidity risk scenarios
Parameter identifier: Morb_risk_scenarios
Total morbidity rate in different exposure scenarios is calculated for those morbidity endpoints for which relative risk (RR) exposure-response function and background morbidity incidence/prevalence data has been provided. Change in the morbidity rate is calculated based on the population attributable fraction (PAF) -method. Morbidity rate in BAU scenario is determined based on the population and morbidity incidence/prevalence input data. However, if the exposure in BAU scenario is defined to change during the assessment follow-up period, the population and morbidity input data only determine the morbidity rate in the first year of the assessment, and any changes in the BAU exposure level in the following years will result in changes in the BAU morbidity rate.
if Assessment_type='Exposure scenarios' then var a:= Exposures; var b:= Morbidity_erf; var c:= Morb_erf_unit; c:= if c = 0 then 1 else c; var d:=Pop_frac; var e:= exp(ln(b[Erf_type='Relative Risk'])/c*a[@Fu_period=1]); var f:=((e*d)+(1-d))[Exposure='Reference']; var g:=((e*d)+(f*(1-d)))[Exposure='BAU']; g:=((g-1)/g); g:= Input_morb_risk*(1-g); f:=Table(Exposure)(f, f, 1); e:= exp(ln(b[Erf_type='Relative Risk'])/c*a); f:=(e*d)+(f*(1-d)); f*g else var h:=Input_morb_risk+(Input_morb_risk*Input_morb_abfrac*Outcome_morb[Scenario='BAU']/100); var i:=Input_morb_risk+(Input_morb_risk*Input_morb_abfrac*Outcome_morb[Scenario='Alternative']/100); var j:=Input_morb_risk*(1-Input_morb_abfrac); Table(Exposure)(h, i, j)
Code description line-by-line
1: If the starting point for the assessment is ”Exposure scenarios”, then morbidity risk in different scenarios is calculated based on the code on lines 2-15.
2: Exposure level in different scenarios. If exposure has been defined age-specifically, then the age interval is changed from 5-year to 1-year.
3: Exposure-response functions for different morbidity endpoints.
4-5: Exposure unit to which the exposure-response function relates to.
6: Fraction of exposed population in different scenarios.
7: Relative risk (RR) exposure-response function is adjusted to the exposure level in the first year of the assessment.
8: Calculation of the population average adjusted RR in reference scenario.
9: Calculation of the population average adjusted RR in BAU scenario.
10: Calculation of the population attributable fraction (PAF) in BAU scenario in the first year of the assessment.
11: Calculation of the baseline morbidity risk, i.e. the morbidity risk in the (theoretical) absence of the exposure.
12: Calculation of the adjusted RR for that fraction of population which is exposed only to the reference scenario level (i.e. no exposure or natural background exposure level).
13: Calculation of the adjusted RR for that fraction of population which is exposed to the exposure level defined in for the scenario.
14: Calculation of the population average adjusted RR in different exposure scenarios.
15: Morbidity rate in different scenarios is calculated for those morbidity endpoints for which RR exposure-response functions have been defined for by multiplying the baseline morbidity rate in the theoretical absence of the exposure by the population average adjusted RR.
16: If the starting point for the assessment is ”Health outcome scenarios”, then morbidity risk in different scenarios is calculated based on the code on lines 17-20.
17: Morbidity risk in BAU scenario is calculated based on the input data on the morbidity risk, fraction of morbidity cases attributable to the exposure/risk factor of interest in the input data, and the precentage change in the attributable morbidity risk defined for the BAU scenario.
18: Morbidity risk in Alternative scenario is calculated based on the input data on the morbidity risk, fraction of morbidity cases attributable to the exposure/risk factor of interest in the input data, and the precentage change in the attributable morbidity risk defined for the Alternative scenario.
19: Morbidity risk in Reference scenario is calculated based on the input data on the morbidity risk and fraction of morbidity cases attributable to the exposure/risk factor of interest in the input data.
20: Morbidity risks in different scenarios are combined into one table.
Morbidity, specified
Parameter identifier: Ab_morbidity_spec
Calculation of the number of morbidity cases attributable to the exposure or hazard in different scenarios. The attributable morbidity cases are presented for different age groups and 5-year follow-up time steps.
if Assessment_type = 'Exposure scenarios' then var a:= Exposures; var b:= Morbidity_erf; var c:= Morb_erf_unit; c:= if c = 0 then 1 else c; var d:= Pop_frac; var e:= Morb_risk_scenarios; var f:= b[Erf_type='Absolute Risk']/c*a*d; var g:=sum(Table(Erf_type)(e,f),Erf_type); g:=if g<0 then 0 else g; g:= sum(if floor(Age/5)+1 = @Age_cat then g else 0, Age)/5; g:=g-g[Exposure='Reference']; g:=g*Pop_in_time_ave; var h:=Table(Time_unit)(g, g*5); h:= if followup_time <2 then g else h; if Outcome= 'Change in EBD' then h[Exposure='Alternative']-h[Exposure='BAU'] else h else if Input_morb_outcome = 'Percentage change' then var a:= Morb_risk_scenarios; a:=if a<0 then 0 else a; a:= sum(if floor(Age/5)+1 = @age_cat then a else 0 , Age)/5; a:=a-a[Exposure='Reference']; a:= a*Pop_in_time_ave; var b:=Table(Time_unit)(a, a*5); a:= if followup_time <2 then a else b; if Outcome= 'Change in EBD' then a[Exposure='Alternative']-a[Exposure='BAU'] else a else var a:= Outcome_morb; a:= sum(if floor(Age/5)+1 = @Age_cat then a else 0, Age); a:= a-a[Exposure='Reference']; var b:=Table(Time_unit)(a, a*5); a:= if Followup_time <2 then a else b; if Outcome = 'Change in EBD' then a[Exposure='Alternative']-a[Exposure='BAU'] else a
Code description line-by-line:
1: If the starting point for the assessment is ”Exposure scenarios”, then the attributable morbidity cases are calculated based on the code on lines 2-16.
2: Exposure level in different scenarios.
3-4: Exposure-response functions for different morbidity endpoints.
5-6: Exposure unit to which the exposure-response function relates to.
7: Fraction of exposed population in different scenarios.
8-9. Annual total morbidity risk in different exposure scenarios for those morbidity endpoints for which relative risk (RR) exposure-response functions are applied.
10: Morbidity risk attributable to the exposure in different scenarios is calculated for those morbidity endpoints for which absolute risk (AR) exposure-response functions have been defined.
11: Morbidity risks for different endpoints is combined to one table.
12: Morbidity risk is limited to be above 0.
13: Morbidity risk in 5-year age groups is calculated based on the mortality risk in 1-year age groups. It is assumed that the population is distributed evenly within the 5-year age groups.
14: Morbidity risk attributable to the exposure in BAU and Alternative scenarios is calculated by subtracting the morbidity risk in Reference scenario from the morbidity risk in BAU and Alternative scenarios.
15: Attributable morbidity cases are calculated by multiplying the attributable morbidity risk with the average annual population during each 5-year time step in different scenarios.
14: A table is created, which presents the attributable morbidity cases per different time units(average annual, per 5-year period).
15: If the assessment follow-up time is one year, the results are given in a table without the time unit dimension.
16: If the outcome of interest is "Change in EBD" (i.e. change in the environmental burden of disease in the alternative scenario compared to the BAU scenario), attributable morbidity cases in BAU scenario are subtracted from attributable morbidity cases in Alternative scenario.
17: If the starting point for the assessment is ”Health outcome scenarios” and the input for morbidity outcome calculation is 'Percentage change', then the attributable morbidity cases are calculated based on the code on lines 18-25.
18: Annual morbidity risk in different exposure scenarios in 1-year age groups.
19: Morbidity risk is limited to be above 0.
20: Morbidity risk in 5-year age groups is calculated based on the mortality risk in 1-year age groups. It is assumed that the population is distributed evenly within the 5-year age groups.
21: Morbidity risk attributable to the exposure/risk factor of interest in BAU and Alternative scenarios is calculated by subtracting the morbidity risk in Reference scenario (i.e. the morbidity risk at no exposure or natural background exposure level) from the morbidity risk in BAU/Alternative scenario.
22: Attributable morbidity cases are calculated by multiplying the attributable morbidity risk with the average annual population during each 5-year time step in different scenarios.
23: A table is created, which presents the attributable morbidity cases per different time units (average annual, per 5-year period).
24: If the assessment follow-up time is one year, the results are given in a table without the time unit dimension.
25: If the outcome of interest is "Change in EBD" (i.e. change in the environmental burden of disease in the Alternative scenario compared to the BAU scenario), then the attributable morbidity cases in BAU scenario are subtracted from the attributable morbidity cases in Alternative scenario.
26: If the starting point for the assessment is ”Health outcome scenarios” and the input for morbidity outcome calculation is 'No. of cases', then the attributable morbidity cases are calculated based on the code on lines 27-32.
27: Attributable morbidity cases in 1-year age groups in different scenarios.
28: Attributable morbidity cases in 1-year age groups are summed to morbidity cases in 5-year age groups.
29: Morbidity cases attributable to the exposure/risk factor of interest in BAU and Alternative scenarios is calculated by subtracting the attributable morbidity cases in Reference scenario (i.e. the attributable cases at no exposure or natural background exposure level) from the attributable morbidity cases in BAU/Alternative scenario.
30: A table is created, which presents the attributable morbidity cases per different time units (average annual, per 5-year period).
31: If the assessment follow-up time is one year, the results are given in a table without the time unit dimension.
32: If the outcome of interest is "Change in EBD" (i.e. change in the environmental burden of disease in the Alternative scenario compared to the BAU scenario), then the attributable morbidity cases in BAU scenario are subtracted from the attributable morbidity cases in Alternative scenario.
YLD, specified
Parameter identifier: Yld_spec
Calculation of the years of life lost due to disease (YLD) for the morbidity endpoints of interest. YLD is presented for different age groups and 5-year follow-up time steps.
if Assessment_type = 'Total burden of disease' then var a:=Exposures; var b: Morb_erf_bod; var c:= Morb_erf_unit; c:= if c = 0 then 1 else c; var d:=Pop_frac; var e:= exp(ln(b)/c*a); Var f:=((e*d)+(1-d))[Exposure='Reference']; var g:=((e*d)+(f*(1-d)))[Exposure='BAU']; g:=(g-1)/g; g:= As_total_yld*(1-g); f:=Table(Exposure)(f, f, 1); f:=(e*d)+(f*(1-d)); f:=f*g; f-f[Exposure='Reference'] else var a:= Ab_morbidity_spec*Duration*Daly_weight*Pv_life_year[Period_lt=Fu_period]; if isnan(a)=1 then 0 else a;
Code description line-by-line:
1: If the starting point for the assessment is ”Total burden of disease”, i.e. the health impacts of an exposure are calculated based on exposure scenarios, exposure-response functions, and total burden of disease data for the mortality/morbidity endpoints of interest, then YLD is calculated based on the code on lines 2-11.
2: Exposure level.
3: Exposure-response functions (relative risks) for different morbidity endpoints.
4-5: Exposure unit to which the exposure-response function relates to.
6: Fraction of exposed population.
7: Exposure-response function (relative risk) is adjusted to the exposure level defined for the scenario.
8: Calculation of the population average adjusted RR in reference scenario.
9: Calculation of the population average adjusted RR in BAU scenario.
10: Calculation of the fraction or disability risk attributable to the exposure in BAU scenario.
11: Calculation of YLD in the absence of exposure.
12: RR for that fraction of population which is exposed only to the reference scenario level (zero or natural background exposure level).
13: Calculation of the population average adjusted RR in different exposure scenarios.
14: Calculation of total YLD for different disability endpoints in different scenarios.
15: Calculation of YLD attributable to the exposure of interest in BAU and Alternative scenarios.
16: If the starting point for the assessment is ”Exposure scenarios” or "Health outcome scenarios", then YLD is calculated based on the code on lines 17-18.
17: YLD is calculated by multiplying the no. of attributable morbidity cases with the severity weight and duration defined for the morbidity endpoint. If age-weighting or time discounting is applied, YLD is multiplied with age-weights and the present value of life years.