public Iυ2 Calculate(
     INormalFactory normalFactory,
     Iυ2ResultElementFactory υ2ResultElementFactory,
     Iυ2Factory υ2Factory,
     IMRNBCalculation MRNBCalculation,
     IRNBCalculation RNBCalculation,
     Iυ2ResultElementCalculation υ2ResultElementCalculation,
     It t,
     IΛ Λ,
     IΩ Ω,
     IExpectedValueI expectedValueI,
     IVarianceI varianceI)
 {
     return(υ2Factory.Create(
                Λ.Value
                .Select(i => υ2ResultElementCalculation.Calculate(
                            normalFactory,
                            υ2ResultElementFactory,
                            MRNBCalculation,
                            RNBCalculation,
                            i,
                            t,
                            Ω,
                            expectedValueI,
                            varianceI))
                .ToImmutableList()));
 }
        public Iυ2ResultElement Calculate(
            INormalFactory normalFactory,
            Iυ2ResultElementFactory υ2ResultElementFactory,
            IMRNBCalculation MRNBCalculation,
            IRNBCalculation RNBCalculation,
            IΛIndexElement ΛIndexElement,
            It t,
            IΩ Ω,
            IExpectedValueI expectedValueI,
            IVarianceI varianceI)
        {
            int MRNB = 0;

            decimal υ2 = 0;

            do
            {
                MRNB = MRNBCalculation.Calculate(
                    normalFactory,
                    RNBCalculation,
                    ΛIndexElement,
                    t,
                    expectedValueI,
                    varianceI,
                    υ2);

                υ2 = (decimal)υ2 + (decimal)0.01;
            } while (MRNB <= Ω.Value.Value.Value && υ2 <= 1);

            return(υ2ResultElementFactory.Create(
                       ΛIndexElement,
                       υ2 - (decimal)0.01)); // Subtract 0.01 to account for last iteration of the do-while loop
        }
Beispiel #3
0
        public IMRNBCalculation Create()
        {
            IMRNBCalculation calculation = null;

            try
            {
                calculation = new MRNBCalculation();
            }
            catch (Exception exception)
            {
                this.Log.Error(
                    exception.Message,
                    exception);
            }

            return(calculation);
        }