def step_down(self, chain_goals):
        """ Propogate goals down through the transition model """
        # Reshape chain_goals back into a square array 
        chain_goals = np.reshape(chain_goals, (self.post.size, -1))
        # Weight chain goals by the current cable activities   
        upstream_goals = tools.bounded_sum(self.post * chain_goals.T)
        cable_goals = tools.bounded_sum([upstream_goals, self.reaction])
        return cable_goals[:self.num_cables]
dataset/ETHPy150Open matt2000/becca/core/daisychain.py/DaisyChain.step_down/original