def apply_deriv(self, arg, result):

        if 'y_out' in result:

            if 'x' in arg:
                result['y_out'] -= self.Jx.dot(arg['x'])
            if 'y_in' in arg:
                result['y_out'] += self.Jy.dot(arg['y_in'])
            if 'z' in arg:
                result['y_out'] -= self.Jz.dot(arg['z'])
Multiply an input vector by the Jacobian.
dataset/ETHPy150Open OpenMDAO/OpenMDAO-Framework/openmdao.lib/src/openmdao/lib/optproblems/scalable.py/Discipline.apply_deriv