Example #1
0
 private decimal GetCoeficientK(MetalCoefficientWeighting coeficientValues, MetalSample sample, MetalQualityBaseValue baseValues)
 {
     return((decimal)Round(Sqrt(
                               (double)(coeficientValues.LateralShearRate * Round((decimal)sample.LateralShearRate / baseValues.LateralShearRate, 2) * Round((decimal)sample.LateralShearRate / baseValues.LateralShearRate, 2)
                                        + coeficientValues.LongitudinalShearRate * Round((decimal)sample.LongitudinalShearRate / baseValues.LongitudinalShearRate, 2) * Round((decimal)sample.LongitudinalShearRate / baseValues.LongitudinalShearRate, 2)
                                        + coeficientValues.ShearStrainRate * Round((decimal)sample.ShearStrainRate / baseValues.ShearStrainRate, 2) * Round((decimal)sample.ShearStrainRate / baseValues.ShearStrainRate, 2)
                                        + coeficientValues.LoadingSpeed * Round((decimal)sample.LoadingSpeed / baseValues.LoadingSpeed, 2) * Round((decimal)sample.LoadingSpeed / baseValues.LoadingSpeed, 2)
                                        + coeficientValues.SpallStrength * Round(sample.SpallStrength / baseValues.SpallStrength, 2) * Round(sample.SpallStrength / baseValues.SpallStrength, 2)
                                        )), 2));
 }
Example #2
0
        public void AddMetalType(MetalTypeModel model)
        {
            using (ObjectContext context = new ObjectContext(_connectionString))
            {
                var type = new Metal
                {
                    Name = model.MetalName
                };
                var types = context.CreateObjectSet <Metal>();
                types.AddObject(type);

                var baseValues = context.CreateObjectSet <MetalQualityBaseValue>();
                var baseValue  = new MetalQualityBaseValue
                {
                    MetalId               = type.MetalId,
                    LateralShearRate      = model.LateralShearRate,
                    LoadingSpeed          = model.LoadingSpeed,
                    LongitudinalShearRate = model.LongitudinalShearRate,
                    ShearStrainRate       = model.ShearStrainRate,
                    SpallStrength         = model.SpallStrength
                };
                baseValues.AddObject(baseValue);


                var coeficients = context.CreateObjectSet <MetalCoefficientWeighting>();
                var coeficient  = new MetalCoefficientWeighting
                {
                    MetalId               = type.MetalId,
                    LateralShearRate      = model.LateralShearRateC,
                    LoadingSpeed          = model.LoadingSpeedC,
                    LongitudinalShearRate = model.LongitudinalShearRateC,
                    ShearStrainRate       = model.ShearStrainRateC,
                    SpallStrength         = model.SpallStrengthC
                };
                coeficients.AddObject(coeficient);

                context.SaveChanges();
            }
        }
Example #3
0
        private IList <MetalSampleQualityRateModel> SetMetalSamplePropertyList(MetalQualityBaseValue baseValues, MetalSample sample,
                                                                               MetalCoefficientWeighting coeficientValues)
        {
            var propertyList = new List <MetalSampleQualityRateModel>();
            var model        = new MetalSampleQualityRateModel
            {
                SampleProperty       = "Швидкість навантаження V, м/с",
                BaseValue            = baseValues.LoadingSpeed,
                SampleValue          = sample.LoadingSpeed,
                RelativeValue        = Math.Round((decimal)sample.LoadingSpeed / baseValues.LoadingSpeed, 2),
                CoefficientWeighting = coeficientValues.LoadingSpeed,
                Angle = Round(360 * coeficientValues.LoadingSpeed, 0)
            };

            propertyList.Add(model);

            model = new MetalSampleQualityRateModel
            {
                SampleProperty       = "Поперечна швидкість зсуву Vt, м/с",
                BaseValue            = baseValues.LateralShearRate,
                SampleValue          = sample.LateralShearRate,
                RelativeValue        = Math.Round((decimal)sample.LateralShearRate / baseValues.LateralShearRate, 2),
                CoefficientWeighting = coeficientValues.LateralShearRate,
                Angle = Round(360 * coeficientValues.LateralShearRate, 0)
            };
            propertyList.Add(model);

            model = new MetalSampleQualityRateModel
            {
                SampleProperty       = "Поздовжня швидкість зсуву VL, м/с",
                BaseValue            = baseValues.LongitudinalShearRate,
                SampleValue          = sample.LongitudinalShearRate,
                RelativeValue        = Math.Round((decimal)sample.LongitudinalShearRate / baseValues.LongitudinalShearRate, 2),
                CoefficientWeighting = coeficientValues.LongitudinalShearRate,
                Angle = Round(360 * coeficientValues.LongitudinalShearRate, 0)
            };
            propertyList.Add(model);

            model = new MetalSampleQualityRateModel
            {
                SampleProperty       = "Швидкість деформації зсуву γ",
                BaseValue            = baseValues.ShearStrainRate,
                SampleValue          = sample.ShearStrainRate,
                RelativeValue        = Math.Round((decimal)sample.ShearStrainRate / baseValues.ShearStrainRate, 2),
                CoefficientWeighting = coeficientValues.ShearStrainRate,
                Angle = Round(360 * coeficientValues.ShearStrainRate, 0)
            };
            propertyList.Add(model);

            model = new MetalSampleQualityRateModel
            {
                SampleProperty       = "Міцність відколу σ, ГПа",
                BaseValue            = baseValues.SpallStrength,
                SampleValue          = sample.SpallStrength,
                RelativeValue        = Math.Round((decimal)sample.SpallStrength / baseValues.SpallStrength, 2),
                CoefficientWeighting = coeficientValues.SpallStrength,
                Angle = Round(360 * coeficientValues.SpallStrength, 0)
            };
            propertyList.Add(model);
            return(propertyList);
        }