public void Run(Clock clock, IScenarioUncertaintyState state, IDimensions dimensions)
        {
            var s = state;
            var t = clock.Current;

            Double yearsFromUncertaintyStart = t.Value - s.timeofuncertaintystart.Value;
            var    sdTimeFactor = (yearsFromUncertaintyStart / 50.0) / (1.0 + (yearsFromUncertaintyStart / 50.0));

            foreach (var r in dimensions.GetValues <Region>())
            {
                s.ypcgrowth[t, r] = s.scenypcgrowth[t, r] + (t >= s.timeofuncertaintystart ? s.ecgradd[r] * sdTimeFactor : 0.0);
                s.pgrowth[t, r]   = s.scenpgrowth[t, r] + (t >= s.timeofuncertaintystart ? s.pgadd[r] * sdTimeFactor : 0.0);
                s.aeei[t, r]      = s.scenaeei[t, r] + (t >= s.timeofuncertaintystart ? s.aeeiadd[r] * sdTimeFactor : 0.0);
                s.acei[t, r]      = s.scenacei[t, r] + (t >= s.timeofuncertaintystart ? s.aceiadd[r] * sdTimeFactor : 0.0);
                s.forestemm[t, r] = s.scenforestemm[t, r] + (t >= s.timeofuncertaintystart ? s.foremadd[r] * sdTimeFactor : 0.0);
            }
        }
        public void Run(Clock clock, IScenarioUncertaintyState state, IDimensions dimensions)
        {
            var s = state;
            var t = clock.Current;

            Double yearsFromUncertaintyStart = t.Value - s.timeofuncertaintystart.Value;
            var sdTimeFactor = (yearsFromUncertaintyStart / 50.0) / (1.0 + (yearsFromUncertaintyStart / 50.0));

            foreach (var r in dimensions.GetValues<Region>())
            {

                s.ypcgrowth[t, r] = s.scenypcgrowth[t, r] + (t >= s.timeofuncertaintystart ? s.ecgradd[r] * sdTimeFactor : 0.0);
                s.pgrowth[t, r] = s.scenpgrowth[t, r] + (t >= s.timeofuncertaintystart ? s.pgadd[r] * sdTimeFactor : 0.0);
                s.aeei[t, r] = s.scenaeei[t, r] + (t >= s.timeofuncertaintystart ? s.aeeiadd[r] * sdTimeFactor : 0.0);
                s.acei[t, r] = s.scenacei[t, r] + (t >= s.timeofuncertaintystart ? s.aceiadd[r] * sdTimeFactor : 0.0);
                s.forestemm[t, r] = s.scenforestemm[t, r] + (t >= s.timeofuncertaintystart ? s.foremadd[r] * sdTimeFactor : 0.0);
            }
        }