def test_spcoff(self): """tests SPCOFF/SPCOFF1""" model = BDF(debug=False) with self.assertRaises(KeyError): model.EmptyNodes([1, 2], msg='') #model.add_spcoff() card_lines = ['SPCOFF', 1] model.add_card(card_lines, 'SPCOFF', comment='spcoff', is_list=True, has_none=True) spcoff = model.spcoffs['SPCOFF'][0] spcoff.write_card(size=8) spcoff.write_card(size=16) spcoff.raw_fields() with self.assertRaises(KeyError): spcoff.cross_reference(model) model.add_grid(1, [0., 0., 0.]) spcoff.cross_reference(model) card_lines = ['SPCOFF1', 24, 43] model.add_card(card_lines, 'SPCOFF1', comment='spcoff1', is_list=True, has_none=True) card_lines = ['SPCOFF1', 5, 50, 'THRU', 52] model.add_card(card_lines, 'SPCOFF1', comment='spcoff1', is_list=True, has_none=True) model.pop_parse_errors() model.pop_xref_errors() spcoff1 = model.spcoffs['SPCOFF1'][0] spcoff1.write_card(size=8) spcoff1.write_card(size=16) spcoff1.raw_fields() model.uncross_reference() with self.assertRaises(KeyError): spcoff1.cross_reference(model) model.add_grid(43, [0., 0., 0.]) spcoff1.cross_reference(model) model.uncross_reference() model.add_grid(50, [0., 0., 0.]) model.add_grid(51, [0., 0., 0.]) model.add_grid(52, [0., 0., 0.]) model.cross_reference() model.uncross_reference() model.validate() model.safe_cross_reference() save_load_deck(model, run_remove_unused=False, run_save_load_hdf5=False)
def safe_cross_reference(self, model: BDF, xref_errors): """ Cross links the card so referenced cards can be extracted directly Parameters ---------- model : BDF() the BDF object """ msg = ', which is required by CELAS4 eid=%s' % self.eid self.nodes_ref = model.EmptyNodes(self.node_ids, msg=msg)
def cross_reference(self, model: BDF) -> None: """ Cross links the card so referenced cards can be extracted directly Parameters ---------- model : BDF() the BDF object """ msg = ', which is required by CELAS4 eid=%s' % (self.eid) self.nodes_ref = model.EmptyNodes(self.nodes, msg=msg)
def cross_reference(self, model: BDF) -> None: """ Cross links the card so referenced cards can be extracted directly Parameters ---------- model : BDF() the BDF object """ msg = ' which is required by %s' % self.type self.ids_ref = model.EmptyNodes(self.node_ids, msg=msg)
def cross_reference(self, model: BDF) -> None: """ Cross links the card so referenced cards can be extracted directly Parameters ---------- model : BDF() the BDF object """ msg = ', which is required by CQUADX8 eid=%s' % self.eid self.nodes_ref = model.EmptyNodes(self.node_ids, msg=msg) self.pid_ref = model.Property(self.Pid(), msg=msg)
def safe_cross_reference(self, model: BDF, xref_errors): """ Cross links the card so referenced cards can be extracted directly Parameters ---------- model : BDF() the BDF object """ msg = ', which is required by %s eid=%s' % (self.type, self.eid) self.nodes_ref = model.EmptyNodes(self.nodes, msg=msg) self.pid_ref = model.safe_property(self.pid, self.eid, xref_errors, msg=msg)
def cross_reference(self, model: BDF) -> None: """ Cross links the card so referenced cards can be extracted directly Parameters ---------- model : BDF() the BDF object """ msg = ', which is required by CBUSH eid=%s' % self.eid self.nodes_ref = model.EmptyNodes(self.node_ids, msg=msg) self.pid_ref = model.Property(self.pid, msg=msg) if self.g0 is not None: self.g0_ref = model.Node(self.g0, msg=msg) if self.cid is not None: self.cid_ref = model.Coord(self.cid, msg=msg) if self.ocid is not None and self.ocid != -1: self.ocid_ref = model.Coord(self.ocid, msg=msg)
def cross_reference(self, model: BDF) -> None: """ Cross links the card so referenced cards can be extracted directly Parameters ---------- model : BDF() the BDF object """ msg = ', which is required by CDAMP1 eid=%s' % self.eid self.nodes_ref = model.EmptyNodes(self.nodes, msg=msg) pid = self.pid if pid in model.properties: self.pid_ref = model.Property(pid, msg=msg) elif pid in model.pdampt: self.pid_ref = model.pdampt[pid] else: pids = model.properties.keys() + model.pdampt.keys() pids.sort() msg = ('pid=%i not found which is required by CDAMP1 eid=%i. ' 'Allowed Pids=%s' % (self.pid, self.eid, pids)) raise KeyError(msg)