本文整理汇总了Python中pyNastran.bdf.bdf.BDF.add_pshell方法的典型用法代码示例。如果您正苦于以下问题:Python BDF.add_pshell方法的具体用法?Python BDF.add_pshell怎么用?Python BDF.add_pshell使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类pyNastran.bdf.bdf.BDF
的用法示例。
在下文中一共展示了BDF.add_pshell方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_shells
# 需要导入模块: from pyNastran.bdf.bdf import BDF [as 别名]
# 或者: from pyNastran.bdf.bdf.BDF import add_pshell [as 别名]
def test_shells(self):
"""tests a CTRIA3/CQUAD4/PSHELL and CTRIA6/CQUAD8/CQUAD/PCOMP"""
model = BDF(debug=False)
model.add_grid(1, xyz=[0., 0., 0.])
model.add_grid(2, xyz=[1., 0., 0.])
model.add_grid(3, xyz=[1., 1., 0.])
model.add_grid(4, xyz=[0., 1., 0.])
model.add_grid(5, xyz=[.5, 0., 0.])
model.add_grid(6, xyz=[1., 0.5, 0.])
model.add_grid(7, xyz=[.5, 1., 0.])
model.add_grid(8, xyz=[0., .5, 0.])
model.add_grid(9, xyz=[.5, .5, 0.])
E = 30.e7
G = None
nu = 0.3
model.add_mat1(1, E, G, nu, rho=0.1)
model.add_mat1(2, E, G, nu, rho=0.1)
model.add_mat1(3, E, G, nu, rho=0.1)
pid = 1
nids = [1, 2, 3]
model.add_ctria3(1, pid, nids)
nids = [1, 2, 3, 4]
model.add_cquad4(2, pid, nids)
model.add_pshell(pid, mid1=2, t=0.1)
pid = 2
nids = [1, 2, 3, 5, 6, 9]
ctria6 = model.add_ctria6(3, pid, nids, comment='ctria6')
nids = [1, 2, 3, 4, 5, 6, 7, 8]
cquad8 = model.add_cquad8(4, pid, nids, comment='cquad8')
nids = [1, 2, 3, 4, 5, 6, 7, 8, 9]
cquad = model.add_cquad(5, pid, nids, comment='cquad')
mids = [1, 2, 3]
thicknesses = [0.1, 0.2, 0.3]
pcomp = model.add_pcomp(pid, mids, thicknesses)
assert pcomp.Thickness() == sum(thicknesses), thicknesses
pcomp.lam = 'SYM'
assert pcomp.Thickness() == sum(thicknesses)*2, thicknesses
model.validate()
ctria6.raw_fields()
ctria6.write_card(size=8)
cquad8.raw_fields()
cquad8.write_card(size=8)
cquad.raw_fields()
cquad.write_card(size=8)
pcomp.raw_fields()
pcomp.write_card(size=8)
pcomp.write_card(size=16)
pcomp.write_card(size=16, is_double=True)
model._verify_bdf(xref=False)
#--------------------------------
model.cross_reference()
model._verify_bdf(xref=True)
ctria6.raw_fields()
ctria6.write_card(size=8)
cquad8.raw_fields()
cquad8.write_card(size=8)
cquad.raw_fields()
cquad.write_card(size=8)
pcomp.raw_fields()
pcomp.write_card(size=8)
pcomp.write_card(size=16)
pcomp.write_card(size=16, is_double=True)
示例2: test_dvprel1
# 需要导入模块: from pyNastran.bdf.bdf import BDF [as 别名]
# 或者: from pyNastran.bdf.bdf.BDF import add_pshell [as 别名]
def test_dvprel1(self):
"""tests a DESVAR, DVPREL1, DRESP1, DCONSTR"""
model = BDF(debug=False)
oid = 10
desvar_id = 12
desvar_ids = 12
Type = 'PSHELL'
pid = 20
eid = 25
mid = 30
pname_fid = 'T'
coeffs = 1.
E = 30.e7
G = None
nu = 0.3
nids = [1, 2, 3]
label = 'T_SHELL'
xinit = 0.1
xlb = 0.01
xub = 2.0
model.add_grid(1, xyz=[0., 0., 0.])
model.add_grid(2, xyz=[1., 0., 0.])
model.add_grid(3, xyz=[1., 1., 0.])
ctria3 = model.add_ctria3(eid, pid, nids, comment='ctria3')
pshell = model.add_pshell(pid, mid1=30, t=0.1, comment='pshell')
mat1 = model.add_mat1(mid, E, G, nu, rho=0.1, comment='mat1')
desvar = model.add_desvar(desvar_id, label, xinit, xlb, xub, comment='desvar')
dvprel1 = model.add_dvprel1(oid, Type, pid, pname_fid,
desvar_ids, coeffs, p_min=None, p_max=1e20, c0=0.0,
validate=True, comment='dvprel')
deqation = 100
dvids = desvar_id
labels = None
dvprel2 = model.add_dvprel2(oid+1, Type, pid, pname_fid, deqation,
dvids, labels, p_min=None, p_max=1e20,
validate=True, comment='')
equation_id = 100
name = 'fstress'
eqs = ['fstress(x) = x + 10.']
deqatn = model.add_deqatn(name, equation_id, eqs, comment='deqatn')
#print(deqatn.object_attributes())
#print(deqatn.func_str)
#print(deqatn)
dresp_id = 42
label = 'STRESS1'
response_type = 'STRESS'
property_type = 'PSHELL'
region = None
atta = 9
attb = None
atti = pid
dresp1 = model.add_dresp1(dresp_id, label, response_type,
property_type, region,
atta, attb, atti, validate=True, comment='dresp1')
dconstr = model.add_dconstr(oid, dresp_id, lid=-1.e20, uid=1.e20,
lowfq=0., highfq=1.e20, comment='dconstr')
desvar.write_card(size=8)
desvar.write_card(size=16)
dvprel1.write_card(size=8)
dvprel1.write_card(size=16)
dconstr.write_card(size=8)
dconstr.write_card(size=16)
dresp1.write_card(size=8)
dresp1.write_card(size=16)
dresp1.write_card(size=16, is_double=True)
model.validate()
#model._verify_bdf(xref=False)
model.cross_reference()
desvar.write_card(size=8)
desvar.write_card(size=16)
desvar.raw_fields()
dvprel1.write_card(size=8)
dvprel1.write_card(size=16)
dvprel1.raw_fields()
dconstr.write_card(size=8)
dconstr.write_card(size=16)
dconstr.raw_fields()
dresp1.write_card(size=8)
dresp1.write_card(size=16)
dresp1.raw_fields()
stringio = StringIO()
model.write_bdf(stringio, close=False)
stringio.getvalue()