|
|
|
@ -4,7 +4,7 @@ |
|
|
|
// http://github.com/mathnet/mathnet-numerics
|
|
|
|
// http://mathnetnumerics.codeplex.com
|
|
|
|
//
|
|
|
|
// Copyright (c) 2009-2014 Math.NET
|
|
|
|
// Copyright (c) 2009-2015 Math.NET
|
|
|
|
//
|
|
|
|
// Permission is hereby granted, free of charge, to any person
|
|
|
|
// obtaining a copy of this software and associated documentation
|
|
|
|
@ -347,8 +347,8 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32 |
|
|
|
{ |
|
|
|
var thisDataCopy = new Complex32[diagonalResult._data.Length]; |
|
|
|
var otherDataCopy = new Complex32[diagonalResult._data.Length]; |
|
|
|
Array.Copy(_data, thisDataCopy, (diagonalResult._data.Length > _data.Length) ? _data.Length : diagonalResult._data.Length); |
|
|
|
Array.Copy(diagonalOther._data, otherDataCopy, (diagonalResult._data.Length > diagonalOther._data.Length) ? diagonalOther._data.Length : diagonalResult._data.Length); |
|
|
|
Array.Copy(_data, 0, thisDataCopy, 0, (diagonalResult._data.Length > _data.Length) ? _data.Length : diagonalResult._data.Length); |
|
|
|
Array.Copy(diagonalOther._data, 0, otherDataCopy, 0, (diagonalResult._data.Length > diagonalOther._data.Length) ? diagonalOther._data.Length : diagonalResult._data.Length); |
|
|
|
Control.LinearAlgebraProvider.PointWiseMultiplyArrays(thisDataCopy, otherDataCopy, diagonalResult._data); |
|
|
|
return; |
|
|
|
} |
|
|
|
@ -400,8 +400,8 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32 |
|
|
|
{ |
|
|
|
var thisDataCopy = new Complex32[diagonalResult._data.Length]; |
|
|
|
var otherDataCopy = new Complex32[diagonalResult._data.Length]; |
|
|
|
Array.Copy(_data, thisDataCopy, (diagonalResult._data.Length > _data.Length) ? _data.Length : diagonalResult._data.Length); |
|
|
|
Array.Copy(diagonalOther._data, otherDataCopy, (diagonalResult._data.Length > diagonalOther._data.Length) ? diagonalOther._data.Length : diagonalResult._data.Length); |
|
|
|
Array.Copy(_data, 0, thisDataCopy, 0, (diagonalResult._data.Length > _data.Length) ? _data.Length : diagonalResult._data.Length); |
|
|
|
Array.Copy(diagonalOther._data, 0, otherDataCopy, 0, (diagonalResult._data.Length > diagonalOther._data.Length) ? diagonalOther._data.Length : diagonalResult._data.Length); |
|
|
|
Control.LinearAlgebraProvider.PointWiseMultiplyArrays(thisDataCopy, otherDataCopy, diagonalResult._data); |
|
|
|
return; |
|
|
|
} |
|
|
|
@ -444,8 +444,8 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32 |
|
|
|
{ |
|
|
|
var thisDataCopy = new Complex32[diagonalResult._data.Length]; |
|
|
|
var otherDataCopy = new Complex32[diagonalResult._data.Length]; |
|
|
|
Array.Copy(_data, thisDataCopy, (diagonalResult._data.Length > _data.Length) ? _data.Length : diagonalResult._data.Length); |
|
|
|
Array.Copy(diagonalOther._data, otherDataCopy, (diagonalResult._data.Length > diagonalOther._data.Length) ? diagonalOther._data.Length : diagonalResult._data.Length); |
|
|
|
Array.Copy(_data, 0, thisDataCopy, 0, (diagonalResult._data.Length > _data.Length) ? _data.Length : diagonalResult._data.Length); |
|
|
|
Array.Copy(diagonalOther._data, 0, otherDataCopy, 0, (diagonalResult._data.Length > diagonalOther._data.Length) ? diagonalOther._data.Length : diagonalResult._data.Length); |
|
|
|
// TODO: merge/MulByConj
|
|
|
|
Control.LinearAlgebraProvider.ConjugateArray(otherDataCopy, otherDataCopy); |
|
|
|
Control.LinearAlgebraProvider.PointWiseMultiplyArrays(thisDataCopy, otherDataCopy, diagonalResult._data); |
|
|
|
@ -490,8 +490,8 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32 |
|
|
|
{ |
|
|
|
var thisDataCopy = new Complex32[diagonalResult._data.Length]; |
|
|
|
var otherDataCopy = new Complex32[diagonalResult._data.Length]; |
|
|
|
Array.Copy(_data, thisDataCopy, (diagonalResult._data.Length > _data.Length) ? _data.Length : diagonalResult._data.Length); |
|
|
|
Array.Copy(diagonalOther._data, otherDataCopy, (diagonalResult._data.Length > diagonalOther._data.Length) ? diagonalOther._data.Length : diagonalResult._data.Length); |
|
|
|
Array.Copy(_data, 0, thisDataCopy, 0, (diagonalResult._data.Length > _data.Length) ? _data.Length : diagonalResult._data.Length); |
|
|
|
Array.Copy(diagonalOther._data, 0, otherDataCopy, 0, (diagonalResult._data.Length > diagonalOther._data.Length) ? diagonalOther._data.Length : diagonalResult._data.Length); |
|
|
|
Control.LinearAlgebraProvider.PointWiseMultiplyArrays(thisDataCopy, otherDataCopy, diagonalResult._data); |
|
|
|
return; |
|
|
|
} |
|
|
|
@ -543,8 +543,8 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32 |
|
|
|
{ |
|
|
|
var thisDataCopy = new Complex32[diagonalResult._data.Length]; |
|
|
|
var otherDataCopy = new Complex32[diagonalResult._data.Length]; |
|
|
|
Array.Copy(_data, thisDataCopy, (diagonalResult._data.Length > _data.Length) ? _data.Length : diagonalResult._data.Length); |
|
|
|
Array.Copy(diagonalOther._data, otherDataCopy, (diagonalResult._data.Length > diagonalOther._data.Length) ? diagonalOther._data.Length : diagonalResult._data.Length); |
|
|
|
Array.Copy(_data, 0, thisDataCopy, 0, (diagonalResult._data.Length > _data.Length) ? _data.Length : diagonalResult._data.Length); |
|
|
|
Array.Copy(diagonalOther._data, 0, otherDataCopy, 0, (diagonalResult._data.Length > diagonalOther._data.Length) ? diagonalOther._data.Length : diagonalResult._data.Length); |
|
|
|
// TODO: merge/MulByConj
|
|
|
|
Control.LinearAlgebraProvider.ConjugateArray(thisDataCopy, thisDataCopy); |
|
|
|
Control.LinearAlgebraProvider.PointWiseMultiplyArrays(thisDataCopy, otherDataCopy, diagonalResult._data); |
|
|
|
@ -740,7 +740,7 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32 |
|
|
|
throw new ArgumentException(Resources.ArgumentArraysSameLength, "source"); |
|
|
|
} |
|
|
|
|
|
|
|
Array.Copy(source, _data, source.Length); |
|
|
|
Array.Copy(source, 0, _data, 0, source.Length); |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
@ -766,7 +766,7 @@ namespace MathNet.Numerics.LinearAlgebra.Complex32 |
|
|
|
throw new ArgumentException(Resources.ArgumentVectorsSameLength, "source"); |
|
|
|
} |
|
|
|
|
|
|
|
Array.Copy(denseSource.Values, _data, denseSource.Values.Length); |
|
|
|
Array.Copy(denseSource.Values, 0, _data, 0, denseSource.Values.Length); |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>Calculates the induced L1 norm of this matrix.</summary>
|
|
|
|
|