Apply the autoparameters to this stimulus and return a list of
        the resulting stimuli, a complimentary list of doc dictionaries, and
        a complimentary list of undesired attenuations.

        :returns: list<numpy.ndarray>, list<dict>, list<float> -- the signals, their doc, undesired attenuations (dB)

def expandedStim(self):
        """
        Apply the autoparameters to this stimulus and return a list of
        the resulting stimuli, a complimentary list of doc dictionaries, and
        a complimentary list of undesired attenuations.

        :returns: list<numpy.ndarray>, list<dict>, list<float> -- the signals, their doc, undesired attenuations (dB)
        """
        logger = logging.getLogger('main')
        logger.debug("Generating Expanded Stimulus")

        # 3 loops now -- could be done in one...
        signals = self.expandFunction(self.signal)
        docs = self.expandFunction(self.componentDoc)
        overloads = []
        for s, d in zip(signals, docs):
            d['overloaded_attenuation'] = s[2]
            overloads.append(s[2])

        # remove the undesired attenuation argument
        signals = [sig[0:2] for sig in signals]

        if self.reorder:
            order = self.reorder(docs)
            signals = [signals[i] for i in order]
            docs = [docs[i] for i in order]

        return signals, docs, overloads