public void Activate(List <IDisposableMatrixExecutionLine> curr) { var activation = _w.Activate(curr.Select(c => c.Current)); curr[0].Assign(activation); curr[1].Replace(activation); }
public void Activate(List <IDisposableMatrixExecutionLine> curr) { var curr2 = curr.Select(c => c.Current).ToList(); using (var a = _c.Activate(curr2)) using (var i = _i.Activate(curr2)) using (var f = _f.Activate(curr2)) using (var o = _o.Activate(curr2)) using (var f2 = f.PointwiseMultiply(curr[1].Current)) { var ct = a.PointwiseMultiply(i); ct.AddInPlace(f2); using (var cta = _activation.Calculate(ct)) { curr[0].Assign(o.PointwiseMultiply(cta)); curr[1].Assign(ct); } } }