| 577 | REGISTER_GRADIENT_OP("Minimum", MinimumGrad); |
| 578 | |
| 579 | Status RealGrad(const Scope& scope, const Operation& op, |
| 580 | const std::vector<Output>& grad_inputs, |
| 581 | std::vector<Output>* grad_outputs) { |
| 582 | auto zero = Cast(scope, Const(scope, 0.0), op.output(0).type()); |
| 583 | auto dx = Complex(scope, grad_inputs[0], zero); |
| 584 | grad_outputs->push_back(dx); |
| 585 | return scope.status(); |
| 586 | } |
| 587 | REGISTER_GRADIENT_OP("Real", RealGrad); |
| 588 | |
| 589 | Status ImagGrad(const Scope& scope, const Operation& op, |