Ejemplo n.º 1
0
        /// <summary>Evaluates 1st and 2nd statistical moments of the predesignated response.</summary>
        public void Evaluate()
        {
            SystemRealizer.Realize(0);
            double[] systemResponse          = SystemResponseEvaluator.Evaluate(0);
            int      systemResponseDimension = systemResponse.Length;

            MeanValueResponse         = new double[systemResponseDimension];
            StandardDeviationResponse = new double[systemResponseDimension];
            for (int i = 0; i < systemResponse.Length; i++)
            {
                MeanValueResponse[i] += systemResponse[i];
            }

            for (int i = 1; i < NoOfIterations; i++)
            {
                SystemRealizer.Realize(i);
                systemResponse = SystemResponseEvaluator.Evaluate(i);
                for (int j = 0; j < systemResponse.Length; j++)
                {
                    MeanValueResponse[j] += systemResponse[j];
                }
            }

            for (int i = 0; i < systemResponse.Length; i++)
            {
                MeanValueResponse[i]         = MeanValueResponse[i] / NoOfIterations;
                StandardDeviationResponse[i] = (systemResponse[i] - MeanValueResponse[i]) * (systemResponse[i] - MeanValueResponse[i]);
                StandardDeviationResponse[i] = Math.Sqrt(StandardDeviationResponse[i] / NoOfIterations);
            }
        }
Ejemplo n.º 2
0
        /// <summary>Evaluates 1st and 2nd statistical moments of the predesignated response.</summary>
        public void Evaluate()
        {
            SystemRealizer.Realize(0);
            int systemResponseDimension = SystemResponseEvaluator.Evaluate(0).Length;
            var systemResponse          = new double[systemResponseDimension];

            MonteCarloMeanValue         = new double[systemResponseDimension];
            MonteCarloStandardDeviation = new double[systemResponseDimension];
            systemResponse = SystemResponseEvaluator.Evaluate(0);
            for (int i = 0; i < systemResponse.Length; i++)
            {
                MonteCarloMeanValue[i] += systemResponse[i];
            }

            for (int i = 1; i < NoOfIterations; i++)
            {
                SystemRealizer.Realize(i);
                systemResponse = SystemResponseEvaluator.Evaluate(i);
                for (int j = 0; j < systemResponse.Length; j++)
                {
                    MonteCarloMeanValue[j] += systemResponse[j];
                }
            }

            for (int i = 0; i < systemResponse.Length; i++)
            {
                MonteCarloMeanValue[i]         = MonteCarloMeanValue[i] / NoOfIterations;
                MonteCarloStandardDeviation[i] = (systemResponse[i] - MonteCarloMeanValue[i]) * (systemResponse[i] - MonteCarloMeanValue[i]);
                MonteCarloStandardDeviation[i] = Math.Sqrt(MonteCarloStandardDeviation[i] / NoOfIterations);
            }
        }