示例#1
0
        void GetBounds(ExpertVariable var, out double vmin, out double vmax)
        {
            var min = Experts.Min(x => x.Estimates[var].GetQuantile(0));
            var max = Experts.Max(x => x.Estimates[var].GetQuantile(1));

            if (var is CalibrationVariable)
            {
                var cVar = (CalibrationVariable)var;
                min = Math.Min(min, cVar.TrueValue);
                max = Math.Max(max, cVar.TrueValue);
            }

            var overshoot = (max - min) * K / 100.0;

            vmin = min - overshoot;
            vmax = max + overshoot;
        }
示例#2
0
 /// <summary>
 /// Adds the estimate for the specified variable <c>variable</c>.
 /// </summary>
 /// <param name="variable">Variable.</param>
 /// <param name="estimates">Estimates.</param>
 public void AddEstimate(ExpertVariable variable, ExpertEstimate estimate)
 {
     Estimates.Add(variable, estimate);
 }