//----------------------------------------------------------------------------------------------- //Приведение значений матрицы к интервалу public static RealMatrix TransformMatrixValuesToFinishIntervalValues( RealMatrix matrix, Interval <double> finishInterval ) { double minValue = matrix.GetMinValue(); double maxValue = matrix.GetMaxValue(); Interval <double> startInterval = new Interval <double>(minValue, maxValue); RealIntervalTransform intervalTransform = new RealIntervalTransform(startInterval, finishInterval); int rowCount = matrix.RowCount; int columnCount = matrix.ColumnCount; RealMatrix transformedMatrix = new RealMatrix(rowCount, columnCount); for (int row = 0; row < rowCount; row++) { for (int column = 0; column < columnCount; column++) { double value = matrix[row, column]; double transformedValue = intervalTransform.TransformToFinishIntervalValue(value); transformedMatrix[row, column] = transformedValue; } } return(transformedMatrix); }