public void WriteMarginalDamage(int RunId, Damage i_Damage, int WeightingschemeId, double Weight, WeightingCombination[] WeightingCombinations)
{
if (m_YearRegionSectorWeightingSchemeCsv != null)
{
int gas = Convert.ToInt32(_gas);
m_YearRegionSectorWeightingSchemeCsv.WriteLine(
(OutputVerbal ? ScenarioName : ScenarioId.ToString()) +
";" +
(OutputVerbal ? (RunId == 0 ? "Best guess" : RunId == -1 ? "Mean" : RunId.ToString()) : RunId.ToString()) +
";" +
(OutputVerbal ? (gas == 0 ? "C" : gas == 1 ? "CH4" : gas == 2 ? "N2O" : gas == 3 ? "SF6" : "ERROR") : ((int)_gas).ToString()) +
";" +
_emissionyear.ToString() +
";" +
(i_Damage.Year + 1950).ToString() +
";" +
(OutputVerbal ? i_Damage.Region.ToString() : i_Damage.Region.ToString()) +
";" +
(OutputVerbal ? Enum.GetName(typeof(Sector), i_Damage.Sector) : ((int)i_Damage.Sector).ToString()) +
";" +
(OutputVerbal ? WeightingCombinations[WeightingschemeId].Name : WeightingschemeId.ToString()) +
";" +
(i_Damage.DamageValue * Weight).ToString("f15")
);
}
}