Пример #1
0
        /// <summary>
        /// 以列表形式返回。
        /// </summary>
        /// <returns></returns>
        public BaseDictionary <TKey, List <KeyValuePair <TGroup, RmsedNumeral> > > GetSatValueList()
        {
            var list = new BaseDictionary <TKey, List <KeyValuePair <TGroup, RmsedNumeral> > >();

            foreach (var item in this.GetKeyValueList())
            {
                list.Add(item.Key, item.Value.GetKeyValueList());
            }

            return(list);
        }
Пример #2
0
        /// <summary>
        /// 并行执行插值操作
        /// </summary>
        /// <param name="index"></param>
        /// <returns></returns>
        public IDictionaryClass <string, RatedValue> GetInterpolateValuesParallel(double index)
        {
            var vals = new BaseDictionary <string, RatedValue>();
            var list = new List <NamedRatedValue>();

            Parallel.ForEach(this.Keys, new Action <string>(delegate(string key)
            {
                double y = 0, dydx = 0;
                Lagrange(Indexes, this[key], index, ref y, ref dydx);
                vals.Add(key, new NamedRatedValue(key, y, dydx));
            }));
            return(vals);
        }