Example #1
0
        public static Dictionary <string, object> OneWayShearStrengthProvidedByRebar(double A_v, Concrete.ACI318.General.Reinforcement.RebarMaterial TransverseRebarMaterial,
                                                                                     double d, double s, string Code = "ACI318-14")
        {
            //Default values
            double phiV_s = 0;


            //Calculation logic:
            OneWayShearReinforcedSectionNonPrestressed section = new OneWayShearReinforcedSectionNonPrestressed(d, TransverseRebarMaterial.Material, A_v, s);

            phiV_s = section.GetSteelShearStrength() / 1000.0; //default ACI units are psi. Convert to ksi, consistent with Dynamo nodes

            return(new Dictionary <string, object>
            {
                { "phiV_s", phiV_s }
            });
        }
        public static Dictionary<string, object> OneWayShearStrengthProvidedByRebar(double A_v, Concrete.ACI318.General.Reinforcement.RebarMaterial TransverseRebarMaterial,
            double d, double s, string Code = "ACI318-14")
        {
            //Default values
            double phiV_s = 0;


            //Calculation logic:
            OneWayShearReinforcedSectionNonPrestressed section = new OneWayShearReinforcedSectionNonPrestressed(d, TransverseRebarMaterial.Material, A_v, s);
            phiV_s = section.GetSteelShearStrength() / 1000.0; //default ACI units are psi. Convert to ksi, consistent with Dynamo nodes

            return new Dictionary<string, object>
            {
                { "phiV_s", phiV_s }
 
            };
        }
        public void RectangularBeamReturnsRequiredShearRebarAreaValue()
        {
            double h                 = 24.0;
            double d                 = 21.5;
            double b                 = 14.0;
            double N_u               = 0.0;
            double phiV_s            = 43100.0 * 0.75;
            double fc                = 3000.0;
            double s                 = 1.0;
            double c_center          = 1.75;
            bool   IsLightWeight     = false;
            RebarMaterialFactory rmf = new RebarMaterialFactory();
            IRebarMaterial       rm  = rmf.GetMaterial();
            OneWayShearReinforcedSectionNonPrestressed section = new OneWayShearReinforcedSectionNonPrestressed(d, rm, s);
            double A_v = section.GetRequiredShearReinforcementArea(phiV_s);

            double refValue        = 0.0334;
            double actualTolerance = EvaluateActualTolerance(A_v, refValue);

            Assert.True(actualTolerance <= tolerance);
        }