Ejemplo n.º 1
0
 public TensorContraction(BinaryExpression expr, TensorIndexExpression tie, params Dimension[] shape) : base(expr, shape)
 {
     {
         expr.ThrowIfNotType <TensorExpression>();
         this.LHSTensor   = tie.LHSTensor;
         this.LHSIndexSet = tie.LHSIndexSet;
     }
 }
Ejemplo n.º 2
0
 public static TensorIndexExpression Sum(TensorIndexExpression l) =>
 new TensorIndexExpression(GetOpMethodCall("Sum", l));
Ejemplo n.º 3
0
 private static TensorIndexExpression Op_Min(TensorIndexExpression l) => null;
Ejemplo n.º 4
0
 private static TensorIndexExpression Op_Product(TensorIndexExpression l) => null;
Ejemplo n.º 5
0
        public static TensorIndexExpression Mean(TensorIndexExpression l)
        {
            var mulExpr = l.GetDimensionProductExpression();

            return(Sum(l) / mulExpr);
        }
Ejemplo n.º 6
0
 public static TensorIndexExpression Min(TensorIndexExpression l) =>
 new TensorIndexExpression(GetOpMethodCall("Min", l));
Ejemplo n.º 7
0
 public static TensorIndexExpression Product(TensorIndexExpression l) =>
 new TensorIndexExpression(GetOpMethodCall("Product", l));
Ejemplo n.º 8
0
 public TensorIndexExpression this[TensorIndexExpression e] => Operation(e);
Ejemplo n.º 9
0
 public static TensorIndexExpression Square(TensorIndexExpression l) => l * l;
Ejemplo n.º 10
0
 public Scalar(string name, TensorIndexExpression expr) : this(name)
 {
     this.ContractionDefinition = (null, new TensorContraction(expr, this));
 }
Ejemplo n.º 11
0
 public TensorContraction(TensorIndexExpression expr, Tensor lhsTensor, IndexSet lhsIndexSet, params Dimension[] shape)
     : base(expr, shape)
 {
     this.LHSTensor   = lhsTensor;
     this.LHSIndexSet = lhsIndexSet;
 }
Ejemplo n.º 12
0
 public TensorContraction(TensorIndexExpression expr, Tensor lhsTensor)
     : base(expr)
 {
     this.LHSTensor = lhsTensor;
 }