def rotor_example1(n_el=48): """ This function instantiate a rotor similar to the example 5.9.1, page 206 (Dynamics of rotating machine, FRISSWELL) The following functions test_example1_w_equals0rpm() and test_example1_w_equals4000rpm() are the test functions of this example. P.S.:Isotropic bearings. :param w: speed of rotation. :param n_el: number of shaft elements. :return: Rotor object. """ shaft_elm = [] for i in range(n_el): shaft_elm.append( rs.ShaftElement(L=1.5 / n_el, material=steel, n=i, i_d=0, o_d=0.05)) disk0 = rs.DiskElement.from_geometry(n=(n_el / 1.5) * 0.5, material=steel, width=0.07, i_d=0.05, o_d=0.28) disk1 = rs.DiskElement.from_geometry(n=(n_el / 1.5), material=steel, width=0.07, i_d=0.05, o_d=0.35) bearing0 = rs.BearingElement(n=0, kxx=1e6, kyy=1e6, cxx=0, cyy=0) bearing1 = rs.BearingElement(n=n_el, kxx=1e6, kyy=1e6, cxx=0, cyy=0) return rs.Rotor(shaft_elm, [disk0, disk1], [bearing0, bearing1])
def rotor_example2(n_el=48): """ This function instantiate a overhung rotor similar to the example 5.9.9, page 218 (Dynamics of rotating machine, FRISSWELL). The following functions test_example2_w_equals0rpm() and test_example2_w_equals4000rpm() are the test functions of this example. P.S.: Overhung rotor. :param n_el: number of shaft elements. :return: Rotor object. """ shaft_elm = [] for i in range(n_el): shaft_elm.append( rs.ShaftElement(L=1.5 / n_el, material=steel, n=i, i_d=0, o_d=0.05)) return rs.Rotor( shaft_elm, [ rs.DiskElement.from_geometry( n=n_el, material=steel, width=0.07, i_d=0.05, o_d=0.35) ], [ rs.BearingElement(n=0, kxx=10e6, kyy=10e6, cxx=0, cyy=0), rs.BearingElement( n=int((n_el / 1.5)), kxx=10e6, kyy=10e6, cxx=0, cyy=0), ], )
def rotor_example7(w=0, n_el=48): """ This function instantiate a rotor similar to the example 5.9.10, page 219 (Dynamics of rotating machine, FRISSWELL) The following functions test_example7_w_equals0rpm() and test_example7_w_equals4000rpm() are the test functions of this example. P.S.: Tapered shaft and damped bearings with anisotropic properties. :param w: speed of rotation. :param n_el: number of shaft elements. :return: Rotor object. """ shaft_elm = [] for i in range(n_el): shaft_elm.append( rs.ShaftElement(L=1.5 / n_el, material=steel, n=i, i_d=0, o_d=0.025 + 0.015 * (i / n_el))) disk0 = rs.DiskElement.from_geometry(n=(n_el / 2), material=steel, width=0.07, i_d=0.05, o_d=0.28) bearing0 = rs.BearingElement(n=0, kxx=1e7, kyy=1e7, cxx=1e3, cyy=1e3) bearing1 = rs.BearingElement(n=n_el, kxx=1e7, kyy=1e7, cxx=1e3, cyy=1e3) return rs.Rotor(shaft_elm, [disk0], [bearing0, bearing1], w=w)
def st_rotor_example(): """Return an instance of random rotors. The purpose of this is to make available a simple model so that doctest can be written using this. Returns ------- An instance of random rotors. Examples -------- >>> import ross.stochastic as srs >>> rotors = srs.st_rotor_example() >>> len(list(iter(rotors))) 10 """ import ross as rs from ross.materials import steel i_d = 0 o_d = 0.05 n = 6 L = [0.25 for _ in range(n)] shaft_elem = [rs.ShaftElement(l, i_d, o_d, material=steel) for l in L] disk0 = rs.DiskElement.from_geometry(n=2, material=steel, width=0.07, i_d=0.05, o_d=0.28) disk1 = rs.DiskElement.from_geometry(n=4, material=steel, width=0.07, i_d=0.05, o_d=0.28) s = 10 kxx = np.random.uniform(1e6, 2e6, s) cxx = np.random.uniform(1e3, 2e3, s) bearing0 = ST_BearingElement(n=0, kxx=kxx, cxx=cxx, is_random=["kxx", "cxx"]) bearing1 = ST_BearingElement(n=6, kxx=kxx, cxx=cxx, is_random=["kxx", "cxx"]) return ST_Rotor(shaft_elem, [disk0, disk1], [bearing0, bearing1])
# =========================================== # EIXO # L = [0.3, 0.3, 0.052] # comprimento i_d = 0 # diâmetro interno o_d = 0.0127 # diâmetro externo N_shaft = 3 # quantidade de elementos shaft_elements = [ rs.ShaftElement( n=i, L=L[i], idl=i_d, odl=o_d, material=ABNT1020, shear_effects=True, rotary_inertia=True, gyroscopic=True, tag=(f"Elemento {i} do eixo") ) for i in range(N_shaft) ] # =========================================== # DISCO # # Utilizando as propriedades geométricas: disk_geo = rs.DiskElement.from_geometry( n=1,