def get_initial_value(self, variable, selector=None): (key, parameter) = self._get_init_key_and_parameter(variable) full = getattr(self._neuron_model, parameter) if selector is None: return full if isinstance(full, AbstractList): ranged_list = full else: # Keep all the getting stuff in one place by creating a RangedList ranged_list = SpynnakerRangedList(size=self.n_atoms, value=full) # Now that we have created a RangedList why not use it. self.initialize(key, ranged_list) return ranged_list.get_values(selector)
def get_value_by_selector(self, selector, key): """ Gets the value for a particular key but only for the selected\ subset. :param selector: See RangedList.get_value_by_selector as this is just \ a pass through method :param key: the name of the parameter to change :param value: the new value of the parameter to assign """ old_values = self.get_value(key) if isinstance(old_values, AbstractList): ranged_list = old_values else: # Keep all the getting stuff in one place by creating a RangedList ranged_list = SpynnakerRangedList( size=self.n_atoms, value=old_values) # Now that we have created a RangedList why not use it. self.set_value(key, ranged_list) return ranged_list.get_values(selector)
def get_value_by_selector(self, selector, key): """ Gets the value for a particular key but only for the selected\ subset. :param selector: See \ :py:meth:`~spinn_utilities.ranged.RangedList.get_value_by_selector`\ as this is just a pass through method :type selector: None or slice or int or list(bool) or list(int) :param str key: the name of the parameter to change :rtype: list(float or int) """ old_values = self.get_value(key) if isinstance(old_values, AbstractList): ranged_list = old_values else: # Keep all the getting stuff in one place by creating a RangedList ranged_list = SpynnakerRangedList(size=self.n_atoms, value=old_values) # Now that we have created a RangedList why not use it. self.set_value(key, ranged_list) return ranged_list.get_values(selector)