gorgonia.org/gorgonia@v0.9.17/operations_nondiff.go (about) 1 package gorgonia 2 3 import "github.com/pkg/errors" 4 5 // DiagFlat takes the flattened value and creates a diagonal matrix from it. 6 // 7 // It is non-differentiable. 8 func DiagFlat(a *Node) (*Node, error) { 9 if a.Shape().IsScalarEquiv() { 10 return nil, errors.Errorf("Cannot perform DiagFlat on a scalar equivalent node") 11 } 12 return ApplyOp(diagFlatOp{}, a) 13 }