本文整理汇总了Python中pyNastran.f06.f06_formatting._eigenvalue_header函数的典型用法代码示例。如果您正苦于以下问题:Python _eigenvalue_header函数的具体用法?Python _eigenvalue_header怎么用?Python _eigenvalue_header使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了_eigenvalue_header函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。
示例1: _write_sort1_as_sort1
def _write_sort1_as_sort1(self, header, page_stamp, page_num, f, msg_temp, is_mag_phase):
ntimes = self.data.shape[0]
eids = self.element
for itime in range(ntimes):
dt = self._times[itime]
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write(''.join(header + msg_temp))
tx = self.data[itime, :, 0]
ty = self.data[itime, :, 1]
tz = self.data[itime, :, 2]
rx = self.data[itime, :, 3]
ry = self.data[itime, :, 4]
rz = self.data[itime, :, 5]
for eid, itx, ity, itz, irx, iry, irz in zip(eids, tx, ty, tz, rx, ry, rz):
[txr, tyr, tzr, rxr, ryr, rzr,
txi, tyi, tzi, rxi, ryi, rzi] = write_imag_floats_13e([itx, ity, itz, irx, iry, irz], is_mag_phase)
#'0 1.000000E-01 0.0 2.912573E+00 0.0 0.0 0.0 0.0'
#' 0.0 179.9942 0.0 0.0 0.0 0.0'
f.write(' %8i %-13s %-13s %-13s %-13s %-13s %s\n'
' %8s %-13s %-13s %-13s %-13s %-13s %s\n' % (
eid, txr, tyr, tzr, rxr, ryr, rzr,
'', txi, tyi, tzi, rxi, ryi, rzi))
f.write(page_stamp % page_num)
page_num += 1
return page_num - 1
开发者ID:hurlei,项目名称:pyNastran,代码行数:28,代码来源:oes_bush.py
示例2: write_f06
def write_f06(self, f, header=None, page_stamp='PAGE %s', page_num=1, is_mag_phase=False, is_sort1=True):
if header is None:
header = []
msg_temp = self.get_f06_header(is_mag_phase=is_mag_phase, is_sort1=is_sort1)
ntimes = self.data.shape[0]
eids = self.element
is_odd = False
nwrite = len(eids)
if len(eids) % 2 == 1:
nwrite -= 1
is_odd = True
#print('len(eids)=%s nwrite=%s is_odd=%s' % (len(eids), nwrite, is_odd))
for itime in range(ntimes):
dt = self._times[itime] # TODO: rename this...
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write(''.join(header + msg_temp))
#print("self.data.shape=%s itime=%s ieids=%s" % (str(self.data.shape), itime, str(ieids)))
spring_force = self.data[itime, :, 0]
out = []
for eid, spring_forcei in zip(eids, spring_force):
[rspring, ispring] = write_imag_floats_13e([spring_forcei], is_mag_phase)
#ELEMENT AXIAL TORSIONAL
#ID. STRESS STRESS
#14 0.0 / 0.0 0.0 / 0.0
f.write(' %8i %-13s / %-13s\n' % (eid, rspring, ispring))
f.write(page_stamp % page_num)
page_num += 1
return page_num - 1
开发者ID:hurlei,项目名称:pyNastran,代码行数:35,代码来源:oes_springs.py
示例3: write_f06
def write_f06(self, header, page_stamp, page_num=1, f=None, is_mag_phase=False, is_sort1=True):
msg = self._get_msgs()
(ntimes, ntotal) = self.data.shape[:2]
eids = self.element_node[:, 0]
nids = self.element_node[:, 1]
for itime in range(ntimes):
dt = self._times[itime]
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write(''.join(header + msg))
#[radial, azimuthal, axial, shear, omax, oms, ovm]
radial = self.data[itime, :, 0]
azimuthal = self.data[itime, :, 1]
axial = self.data[itime, :, 2]
shear = self.data[itime, :, 3]
omax = self.data[itime, :, 4]
oms = self.data[itime, :, 5]
ovm = self.data[itime, :, 6]
# loop over all the elements
for (i, eid, nid, radiali, azimuthali, axiali, sheari, omaxi, omsi, ovmi) in zip(
count(), eids, nids, radial, azimuthal, axial, shear, omax, oms, ovm):
vals = [radiali, azimuthali, axiali, sheari, omaxi, omsi, ovmi]
(vals2, is_all_zeros) = writeFloats13E(vals)
[radiali, azimuthali, axiali, sheari, omaxi, omsi, ovmi] = vals2
f.write('0%8i %-13s %-13s %-13s %-13s %-13s %-13s %-13s %s\n'
% (eid, nid, radiali, azimuthali, axiali, sheari, omaxi, omsi, ovmi))
f.write(page_stamp % page_num)
page_num += 1
if self.nonlinear_factor is None:
page_num -= 1
return page_num
开发者ID:HibernantBear,项目名称:pyNastran,代码行数:34,代码来源:oes_triax.py
示例4: write_f06
def write_f06(self, f, header=None, page_stamp='PAGE %s', page_num=1, is_mag_phase=False, is_sort1=True):
if header is None:
header = []
msg = self._get_msgs()
(ntimes, ntotal) = self.data.shape[:2]
eids = self.element
for itime in range(ntimes):
dt = self._times[itime]
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write(''.join(header + msg))
#[tx, ty, tz, rx, ry, rz]
tx = self.data[itime, :, 0]
ty = self.data[itime, :, 1]
tz = self.data[itime, :, 2]
rx = self.data[itime, :, 3]
ry = self.data[itime, :, 4]
rz = self.data[itime, :, 5]
for eid, txi, tyi, tzi, rxi, ryi, rzi in zip(
eids, tx, ty, tz, rx, ry, rz):
vals = [txi, tyi, tzi, rxi, ryi, rzi]
vals2 = write_floats_13e(vals)
[txi, tyi, tzi, rxi, ryi, rzi] = vals2
f.write('0 %8i %-13s %-13s %-13s %-13s %-13s %s\n' % (
eid, txi, tyi, tzi, rxi, ryi, rzi))
f.write(page_stamp % page_num)
page_num += 1
if self.nonlinear_factor is None:
page_num -= 1
return page_num
开发者ID:EmanueleCannizzaro,项目名称:pyNastran,代码行数:32,代码来源:oes_bush.py
示例5: write_f06
def write_f06(self, f, header=None, page_stamp='PAGE %s', page_num=1, is_mag_phase=False, is_sort1=True):
if header is None:
header = []
msg = self._get_msgs()
(ntimes, ntotal) = self.data.shape[:2]
eids = self.element
for itime in range(ntimes):
dt = self._times[itime]
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write(''.join(header + msg))
compX, shearY, shearZ, axialU, shearV, shearW, slipV, slipW
compX = self.data[itime, :, 0]
shearY = self.data[itime, :, 1]
shearZ = self.data[itime, :, 2]
axialU = self.data[itime, :, 3]
shearV = self.data[itime, :, 4]
shearW = self.data[itime, :, 5]
slipV = self.data[itime, :, 6]
slipW = self.data[itime, :, 7]
for (i, eid, compXi, shearYi, shearZi, axialUi, shearVi, shearWi, slipVi, slipWi) in zip(
count(), eids, compX, shearY, shearZ, axialU, shearV, shearW, slipV, slipW):
vals = [compXi, shearYi, shearZi, axialUi, shearVi, shearWi, slipVi, slipWi]
vals2 = write_floats_13e(vals)
[compXi, shearYi, shearZi, axialUi, shearVi, shearWi, slipVi, slipWi] = vals2
f.write('0%8i %-13s %-13s %-13s %-13s %-13s %-13s %-13s %s\n'
% (eid, compXi, shearYi, shearZi, axialUi, shearVi, shearWi, slipVi, slipWi))
f.write(page_stamp % page_num)
page_num += 1
if self.nonlinear_factor is None:
page_num -= 1
return page_num
开发者ID:hurlei,项目名称:pyNastran,代码行数:34,代码来源:oes_gap.py
示例6: write_f06
def write_f06(self, header, page_stamp, page_num=1, f=None, is_mag_phase=False, is_sort1=True):
msg = self._get_msgs()
(ntimes, ntotal) = self.data.shape[:2]
eids = self.elements
for itime in range(ntimes):
dt = self._times[itime]
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write(''.join(header + msg))
#[tx, ty, tz, rx, ry, rz]
tx = self.data[itime, :, 0]
ty = self.data[itime, :, 1]
tz = self.data[itime, :, 2]
rx = self.data[itime, :, 3]
ry = self.data[itime, :, 4]
rz = self.data[itime, :, 5]
# loop over all the elements
for (i, eid, txi, tyi, tzi, rxi, ryi, rzi) in zip(
count(), eids, tx, ty, tz, rx, ry, rz):
vals = [txi, tyi, tzi, rxi, ryi, rzi]
(vals2, is_all_zeros) = writeFloats13E(vals)
[txi, tyi, tzi, rxi, ryi, rzi] = vals2
msg.append('0 %8i %-13s %-13s %-13s %-13s %-13s %s\n' % (
eid, txi, tyi, tzi, rxi, ryi, rzi))
f.write(page_stamp % page_num)
page_num += 1
if self.nonlinear_factor is None:
page_num -= 1
return page_num
开发者ID:HibernantBear,项目名称:pyNastran,代码行数:32,代码来源:oes_bush.py
示例7: write_f06
def write_f06(self, f, header=None, page_stamp='PAGE %s', page_num=1, is_mag_phase=False, is_sort1=True):
if header is None:
header = []
msg = self._get_msgs()
(ntimes, ntotal) = self.data.shape[:2]
eids = self.element
for itime in range(ntimes):
dt = self._times[itime]
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write(''.join(header + msg))
#[element_force, axial_displacement, axial_velocity, axial_stress, axial_strain, plastic_strain, is_failed]
element_force = self.data[itime, :, 0]
axial_displacement = self.data[itime, :, 1]
axial_velocity = self.data[itime, :, 2]
axial_stress = self.data[itime, :, 3]
axial_strain = self.data[itime, :, 4]
plastic_strain = self.data[itime, :, 5]
is_failed = self.is_failed[itime, :, 0]
for (i, eid, element_forcei, axial_displacementi, axial_velocityi, axial_stressi, axial_straini, plastic_straini, is_failedi) in zip(
count(), eids, element_force, axial_displacement, axial_velocity, axial_stress, axial_strain, plastic_strain, is_failed):
vals = [element_forcei, axial_displacementi, axial_velocityi, axial_stressi, axial_straini, plastic_straini, is_failedi]
vals2 = write_floats_13e(vals)
[element_forcei, axial_displacementi, axial_velocityi, axial_stressi, axial_straini, plastic_straini, is_failedi] = vals2
f.write('0%8i %-13s %-13s %-13s %-13s %-13s %-13s %s\n'
% (eid, element_forcei, axial_displacementi, axial_velocityi, axial_stressi, axial_straini, plastic_straini, is_failedi))
f.write(page_stamp % page_num)
page_num += 1
if self.nonlinear_factor is None:
page_num -= 1
return page_num
开发者ID:EmanueleCannizzaro,项目名称:pyNastran,代码行数:33,代码来源:oes_bush1d.py
示例8: _write_sort1_as_sort1
def _write_sort1_as_sort1(self, header, page_stamp, page_num, f, msg_temp):
ntimes = self.data.shape[0]
eids = self.element
is_odd = False
nwrite = len(eids)
for itime in range(ntimes):
dt = self._times[itime]
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write(''.join(header + msg_temp))
#print("self.data.shape=%s itime=%s ieids=%s" % (str(self.data.shape), itime, str(ieids)))
axial = self.data[itime, :, 0]
eqs = self.data[itime, :, 1]
total = self.data[itime, :, 2]
epcs = self.data[itime, :, 3]
ecs = self.data[itime, :, 4]
lts = self.data[itime, :, 5]
#print "dt=%s axials=%s eqs=%s ts=%s epcs=%s ecs=%s lts=%s" %(dt,axial,eqs,ts,epcs,ecs,lts)
#msgE[eid] = ' ELEMENT-ID = %8i\n' % (eid)
#if eid not in msgT:
#msgT[eid] = []
#msgT[eid].append(' %9.3E %13.6E %13.6E %13.6E %13.6E %13.6E %13.6E\n' % (dt, axial, eqs, ts, epcs, ecs, lts))
for eid, axiali, eqsi, totali, epcsi, ecsi, ltsi in zip(eids, axial, eqs, total, epcs, ecs, lts):
([saxial, seqs, stotal, sepcs, secs, slts]) = write_floats_13e(
[axiali, eqsi, totali, epcsi, ecsi, ltsi])
f.write(' %8i %-13s %-13s %-13s %-13s %-13s %s\n' % (
eid, saxial, seqs, stotal, sepcs, secs, slts))
f.write(page_stamp % page_num)
page_num += 1
return page_num - 1
开发者ID:EmanueleCannizzaro,项目名称:pyNastran,代码行数:35,代码来源:oes_nonlinear.py
示例9: _write_sort1_as_sort1
def _write_sort1_as_sort1(self, f06_file, header, page_stamp, msg, page_num):
(ntimes, ntotal) = self.data.shape[:2]
eids = self.element
for itime in range(ntimes):
dt = self._times[itime]
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f06_file.write(''.join(header + msg))
sd = self.data[itime, :, 0]
sxc = self.data[itime, :, 1]
sxd = self.data[itime, :, 2]
sxe = self.data[itime, :, 3]
sxf = self.data[itime, :, 4]
axial = self.data[itime, :, 5]
smax = self.data[itime, :, 6]
smin = self.data[itime, :, 7]
MS = self.data[itime, :, 8]
for (i, eid, sdi, sxci, sxdi, sxei, sxfi, axiali, smaxi, smini, MSi) in zip(
count(), eids, sd, sxc, sxd, sxe, sxf, axial, smax, smin, MS):
vals = [sdi, sxci, sxdi, sxei, sxfi, axiali, smaxi, smini, MSi]
vals2 = write_floats_13e(vals)
[sdi, sxci, sxdi, sxei, sxfi, axiali, smaxi, smini, MSi] = vals2
f06_file.write('0%8i %-13s %-13s %-13s %-13s %-13s %-13s %-13s %s %s\n'
% (eid, sdi, sxci, sxdi, sxei, sxfi, axiali, smaxi, smini, MSi))
f06_file.write(page_stamp % page_num)
page_num += 1
if self.nonlinear_factor is None:
page_num -= 1
return page_num
开发者ID:hurlei,项目名称:pyNastran,代码行数:33,代码来源:oes_bars100.py
示例10: _write_sort1_as_sort1
def _write_sort1_as_sort1(self, header, page_stamp, page_num, f, msg_temp):
ntimes = self.data.shape[0]
eids = self.element
is_odd = False
nwrite = len(eids)
nrows = nwrite // 4
nleftover = nwrite - nrows * 4
for itime in range(ntimes):
dt = self._times[itime]
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write(''.join(header + msg_temp))
stress = self.data[itime, :, 0]
out = []
for eid, stressi in zip(eids, stress):
out.append([eid, write_float_13e(stressi)])
for i in range(0, nrows * 4, 4):
f.write(' %10i %13s %10i %13s %10i %13s %10i %13s\n' % (
tuple(out[i] + out[i + 1] + out[i + 2] + out[i + 3])))
i = nrows * 4
if nleftover == 3:
f.write(' %10i %13s %10i %13s %10i %13s\n' % (
tuple(out[i] + out[i + 1] + out[i + 2])))
elif nleftover == 2:
f.write(' %10i %13s %10i %13s\n' % (
tuple(out[i] + out[i + 1])))
elif nleftover == 1:
f.write(' %10i %13s\n' % tuple(out[i]))
f.write(page_stamp % page_num)
page_num += 1
return page_num - 1
开发者ID:EmanueleCannizzaro,项目名称:pyNastran,代码行数:35,代码来源:oes_springs.py
示例11: _write_f06_transient
def _write_f06_transient(self, header, page_stamp, page_num=1, f=None, is_mag_phase=False):
words = [' S T R A I N S I N B E A M E L E M E N T S ( C B E A M )\n',
' STAT DIST/\n',
' ELEMENT-ID GRID LENGTH SXC SXD SXE SXF S-MAX S-MIN M.S.-T M.S.-C\n']
msg = []
itime = 0
ntimes = len(self.smax)
for dt, SMaxs in sorted(iteritems(self.smax)):
header = _eigenvalue_header(self, header, itime, ntimes, dt)
#header[1] = ' %s = %10.4E\n' % (self.data_code['name'], dt)
msg += header + words
for eid, Smax in sorted(iteritems(SMaxs)):
msg.append('0 %8i\n' % eid)
for i, nid in enumerate(self.grids[eid]):
xxb = self.xxb[eid][i]
sxc = self.sxc[dt][eid][i]
sxd = self.sxd[dt][eid][i]
sxe = self.sxe[dt][eid][i]
sxf = self.sxf[dt][eid][i]
sMax = self.smax[dt][eid][i]
sMin = self.smin[dt][eid][i]
SMt = self.MS_tension[dt][eid][i]
SMc = self.MS_compression[dt][eid][i]
(vals2, is_all_zeros) = writeFloats13E([sxc, sxd, sxe, sxf,
sMax, sMin, SMt, SMc])
(sxc, sxd, sxe, sxf, sMax, sMin, SMt, SMc) = vals2
msg.append('%19s %4.3f %12s %12s %12s %12s %12s %12s %12s %s\n' % (nid, xxb, sxc, sxd, sxe, sxf, sMax, sMin, SMt, SMc))
msg.append(page_stamp % page_num)
f.write(''.join(msg))
msg = ['']
page_num += 1
itime += 1
return page_num - 1
开发者ID:ClaesFredo,项目名称:pyNastran,代码行数:34,代码来源:oes_beams.py
示例12: _write_sort1_as_sort1
def _write_sort1_as_sort1(self, header, page_stamp, page_num, f, msg_temp):
ntimes = self.data.shape[0]
eids = self.element
is_odd = False
nwrite = len(eids)
if len(eids) % 2 == 1:
nwrite -= 1
is_odd = True
for itime in range(ntimes):
dt = self._times[itime]
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write(''.join(header + msg_temp))
#print("self.data.shape=%s itime=%s ieids=%s" % (str(self.data.shape), itime, str(ieids)))
axial = self.data[itime, :, 0]
SMa = self.data[itime, :, 1]
torsion = self.data[itime, :, 2]
SMt = self.data[itime, :, 3]
out = []
for eid, axiali, SMai, torsioni, SMti in zip(eids, axial, SMa, torsion, SMt):
[axiali, torsioni, SMai, SMti] = write_floats_13e([axiali, torsioni, SMai, SMti])
out.append([eid, axiali, SMai, torsioni, SMti])
for i in range(0, nwrite, 2):
out_line = ' %8i %-13s %-13s %-13s %-13s %-8i %-13s %-13s %-13s %-s\n' % (tuple(out[i] + out[i + 1]))
f.write(out_line)
if is_odd:
out_line = ' %8i %-13s %-13s %-13s %13s\n' % (tuple(out[-1]))
f.write(out_line)
f.write(page_stamp % page_num)
page_num += 1
return page_num - 1
开发者ID:hurlei,项目名称:pyNastran,代码行数:35,代码来源:oes_rods.py
示例13: _write_f06_transient
def _write_f06_transient(self, header, page_stamp, page_num=1, f=None, is_mag_phase=False):
words = [
" S T R A I N S I N B A R E L E M E N T S ( C B A R )\n",
" ELEMENT SA1 SA2 SA3 SA4 AXIAL SA-MAX SA-MIN M.S.-T\n",
" ID. SB1 SB2 SB3 SB4 STRAIN SB-MAX SB-MIN M.S.-C\n",
]
msg = []
i = 0
ntimes = len(self.e1)
for dt, E1s in sorted(iteritems(self.e1)):
header = _eigenvalue_header(self, header, i, ntimes, dt)
msg += header + words
for eid, e1s in sorted(iteritems(E1s)):
# eType = self.eType[eid]
axial = self.axial[dt][eid]
# MSt = self.MSt[eid]
# MSc = self.MSc[eid]
MSt = ""
MSc = ""
e1 = self.e1[dt][eid]
e2 = self.e2[dt][eid]
e3 = self.e3[dt][eid]
e4 = self.e4[dt][eid]
emax = self.emax[dt][eid]
emin = self.emin[dt][eid]
vals = [
e1[0],
e2[0],
e3[0],
e4[0],
axial,
emax[0],
emin[0],
e1[1],
e2[1],
e3[1],
e4[1],
emax[1],
emin[1],
]
(vals2, is_all_zeros) = writeFloats13E(vals)
[e10, e20, e30, e40, axial, emax0, emin0, e11, e21, e31, e41, emax1, emin1] = vals2
msg.append(
"0%8i %-13s %-13s %-13s %-13s %-13s %-13s %-13s %s\n"
% (eid, e10, e20, e30, e40, axial, emax0, emin0, MSt)
)
msg.append(
" %8s %-13s %-13s %-13s %-13s %-13s %-13s %-13s %s\n"
% ("", e11, e21, e31, e41, "", emax1, emin1, MSc)
)
msg.append(page_stamp % page_num)
f.write("".join(msg))
msg = [""]
page_num += 1
i += 1
return page_num - 1
开发者ID:ClaesFredo,项目名称:pyNastran,代码行数:59,代码来源:oes_bars.py
示例14: write_f06
def write_f06(self, header, page_stamp, page_num=1, f=None, is_mag_phase=False, is_sort1=True):
msg = self._get_msgs()
ntimes = self.data.shape[0]
eids = self.element_node[:, 0]
nids = self.element_node[:, 1]
locs = self.element_node[:, 2]
# xxbs = self.xxb
# print('CBEAM ntimes=%s ntotal=%s' % (ntimes, ntotal))
loc_map = ["C", "D", "E", "F", "C", "D", "E", "F"]
for itime in range(ntimes):
dt = self._times[itime]
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write("".join(header + msg))
longs = self.data[itime, :, 0]
eqSs = self.data[itime, :, 1]
tEs = self.data[itime, :, 2]
epss = self.data[itime, :, 3]
ecss = self.data[itime, :, 4]
# msg = [' N O N L I N E A R S T R E S S E S I N B E A M E L E M E N T S ( C B E A M )\n',
#' \n',
#' ELEMENT GRID POINT STRESS EQUIVALENT TOTAL STRAIN EFF. STRAIN EFF. CREEP\n',
#' ID ID STRESS PLASTIC/NLELAST STRAIN\n',]
#'0 1 1 C 1.738817E+03 1.738817E+03 5.796055E-05 0.0 0.0\n',
#' D 1.229523E+03 1.229523E+03 4.098411E-05 0.0 0.0\n',
eid_old = None
for (i, eid, nid, loc, longi, eqS, tE, eps, ecs) in zip(
count(), eids, nids, locs, longs, eqSs, tEs, epss, ecss
):
vals = [longi, eqS, tE, eps, ecs]
(vals2, is_all_zeros) = writeFloats13E(vals)
[longi, eqS, tE, eps, ecs] = vals2
if loc == 0:
f.write(
"0 %14i %8i %4s %13s %13s %13s %13s %s\n"
% (eid, nid, "C", longi, eqS, tE, eps, ecs.rstrip())
)
elif loc == 4:
f.write(
" %14s %8i %4s %13s %13s %13s %13s %s\n"
% ("", nid, "C", longi, eqS, tE, eps, ecs.rstrip())
)
else:
loci = loc_map[loc]
f.write(
" %14s %8s %4s %13s %13s %13s %13s %s\n"
% ("", "", loci, longi, eqS, tE, eps, ecs.rstrip())
)
f.write(page_stamp % page_num)
page_num += 1
if self.nonlinear_factor is None:
page_num -= 1
return page_num
开发者ID:HibernantBear,项目名称:pyNastran,代码行数:57,代码来源:oes_beams.py
示例15: write_f06
def write_f06(self, f, header=None, page_stamp='PAGE %s', page_num=1, is_mag_phase=False, is_sort1=True):
if header is None:
header = []
msg, nnodes, cen = _get_plate_msg(self)
# write the f06
ntimes = self.data.shape[0]
eids = self.element_node[:, 0]
nids = self.element_node[:, 1]
#cen_word = 'CEN/%i' % nnodes
cen_word = cen
for itime in range(ntimes):
dt = self._times[itime]
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write(''.join(header + msg))
#print("self.data.shape=%s itime=%s ieids=%s" % (str(self.data.shape), itime, str(ieids)))
#[fiber_dist, oxx, oyy, txy, angle, majorP, minorP, ovm]
fiber_dist = self.data[itime, :, 0]
oxx = self.data[itime, :, 1]
oyy = self.data[itime, :, 2]
txy = self.data[itime, :, 3]
angle = self.data[itime, :, 4]
majorP = self.data[itime, :, 5]
minorP = self.data[itime, :, 6]
ovm = self.data[itime, :, 7]
for (i, eid, nid, fdi, oxxi, oyyi, txyi, anglei, major, minor, ovmi) in zip(
count(), eids, nids, fiber_dist, oxx, oyy, txy, angle, majorP, minorP, ovm):
[fdi, oxxi, oyyi, txyi, major, minor, ovmi] = write_floats_13e(
[fdi, oxxi, oyyi, txyi, major, minor, ovmi])
ilayer = i % 2
# tria3
if self.element_type in [33, 74]: # CQUAD4, CTRIA3
if ilayer == 0:
f.write('0 %6i %-13s %-13s %-13s %-13s %8.4f %-13s %-13s %s\n' % (eid, fdi, oxxi, oyyi, txyi, anglei, major, minor, ovmi))
else:
f.write(' %6s %-13s %-13s %-13s %-13s %8.4f %-13s %-13s %s\n' % ('', fdi, oxxi, oyyi, txyi, anglei, major, minor, ovmi))
elif self.element_type in [64, 70, 75, 82, 144]: # CQUAD8, CTRIAR, CTRIA6, CQUADR, CQUAD4
# bilinear
if nid == 0 and ilayer == 0: # CEN
f.write('0 %8i %8s %-13s %-13s %-13s %-13s %8.4f %-13s %-13s %s\n' % (eid, cen_word, fdi, oxxi, oyyi, txyi, anglei, major, minor, ovmi))
elif ilayer == 0:
f.write(' %8s %8i %-13s %-13s %-13s %-13s %8.4f %-13s %-13s %s\n' % ('', nid, fdi, oxxi, oyyi, txyi, anglei, major, minor, ovmi))
elif ilayer == 1:
f.write(' %8s %8s %-13s %-13s %-13s %-13s %8.4f %-13s %-13s %s\n\n' % ('', '', fdi, oxxi, oyyi, txyi, anglei, major, minor, ovmi))
else:
raise NotImplementedError('element_name=%s self.element_type=%s' % (self.element_name, self.element_type))
f.write(page_stamp % page_num)
page_num += 1
return page_num - 1
开发者ID:EmanueleCannizzaro,项目名称:pyNastran,代码行数:56,代码来源:oes_plates.py
示例16: write_f06
def write_f06(self, f, header=None, page_stamp='PAGE %s', page_num=1, is_mag_phase=False, is_sort1=True):
if header is None:
header = []
msg = self._get_msgs()
(ntimes, ntotal) = self.data.shape[:2]
eids = self.element
#print('CBAR ntimes=%s ntotal=%s' % (ntimes, ntotal))
for itime in range(ntimes):
dt = self._times[itime]
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write(''.join(header + msg))
s1a = self.data[itime, :, 0]
s2a = self.data[itime, :, 1]
s3a = self.data[itime, :, 2]
s4a = self.data[itime, :, 3]
axial = self.data[itime, :, 4]
smaxa = self.data[itime, :, 5]
smina = self.data[itime, :, 6]
MSt = self.data[itime, :, 7]
s1b = self.data[itime, :, 8]
s2b = self.data[itime, :, 9]
s3b = self.data[itime, :, 10]
s4b = self.data[itime, :, 11]
smaxb = self.data[itime, :, 12]
sminb = self.data[itime, :, 13]
MSc = self.data[itime, :, 14]
for (i, eid, s1ai, s2ai, s3ai, s4ai, axiali, smaxai, sminai, MSti,
s1bi, s2bi, s3bi, s4bi, smaxbi, sminbi, MSci) in zip(
count(), eids, s1a, s2a, s3a, s4a, axial, smaxa, smina, MSt,
s1b, s2b, s3b, s4b, smaxb, sminb, MSc):
vals = [s1ai, s2ai, s3ai, s4ai, axiali, smaxai, sminai, MSti,
s1bi, s2bi, s3bi, s4bi, smaxbi, sminbi, MSci]
vals2 = write_floats_13e(vals)
[s1ai, s2ai, s3ai, s4ai, axiali, smaxai, sminai, MSti,
s1bi, s2bi, s3bi, s4bi, smaxbi, sminbi, MSci] = vals2
f.write('0%8i %-13s %-13s %-13s %-13s %-13s %-13s %-13s %s\n'
' %8s %-13s %-13s %-13s %-13s %-13s %-13s %-13s %s\n'
% (eid, s1ai, s2ai, s3ai, s4ai, axiali, smaxai, sminai, MSti,
'', s1bi, s2bi, s3bi, s4bi, '', smaxbi, sminbi, MSci))
f.write(page_stamp % page_num)
page_num += 1
if self.nonlinear_factor is None:
page_num -= 1
return page_num
开发者ID:EmanueleCannizzaro,项目名称:pyNastran,代码行数:52,代码来源:oes_bars.py
示例17: write_f06
def write_f06(self, f, header=None, page_stamp='PAGE %s', page_num=1, is_mag_phase=False, is_sort1=True):
if header is None:
header = []
"""
' EIGENVALUE = 2.005177E+05'
' CYCLES = 7.126832E+01'
' E L E M E N T S T R A I N E N E R G I E S'
' '
' ELEMENT-TYPE = TETRA * TOTAL ENERGY OF ALL ELEMENTS IN PROBLEM = 1.002589E+05'
' MODE 1 * TOTAL ENERGY OF ALL ELEMENTS IN SET -1 = 1.002589E+05'
'0'
' ELEMENT-ID STRAIN-ENERGY PERCENT OF TOTAL STRAIN-ENERGY-DENSITY'
' 4 3.247409E+00 0.0032 1.948445E+01'
' 5 3.977916E+00 0.0040 2.386749E+01'
''
' TYPE = TETRA SUBTOTAL 7.225325E+00 0.0072'
"""
msg_temp = (
' E L E M E N T S T R A I N E N E R G I E S\n'
' \n'
' ELEMENT-TYPE = TETRA * TOTAL ENERGY OF ALL ELEMENTS IN PROBLEM = %s\n'
' MODE %8i * TOTAL ENERGY OF ALL ELEMENTS IN SET -1 = %s\n'
'0\n'
' ELEMENT-ID STRAIN-ENERGY PERCENT OF TOTAL STRAIN-ENERGY-DENSITY\n'
)
ntimes = self.data.shape[0]
eids = self.element
#etype = self.element_data_type
for itime in range(ntimes):
dt = self._times[itime] # TODO: rename this...
header = _eigenvalue_header(self, header, itime, ntimes, dt)
total_energy = 0.
total_set_energy = 0.
msg_temp2 = [msg_temp % (total_energy, itime, total_set_energy)]
f.write(''.join(header + msg_temp2))
# energy, percent, density
energy = self.data[itime, :, 0]
percent = self.data[itime, :, 1]
density = self.data[itime, :, 2]
for (eid, energyi, percenti, densityi) in zip(eids, energy, percent, density):
senergyi = write_float_13e(energyi)
sdensityi = write_float_13e(densityi)
f.write(' %8i %-13s %.4fs %s\n' % (
eid, senergyi, percenti, sdensityi))
f.write(page_stamp % page_num)
page_num += 1
return page_num - 1
开发者ID:EmanueleCannizzaro,项目名称:pyNastran,代码行数:51,代码来源:oee_objects.py
示例18: write_f06
def write_f06(self, header, page_stamp, page_num=1, f=None, is_mag_phase=False, is_sort1=True):
msg = self._get_f06_msg()
ntimes = self.data.shape[0]
eids = self.node_element[:, 1]
nids = self.node_element[:, 0]
enames = self.element_names
for itime in range(ntimes):
dt = self._times[itime]
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write(''.join(header + msg))
#print("self.data.shape=%s itime=%s ieids=%s" % (str(self.data.shape), itime, str(ieids)))
#[t1, t2, t3, r1, r2, r3]
t1 = self.data[itime, :, 0]
t2 = self.data[itime, :, 1]
t3 = self.data[itime, :, 2]
r1 = self.data[itime, :, 3]
r2 = self.data[itime, :, 4]
r3 = self.data[itime, :, 5]
zero = ' '
for (nid, eid, ename, t1i, t2i, t3i, r1i, r2i, r3i) in zip(
nids, eids, enames, t1, t2, t3, r1, r2, r3):
vals = [t1i, t2i, t3i, r1i, r2i, r3i]
(vals2, is_all_zeros) = writeFloats13E(vals)
[f1, f2, f3, m1, m2, m3] = vals2
if eid == 0:
f.write(' %8s %10s %s %-13s %-13s %-13s %-13s %-13s %s\n' % (
nid, eid, ename, f1, f2, f3, m1, m2, m3))
zero = '0'
else:
f.write('%s %8s %10s %s %-13s %-13s %-13s %-13s %-13s %s\n' % (
zero, nid, eid, ename, f1, f2, f3, m1, m2, m3))
zero = ' '
f.write(page_stamp % page_num)
page_num += 1
return page_num - 1
开发者ID:abk-ShuaiHaotian,项目名称:pyNastran,代码行数:42,代码来源:ogf_Objects.py
示例19: write_f06
def write_f06(self, header, page_stamp, page_num=1, f=None, is_mag_phase=False):
(elem_name, msg_temp) = self.get_f06_header(is_mag_phase)
# write the f06
ntimes = self.data.shape[0]
eids = self.element
is_odd = False
nwrite = len(eids)
if len(eids) % 2 == 1:
nwrite -= 1
is_odd = True
for itime in range(ntimes):
dt = self._times[itime]
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write(''.join(header + msg_temp))
# TODO: can I get this without a reshape?
#print("self.data.shape=%s itime=%s ieids=%s" % (str(self.data.shape), itime, str(ieids)))
axial = self.data[itime, :, 0]
SMa = self.data[itime, :, 1]
torsion = self.data[itime, :, 2]
SMt = self.data[itime, :, 3]
# loop over all the elements
out = []
for eid, axiali, SMai, torsioni, SMti in zip(eids, axial, SMa, torsion, SMt):
([axiali, torsioni, SMai, SMti],
is_all_zeros) = writeFloats13E([axiali, torsioni, SMai, SMti])
out.append([eid, axiali, SMai, torsioni, SMti])
for i in range(0, nwrite, 2):
outLine = ' %8i %-13s %-13s %-13s %-13s %-8i %-13s %-13s %-13s %-s\n' % (tuple(out[i] + out[i + 1]))
f.write(outLine)
if is_odd:
outLine = ' %8i %-13s %-13s %-13s %13s\n' % (tuple(out[-1]))
f.write(outLine)
f.write(page_stamp % page_num)
page_num += 1
return page_num - 1
开发者ID:ClaesFredo,项目名称:pyNastran,代码行数:41,代码来源:oes_rods.py
示例20: write_f06
def write_f06(self, header, page_stamp, page_num=1, f=None, is_mag_phase=False):
msg_temp = self.get_f06_header()
# write the f06
(ntimes, ntotal, three) = self.data.shape
eids = self.element
is_odd = False
nwrite = len(eids)
if len(eids) % 2 == 1:
nwrite -= 1
is_odd = True
for itime in range(ntimes):
dt = self.times[itime] # TODO: rename this...
header = _eigenvalue_header(self, header, itime, ntimes, dt)
f.write(''.join(header + msg_temp))
# TODO: can I get this without a reshape?
#print("self.data.shape=%s itime=%s ieids=%s" % (str(self.data.shape), itime, str(ieids)))
max_shear = self.data[itime, :, 0]
avg_shear = self.data[itime, :, 1]
margin = self.data[itime, :, 2]
# loop over all the elements
out = []
|
请发表评论