コード例 #1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="MatrixBase"/> class.
 /// </summary>
 /// <param name="alphabetCardinality">
 /// Alphabet of the matrix.
 /// </param>
 /// <param name="dimensionality">
 /// Dimensionality of the matrix.
 /// </param>
 /// <param name="builder">
 /// Rule for creating the matrix.
 /// </param>
 public MatrixBase(int alphabetCardinality, int dimensionality, IMatrixBuilder builder)
 {
     AlphabetCardinality = alphabetCardinality;
     ValueList = new ArrayList();
     Rank = dimensionality;
     for (int i = 0; i < AlphabetCardinality; i++)
     {
         ValueList.Add(builder.Create(AlphabetCardinality, dimensionality - 1));
     }
 }
コード例 #2
0
 private static void ReadMatrixEntries(StreamReader reader, int nnz, IMatrixBuilder builder)
 {
     for (int i = 0; i < nnz; ++i)
     {
         string line = reader.ReadLine();
         if (line == null)
         {
             throw new IOException("Fewer lines than declared in header");
         }
         (int rowIdx, int colIdx, double value) = ParseEntry(line);
         builder[rowIdx, colIdx] = value;
     }
 }
コード例 #3
0
        public void TestInitialize()
        {
            var mockFileSystem = new MockFileSystem();

            var mockValidFile   = new MockFileData("55 60\n100 200");
            var mockInValidFile = new MockFileData("55 60\n100 A");
            var mockEmptyFile   = new MockFileData(string.Empty);

            mockFileSystem.AddFile(mockPathValid, mockValidFile);
            mockFileSystem.AddFile(mockPathInValid, mockInValidFile);
            mockFileSystem.AddFile(mockPathEmpty, mockEmptyFile);

            matrixBuilder = new MatrixBuilder(mockFileSystem, new MatrixFactory());
        }
コード例 #4
0
 public HierarchicalClustering(
     int minClusterSize,
     Func <List <IClusterableMatch>, IDistanceMetric> distanceMetricFactory,
     IMatrixBuilder matrixBuilder,
     IPrimaryClusterFinder primaryClusterFinder,
     ICorrelationWriter correlationWriter,
     ProgressData progressData)
 {
     _minClusterSize        = minClusterSize;
     _distanceMetricFactory = distanceMetricFactory;
     _matrixBuilder         = matrixBuilder;
     _primaryClusterFinder  = primaryClusterFinder;
     _correlationWriter     = correlationWriter;
     _progressData          = progressData;
 }
コード例 #5
0
 public MainWindow(IVolumeCalculator volumeCalculator, IMatrixBuilder matrixBuilder)
 {
     InitializeComponent();
     this.volumeCalculator = volumeCalculator;
     this.matrixBuilder    = matrixBuilder;
 }
コード例 #6
0
 /// <summary>
 /// Initializes a new instance of the <see cref="MatrixRowCommon"/> class.
 /// </summary>
 /// <param name="alphabetCardinality">
 /// Alphabet of the matrix.
 /// </param>
 /// <param name="dimensionality">
 /// Dimensionality of the matrix.
 /// </param>
 /// <param name="builder">
 ///  Creation rule for the matrix.
 /// </param>
 public MatrixRowCommon(int alphabetCardinality, int dimensionality, IMatrixBuilder builder)
     : base(alphabetCardinality, dimensionality, builder)
 {
 }
コード例 #7
0
 public VolumeCalculator(IMatrixBuilder matrixBuilder)
 {
     this.matrixBuilder = matrixBuilder;
 }