def write_card_8(self): """ Writes a GRID card in 8-field format """ xyz = self.xyz cp = self.Cp() cd = self.Cd() cps = set_string8_blank_if_default(cp, 0) if [cd, self.ps, self.seid] == [0, '', 0]: # default msg = 'GRID %8i%8s%s%s%s\n' % ( self.nid, cps, print_float_8(xyz[0]), print_float_8(xyz[1]), print_float_8(xyz[2])) return self.comment + msg else: cds = set_string8_blank_if_default(cd, 0) seid = set_string8_blank_if_default(self.SEid(), 0) msg = 'GRID %8i%8s%s%s%s%s%8s%s\n' % ( self.nid, cps, print_float_8(xyz[0]), print_float_8(xyz[1]), print_float_8(xyz[2]), cds, self.ps, seid) return self.comment + msg
def write_card_8(self, bdf_file=None): # type: () -> str """ Writes a GRID card in 8-field format """ assert bdf_file is not None self.make_current() msg = '' for nid, xyz, cp, cd, ps, seid in zip(self.nid, self.xyz, self.cp, self.cd, self.ps, self.seid): cps = set_string8_blank_if_default(cp, 0) if [cd, ps, seid] == [0, '', 0]: # default print_float_8(xyz[0]) print_float_8(xyz[1]) print_float_8(xyz[2]) msgi = 'GRID %8i%8s%s%s%s\n' % ( nid, cps, print_float_8(xyz[0]), print_float_8(xyz[1]), print_float_8(xyz[2]), ) else: cds = set_string8_blank_if_default(cd, 0) seids = set_string8_blank_if_default(seid, 0) msgi = 'GRID %8i%8s%s%s%s%s%8s%s\n' % ( nid, cps, print_float_8(xyz[0]), print_float_8( xyz[1]), print_float_8(xyz[2]), cds, ps, seids) msg += self.comment[nid] + msgi bdf_file.write(msg) return msg
def write_card_8(self): # type: () -> str """ Writes a GRID card in 8-field format """ xyz = self.xyz cp = self.Cp() cd = self.Cd() cps = set_string8_blank_if_default(cp, 0) if [cd, self.ps, self.seid] == [0, '', 0]: # default msg = 'GRID %8i%8s%s%s%s\n' % ( self.nid, cps, print_float_8(xyz[0]), print_float_8(xyz[1]), print_float_8(xyz[2])) return self.comment + msg else: cds = set_string8_blank_if_default(cd, 0) seid = set_string8_blank_if_default(self.SEid(), 0) msg = 'GRID %8i%8s%s%s%s%s%8s%s\n' % ( self.nid, cps, print_float_8(xyz[0]), print_float_8(xyz[1]), print_float_8(xyz[2]), cds, self.ps, seid) return self.comment + msg
def write_card_8(self): """ Writes a GRID card in 8-field format """ xyz = self.xyz cp = set_string8_blank_if_default(self.Cp(), 0) cd = set_string8_blank_if_default(self.Cd(), 0) seid = set_string8_blank_if_default(self.SEid(), 0) msg = '%-8s%8i%8s%s%s%s%s%8s%s\n' % ( 'GRID', self.nid, cp, print_float_8(xyz[0]), print_float_8(xyz[1]), print_float_8(xyz[2]), cd, self.ps, seid) return self.comment + msg.rstrip() + '\n'
def write_card(self, bdf_file, size=8, element_ids=None): if self.n: if element_ids is None: i = arange(self.n) else: i = searchsorted(self.element_id, self.element_id) for (eid, pid, n, is_g0, g0, x, offt, pin, wa, wb) in zip(self.element_id[i], self.property_id[i], self.node_ids[i], self.is_g0[i], self.g0[i], self.x[i], self.offt[i], self.pin_flags[i], self.wa[i], self.wb[i]): pa = set_blank_if_default(pin[0], 0) pb = set_blank_if_default(pin[1], 0) w1a = set_blank_if_default(wa[0], 0.0) w2a = set_blank_if_default(wa[1], 0.0) w3a = set_blank_if_default(wa[2], 0.0) w1b = set_blank_if_default(wb[0], 0.0) w2b = set_blank_if_default(wb[1], 0.0) w3b = set_blank_if_default(wb[2], 0.0) x1 = g0 if is_g0 else x[0] x2 = 0 if is_g0 else x[1] x3 = 0 if is_g0 else x[2] offt = set_string8_blank_if_default(offt, 'GGG') card = [ 'CBAR', eid, pid, n[0], n[1], x1, x2, x3, offt, pa, pb, w1a, w2a, w3a, w1b, w2b, w3b ] if size == 8: bdf_file.write(print_card_8(card)) else: bdf_file.write(print_card_16(card))
def write_card(self, f, size=8, element_ids=None): if self.n: if element_ids is None: i = arange(self.n) else: i = searchsorted(self.element_id, self.element_id) for (eid, pid, n, is_g0, g0, x, offt, pin, wa, wb) in zip( self.element_id[i], self.property_id[i], self.node_ids[i], self.is_g0[i], self.g0[i], self.x[i], self.offt[i], self.pin_flags[i], self.wa[i], self.wb[i]): pa = set_blank_if_default(pin[0], 0) pb = set_blank_if_default(pin[1], 0) w1a = set_blank_if_default(wa[0], 0.0) w2a = set_blank_if_default(wa[1], 0.0) w3a = set_blank_if_default(wa[2], 0.0) w1b = set_blank_if_default(wb[0], 0.0) w2b = set_blank_if_default(wb[1], 0.0) w3b = set_blank_if_default(wb[2], 0.0) x1 = g0 if is_g0 else x[0] x2 = 0 if is_g0 else x[1] x3 = 0 if is_g0 else x[2] offt = set_string8_blank_if_default(offt, 'GGG') card = ['CBAR', eid, pid, n[0], n[1], x1, x2, x3, offt, pa, pb, w1a, w2a, w3a, w1b, w2b, w3b] if size == 8: f.write(print_card_8(card)) else: f.write(print_card_16(card))
def write_card_16(self, is_double=False, bdf_file=None): # type: (bool) -> str """ Writes a GRID card in 16-field format """ assert bdf_file is not None self.make_current() msg = '' for nid, xyz, cp, cd, ps, seid in zip( self.nid, self.xyz, self.cp, self.cd, self.ps, self.seid): cps = set_string8_blank_if_default(cp, 0) cp = set_string16_blank_if_default(cp, 0) cd = set_string16_blank_if_default(cd, 0) seid = set_string16_blank_if_default(seid, 0) if is_double: if [cd, ps, seid] == [0, '', 0]: msgi = ('GRID* %16i%16s%16s%16s\n' '* %16s\n' % ( nid, cp, print_scientific_double(xyz[0]), print_scientific_double(xyz[1]), print_scientific_double(xyz[2]))) else: msgi = ('GRID* %16i%16s%16s%16s\n' '* %16s%16s%16s%16s\n' % ( nid, cp, print_scientific_double(xyz[0]), print_scientific_double(xyz[1]), print_scientific_double(xyz[2]), cd, ps, seid)) else: if [cd, self.ps, self.seid] == [0, '', 0]: msgi = ('GRID* %16i%16s%16s%16s\n' '* %16s\n' % ( nid, cp, print_float_16(xyz[0]), print_float_16(xyz[1]), print_float_16(xyz[2]))) else: msgi = ('GRID* %16i%16s%16s%16s\n' '* %16s%16s%16s%16s\n' % ( nid, cp, print_float_16(xyz[0]), print_float_16(xyz[1]), print_float_16(xyz[2]), cd, ps, seid)) msg += self.comment[nid] + msgi bdf_file.write(msg) return msg