def add(self, card, comment): i = self.i self.property_id[i] = integer(card, 1, 'property_id') self.material_id[i] = integer(card, 2, 'material_id') self.group[i] = string_or_blank(card, 3, 'group', 'MSCBMLO') Type = string(card, 4, 'Type') self.Type[i] = Type ndim = self.valid_types[Type] j = 9 + ndim + 1 dim = fields(double_or_blank, card, 'dim', i=9, j=j) nsm = double_or_blank(card, 9 + ndim + 1, 'nsm', 0.0) if ndim > 0: nsm = set_default_if_blank(dim.pop(), 0.0) #else: #nsm = 0.0 self.dim[i] = dim self.nsm[i] = nsm assert isinstance(nsm, float), 'nsm=%r' % nsm if Type not in self.valid_types: msg = ('Invalid PBARL Type, Type=%s ' 'valid_types=%s' % (Type, self.valid_types.keys())) raise RuntimeError(msg) if len(dim) != self.valid_types[Type]: msg = 'dim=%s len(dim)=%s Type=%s len(dimType)=%s' % ( dim, len(dim), Type, self.valid_types[Type]) raise RuntimeError(msg) assert None not in dim self.i += 1
def repr_fields(self): theta = set_default_if_blank(self.theta, 0.0) list_fields = ['CTRIAX6', self.eid, self.Mid()] + self.node_ids + [theta] return list_fields
def test_field_defaults(self): self.assertEqual(set_blank_if_default(0.0, 0.0), None, set_blank_if_default(0.0, 0.0)) self.assertEqual(set_blank_if_default(1.0, 0.0), 1.0, set_blank_if_default(1.0, 0.0)) # None self.assertEqual(set_default_if_blank(None, None), None, set_default_if_blank(None, None)) # floats self.assertEqual(set_default_if_blank(4.0, None), 4.0, set_default_if_blank(4.0, None)) self.assertEqual(set_default_if_blank(None, 4.0), 4.0, set_default_if_blank(None, 4.0)) # ints self.assertEqual(set_default_if_blank(4, None), 4, set_default_if_blank(4, None)) self.assertEqual(set_default_if_blank(None, 4), 4, set_default_if_blank(None, 4)) # strings self.assertEqual(set_default_if_blank('dummy', 'GGG'), 'dummy', set_default_if_blank('dummy', 'GGG')) self.assertEqual(set_default_if_blank(None, 'GGG'), 'GGG', set_default_if_blank(None, 'GGG'))
def repr_fields(self): theta = set_default_if_blank(self.theta, 0.0) list_fields = ['CTRIAX6', self.eid, self.Mid()] + self.node_ids + [theta] return list_fields
def test_field_defaults(self): self.assertEqual(set_blank_if_default(0.0, 0.0), None, set_blank_if_default(0.0, 0.0)) self.assertEqual(set_blank_if_default(1.0, 0.0), 1.0, set_blank_if_default(1.0, 0.0)) # None self.assertEqual(set_default_if_blank(None, None), None, set_default_if_blank(None, None)) # floats self.assertEqual(set_default_if_blank(4.0, None), 4.0, set_default_if_blank(4.0, None)) self.assertEqual(set_default_if_blank(None, 4.0), 4.0, set_default_if_blank(None, 4.0)) # ints self.assertEqual(set_default_if_blank(4, None), 4, set_default_if_blank(4, None)) self.assertEqual(set_default_if_blank(None, 4), 4, set_default_if_blank(None, 4)) # strings self.assertEqual(set_default_if_blank('dummy', 'GGG'), 'dummy', set_default_if_blank('dummy', 'GGG')) self.assertEqual(set_default_if_blank(None, 'GGG'), 'GGG', set_default_if_blank(None, 'GGG'))