public static Dictionary <string, object> SlipCriticalBoltShearStrength(double d_b, string BoltMaterialId, string BoltHoleType, string BoltFillerCase = "One",
                                                                                string BoltFayingSurfaceClass = "ClassA", double NumberShearPlanes = 1, string Code = "AISC360-10")
        {
            //Default values
            double phiR_n = 0;

            BoltFayingSurfaceClass SurfaceClass = ParseSurfaceClass(BoltFayingSurfaceClass);
            BoltFillerCase         FillerCase   = ParseFillerCase(BoltFillerCase);

            b.BoltHoleType HoleType = ParseBoltHoleType(BoltHoleType);



            //Calculation logic:
            BoltFactory       bf   = new BoltFactory(BoltMaterialId);
            IBoltSlipCritical bolt = bf.GetSlipCriticalBolt(d_b, BoltThreadCase.Included, SurfaceClass, HoleType, FillerCase, NumberShearPlanes);

            phiR_n = bolt.GetSlipResistance();


            return(new Dictionary <string, object>
            {
                { "phiR_n", phiR_n }
            });
        }
Пример #2
0
        public void BoltReturnsNominalTensileStressStringInput()
        {
            BoltFactory   bf       = new BoltFactory("A325");
            IBoltMaterial material = bf.GetBoltMaterial();
            double        F_nt     = material.GetNominalTensileStress("N");

            Assert.AreEqual(90.0, F_nt);
        }
Пример #3
0
        public void BoltReturnsNominalTensileStress()
        {
            BoltFactory   bf       = new BoltFactory("A325");
            IBoltMaterial material = bf.GetBoltMaterial();
            double        F_nt     = material.GetNominalTensileStress(BoltThreadCase.Included);

            Assert.AreEqual(90.0, F_nt);
        }
Пример #4
0
        public void BoltReturnsNominalShearStressStringInput()
        {
            BoltFactory   bf       = new BoltFactory("A325");
            IBoltMaterial material = bf.GetBoltMaterial();
            double        F_nv     = material.GetNominalShearStress("N");

            Assert.AreEqual(54.0, F_nv);
        }
Пример #5
0
        public void BoltReturnsNominalShearStress()
        {
            BoltFactory   bf       = new BoltFactory("A325");
            IBoltMaterial material = bf.GetBoltMaterial();
            double        F_nv     = material.GetNominalShearStress(BoltThreadCase.Included);

            Assert.Equal(54.0, F_nv);
        }
Пример #6
0
        public void GetNominalTensileStrengthModifiedToIncludeTheEffectsOfShearStressDG29()
        {
            BoltFactory bf = new BoltFactory("A325");

            IBoltBearing bolt    = bf.GetBearingBolt(7.0 / 8.0, "N");
            double       V       = 8.05;
            double       phi_R_n = bolt.GetAvailableTensileStrength(V);

            Assert.Equal(39.3, Math.Round(phi_R_n, 1));
        }
Пример #7
0
        public void GetNominalTensileStrengthModifiedToIncludeTheEffectsOfShearStress()
        {
            BoltFactory bf = new BoltFactory("A325");

            BoltBearingGroupA bolt    = new BoltBearingGroupA(3.0 / 4.0, BoltThreadCase.Included, null);
            double            V       = 8.0;
            double            phi_R_n = bolt.GetAvailableTensileStrength(V);

            Assert.Equal(25.4, Math.Round(phi_R_n, 1));
        }
Пример #8
0
        public static Dictionary <string, object> BearingBoltNominalShearStress(string BoltMaterialId, string BoltThreadCase, string Code = "AISC360-10")
        {
            //Default values
            double F_nv = 0;


            //Calculation logic:
            BoltFactory   bf       = new BoltFactory(BoltMaterialId);
            IBoltMaterial material = bf.GetBoltMaterial();

            F_nv = material.GetNominalShearStress(BoltThreadCase);

            return(new Dictionary <string, object>
            {
                { "F_nv", F_nv }
            });
        }
Пример #9
0
        public static Dictionary <string, object> BoltTensileStrength(double d_b, string BoltMaterialId, string BoltThreadCase, string Code = "AISC360-10")
        {
            //Default values
            double phiR_nt = 0;


            //Calculation logic:
            BoltFactory  bf   = new BoltFactory(BoltMaterialId);
            IBoltBearing bolt = bf.GetBearingBolt(d_b, BoltThreadCase);

            phiR_nt = bolt.GetAvailableTensileStrength();

            return(new Dictionary <string, object>
            {
                { "phiR_nt", phiR_nt }
            });
        }
Пример #10
0
        public static Dictionary <string, object> BearingBoltShearStrength(double d_b, string BoltMaterialId, string BoltThreadCase,
                                                                           double NumberShearPlanes, bool IsEndLoadedConnectionWithLengthEfect = false, string Code = "AISC360-10")
        {
            //Default values
            double phiR_nv = 0;


            //Calculation logic:
            BoltFactory  bf   = new BoltFactory(BoltMaterialId);
            IBoltBearing bolt = bf.GetBearingBolt(d_b, BoltThreadCase);

            phiR_nv = bolt.GetAvailableShearStrength(NumberShearPlanes, IsEndLoadedConnectionWithLengthEfect);

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