def Problem6(): """ CORRECT Analyze a steel shaft with an ultimate strength of 81 kpsi and fully corrected endurance limit of 34 kpsi if it undergoes a bending stress with mean and amplitude stresses of 9 and 10, respectively, while also undergoing a torsional shear with mean and amplitude stresses of -10 and 6, respectively. Assume there are no stress concentrations or axial loads. Neglect yielding and use the Goodman failure criterion if needed. Report either the fatigue factor of safety if it is predicted to have infinite life, or the number of cycles to failure in thousands of cycles (N/103).""" Sut = 81 # Kpsi Se = 34 # Kpsi sigmaM = 9 sigmaA = 10 TauM = -10 TauA = 6 sigmaM = Fatigue.AlternatingLoadsVonMises(sigmaM, 0, TauM) sigmaA = Fatigue.AlternatingLoadsVonMises(sigmaA, 0, TauA) sigmaMax = sigmaA + abs(sigmaM) nf = Fatigue.Goodman(sigmaA, sigmaM, Se, Sut) print(nf)
def Problem6(Sut, Sy, Se, Mrev, T, nf): """ WRONG Given a uniform diameter shaft made of steel with an ultimate strength of 76 kpsi, a yield strength of 42 kpsi, and a fully corrected endurance limit of 22 kpsi, what is the minimum diameter of the shaft needed to ensure the shaft will not yield and will have infinite life given a fully reversed bending moment of 633 in-lbs and a steady torsional load of 2,346 in-lbs? Use a design factor of 1.4, assume there are no stress concentrations, and use the Morrow failure criterion if needed.""" # sigmaA = Fatigue.AlternatingLoadsAmp(sigmaRev, 0) # sigmaM = Fatigue.AlternatingLoadsMean(sigmaRev, 0) # tauA = Fatigue.AlternatingLoadsAmp(tau, 0) # tauM = Fatigue.AlternatingLoadsMean(tau, 0) # sigmaAp = Fatigue.AlternatingLoadsVonMises(1, 1, 1, sigmaA, 0, tauA) # sigmaMp = Fatigue.AlternatingLoadsVonMises(1, 1, 1, sigmaM, 0, tauM) # sigmaMax = sigmaAp + abs(sigmaMp) # print(sigmaMax) # ny = Sy/sigmaMax # print(ny) A = Fatigue.DEA(1, Mrev, 1, 0) B = Fatigue.DEB(1, 0, 1, T) d = Fatigue.DEMorrow(A, B, Se, 122, n=nf, Mode='d') print(d)
def Problem5(Sut, Se, sigma1, sigma2): """ CORRECT Given a steel shaft with an ultimate strength of 100 kpsi and a fully corrected endurance limit of 55 kpsi, what is the factor of safety against fatigue failure if it undergoes a normal stress that fluctuates between -50 kpsi and 15 kpsi? Neglect yielding and use the Goodman failure criterion if needed.""" sigmaA = Fatigue.AlternatingLoadsAmp(sigma1, sigma2) sigmaM = Fatigue.AlternatingLoadsMean(sigma1, sigma2) print(sigmaA, sigmaM) sigmaRev = sigmaA nf = Se/sigmaRev print(abs(nf))
def Problem3(Sut, SigmaAr, Se): """ CORRECT A steel bar with an ultimate strength of 142 kpsi is loaded in bending with a completely reversed amplitude of 39 kpsi. How many cycles (in thousands, or N/10^3) will the bar withstand until failure? Assume a fully corrected endurance limit of 28 kpsi is defined at 106 cycles.""" nf = Se/SigmaAr # print(nf) f = Fatigue.FatigueStrengthFactor(Sut) # print(f) a = Fatigue.CyclesA(f, Sut, Se) b = Fatigue.CyclesB(f, Sut, Se) N = Fatigue.Cycles(SigmaAr, f, Sut, Se) print(N)
def Problem7(): """ WRONG Given the following image of a shaft, what is the critical speed of rotation in units of rad/s if the shaft has the following section lengths and deflections (y) and the centers of the given sections. Assume the shaft is made of steel and all dimensions are given in inches. Ignore the weight change due to the keyway. L1 = 1.7 in, y1 = 10 x 10-6 in L2 = 9 in, y2 = 300 x 10-6 in L3 = 2.1 in, y3 = 150 x 10-6 in L4 = 2.7 in, y4 = 10 x 10-6 in""" L1 = 1.7 L2 = 9 L3 = 2.1 L4 = 2.7 lengths = [L1, L2, L3, L4] dia = [1, 1.25, 1, 7./8.] Weights = [32.2*12*0.282*np.pi/4*d**2 for d in dia] y = [i*10**(-6) for i in [10, 300, 150, 10]] w = Fatigue.RayleighsLumpedMasses(Weights, y) print(w)
def Problem7(): """ CORRECT Given the following image of a shaft, what is the critical speed of rotation in units of rad/s if the shaft has the following section lengths and deflections (y) and the centers of the given sections. Assume the shaft is made of steel and all dimensions are given in inches. Ignore the weight change due to the keyway. (Do not use average diameter simplification method.)""" gamma = 0.282 L = [2.8, 8, 2.5, 4.7] d = [1, 1.25, 1, 0.875] y = [i*10**-6 for i in [10, 300, 150, 10]] A = [np.pi/4*i**2 for i in d] V = [i * j for i, j in zip(A, L)] W = [gamma*i*32.2*12 for i in V] prod = [i * j for i, j in zip(W, y)] top = 32.2 * 12 * sum(prod) prodSq = [i * j**2 for i, j in zip(W, y)] bottom = sum(prodSq) speed = np.sqrt(top/bottom) print(speed) w = Fatigue.RayleighsLumpedMasses(W, y) print(w)
def Problem7_2(d): Sut = 175e3 Sy = 160e3 Ma = 600 Mm = 0 Ta = 0 Tm = 400 Seprime = 0.5 * Sut / 1000 Ka = 2 * (Sut / 1000)**(-0.217) Kb = 0.879 * d**(-0.107) Se = 55000 Kf = 2.2 Kfs = 1.8 A = Fatigue.DEA(Kf, Ma, Kfs, Ta) B = Fatigue.DEB(Kf, Mm, Kfs, Tm) d = Fatigue.DEGoodman(A, B, Se, Sut, n=2.5, Mode='d') D = d / 0.65 dFinal = 0.75 * D print(dFinal)
def Problem5(): """ CORRECT Given a steel shaft with an ultimate strength of 115 kpsi and a fully corrected endurance limit of 50 kpsi, what is the factor of safety against fatigue failure if it undergoes a normal stress that fluctuates between 13 kpsi and 49 kpsi? Neglect yielding and use the Goodman failure criterion if needed.""" Sut = 115 #Kpsi Se = 50 #Kpsi sigma1 = 13 #Kpsi sigma2 = 49 #Kpsi sigmaA = Fatigue.AlternatingLoadsAmp(sigma1, sigma2) sigmaM = Fatigue.AlternatingLoadsMean(sigma1, sigma2) # print(sigmaA, sigmaM) # sigmaRev = sigmaA # nf = Se/sigmaRev # print(abs(nf)) nf = Fatigue.Goodman(sigmaA, sigmaM, Se, Sut) print(nf)
def Problem3(): """CORRECT A steel bar with an ultimate strength of 109 kpsi is loaded in bending and failed after 3,890 completely reversed stress cycles. What is the stress amplitude that caused the failure? Assume a fully corrected endurance limit of 33 kpsi is defined at 106 cycles.""" Sut = 109 # Kpsi Se = 33 # Kpsi N = 3890 # Cycles # From equation 6-11 f = Fatigue.FatigueStrengthFactor(Sut) a = Fatigue.CyclesA(f, Sut, Se) b = Fatigue.CyclesB(f, Sut, Se) Sf = a * N ** b print(Sf)
def Problem5(d): """ WRONG Given a uniform diameter shaft made of steel with an ultimate strength of 55 kpsi, a yield strength of 44 kpsi, and a fully corrected endurance limit of 22 kpsi, what is the minimum diameter of the shaft needed to ensure the shaft will not yield and will have infinite life given a fully reversed bending moment of 621 in-lbs and a steady torsional load of 1,812 in-lbs? Use a design factor of 2.0, assume there are no stress concentrations, and use the Morrow failure criterion if needed.""" Sut = 55000 # psi Sy = 44000 # psi Se = 22000 # psi Mrev = 621 # in-lbs T = 1812 # in-lbs sigmaF = Sut + 50000 # Convert to stress sigma = Stress.BendingRound(Mrev, d/2, d) Tau = Stress.TorsionalRound(T, d) sigmaA = sigma sigmaM = 0 TauA = 0 TauM = Tau sigmaAp = Fatigue.AlternatingLoadsVonMises(1, 1, 1, sigmaA, 0, TauA) sigmaMp = Fatigue.AlternatingLoadsVonMises(1, 1, 1, sigmaM, 0, TauM) sigmaMax = sigmaAp + abs(sigmaMp) ny = Sy/sigmaMax print('ny', ny) # nf = Fatigue.Morrow(sigmaAp, sigmaMp, Se, sigmaF) # print('nf', nf) nf = Se/sigmaAp print('nf', nf)
def Problem7_1(): Kf = 2.2 Kfs = 1.8 Ma = 70 Ta = 45 Mm = 55 Tm = 35 Sut = 700 Sy = 560 Se = 210 A = Fatigue.DEA(Kf, Ma, Kfs, Ta) B = Fatigue.DEB(Kf, Mm, Kfs, Tm) d = Fatigue.DEGoodman(A, B, Se, Sut, n=2, Mode='d') print('Goodman', d) d2 = Fatigue.DEGerber(A, B, Se, Sut, n=2, Mode='d') print('Gerber', d2) d3 = Fatigue.DEMorrow(A, B, Se, Sut + 345, n=2, Mode='d') print('Morrow', d3) d4 = Fatigue.DESWT(A, B, Se, Sut, n=2, Mode='d') print('SWT', d4)