本文整理汇总了Python中pyNastran.bdf.bdfInterface.assign_type.blank函数的典型用法代码示例。如果您正苦于以下问题:Python blank函数的具体用法?Python blank怎么用?Python blank使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了blank函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: __init__
def __init__(self, card=None, data=None, comment=''):
Property.__init__(self, card, data)
if comment:
self._comment = comment
if card:
#: Property ID
self.pid = integer(card, 1, 'pid')
#: Material ID
self.mid1 = integer_or_blank(card, 2, 'mid1', 0)
self.t1 = double_or_blank(card, 3, 't1')
self.mid2 = integer_or_blank(card, 4, 'mid2', 0)
if self.mid2 > 0:
self.i = double(card, 5, 'i')
assert self.i > 0.0
else:
self.i = blank(card, 5, 'i')
self.mid3 = integer(card, 6, 0)
if self.mid3 > 0:
self.t2 = double(card, 7, 't3')
assert self.t2 > 0.0
else:
self.t2 = blank(card, 7, 't3')
self.nsm = double(card, 8, 'nsm')
self.z1 = double(card, 9, 'z1')
self.z2 = double(card, 10, 'z2')
self.phi = fields(double, card, 'phi', i=11, j=len(card))
else:
raise NotImplementedError(data)
开发者ID:sukhbinder,项目名称:cyNastran,代码行数:31,代码来源:properties.py
示例2: __init__
def __init__(self, card=None, data=None, comment=''):
"""
Creates the POINT card
:param self:
the POINT object pointer
:param card:
a BDFCard object
:type card:
BDFCard
:param data:
a list with the POINT fields defined in OP2 format
:type data:
LIST
:param comment:
a comment for the card
:type comment:
string
"""
if comment:
self._comment = comment
Node.__init__(self, card, data)
if card:
#: Node ID
self.nid = integer(card, 1, 'nid')
#: Grid point coordinate system
self.cp = integer_or_blank(card, 2, 'cp', 0)
#: node location in local frame
self.xyz = array([
double_or_blank(card, 3, 'x1', 0.),
double_or_blank(card, 4, 'x2', 0.),
double_or_blank(card, 5, 'x3', 0.)], dtype='float64')
#: Analysis coordinate system
self.cd = blank(card, 6, 'cd', 0)
#: SPC constraint
self.ps = blank(card, 7, 'ps', '')
#: Superelement ID
self.seid = blank(card, 8, 'seid', 0)
assert len(card) <= 9, 'len(POINT card) = %i' % len(card)
else:
self.nid = data[0]
self.cp = data[1]
self.xyz = array(data[2:5])
assert len(self.xyz) == 3
self.ps = ''
self.seid = 0
self.cd = 0
assert self.nid > 0, 'nid=%s' % (self.nid)
assert self.cp >= 0, 'cp=%s' % (self.cp)
开发者ID:ClaesFredo,项目名称:pyNastran,代码行数:56,代码来源:nodes.py
示例3: __init__
def __init__(self, card=None, data=None, comment=''):
if comment:
self._comment = comment
self.nlparm_id = integer(card, 1, 'nlparm_id')
self.Type = string_or_blank(card, 2, 'Type', 'CRIS')
self.minalr = double_or_blank(card, 3, 'minalr', 0.25)
self.maxalr = double_or_blank(card, 4, 'maxalr', 4.0)
self.scale = double_or_blank(card, 5, 'scale', 0.0)
blank(card, 6, 'blank')
self.desiter = double_or_blank(card, 7, 'minalr', 12)
self.mxinc = integer_or_blank(card, 8, 'minalr', 20)
开发者ID:sukhbinder,项目名称:cyNastran,代码行数:11,代码来源:dynamic.py
示例4: add
def add(self, card=None, comment=''):
if comment:
self._comment = comment
i = self.i
#: Identification number of a MAT1, MAT2, or MAT9 entry.
self.material_id[i] = integer(card, 1, 'mid')
#: Identification number of a TABLES1 or TABLEST entry. If H is
#: given, then this field must be blank.
self.table_id[i] = integer_or_blank(card, 2, 'tid', 0)
#: Type of material nonlinearity. ('NLELAST' for nonlinear elastic
#: or 'PLASTIC' for elastoplastic.)
self.Type[i] = string(card, 3, 'Type')
if self.Type[i] == 'NLELAST':
self.h[i] = blank(card, 4, 'h')
self.hr[i] = blank(card, 6, 'hr')
self.yf[i] = blank(card, 5, 'yf')
self.limit1[i] = blank(card, 7, 'yf')
self.limit2[i] = blank(card, 8, 'yf')
else:
#: Work hardening slope (slope of stress versus plastic strain) in
#: units of stress. For elastic-perfectly plastic cases, H=0.0.
#: For more than a single slope in the plastic range, the
#: stress-strain data must be supplied on a TABLES1 entry
#: referenced by TID, and this field must be blank
h = double_or_blank(card, 4, 'H')
self.h[i] = h
if h is None:
self.hflag[i] = False
else:
self.hflag[i] = True
#: Yield function criterion, selected by one of the following
#: values (1) Von Mises (2) Tresca (3) Mohr-Coulomb
#: (4) Drucker-Prager
self.yf[i] = integer_or_blank(card, 5, 'yf', 1)
#: Hardening Rule, selected by one of the following values
#: (Integer): (1) Isotropic (Default) (2) Kinematic
#: (3) Combined isotropic and kinematic hardening
self.hr[i] = integer_or_blank(card, 6, 'hr', 1)
#: Initial yield point
self.limit1[i] = double(card, 7, 'limit1')
if self.yf[i] == 3 or self.yf[i] == 4:
#: Internal friction angle, measured in degrees, for the
#: Mohr-Coulomb and Drucker-Prager yield criteria
self.limit2[i] = double(card, 8, 'limit2')
else:
#self.limit2[i] = blank(card, 8, 'limit2')
#self.limit2[i] = None
pass
assert len(card) <= 9, 'len(MATS1 card) = %i' % len(card)
self.i += 1
开发者ID:ClaesFredo,项目名称:pyNastran,代码行数:54,代码来源:mats1.py
示例5: add_cquad4
def add_cquad4(self, card=None, data=None, comment=''):
#QuadShell.__init__(self, card, data)
if comment:
self._comment = comment
if card:
eid = integer(card, 1, 'eid')
pid = integer(card, 2, 'pid')
nids = [integer(card, 3, 'n1'),
integer(card, 4, 'n2'),
integer(card, 5, 'n3'),
integer(card, 6, 'n4')]
thetaMcid = integer_double_or_blank(card, 7, 'thetaMcid', 0.0)
zOffset = double_or_blank(card, 8, 'zOffset', 0.0)
blank(card, 9, 'blank')
TFlag = integer_or_blank(card, 10, 'TFlag', 0)
T1 = double_or_blank(card, 11, 'T1', 1.0)
T2 = double_or_blank(card, 12, 'T2', 1.0)
T3 = double_or_blank(card, 13, 'T3', 1.0)
T4 = double_or_blank(card, 14, 'T4', 1.0)
assert len(card) <= 15, 'len(CQUAD4 card) = %i' % len(card)
else:
eid = data[0]
pid = data[1]
nids = data[2:6]
thetaMcid = data[6]
zOffset = data[7]
TFlag = data[8]
T1 = data[9]
T2 = data[10]
T3 = data[11]
T4 = data[12]
if T1 == -1.0:
T1 = 1.0
if T2 == -1.0:
T2 = 1.0
if T3 == -1.0:
T3 = 1.0
if T4 == -1.0:
T4 = 1.0
#self.prepareNodeIDs(nids)
assert len(nids) == 4, 'CQUAD4'
self._eidmap[eid] = self._ncquad4
self.eid.append(eid)
self.pid.append(pid)
self.nodes.append(nids)
self.thetaMcid.append(thetaMcid)
self.zOffset.append(zOffset)
self.TFlag.append(TFlag)
self.T.append([T1, T2, T3, T4])
self._ncquad4 += 1
开发者ID:sukhbinder,项目名称:cyNastran,代码行数:54,代码来源:cquad4_2.py
示例6: __init__
def __init__(self, card=None, data=None, comment=''):
Method.__init__(self, card, data)
if comment:
self._comment = comment
if card:
#: Set identification number. (Unique Integer > 0)
self.sid = integer(card, 1, 'sid')
#: Method of eigenvalue extraction. (Character: 'INV' for inverse
#: power method or 'SINV' for enhanced inverse power method.)
self.method = string_or_blank(card, 2, 'method', 'LAN')
assert self.method in ['LAN', 'AHOU', 'INV', 'SINV', 'GIV', 'MGIV', 'HOU', 'MHOU', 'AGIV'], 'method=%s' % self.method
#: Frequency range of interest
self.f1 = double_or_blank(card, 3, 'f1')
self.f2 = double_or_blank(card, 4, 'f2')
#: Estimate of number of roots in range (Required for
#: METHOD = 'INV'). Not used by 'SINV' method.
self.ne = integer_or_blank(card, 5, 'ne')
#: Desired number of roots (default=600 for SINV 3*ne for INV)
if self.method in ['SINV']:
self.nd = integer_or_blank(card, 6, 'nd', 600)
if self.method in ['INV']:
self.nd = integer_or_blank(card, 6, 'nd', 3 * self.ne)
elif self.method in ['GIV', 'MGIV', 'HOU', 'MHOU']:
self.nd = integer_or_blank(card, 6, 'nd', 0)
else:
self.nd = integer(card, 6, 'nd')
#: Method for normalizing eigenvectors. ('MAX' or 'POINT';
#: Default='MAX')
self.norm = string_or_blank(card, 9, 'norm', 'MASS')
assert self.norm in ['POINT', 'MASS', 'MAX']
if self.method == 'POINT':
#: Grid or scalar point identification number. Required only if
#: NORM='POINT'. (Integer>0)
self.G = integer(card, 10, 'G')
#: Component number. Required only if NORM='POINT' and G is a
#: geometric grid point. (1<Integer<6)
self.C = components(card, 11, 'C')
else:
self.G = blank(card, 10, 'G')
self.C = blank(card, 11, 'C')
assert len(card) <= 12, 'len(EIGR card) = %i' % len(card)
else:
raise NotImplementedError('EIGR')
开发者ID:sukhbinder,项目名称:cyNastran,代码行数:49,代码来源:methods.py
示例7: getDamper
def getDamper(self, card, iStart):
self.damperType = string_or_blank(card, iStart + 1, 'damperType')
self.damperIDT = integer(card, iStart + 2, 'damperIDT')
if self.damperType == 'TABLE':
self.damperIDC = blank(card, iStart + 3, 'damperIDC')
self.damperIDTDV = blank(card, iStart + 4, 'damperIDTDV')
self.damperIDCDV = blank(card, iStart + 5, 'damperIDCDV')
elif self.damperType == 'EQUAT':
self.damperIDC = integer_or_blank(card, iStart + 3, 'damperIDC')
self.damperIDTDV = integer(card, iStart + 4, 'damperIDTDV')
self.damperIDCDV = integer_or_blank(card, iStart + 5, 'damperIDCDV', self.damperIDTDV)
else:
raise RuntimeError('Invalid springType=|%s| on card\n%s' %(self.springType, card))
self.vars.append('DAMPER')
开发者ID:sukhbinder,项目名称:cyNastran,代码行数:15,代码来源:bush.py
示例8: getShockA
def getShockA(self, card, iStart):
self.shockType = string_or_blank(card, iStart + 1, 'shockType')
self.shockCVT = double(card, iStart + 2, 'shockCVT')
self.shockCVC = double_or_blank(card, iStart + 3, 'shockCVC')
self.shockExpVT = double_or_blank(card, iStart + 4, 'shockExpVT', 1.0)
self.shockExpVC = double_or_blank(card, iStart + 5,
'shockExpVC', self.shockExpVT)
if self.shockType == 'TABLE':
pass
# self.shockIDTS = integer(card, iStart + 6, 'shockIDTS')
# self.shockIDETS = blank(card, iStart + 9, 'shockIDETS')
# self.shockIDECS = blank(card, iStart + 10, 'shockIDECS')
# self.shockIDETSD = blank(card, iStart + 11, 'shockIDETSD')
# self.shockIDECSD = blank(card, iStart + 12, 'shockIDECSD')
elif self.shockType == 'EQUAT':
self.shockIDTS = blank(card, iStart + 6, 'shockIDTS')
self.shockIDETS = integer(card, iStart + 9, 'shockIDETS')
self.shockIDECS = integer_or_blank(card, iStart + 10,
'shockIDECS', self.shockIDETS)
self.shockIDETSD = integer(card, iStart + 11, 'shockIDETSD')
self.shockIDECSD = integer_or_blank(card, iStart + 11,
'shockIDECSD', self.shockIDETSD)
else:
raise RuntimeError('Invalid shockType=|%s| on card\n%s' %(self.shockType, card))
iStart += 8
return iStart
开发者ID:sukhbinder,项目名称:cyNastran,代码行数:28,代码来源:bush.py
示例9: __init__
def __init__(self, card=None, data=None, comment=''):
ThermalElement.__init__(self, card, data)
if comment:
self._comment = comment
if card:
#: Surface element ID
self.eid = integer(card, 1, 'eid')
#: PHBDY property entry identification numbers. (Integer > 0)
self.pid = integer(card, 2, 'pid')
assert self.pid > 0
self.Type = string(card, 3, 'Type')
#print "self.Type = ",self.Type
# msg = 'CHBDYP Type=|%s|' (self.Type)
#assert self.Type in ['POINT','LINE','ELCYL','FTUBE','TUBE'], msg
#: A VIEW entry identification number for the front face.
self.iViewFront = integer_or_blank(card, 4, 'iViewFront', 0)
#: A VIEW entry identification number for the back face.
self.iViewBack = integer_or_blank(card, 5, 'iViewBack', 0)
#: Grid point identification numbers of grids bounding the surface.
#: (Integer > 0)
self.g1 = integer(card, 6, 'g1')
#: Grid point identification numbers of grids bounding the surface.
#: (Integer > 0)
if self.Type != 'POINT':
self.g2 = integer(card, 7, 'g2')
else:
self.g2 = blank(card, 7, 'g2')
#: Orientation grid point. (Integer > 0; Default = 0)
self.g0 = integer_or_blank(card, 8, 'g0', 0)
#: RADM identification number for front face of surface element.
#: (Integer > 0)
self.radMidFront = integer_or_blank(card, 9, 'radMidFront', 0)
#: RADM identification number for back face of surface element.
#: (Integer > 0)
self.radMidBack = integer_or_blank(card, 10, 'radMidBack', 0)
#: Grid point identification number of a midside node if it is used
#: with the line type surface element.
self.gmid = integer_or_blank(card, 11, 'gmid')
#: Coordinate system for defining orientation vector.
#: (Integer > 0; Default = 0
self.ce = integer_or_blank(card, 12, 'ce', 0)
#: Components of the orientation vector in coordinate system CE.
#: The origin of the orientation vector is grid point G1.
#: (Real or blank)
self.e1 = double_or_blank(card, 13, 'e3')
self.e2 = double_or_blank(card, 14, 'e3')
self.e3 = double_or_blank(card, 15, 'e3')
assert len(card) <= 16, 'len(CHBDYP card) = %i' % len(card)
else:
raise NotImplementedError(data)
开发者ID:anick107,项目名称:von_mises_rms,代码行数:60,代码来源:thermal.py
示例10: __init__
def __init__(self, card=None, data=None, comment=""):
ThermalElement.__init__(self, card, data)
if comment:
self._comment = comment
if card:
#: Surface element ID
self.eid = integer(card, 1, "eid")
#: PHBDY property entry identification numbers. (Integer > 0)
self.pid = integer(card, 2, "pid")
assert self.pid > 0
self.Type = string(card, 3, "Type")
# print("self.Type = %s" % self.Type)
# msg = 'CHBDYP Type=%r' % self.Type
# assert self.Type in ['POINT','LINE','ELCYL','FTUBE','TUBE'], msg
#: A VIEW entry identification number for the front face.
self.iViewFront = integer_or_blank(card, 4, "iViewFront", 0)
#: A VIEW entry identification number for the back face.
self.iViewBack = integer_or_blank(card, 5, "iViewBack", 0)
#: Grid point identification numbers of grids bounding the surface.
#: (Integer > 0)
self.g1 = integer(card, 6, "g1")
#: Grid point identification numbers of grids bounding the surface.
#: (Integer > 0)
if self.Type != "POINT":
self.g2 = integer(card, 7, "g2")
else:
self.g2 = blank(card, 7, "g2")
#: Orientation grid point. (Integer > 0; Default = 0)
self.g0 = integer_or_blank(card, 8, "g0", 0)
#: RADM identification number for front face of surface element.
#: (Integer > 0)
self.radMidFront = integer_or_blank(card, 9, "radMidFront", 0)
#: RADM identification number for back face of surface element.
#: (Integer > 0)
self.radMidBack = integer_or_blank(card, 10, "radMidBack", 0)
#: Grid point identification number of a midside node if it is used
#: with the line type surface element.
self.gmid = integer_or_blank(card, 11, "gmid")
#: Coordinate system for defining orientation vector.
#: (Integer > 0; Default = 0
self.ce = integer_or_blank(card, 12, "ce", 0)
#: Components of the orientation vector in coordinate system CE.
#: The origin of the orientation vector is grid point G1.
#: (Real or blank)
self.e1 = double_or_blank(card, 13, "e3")
self.e2 = double_or_blank(card, 14, "e3")
self.e3 = double_or_blank(card, 15, "e3")
assert len(card) <= 16, "len(CHBDYP card) = %i" % len(card)
else:
raise NotImplementedError(data)
开发者ID:ClaesFredo,项目名称:pyNastran,代码行数:60,代码来源:thermal.py
示例11: __init__
def __init__(self, card=None, data=None, comment=''):
if comment:
self._comment = comment
if card:
self.name = string(card, 1, 'name')
#zero
#: 4-Lower Triangular; 5=Upper Triangular; 6=Symmetric; 8=Identity (m=nRows, n=m)
self.ifo = integer(card, 3, 'ifo')
#: 1-Real, Single Precision; 2=Real,Double Precision; 3=Complex, Single; 4=Complex, Double
self.tin = integer(card, 4, 'tin')
#: 0-Set by cell precision
self.tout = integer_or_blank(card, 5, 'tout', 0)
self.polar = integer_or_blank(card, 6, 'polar')
if self.ifo == 9:
self.ncol = integer(card, 8, 'ncol')
else:
self.ncol = blank(card, 8, 'ncol')
else:
raise NotImplementedError(data)
self.GCj = []
self.GCi = []
self.Real = []
if self.isComplex():
self.Complex = []
开发者ID:anick107,项目名称:von_mises_rms,代码行数:27,代码来源:dmig.py
示例12: __init__
def __init__(self, card=None, data=None, comment=''):
QuadShell.__init__(self, card, data)
if comment:
self._comment = comment
if card:
#: Element ID
self.eid = integer(card, 1, 'eid')
#: Property ID
self.pid = integer(card, 2, 'pid')
nids = [integer(card, 3, 'n1'),
integer(card, 4, 'n2'),
integer(card, 5, 'n3'),
integer(card, 6, 'n4')]
self.thetaMcid = integer_double_or_blank(card, 7, 'thetaMcid', 0.0)
self.zOffset = double_or_blank(card, 8, 'zOffset', 0.0)
blank(card, 9, 'blank')
self.TFlag = integer_or_blank(card, 10, 'TFlag', 0)
self.T1 = double_or_blank(card, 11, 'T1', 1.0)
self.T2 = double_or_blank(card, 12, 'T2', 1.0)
self.T3 = double_or_blank(card, 13, 'T3', 1.0)
self.T4 = double_or_blank(card, 14, 'T4', 1.0)
assert len(card) <= 15, 'len(CQUAD4 card) = %i' % len(card)
else:
self.eid = data[0]
self.pid = data[1]
nids = data[2:6]
self.thetaMcid = data[6]
self.zOffset = data[7]
self.TFlag = data[8]
self.T1 = data[9]
self.T2 = data[10]
self.T3 = data[11]
self.T4 = data[12]
if self.T1 == -1.0:
self.T1 = 1.0
if self.T2 == -1.0:
self.T2 = 1.0
if self.T3 == -1.0:
self.T3 = 1.0
if self.T4 == -1.0:
self.T4 = 1.0
self.prepareNodeIDs(nids)
assert len(self.nodes) == 4, 'CQUAD4'
开发者ID:anick107,项目名称:von_mises_rms,代码行数:45,代码来源:shell.py
示例13: getSpring
def getSpring(self, card, iStart):
self.springType = string_or_blank(card, iStart + 1, 'springType')
self.springIDT = integer(card, iStart + 2, 'springIDT')
if self.springType == 'TABLE':
self.springIDC = blank(card, iStart + 3, 'springIDC')
self.springIDTDU = blank(card, iStart + 4, 'springIDTDU')
self.springIDCDU = blank(card, iStart + 5, 'springIDCDU')
elif self.springType == 'EQUAT':
self.springIDC = integer_or_blank(card, iStart + 3,
'springIDC', self.springIDT)
self.springIDTDU = integer(card, iStart + 4, 'springIDTDU')
self.springIDCDU = integer_or_blank(card, iStart + 5,
'springIDCDU', self.springIDTDU)
else:
raise RuntimeError('Invalid springType=|%s| on card\n%s' %(self.springType, card))
self.vars.append('SPRING')
开发者ID:sukhbinder,项目名称:cyNastran,代码行数:18,代码来源:bush.py
示例14: __init__
def __init__(self, card=None, data=None, comment=''):
"""
if coming from a BDF object, card is used
if coming from the OP2, data is used
"""
if comment:
self._comment = comment
Node.__init__(self, card, data)
if card:
#: Node ID
self.nid = integer(card, 1, 'nid')
#: Grid point coordinate system
self.cp = integer_or_blank(card, 2, 'cp', 0)
#: node location in local frame
self.xyz = array([
double_or_blank(card, 3, 'x1', 0.),
double_or_blank(card, 4, 'x2', 0.),
double_or_blank(card, 5, 'x3', 0.)], dtype='float64')
#: Analysis coordinate system
self.cd = blank(card, 6, 'cd', 0)
#: SPC constraint
self.ps = blank(card, 7, 'ps', '')
#: Superelement ID
self.seid = blank(card, 8, 'seid', 0)
assert len(card) <= 9, 'len(POINT card) = %i' % len(card)
else:
self.nid = data[0]
self.cp = data[1]
self.xyz = array(data[2:5])
assert len(self.xyz) == 3
self.ps = ''
self.seid = 0
self.cd = 0
assert self.nid > 0, 'nid=%s' % (self.nid)
assert self.cp >= 0, 'cp=%s' % (self.cp)
开发者ID:sukhbinder,项目名称:cyNastran,代码行数:42,代码来源:nodes.py
示例15: build
def build(self):
cards = self._cards
ncards = len(cards)
self.n = ncards
if ncards:
float_fmt = self.model.float
#: Element ID
self.element_id = zeros(ncards, 'int32')
#: Property ID
self.property_id = zeros(ncards, 'int32')
#: Node IDs
self.node_ids = zeros((ncards, 3), 'int32')
self.zoffset = zeros(ncards, 'int32')
self.t_flag = zeros(ncards, 'int32')
self.thickness = zeros((ncards, 3), float_fmt)
for i, card in enumerate(cards):
self.element_id[i] = integer(card, 1, 'elemeent_id')
self.property_id[i] = integer(card, 2, 'property_id')
self.node_ids[i] = [integer(card, 3, 'n1'),
integer(card, 4, 'n2'),
integer(card, 5, 'n3')]
#self.thetaMcid = integer_double_or_blank(card, 6, 'thetaMcid', 0.0)
#self.zOffset = double_or_blank(card, 7, 'zOffset', 0.0)
blank(card, 8, 'blank')
blank(card, 9, 'blank')
#self.TFlag = integer_or_blank(card, 10, 'TFlag', 0)
#self.T1 = double_or_blank(card, 11, 'T1', 1.0)
#self.T2 = double_or_blank(card, 12, 'T2', 1.0)
#self.T3 = double_or_blank(card, 13, 'T3', 1.0)
i = self.element_id.argsort()
self.element_id = self.element_id[i]
self.property_id = self.property_id[i]
self.node_ids = self.node_ids[i, :]
self._cards = []
self._comments = []
开发者ID:sukhbinder,项目名称:cyNastran,代码行数:41,代码来源:ctria3.py
示例16: add
def add(self, card, comment=''):
i = self.i
self.element_id[i] = integer(card, 1, 'element_id')
self.property_id[i] = integer(card, 2, 'property_id')
self.node_ids[i] = [integer(card, 3, 'n1'),
integer(card, 4, 'n2'),
integer(card, 5, 'n3')]
#self.thetaMcid = integer_double_or_blank(card, 6, 'thetaMcid', 0.0)
#self.zOffset = double_or_blank(card, 7, 'zOffset', 0.0)
blank(card, 8, 'blank')
blank(card, 9, 'blank')
self.t_flag[i] = integer_or_blank(card, 10, 'TFlag', 0)
self.thickness[i] = [
double_or_blank(card, 11, 'T1', 1.0),
double_or_blank(card, 12, 'T2', 1.0),
double_or_blank(card, 13, 'T3', 1.0), ]
self.i += 1
开发者ID:umvarma,项目名称:pynastran,代码行数:21,代码来源:ctria3.py
示例17: __init__
def __init__(self, card=None, data=None, comment=''):
Property.__init__(self, card, data)
if comment:
self._comment = comment
if card:
#: Property ID
self.pid = integer(card, 1, 'pid')
#: Material ID
self.mid1 = integer_or_blank(card, 2, 'mid1', 0)
self.t1 = double_or_blank(card, 3, 't1')
self.mid2 = integer_or_blank(card, 4, 'mid2', 0)
if self.mid2 > 0:
self.i = double(card, 5, 'i')
assert self.i > 0.0
else:
self.i = blank(card, 5, 'i')
self.mid3 = integer(card, 6, 0)
if self.mid3 > 0:
self.t2 = double(card, 7, 't3')
assert self.t2 > 0.0
else:
self.t2 = blank(card, 7, 't3')
self.nsm = double(card, 8, 'nsm')
self.z1 = double(card, 9, 'z1')
self.z2 = double(card, 10, 'z2')
j = 1
self.phi = []
for i in range(11, len(card)):
phii = double(card, i, 'phi' % j)
self.phi.append(phii)
j += 1
else:
raise NotImplementedError(data)
开发者ID:abk-ShuaiHaotian,项目名称:pyNastran,代码行数:37,代码来源:properties.py
示例18: __init__
def __init__(self, card=None, data=None, comment=''):
MaterialDependence.__init__(self, card, data)
if comment:
self._comment = comment
if card:
#: Identification number of a MAT1, MAT2, or MAT9 entry.
self.mid = integer(card, 1, 'mid')
#: Identification number of a TABLES1 or TABLEST entry. If H is
#: given, then this field must be blank.
self.tid = integer_or_blank(card, 2, 'tid')
#: Type of material nonlinearity. ('NLELAST' for nonlinear elastic
#: or 'PLASTIC' for elastoplastic.)
self.Type = string(card, 3, 'Type')
if self.Type not in ['NLELAST', 'PLASTIC']:
raise ValueError('MATS1 Type must be [NLELAST, PLASTIC]; Type=%r' % self.Type)
if self.Type == 'NLELAST':
self.h = blank(card, 4, 'h')
self.hr = blank(card, 6, 'hr')
self.yf = blank(card, 5, 'yf')
self.limit1 = blank(card, 7, 'yf')
self.limit2 = blank(card, 8, 'yf')
else:
#: Work hardening slope (slope of stress versus plastic strain)
#: in units of stress. For elastic-perfectly plastic cases,
#: H=0.0. For more than a single slope in the plastic range,
#: the stress-strain data must be supplied on a TABLES1 entry
#: referenced by TID, and this field must be blank
self.h = double_or_blank(card, 4, 'H')
#: Yield function criterion, selected by one of the following
#: values (1) Von Mises (2) Tresca (3) Mohr-Coulomb
#: (4) Drucker-Prager
self.yf = integer_or_blank(card, 5, 'yf', 1)
#: Hardening Rule, selected by one of the following values
#: (Integer): (1) Isotropic (Default) (2) Kinematic
#: (3) Combined isotropic and kinematic hardening
self.hr = integer_or_blank(card, 6, 'hr', 1)
#: Initial yield point
self.limit1 = double(card, 7, 'limit1')
if self.yf == 3 or self.yf == 4:
#: Internal friction angle, measured in degrees, for the
#: Mohr-Coulomb and Drucker-Prager yield criteria
self.limit2 = double(card, 8, 'limit2')
else:
#self.limit2 = blank(card, 8, 'limit2')
self.limit2 = None
assert len(card) <= 9, 'len(MATS1 card) = %i' % len(card)
else:
(mid, tid, Type, h, yf, hr, limit1, limit2) = data
self.mid = mid
self.tid = tid
if Type == 1:
self.Type = 'NLELAST'
elif Type == 2:
self.Type = 'PLASTIC'
else:
raise RuntimeError('Invalid Type: Type=%s; must be 1=NLELAST '
'or 2=PLASTIC' % (Type))
self.h = h
self.yf = yf
self.hr = hr
self.limit1 = limit1
self.limit2 = limit2
开发者ID:umvarma,项目名称:pynastran,代码行数:67,代码来源:material_deps.py
示例19: test_blank
def test_blank(self):
"""
value = integer(card, n, fieldname)
"""
# integer
with self.assertRaises(SyntaxError):
blank(BDFCard([1] ), 0, 'field')
with self.assertRaises(SyntaxError):
blank(BDFCard(['1']), 0, 'field')
# float
with self.assertRaises(SyntaxError):
blank(BDFCard([1.] ), 0, 'field')
with self.assertRaises(SyntaxError):
blank(BDFCard(['1.']), 0, 'field')
# string
with self.assertRaises(SyntaxError):
blank(BDFCard(['a'] ), 0, 'field')
with self.assertRaises(SyntaxError):
blank(BDFCard(['1b']), 0, 'field')
# blank
val = blank(BDFCard([''] ), 0, 'field')
self.assertEquals(val, None)
val = blank(BDFCard([None] ), 0, 'field')
self.assertEquals(val, None)
val = blank(BDFCard([None] ), 0, 'field', 'default')
self.assertEquals(val, 'default')
开发者ID:umvarma,项目名称:pynastran,代码行数:29,代码来源:test_assign_type.py
示例20: __init__
def __init__(self, card=None, data=None, comment=''):
"""
.. todo::
support solution 600 default
do a check for mid -> MAT1 for structural
do a check for mid -> MAT4/MAT5 for thermal
+------+-----+-----+-----+----+----+----+-----+
| PBAR | PID | MID | A | I1 | I2 | J | NSM |
+------+-----+-----+-----+----+----+----+-----+-----+
| | C1 | C2 | D1 | D2 | E1 | E2 | F1 | F2 |
+------+-----+-----+-----+----+----+----+-----+-----+
| | K1 | K2 | I12 |
+------+-----+-----+-----+
"""
LineProperty.__init__(self, card, data)
if comment:
self._comment = comment
if card:
#: property ID -> use Pid()
self.pid = integer(card, 1, 'pid')
#: material ID -> use Mid()
self.mid = integer(card, 2, 'mid')
#: Area -> use Area()
self.A = double_or_blank(card, 3, 'A', 0.0)
#: I1 -> use I1()
self.i1 = double_or_blank(card, 4, 'I1', 0.0)
#: I2 -> use I2()
self.i2 = double_or_blank(card, 5, 'I2', 0.0)
#: Polar Moment of Inertia J -> use J()
#: default=1/2(I1+I2) for SOL=600, otherwise 0.0
#: .. todo:: support SOL 600 default
self.j = double_or_blank(card, 6, 'J', 0.0)
#: nonstructral mass -> use Nsm()
self.nsm = double_or_blank(card, 7, 'nsm', 0.0)
self.C1 = double_or_blank(card, 9, 'C1', 0.0)
self.C2 = double_or_blank(card, 10, 'C2', 0.0)
self.D1 = double_or_blank(card, 11, 'D1', 0.0)
self.D2 = double_or_blank(card, 12, 'D2', 0.0)
self.E1 = double_or_blank(card, 13, 'E1', 0.0)
self.E2 = double_or_blank(card, 14, 'E2', 0.0)
self.F1 = double_or_blank(card, 15, 'F1', 0.0)
self.F2 = double_or_blank(card, 16, 'F2', 0.0)
if self.i1 < 0.:
raise RuntimeError('I1=%r must be greater than or equal to 0.0' % self.i1)
if self.i2 < 0.:
raise RuntimeError('I2=%r must be greater than or equal to 0.0' % self.i2)
if self.j < 0.:
raise RuntimeError('J=%r must be greater than or equal to 0.0' % self.j)
#: I12 -> use I12()
self.i12 = double_or_blank(card, 19, 'I12', 0.0)
if self.A == 0.0:
# K1/K2 must be blank
#: default=infinite; assume 1e8
self.K1 = blank(card, 17, 'K1')
#: default=infinite; assume 1e8
self.K2 = blank(card, 18, 'K2')
elif self.i12 != 0.0:
# K1 / K2 are ignored
self.K1 = None
self.K2 = None
else:
#: default=infinite; assume 1e8
self.K1 = double_or_blank(card, 17, 'K1', 1e8)
#: default=infinite; assume 1e8
self.K2 = double_or_blank(card, 18, 'K2', 1e8)
assert len(card) <= 20, 'len(PBAR card) = %i' % len(card)
else:
self.pid = data[0]
self.mid = data[1]
self.A = data[2]
self.i1 = data[3]
self.i2 = data[4]
self.j = data[5]
self.nsm = data[6]
#self.fe = data[7] #: .. todo:: not documented....
self.C1 = data[8]
self.C2 = data[9]
self.D1 = data[10]
self.D2 = data[11]
self.E1 = data[12]
self.E2 = data[13]
self.F1 = data[14]
self.F2 = data[15]
self.K1 = data[16]
self.K2 = data[17]
self.i12 = data[18]
开发者ID:umvarma,项目名称:pynastran,代码行数:94,代码来源:bars.py
注:本文中的pyNastran.bdf.bdfInterface.assign_type.blank函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论