code: def select_specimen(self, specimen):
          
          try:
              fit_index = self.pmag_results_data['specimens'][self.s].index(
                  self.current_fit)
          except KeyError:
              fit_index = None
          except ValueError:
              fit_index = None
          # sets self.s to specimen calculates params etc.
          self.initialize_CART_rot(specimen)
          self.list_bound_loc = 0
          if fit_index != None and self.s in self.pmag_results_data['specimens']:
              try:
                  self.current_fit = self.pmag_results_data['specimens'][self.s][fit_index]
              except IndexError:
                  self.current_fit = None
          else:
              self.current_fit = None
          if self.s != self.specimens_box.GetValue():
              self.specimens_box.SetValue(self.s)
docs: Goes through the calculations necessary to plot measurement data for
          specimen and sets specimen as current GUI specimen, also attempts to
          handle changing current fit.