def _field_default(self): rect_info = self.rectangles_info field = mfield.MField() # initialize Field II with parameters field.field_init() field.set_field('c', self.c) field.set_field('fs', self.fs) field.set_field('use_att', self.use_att) field.set_field('att', self.att) field.set_field('freq_att', self.freq_att) field.set_field('att_f0', self.att_f0) # create excitation pulse, _ = util.gausspulse(self.excitation_fc, self.excitation_bw / self.excitation_fc, self.fs) self._pulse = pulse # read rect_info and create list of transmit tx_apertures = [] for info in rect_info: tx_info = info['tx_info'] if tx_info is not None: tx_rectangles = tx_info['rectangles'] tx_centers = tx_info['centers'] tx_delays = tx_info['delays'] tx_apod = tx_info['apodizations'] tx_ele_delays = tx_info['ele_delays'] # create transmit aperture and set aperture parameters tx = field.xdc_rectangles(tx_rectangles, tx_centers, np.array([[0, 0, 300]])) field.xdc_impulse(tx, pulse) field.xdc_excitation(tx, np.array([1])) field.xdc_focus_times(tx, np.zeros((1, 1)), tx_delays) field.xdc_apodization(tx, np.zeros((1, 1)), tx_apod) # set mathematical element delays field.ele_delay(tx, np.arange(len(tx_ele_delays)) + 1, tx_ele_delays) # add aperture to list tx_apertures.append(tx) self._tx_apertures = tx_apertures return field
def _field_default(self): field = mfield.MField() # initialize Field II with parameters field.field_init() field.set_field('c', self.c) field.set_field('fs', self.fs) field.set_field('use_att', self.use_att) field.set_field('att', self.att) field.set_field('freq_att', self.freq_att) field.set_field('att_f0', self.att_f0) # create excitation pulse, _ = util.gausspulse(self.excitation_fc, self.excitation_bw / self.excitation_fc, self.fs) self._pulse = pulse return field