def __init__(self, name, i_node, j_node, m_node, n_node, t, E, nu, kx_mod=1.0, ky_mod=1.0, LoadCombos={ 'Combo 1': LoadCombo('Combo 1', factors={'Case 1': 1.0}) }): self.name = name self.ID = None self.type = 'Quad' self.i_node = i_node self.j_node = j_node self.m_node = m_node self.n_node = n_node self.t = t self.E = E self.nu = nu self.kx_mod = kx_mod self.ky_mod = ky_mod self.pressures = [ ] # A list of surface pressures [pressure, case='Case 1'] self.LoadCombos = LoadCombos
def __init__(self, Name, iNode, jNode, mNode, nNode, t, E, nu, LoadCombos={ 'Combo 1': LoadCombo('Combo 1', factors={'Case 1': 1.0}) }): self.Name = Name self.ID = None self.type = 'Quad' self.iNode = iNode self.jNode = jNode self.mNode = mNode self.nNode = nNode self.t = t self.E = E self.nu = nu self.pressures = [ ] # A list of surface pressures [pressure, case='Case 1'] self.LoadCombos = LoadCombos
def __init__(self, Name, iNode, jNode, ks, LoadCombos={ 'Combo 1': LoadCombo('Combo 1', factors={'Case 1': 1.0}) }, tension_only=False, comp_only=False): ''' Initializes a new spring. ''' self.Name = Name # A unique name for the spring given by the user self.ID = None # Unique index number for the spring assigned by the program self.iNode = iNode # The spring's i-node self.jNode = jNode # The spring's j-node self.ks = ks # The spring constant (force/displacement) self.LoadCombos = LoadCombos # The dictionary of load combinations in the model this spring belongs to self.tension_only = tension_only # Indicates whether the spring is tension-only self.comp_only = comp_only # Indicates whether the spring is compression-only # Springs need to track whether they are active or not for any given load combination. # They may become inactive for a load combination during a tension/compression-only # analysis. This dictionary will be used when the model is solved. self.active = {} # Key = load combo name, Value = True or False
def __init__(self, Name, iNode, jNode, mNode, nNode, t, E, nu, LoadCombos={ 'Combo 1': LoadCombo('Combo 1', factors={'Case 1': 1.0}) }): """ A rectangular plate element Parameters ---------- Name : string A unique plate name iNode : Node3D The plate's i-node jNode : Node3D The plate's j-node mNode : Node3D The plate's m-node nNode : Node3D The plate's n-node t : number Plate thickness E : number Plate modulus of elasticity nu : number Poisson's ratio LoadCombos : dict {combo_name: LoacCombo} A dictionary of the load combinations used in the model the plate is in """ self.Name = Name self.ID = None self.type = 'Rect' self.iNode = iNode self.jNode = jNode self.mNode = mNode self.nNode = nNode self.t = t self.E = E self.nu = nu self.pressures = [ ] # A list of surface pressures [pressure, case='Case 1'] self.LoadCombos = LoadCombos
def __init__(self, name, i_node, j_node, m_node, n_node, t, E, nu, kx_mod=1.0, ky_mod=1.0, LoadCombos={'Combo 1':LoadCombo('Combo 1', factors={'Case 1':1.0})}): """ A rectangular plate element Parameters ---------- name : string A unique plate name i_node : Node3D The plate's i-node j_node : Node3D The plate's j-node m_node : Node3D The plate's m-node n_node : Node3D The plate's n-node t : number Plate thickness E : number Plate modulus of elasticity nu : number Poisson's ratio kx_mod : number Modification factor for stiffness in the plate's local x-direction. Default value is 1.0, which indicates no stiffness modification (100% stiffness). ky_mod : number Modification factor for stiffness in the plate's local y-direction. Default value is 1.0, which indicates no stiffness modification (100% stiffness). LoadCombos : dict {combo_name: LoacCombo} A dictionary of the load combinations used in the model the plate is in """ self.name = name self.ID = None self.type = 'Rect' self.i_node = i_node self.j_node = j_node self.m_node = m_node self.n_node = n_node self.t = t self.E = E self.nu = nu self.kx_mod = kx_mod self.ky_mod = ky_mod self.pressures = [] # A list of surface pressures [pressure, case='Case 1'] self.LoadCombos = LoadCombos