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.AreEqual(25.4, Math.Round(phi_R_n,1)); }
public IBoltBearing GetBearingBolt(double Diameter, BoltThreadCase ThreadType) { IBoltMaterial bm = null; IBoltBearing bb = null; CalcLog log = new CalcLog(); switch (MaterialId) { case "A325": bb = new BoltBearingGroupA(Diameter, ThreadType, log); break; case "A490": bb = new BoltBearingGroupB(Diameter, ThreadType, log); break; case "F1852": bb = new BoltBearingGroupA(Diameter, ThreadType, log); break; case "A307": bm = new BoltA307Material(); bb=new BoltBearingThreadedGeneral(Diameter, ThreadType, bm, log); break; case "A354GradeBC": bb = new BoltBearingGroupA(Diameter, ThreadType, log); break; case "A354GradeBD": bb = new BoltBearingGroupB(Diameter, ThreadType, log); break; case "A449": bb = new BoltBearingGroupA(Diameter, ThreadType, log); break; case "F1554Grade105": bm = new ThreadedBoltMaterial(125.0); bb = new BoltBearingThreadedGeneral(Diameter, ThreadType, bm, log); break; case "F1554Grade55": bm = new ThreadedBoltMaterial(75.0); bb = new BoltBearingThreadedGeneral(Diameter, ThreadType, bm, log); break; case "F1554Grade36": bm = new ThreadedBoltMaterial(58.0); bb = new BoltBearingThreadedGeneral(Diameter, ThreadType, bm, log); break; default: throw new Exception("Unrecognized bolt material. Check input"); } return bb; }
public void BearingBoltGroupAReturnsShearStrengthA325() { BoltBearingGroupA bolt = new BoltBearingGroupA(7.0 / 8.0, BoltThreadCase.Excluded, null); double phi_r_nv = bolt.GetAvailableShearStrength(2.0, false); Assert.AreEqual(61.3, Math.Round(phi_r_nv,1)); }
public void BearingBoltGroupAReturnsTensileStrengthA325() { BoltBearingGroupA bolt = new BoltBearingGroupA(7.0 / 8.0, BoltThreadCase.Included, null); double phi_r_nt = bolt.GetAvailableTensileStrength(); Assert.AreEqual(40.6, Math.Round(phi_r_nt, 1)); }