Tensor<T> constructor

Tensor<T>(
  1. T value, {
  2. Node? creator2,
})

Implementation

Tensor(this.value, {Node? creator2}) {
  creator = creator2;
  if (value is Scalar) {
    grad = 0.0 as T;
  } else if (value is Vector) {
    Vector valAsList = value as Vector;
    grad = List<double>.filled(valAsList.length, 0.0) as T;
  } else if (value is Matrix) {
    Matrix valAsMatrix = value as Matrix;
    int numRows = valAsMatrix.length;
    int numCols = valAsMatrix.isNotEmpty ? valAsMatrix[0].length : 0;
    grad =
        List.generate(numRows, (_) => List<double>.filled(numCols, 0.0)) as T;
  }
}