private static double Get(List <double> coefficients, int dimension, List <double> variables)
        {
            var    combinations = CombinationCache.GetCombinations(coefficients.Count, dimension);
            double sum          = 0.0;

            sum += coefficients[0];

            for (int i = 1; i < combinations.Count; i++)
            {
                sum += ComputeSumElementValue(variables, coefficients[i], combinations[i]);
            }

            return(sum);
        }
Beispiel #2
0
        private static Node GetExpression(List <Node> coefficients, int dimension, List <Node> variables)
        {
            var  combinations = CombinationCache.GetCombinations(coefficients.Count, dimension);
            Node sum          = Node.Zero;

            sum += coefficients[0];

            for (int i = 1; i < combinations.Count; i++)
            {
                sum += ComputeSumElementValue(variables, coefficients[i], combinations[i]);
            }

            return(sum);
        }
        public static string GetExpression(int dimension, List <double> coefficients, List <string> variables)
        {
            var    combinations      = CombinationCache.GetCombinations(coefficients.Count, dimension);
            string coefficientString = coefficients[0].ToString(CultureInfo.InvariantCulture);

            StringBuilder result = new StringBuilder();

            result.Append(coefficientString);

            for (int i = 1; i < combinations.Count; i++)
            {
                result.Append($" + {ComputeSumElementString(variables, coefficients[i], combinations[i])}");
            }

            return(result.ToString());
        }