public void BeamReturnsphiMn()
        {
            var ConcreteMaterial = new Kodestruct.Concrete.ACI318_14.Materials.ConcreteMaterial(6000, ACI.Entities.ConcreteTypeByWeight.Normalweight, null);

            FlexuralSectionFactory flexureFactory = new FlexuralSectionFactory();
            double b   = 16;
            double h   = 40;
            double f_y = 60000;
            RebarMaterialGeneral LongitudinalRebarMaterial = new RebarMaterialGeneral(f_y);

            List <RebarPoint> LongitudinalBars = new List <RebarPoint>();

            Rebar      TopRebar = new Rebar(4, LongitudinalRebarMaterial);
            RebarPoint TopPoint = new RebarPoint(TopRebar, new RebarCoordinate()
            {
                X = 0, Y = h / 2.0 - 3
            });

            LongitudinalBars.Add(TopPoint);

            Rebar      BottomRebar = new Rebar(4, LongitudinalRebarMaterial);
            RebarPoint BottomPoint = new RebarPoint(BottomRebar, new RebarCoordinate()
            {
                X = 0, Y = -h / 2.0 + 3
            });

            LongitudinalBars.Add(BottomPoint);

            CrossSectionRectangularShape shape = new CrossSectionRectangularShape(ConcreteMaterial, null, b, h);

            IConcreteFlexuralMember fs = new ConcreteSectionFlexure(shape, LongitudinalBars, null,
                                                                    ConfinementReinforcementType.Ties);

            ConcreteFlexuralStrengthResult result = fs.GetDesignFlexuralStrength(FlexuralCompressionFiberPosition.Top);
        }
Esempio n. 2
0
        public static Dictionary <string, object> ConcreteMaterialMechanicalProperties(ConcreteMaterial ConcreteMaterial,
                                                                                       double Density = 0, string Code = "ACI318-14")
        {
            //Default values
            double           E   = 0;
            double           f_r = 0;
            ConcreteMaterial cm  = ConcreteMaterial;


            //Calculation logic:

            Kodestruct.Concrete.ACI318_14.Materials.ConcreteMaterial mat =
                new Kodestruct.Concrete.ACI318_14.Materials.ConcreteMaterial(cm.Concrete.SpecifiedCompressiveStrength, cm.Concrete.TypeByWeight, Density, null);

            E   = mat.ModulusOfElasticity / 1000.0;
            f_r = mat.ModulusOfRupture / 1000.0;


            return(new Dictionary <string, object>
            {
                { "E", E }
                , { "f_r", f_r }
            });
        }