def test_knownframe(self):
     xs1 = xs.generalSection(A=1, Ix=1)
     s1 = sc.Structure(xs1, ma.Steel(E=144))
     s1.addNode(0, 0, fixity='fixed')
     s1.addNode(24, 0, fixity='roller')
     s1.addNode(42, 0, fixity='roller')
     s1.addMember(0, 1)
     s1.addMember(2, 1)
 def test_bucklingCapacity(self):
     xs1 = xs.AISC('W21X44')
     s1 = sc.Structure(xs1, ma.Steel(Fy=60))
     s1.addNode(0, 0)
     s1.addNode(0, 15)
     s1.addMember(0, 1)
     member = s1.members[0]
     # almost equal because rounding.
     self.assertAlmostEqual(member.bucklingCapacity(1), 143.906124819)
     ## test another example
     xs1 = xs.AISC('W16X67')
     s1 = sc.Structure(xs1, ma.Steel(Fy=60))
     s1.addNode(0, 0)
     s1.addNode(0, 15)
     s1.addMember(0, 1)
     member = s1.members[0]
     self.assertAlmostEqual(member.bucklingCapacity(1), 661.66119741611089)
 def setUp(self):
     #Truss
     xs1 = xs.Rectangle(2, 2)
     A992 = ma.A992()
     s1 = sc.Structure(cross=xs1, material=A992)
     s1.addNode(0, 0, xfix=0, yfix=0)
     s1.addNode(2, 0, yfix=0)
     s1.addNode(1, 1)
     s1.addMember(0, 1)
     s1.addMember(1, 2)
     s1.addMember(2, 0)
     self.s1 = s1
     self.xs1 = xs1
    def test_Frame(self):

        # global stiffness matrix must be symmetric
        xs1 = xs.generalSection(A=30, Ix=700)
        s1 = sc.Structure(xs1, ma.Steel(E=29000))
        s1.addNode(0, 0)
        s1.addNode(0, 144)
        s1.addNode(144, 144)
        s1.addMember(0, 1)
        s1.addMember(1, 2)
        m1 = s1.members[0]
        stiff1 = m1.T.T * m1.kframe * m1.T
        v = np.all(stiff1 == stiff1.T)
        self.assertEqual(v, True)
Example #5
0
import structural_classes as sc
import cross_sections as xs
import materials as ma

# Define material
A992 = ma.A992()

# Define cross section
xs1 = xs.IBeam(1, 1, 0.1, 0.1)

# define blank structure
# we will add to this later
s1 = sc.Structure(cross=xs1, material=A992)

# Add nodes to the structure
s1.addNode(0, 0, xfix=0, yfix=0, fixity='pin')
s1.addNode(2, 0, yfix=0, fixity='roller')
s1.addNode(1, 1)
	
# Add members to the structure
s1.addMember(0, 1)
s1.addMember(1, 2)
s1.addMember(2, 0)	

m1 = s1.members[0]
m2 = s1.members[1]
m3 = s1.members[2]

s1.plot()

Example #6
0
import cross_sections as xs
import structural_classes as sc
import materials as ma

xs1 = xs.generalSection(A=30, Ix=700)

s1 = sc.Structure(xs1, ma.Steel(E=29000))

s1.addNode(0, 0)
s1.addNode(0, 144)
s1.addNode(144, 144)

s1.addMember(0, 1)
s1.addMember(1, 2)

m1 = s1.members[0]
stiff1 = m1.T.T * m1.kframe * m1.T

s1.plot()