public void BoltSlipCritical_LSL_ReturnsSlipResistance() { BoltSlipCriticalGroupA bolt = new BoltSlipCriticalGroupA(0.75, BoltThreadCase.Included, BoltFayingSurfaceClass.ClassA, BoltHoleType.LSL_Parallel, BoltFillerCase.One, 2, null); double phiR_n = bolt.GetSlipResistance(); double refValue = 13.3; // from Design Examples double actualTolerance = EvaluateActualTolerance(phiR_n, refValue); Assert.LessOrEqual(actualTolerance, tolerance); }
public void BoltSlipCriticalSTDReturnsReducedSlipResistance() { BoltSlipCriticalGroupA bolt = new BoltSlipCriticalGroupA(0.75, BoltThreadCase.Included, BoltFayingSurfaceClass.ClassA, BoltHoleType.STD, BoltFillerCase.One, 1, null); double T_u = 72.0/8.0; double phiR_n = bolt.GetReducedSlipResistance(T_u); double refValue = 54.4/8.0; // from Design Examples double actualTolerance = EvaluateActualTolerance(phiR_n, refValue); Assert.LessOrEqual(actualTolerance, tolerance); }
public IBoltSlipCritical GetSlipCriticalBolt(double Diameter, BoltThreadCase ThreadType, BoltFayingSurfaceClass SurfaceClass, BoltHoleType HoleType, BoltFillerCase FillerCase, double NumberOfSlipPlanes) { CalcLog log = new CalcLog(); int NPlanes = (int)NumberOfSlipPlanes; IBoltSlipCritical bsc = null; switch (MaterialId) { case "A325": bsc = new BoltSlipCriticalGroupA(Diameter, ThreadType, SurfaceClass, HoleType, FillerCase, NPlanes, log); break; case "A490": bsc = new BoltSlipCriticalGroupB(Diameter, ThreadType, SurfaceClass, HoleType, FillerCase, NPlanes, log); break; case "F1852": bsc = new BoltSlipCriticalGroupA(Diameter, ThreadType, SurfaceClass, HoleType, FillerCase, NPlanes, log); break; case "A354GradeBC": bsc = new BoltSlipCriticalGroupA(Diameter, ThreadType, SurfaceClass, HoleType, FillerCase, NPlanes, log); break; case "A354GradeBD": bsc = new BoltSlipCriticalGroupB(Diameter, ThreadType, SurfaceClass, HoleType, FillerCase, NPlanes, log); break; case "A449": bsc = new BoltSlipCriticalGroupA(Diameter, ThreadType, SurfaceClass, HoleType, FillerCase, NPlanes, log); break; default: throw new Exception("Unrecognized bolt material or specified material cannot be used for high-strength bolting. Check input"); } return(bsc); }
public IBoltSlipCritical GetSlipCriticalBolt(double Diameter, BoltThreadCase ThreadType, BoltFayingSurfaceClass SurfaceClass, BoltHoleType HoleType, BoltFillerCase FillerCase, double NumberOfSlipPlanes) { CalcLog log = new CalcLog(); int NPlanes = (int)NumberOfSlipPlanes; IBoltSlipCritical bsc = null; switch (MaterialId) { case "A325": bsc = new BoltSlipCriticalGroupA(Diameter, ThreadType, SurfaceClass, HoleType, FillerCase, NPlanes, log); break; case "A490": bsc = new BoltSlipCriticalGroupB(Diameter, ThreadType, SurfaceClass, HoleType, FillerCase, NPlanes, log); break; case "F1852": bsc = new BoltSlipCriticalGroupA(Diameter, ThreadType, SurfaceClass, HoleType, FillerCase, NPlanes, log); break; case "A354GradeBC": bsc = new BoltSlipCriticalGroupA(Diameter, ThreadType, SurfaceClass, HoleType, FillerCase, NPlanes, log); break; case "A354GradeBD": bsc = new BoltSlipCriticalGroupB(Diameter, ThreadType, SurfaceClass, HoleType, FillerCase, NPlanes, log); break; case "A449": bsc = new BoltSlipCriticalGroupA(Diameter, ThreadType, SurfaceClass, HoleType, FillerCase, NPlanes, log); break; default: throw new Exception("Unrecognized bolt material or specified material cannot be used for high-strength bolting. Check input"); } return bsc; }