def __init__(self, props): self.incremental = False #Call the BaseMaterial constructor BaseMaterial.__init__(self, props) #Create the hookean matrix self.H = zeros((6, 6)) fac = 1.0 / (2.0 * self.nu * self.nu + self.nu - 1.0) self.H[0, 0] = fac * self.E * (self.nu - 1.0) self.H[0, 1] = -1.0 * fac * self.E * self.nu self.H[0, 2] = self.H[0, 1] self.H[1, 0] = self.H[0, 1] self.H[1, 1] = self.H[0, 0] self.H[1, 2] = self.H[0, 1] self.H[2, 0] = self.H[0, 1] self.H[2, 1] = self.H[0, 1] self.H[2, 2] = self.H[0, 0] self.H[3, 3] = self.E / (2.0 + 2.0 * self.nu) self.H[4, 4] = self.H[3, 3] self.H[5, 5] = self.H[3, 3] #Set the labels for the output data in this material model self.outLabels = ["S11", "S22", "S33", "S23", "S13", "S12"] if self.incremental: self.setHistoryParameter('sigma', zeros(6)) self.commitHistory()
def __init__(self, props): BaseMaterial.__init__(self, props) self.De = zeros(shape=(3, 3)) self.De[0, 0] = self.E * (1. - self.nu) / ((1. + self.nu) * (1. - 2. * self.nu)) self.De[0, 1] = self.De[0, 0] * self.nu / (1. - self.nu) self.De[1, 0] = self.De[0, 1] self.De[1, 1] = self.De[0, 0] self.De[2, 2] = self.De[0, 0] * 0.5 * (1. - 2. * self.nu) / (1. - self.nu) self.a1 = (1. / (2. * self.k)) self.a2 = (self.k - 1.) / (1. - 2. * self.nu) self.a3 = 12. * self.k / ((1. + self.nu)**2) self.a4 = sqrt(self.a2**2 + self.a3 * self.sc) self.O4 = array([self.a4, self.a4, 2. * self.a3]) self.c = self.nu / (self.nu - 1.) self.setHistoryParameter('kappa', 0.) self.commitHistory()
def __init__ ( self, props ): BaseMaterial.__init__( self, props ) self.H = self.D*eye(2) self.outLabels = [ "Tn" , "Ts" ]
def __init__(self, props): #Call the BaseMaterial constructor BaseMaterial.__init__(self, props) if not hasattr(props, "factor"): self.factor = 0.001 if not hasattr(props, "G13"): self.G13 = self.G if not hasattr(props, "G23"): self.G23 = self.G self.H = zeros((6, 6)) self.H[0, 0] = self.factor * self.E3 self.H[1, 1] = self.factor * self.E3 self.H[2, 2] = self.E3 self.H[3, 3] = self.factor * (self.G13 + self.G23) * 0.5 self.H[4, 4] = self.G23 self.H[5, 5] = self.G13 #Set the labels for the output data in this material model self.outLabels = ["S11", "S22", "S33", "S23", "S13", "S12"]
def __init__(self, props): self.tolerance = 1.0e-6 BaseMaterial.__init__(self, props) self.ebulk3 = self.E / (1.0 - 2.0 * self.nu) self.eg2 = self.E / (1.0 + self.nu) self.eg = 0.5 * self.eg2 self.eg3 = 3.0 * self.eg self.elam = (self.ebulk3 - self.eg2) / 3.0 self.ctang = zeros(shape=(6, 6)) self.ctang[:3, :3] = self.elam self.ctang[0, 0] += self.eg2 self.ctang[1, 1] = self.ctang[0, 0] self.ctang[2, 2] = self.ctang[0, 0] self.ctang[3, 3] = self.eg self.ctang[4, 4] = self.ctang[3, 3] self.ctang[5, 5] = self.ctang[3, 3] self.setHistoryParameter('sigma', zeros(6)) self.setHistoryParameter('eelas', zeros(6)) self.setHistoryParameter('eplas', zeros(6)) self.setHistoryParameter('alpha', zeros(6)) self.commitHistory() #Set the labels for the output data in this material model self.outLabels = ["S11", "S22", "S33", "S23", "S13", "S12", "Epl"] self.outData = zeros(7)
def __init__(self, props): #Call the BaseMaterial constructor BaseMaterial.__init__(self, props) #Create the hookean matrix self.H = zeros((6, 6)) fac = 1.0 / (2.0 * self.nu * self.nu + self.nu - 1.0) self.H[0, 0] = fac * self.E * (self.nu - 1.0) self.H[0, 1] = -1.0 * fac * self.E * self.nu self.H[0, 2] = self.H[0, 1] self.H[1, 0] = self.H[0, 1] self.H[1, 1] = self.H[0, 0] self.H[1, 2] = self.H[0, 1] self.H[2, 0] = self.H[0, 1] self.H[2, 1] = self.H[0, 1] self.H[2, 2] = self.H[0, 0] self.H[3, 3] = self.E / (2.0 + 2.0 * self.nu) self.H[4, 4] = self.H[3, 3] self.H[5, 5] = self.H[3, 3] #Set the labels for the output data in this material model self.outLabels = ["S11", "S22", "S33", "S23", "S13", "S12"]
def __init__ ( self, props ): #Call the BaseMaterial constructor BaseMaterial.__init__( self, props ) self.deltan = self.Gc / ( exp(1.0) * self.Tult ) self.deltan2 = self.deltan *self.deltan self.deltan3 = self.deltan2*self.deltan
def __init__ ( self, props ): #Call the BaseMaterial constructor BaseMaterial.__init__( self, props ) self.d3 = 2.*self.Gc / ( ( -self.d1d3+self.d2d3+1.0)*self.Tult ) self.d1 = self.d1d3 * self.d3 self.d2 = self.d2d3 * self.d3 self.dummy = self.Tult / self.d1
def __init__ ( self, props ): #Call the BaseMaterial constructor BaseMaterial.__init__( self, props ) #Create the tangent matrix self.H = zeros( (1,1) ) self.H(0,0) = self.E
def __init__ ( self, props ): BaseMaterial.__init__( self, props ) self.matmodels = [] for material in self.materials: matmodel = MaterialManager( getattr( props , material ) ) self.matmodels.append( matmodel )
def __init__(self, props): self.eta = 2.0 #Call the BaseMaterial constructor BaseMaterial.__init__(self, props) self.dnorm = self.Tnorm / self.dummy self.dshear = self.Tshear / self.dummy
def __init__ ( self, props ): self.eta = 2.0 #Call the BaseMaterial constructor BaseMaterial.__init__( self, props ) self.dnorm = self.Tnorm / self.dummy self.dshear = self.Tshear / self.dummy
def __init__(self, props): #Call the BaseMaterial constructor BaseMaterial.__init__(self, props) self.r = 0. self.q = 1. self.vnmax = self.Gc / (2.71828183 * self.Tult) self.vtmax = self.q * self.Gc / (1.16580058 * self.Tult)
def __init__ ( self, props ): #Call the BaseMaterial constructor BaseMaterial.__init__( self, props ) self.d3 = 2.*self.Gc / ( ( -self.d1d3+self.d2d3+1.0)*self.Tult ) self.d1 = self.d1d3 * self.d3 self.d2 = self.d2d3 * self.d3 self.dummy = self.Tult / self.d1 #Set the labels for the output data in this material model self.outLabels = [ "Tn" , "Ts" ]
def __init__(self, props): BaseMaterial.__init__(self, props) self.H = zeros((3, 3)) self.H[0, 0] = self.E / (1. - self.nu * self.nu) self.H[0, 1] = self.H[0, 0] * self.nu self.H[1, 0] = self.H[0, 1] self.H[1, 1] = self.H[0, 0] self.H[2, 2] = self.E / (2.0 * (1.0 + self.nu)) self.outLabels = ["S11", "S22", "S12"]
def __init__ ( self, props ): #Call the BaseMaterial constructor BaseMaterial.__init__( self, props ) #Create the hookean matrix self.H = zeros( (3,3) ) self.H[0,0] = self.E*(1.-self.nu)/((1+self.nu)*(1.-2.*self.nu)); self.H[0,1] = self.H[0,0]*self.nu/(1-self.nu); self.H[1,0] = self.H[0,1]; self.H[1,1] = self.H[0,0]; self.H[2,2] = self.H[0,0]*0.5*(1.-2.*self.nu)/(1.-self.nu);
def __init__(self, props): #Call the BaseMaterial constructor BaseMaterial.__init__(self, props) self.r = 0. self.q = 1. self.vnmax = self.Gc / (2.71828183 * self.Tult) self.vtmax = self.q * self.Gc / (1.16580058 * self.Tult) #Set the labels for the output data in this material model self.outLabels = ["Tn", "Ts"]
def __init__(self, props): # Call the BaseMaterial constructor BaseMaterial.__init__(self, props) self.setHistoryParameter('kappa', 0.0) self.commitHistory() # Create the hookean matrix self.H = zeros((3, 3)) self.H[0, 0] = self.E / (1. - self.nu * self.nu) self.H[0, 1] = self.H[0, 0] * self.nu self.H[1, 0] = self.H[0, 1] self.H[1, 1] = self.H[0, 0] self.H[2, 2] = self.E / (2.0 * (1.0 + self.nu))
def __init__(self, props): #Call the BaseMaterial constructor BaseMaterial.__init__(self, props) #Create the hookean matrix self.H = zeros((3, 3)) self.H[0, 0] = self.E * (1. - self.nu) / ((1 + self.nu) * (1. - 2. * self.nu)) self.H[0, 1] = self.H[0, 0] * self.nu / (1 - self.nu) self.H[1, 0] = self.H[0, 1] self.H[1, 1] = self.H[0, 0] self.H[2, 2] = self.H[0, 0] * 0.5 * (1. - 2. * self.nu) / (1. - self.nu)
def __init__(self, props): #Call the BaseMaterial constructor BaseMaterial.__init__(self, props) #Create the hookean matrix self.H = zeros((3, 3)) self.H[0, 0] = self.E / (1. - self.nu * self.nu) self.H[0, 1] = self.H[0, 0] * self.nu self.H[1, 0] = self.H[0, 1] self.H[1, 1] = self.H[0, 0] self.H[2, 2] = self.E / (2.0 * (1.0 + self.nu)) #.. self.outLabels = ["S11", "S22", "S12"]
def __init__(self, props): # Call the BaseMaterial constructor BaseMaterial.__init__(self, props) self.setHistoryParameter("kappa", 0.0) self.commitHistory() # Create the hookean matrix self.H = zeros((3, 3)) self.H[0, 0] = self.E / (1.0 - self.nu * self.nu) self.H[0, 1] = self.H[0, 0] * self.nu self.H[1, 0] = self.H[0, 1] self.H[1, 1] = self.H[0, 0] self.H[2, 2] = self.E / (2.0 * (1.0 + self.nu))
def __init__ ( self, props ): #Call the BaseMaterial constructor BaseMaterial.__init__( self, props ) self.r = 0. self.q = 1. self.vnmax = self.Gc/(2.71828183*self.Tult); self.vtmax = self.q*self.Gc/(1.16580058*self.Tult); #Set the labels for the output data in this material model self.outLabels = [ "Tn" , "Ts" ] self.setHistoryParameter( 'dissipation', 0. ) self.commitHistory()
def __init__(self, props): self.incremental = False #Call the BaseMaterial constructor BaseMaterial.__init__(self, props) #Create the hookean matrix self.H = zeros((6, 6)) fac = 1.0 / ((self.E1*self.E2)-(self.E1*self.nu12*self.nu12*self.E2)- \ (self.nu12*self.nu12*self.E2*self.E2)- \ (2.0*self.nu12*self.E2*self.nu12*self.nu12*self.E2)- \ (self.nu12*self.nu12*self.E2*self.E2)) self.H[0, 0] = (self.E2 - self.nu12 * self.nu12 * self.E2) * self.E1 * self.E1 * fac self.H[0, 1] = (self.nu12 * self.E2 + self.nu12 * self.nu12 * self.E2) * self.E1 * self.E2 * fac self.H[0, 2] = (self.nu12 * self.nu12 + self.nu12) * self.E2 * self.E1 * self.E2 * fac self.H[1, 0] = self.H[0, 1] self.H[1, 1] = (self.E1 - self.nu12 * self.nu12 * self.E2) * self.E2 * self.E2 * fac self.H[1, 2] = (self.nu12 * self.E1 + self.nu12 * self.nu12 * self.E2) * self.E2 * self.E2 * fac self.H[2, 0] = self.H[0, 2] self.H[2, 1] = self.H[1, 2] self.H[2, 2] = (self.E1 - self.nu12 * self.nu12 * self.E2) * self.E2 * self.E2 * fac self.H[3, 3] = self.G12 self.H[4, 4] = self.G12 self.H[5, 5] = self.G12 #Set the labels for the output data in this material model self.outLabels = ["S11", "S22", "S33", "S23", "S13", "S12"] if self.incremental: self.setHistoryParameter('sigma', zeros(6)) self.commitHistory()
def __init__(self, props): #Call the BaseMaterial constructor BaseMaterial.__init__(self, props) #Create the hookean matrix self.H = zeros((6, 6)) fac = 1.0 / (2.0 * self.nu * self.nu + self.nu - 1.0) self.H(0, 0) = fac * self.E * (self.nu - 1.0) self.H(0, 1) = -1.0 * fac * self.E * self.nu self.H(0, 2) = self.H(0, 1) self.H(1, 0) = self.H(0, 1) self.H(1, 1) = self.H(0, 0) self.H(1, 2) = self.H(0, 1) self.H(2, 0) = self.H(0, 1) self.H(2, 1) = self.H(0, 1) self.H(2, 2) = self.H(0, 0) self.H(3, 3) = self.E / (2.0 + 2.0 * self.nu) self.H(4, 4) = self.H(3, 3) self.H(5, 5) = self.H(3, 3)
def __init__ ( self, props ): #Call the BaseMaterial constructor BaseMaterial.__init__( self, props ) #Create the hookean matrix self.H = zeros( (6,6) ) fac = 1.0 / ((self.E1*self.E2)-(self.E1*self.nu12*self.nu12*self.E2)-(self.nu12*self.nu12*self.E2*self.E2)- (2.0*self.nu12*self.E2*self.nu12*self.nu12*self.E2)-(self.nu12*self.nu12*self.E2*self.E2)) self.H(0,0) = (self.E2-self.nu12*self.nu12*self.E2)*self.E1*self.E1*fac; self.H(0,1) = (self.nu12*self.E2+self.nu12*self.nu12*self.E2)*self.E1*self.E2*fac; self.H(0,2) = (self.nu12*self.nu12+self.nu12)*self.E2*self.E1*self.E2*fac; self.H(1,0) = self.H(0,1); self.H(1,1) = (self.E1-self.nu12*self.nu12*self.E2)*self.E2*self.E2*fac; self.H(1,2) = (self.nu12*self.E1+self.nu12*nu12*self.E2)*self.E2*self.E2*fac; self.H(2,0) = self.H(0,2); self.H(2,1) = self.H(1,2); self.H(2,2) = (self.E1-self.nu12*self.nu12*self.E2)*self.E2*self.E2*fac; self.H(3,3) = self.g12; self.H(4,4) = self.g12; self.H(5,5) = self.g12;
def __init__ ( self, props ): #Call the BaseMaterial constructor BaseMaterial.__init__( self, props ) #Create the hookean matrix self.H = zeros( (6,6) ) fac = 1.0 / (2.0 * self.nu * self.nu + self.nu - 1.0 ); self.H(0,0) = fac * self.E * ( self.nu - 1.0 ); self.H(0,1) = -1.0 * fac * self.E * self.nu; self.H(0,2) = self.H(0,1); self.H(1,0) = self.H(0,1); self.H(1,1) = self.H(0,0); self.H(1,2) = self.H(0,1); self.H(2,0) = self.H(0,1); self.H(2,1) = self.H(0,1); self.H(2,2) = self.H(0,0); self.H(3,3) = self.E / ( 2.0 + 2.0 * self.nu ); self.H(4,4) = self.H(3,3); self.H(5,5) = self.H(3,3);
def __init__(self, props): #Call the BaseMaterial constructor BaseMaterial.__init__(self, props) if not hasattr(props, "factor"): self.factor = 0.001 if not hasattr(props, "G13"): self.G13 = self.G if not hasattr(props, "G23"): self.G23 = self.G self.H = zeros((6, 6)) self.H[0, 0] = self.factor * self.E3 self.H[1, 1] = self.factor * self.E3 self.H[2, 2] = self.E3 self.H[3, 3] = self.factor * (self.G13 + self.G23) * 0.5 self.H[4, 4] = self.G23 self.H[5, 5] = self.G13
def __init__ ( self, props ): BaseMaterial.__init__( self, props ) self.De = zeros( shape = (3,3) ) self.De[0,0] = self.E*(1.-self.nu)/((1.+self.nu)*(1.-2.*self.nu)) self.De[0,1] = self.De[0,0]*self.nu/(1.-self.nu) self.De[1,0] = self.De[0,1] self.De[1,1] = self.De[0,0] self.De[2,2] = self.De[0,0]*0.5*(1.-2.*self.nu)/(1.-self.nu) self.a1 = (1./(2.*self.k)) self.a2 = (self.k-1.)/(1.-2.*self.nu) self.a3 = 12.*self.k/((1.+self.nu)**2) self.a4 = sqrt( self.a2**2+self.a3*self.sc ) self.O4 = array([self.a4,self.a4,2.*self.a3]) self.c = self.nu/(self.nu-1.) self.setHistoryParameter( 'kappa', 0. ) self.commitHistory()
def __init__(self, props): # Call the BaseMaterial constructor BaseMaterial.__init__(self, props) self.gaussNo = 4 # Create the hookean matrix # self.effectiveModuli = zeros((3, 3)) # # self.effectiveModuli[0, 0] = 0 # self.effectiveModuli[0, 1] = 0 # self.effectiveModuli[1, 0] = 0 # self.effectiveModuli[1, 1] = 0 # self.effectiveModuli[2, 2] = 0 # For small strain # self.effectiveModuli = np.zeros([self.gaussNo, 3, 3]) # 4: number of Gauss points, 3 x 3: moduli matrix # self.sigma = np.zeros([self.gaussNo, 3], dtype=float) # 4: number of Gauss points, 3: components of stress # For large strain self.effectiveModuli = np.zeros([self.gaussNo, 4, 4]) self.sigma = np.zeros([self.gaussNo, 2, 2]) self.phase = props.phase self.isHomogenized = np.zeros([self.gaussNo]) # number of Gauss points. self.gaussID = 0 self.maxGaussID = self.gaussNo - 1
def __init__(self, props): #Call the BaseMaterial constructor BaseMaterial.__init__(self, props) #Create the hookean matrix self.H = zeros((6, 6)) fac = 1.0 / ( (self.E1 * self.E2) - (self.E1 * self.nu12 * self.nu12 * self.E2) - (self.nu12 * self.nu12 * self.E2 * self.E2) - (2.0 * self.nu12 * self.E2 * self.nu12 * self.nu12 * self.E2) - (self.nu12 * self.nu12 * self.E2 * self.E2)) self.H(0, 0) = (self.E2 - self.nu12 * self.nu12 * self.E2) * self.E1 * self.E1 * fac self.H(0, 1) = (self.nu12 * self.E2 + self.nu12 * self.nu12 * self.E2) * self.E1 * self.E2 * fac self.H(0, 2) = (self.nu12 * self.nu12 + self.nu12) * self.E2 * self.E1 * self.E2 * fac self.H(1, 0) = self.H(0, 1) self.H(1, 1) = (self.E1 - self.nu12 * self.nu12 * self.E2) * self.E2 * self.E2 * fac self.H(1, 2) = (self.nu12 * self.E1 + self.nu12 * nu12 * self.E2) * self.E2 * self.E2 * fac self.H(2, 0) = self.H(0, 2) self.H(2, 1) = self.H(1, 2) self.H(2, 2) = (self.E1 - self.nu12 * self.nu12 * self.E2) * self.E2 * self.E2 * fac self.H(3, 3) = self.g12 self.H(4, 4) = self.g12 self.H(5, 5) = self.g12
def __init__(self, props): #Call the BaseMaterial constructor BaseMaterial.__init__(self, props) #Create the hookean matrix self.H = zeros((6, 6)) fac = 1.0 / ((self.E1*self.E2)-(self.E1*self.nu12*self.nu12*self.E2)- \ (self.nu12*self.nu12*self.E2*self.E2)- \ (2.0*self.nu12*self.E2*self.nu12*self.nu12*self.E2)- \ (self.nu12*self.nu12*self.E2*self.E2)) self.H[0, 0] = (self.E2 - self.nu12 * self.nu12 * self.E2) * self.E1 * self.E1 * fac self.H[0, 1] = (self.nu12 * self.E2 + self.nu12 * self.nu12 * self.E2) * self.E1 * self.E2 * fac self.H[0, 2] = (self.nu12 * self.nu12 + self.nu12) * self.E2 * self.E1 * self.E2 * fac self.H[1, 0] = self.H[0, 1] self.H[1, 1] = (self.E1 - self.nu12 * self.nu12 * self.E2) * self.E2 * self.E2 * fac self.H[1, 2] = (self.nu12 * self.E1 + self.nu12 * self.nu12 * self.E2) * self.E2 * self.E2 * fac self.H[2, 0] = self.H[0, 2] self.H[2, 1] = self.H[1, 2] self.H[2, 2] = (self.E1 - self.nu12 * self.nu12 * self.E2) * self.E2 * self.E2 * fac self.H[3, 3] = self.G12 self.H[4, 4] = self.G12 self.H[5, 5] = self.G12
def __init__(self, props): BaseMaterial.__init__(self, props) self.H = self.D * eye(2)
def __init__(self, props): BaseMaterial.__init__(self, props) self.H = zeros((3, 3))
def __init__(self, props): BaseMaterial.__init__(self, props) # Create the hookean matrix self.H = zeros((3, 3))
def __init__ ( self, props ): BaseMaterial.__init__( self, props ) self.H = self.D*eye(2)