public void TestDatabaseInsertion(string relativePath, string databasePathRelative, int expectedFeatureCount) { // Get the absolute path var path = GetPath(relativePath); var databasePath = GetPath(databasePathRelative); var features = TestUmcFeatures(path, expectedFeatureCount); if (File.Exists(databasePath)) { File.Delete(databasePath); } try { NHibernateUtil.ConnectToDatabase(databasePath, true); var cache = new MSFeatureDAOHibernate(); var msFeatures = new List <MSFeatureLight>(); foreach (var feature in features) { msFeatures.AddRange(feature.MsFeatures); } cache.AddAll(msFeatures); var umcCache = new UmcDAOHibernate(); umcCache.AddAll(features.ToList()); } catch (Exception ex) { Console.WriteLine("Exception caching features: " + ex.Message); Console.WriteLine(ex.StackTrace); throw; } }
public void SaveUMCFeatures() { var lights = new List<UMCLight>(); for (var i = 0; i < 100; i++) { lights.Add(new UMCLight()); lights[i].Id = i; } IUmcDAO cache = new UmcDAOHibernate(); cache.AddAll(lights); }
public static FeatureDataAccessProviders CreateDataAccessProviders(string path, bool deleteIfExists) { if (deleteIfExists) { var exists = File.Exists(path); if (exists) { File.Delete(path); } } try { NHibernateUtil.ConnectToDatabase(path, true); } catch (Exception ex) { throw ex; } IUmcDAO featureCache = new UmcDAOHibernate(); IUmcClusterDAO clusterCache = new UmcClusterDAOHibernate(); IMSFeatureDAO msFeatureCache = new MSFeatureDAOHibernate(); IMSnFeatureDAO msnFeatureCache = new MSnFeatureDAOHibernate(); IMsnFeatureToMSFeatureDAO msnMSCache = new MSnFeatureToMSFeatureDAOHibernate(); IDatasetDAO datasetCache = new DatasetDAOHibernate(); IMassTagDAO massTagCache = new MassTagDAOHibernate(); IMassTagMatchDAO massTagMatchCache = new MassTagMatchDAO(); ISequenceToMsnFeatureDAO sequenceMap = new SequenceToMsnDAOHibernate(); var providers = new FeatureDataAccessProviders(featureCache, clusterCache, msFeatureCache, msnFeatureCache, msnMSCache, datasetCache, massTagMatchCache, massTagCache, new FactorDAOHibernate(), new DatasetToFactorDAOHibernate(), new MSMSClusterMapClusterDAOHibernate(), new DatabaseSearchSequenceDAOHibernate(), sequenceMap) { ScanSummaryDao = new ScanSummaryDAOHibernate(), ScanSummaryProviderCache = new ScanSummaryProviderCache(), OptionsDao = new OptionsDAOHibernate(), }; return(providers); }
public void SaveUMCFeatures() { var lights = new List <UMCLight>(); for (var i = 0; i < 100; i++) { lights.Add(new UMCLight()); lights[i].Id = i; } IUmcDAO cache = new UmcDAOHibernate(); cache.AddAll(lights); }
public void CreateCrossTab(string databasePath, string crossPath, int charge, int minimumClusterSize) { NHibernateUtil.ConnectToDatabase(databasePath, false); IDatasetDAO datasetCache = new DatasetDAOHibernate(); IUmcClusterDAO clusterCache = new UmcClusterDAOHibernate(); IUmcDAO featureCache = new UmcDAOHibernate(); Console.WriteLine("Find all datasets"); var datasets = datasetCache.FindAll(); Console.WriteLine("Find all clusters"); var clusters = clusterCache.FindByCharge(charge); WriteClusters(datasets, clusters, minimumClusterSize, charge, crossPath, databasePath, 50000); }
public void TestClusterWriting(string databasePath, string crossPath, int charge, int minimumClusterSize) { NHibernateUtil.ConnectToDatabase(databasePath, false); IDatasetDAO datasetCache = new DatasetDAOHibernate(); IUmcClusterDAO clusterCache = new UmcClusterDAOHibernate(); IUmcDAO featureCache = new UmcDAOHibernate(); Console.WriteLine("Find all datasets"); var datasets = datasetCache.FindAll(); Console.WriteLine("Find all clusters"); var clusters = clusterCache.FindByCharge(charge); WriteClusters(datasets, clusters, minimumClusterSize, charge, crossPath, databasePath, 300000); }
public static FeatureDataAccessProviders CreateDataAccessProviders(string path, bool deleteIfExists) { if (deleteIfExists) { var exists = File.Exists(path); if (exists) { File.Delete(path); } } try { NHibernateUtil.ConnectToDatabase(path, true); } catch (Exception ex) { throw ex; } IUmcDAO featureCache = new UmcDAOHibernate(); IUmcClusterDAO clusterCache = new UmcClusterDAOHibernate(); IMSFeatureDAO msFeatureCache = new MSFeatureDAOHibernate(); IMSnFeatureDAO msnFeatureCache = new MSnFeatureDAOHibernate(); IMsnFeatureToMSFeatureDAO msnMSCache = new MSnFeatureToMSFeatureDAOHibernate(); IDatasetDAO datasetCache = new DatasetDAOHibernate(); IMassTagDAO massTagCache = new MassTagDAOHibernate(); IMassTagMatchDAO massTagMatchCache = new MassTagMatchDAO(); ISequenceToMsnFeatureDAO sequenceMap = new SequenceToMsnDAOHibernate(); var providers = new FeatureDataAccessProviders(featureCache, clusterCache, msFeatureCache, msnFeatureCache, msnMSCache, datasetCache, massTagMatchCache, massTagCache, new FactorDAOHibernate(), new DatasetToFactorDAOHibernate(), new MSMSClusterMapClusterDAOHibernate(), new DatabaseSearchSequenceDAOHiberate(), sequenceMap); return providers; }
public void CreateDatasetMap(string databasePath, string crossPath, int charge, int minimumClusterSize) { NHibernateUtil.ConnectToDatabase(databasePath, false); IDatasetDAO datasetCache = new DatasetDAOHibernate(); IUmcClusterDAO clusterCache = new UmcClusterDAOHibernate(); IUmcDAO featureCache = new UmcDAOHibernate(); Console.WriteLine("Find all datasets"); var datasets = datasetCache.FindAll(); using (TextWriter writer = File.CreateText(crossPath + ".csv")) { writer.WriteLine("Dataset, Dataset Id"); foreach (var info in datasets) { writer.WriteLine("{0},{1}", info.DatasetName, info.DatasetId); } } }
public void TestDatabaseInsertion(string path, string databasePath) { var features = TestUmcFeatures(path); if (File.Exists(databasePath)) { File.Delete(databasePath); } NHibernateUtil.ConnectToDatabase(databasePath, true); var cache = new MSFeatureDAOHibernate(); var msFeatures = new List <MSFeatureLight>(); foreach (var feature in features) { msFeatures.AddRange(feature.MsFeatures); } cache.AddAll(msFeatures); var umcCache = new UmcDAOHibernate(); umcCache.AddAll(features.ToList()); }
public void TestDatabaseInsertion(string path, string databasePath) { var features = TestUmcFeatures(path); if (File.Exists(databasePath)) File.Delete(databasePath); NHibernateUtil.ConnectToDatabase(databasePath, true); var cache = new MSFeatureDAOHibernate(); var msFeatures = new List<MSFeatureLight>(); foreach (var feature in features) msFeatures.AddRange(feature.MsFeatures); cache.AddAll(msFeatures); var umcCache = new UmcDAOHibernate(); umcCache.AddAll(features.ToList()); }
public void TestClusterGeneration(string databasePath, string crossPath, int charge, int minimumClusterSize) { File.Delete(databasePath); NHibernateUtil.ConnectToDatabase(databasePath, true); IDatasetDAO datasetCache = new DatasetDAOHibernate(); IUmcClusterDAO clusterCache = new UmcClusterDAOHibernate(); IUmcDAO featureCache = new UmcDAOHibernate(); // Creating a dataset Console.WriteLine("Creating dummy datasets"); var datasets = new List<DatasetInformation>(); var total = 10; for (var i = 0; i < total; i++) { var dataset = new DatasetInformation(); dataset.DatasetId = i; dataset.DatasetName = "test" + i; datasets.Add(dataset); } datasetCache.AddAll(datasets); datasets.Clear(); datasets = datasetCache.FindAll(); // Create features Console.WriteLine("Creating features"); var features = new List<UMCLight>(); var clusters = new List<UMCClusterLight>(); var x = new Random(); var featureId = 0; for (var i = 0; i < 100; i++) { var cluster = new UMCClusterLight(); cluster.Id = i; cluster.AmbiguityScore = i; cluster.Tightness = i; var N = x.Next(1, total); cluster.Id = i; cluster.ChargeState = charge; var hash = new HashSet<int>(); for (var j = 0; j < N; j++) { var did = -1; do { did = x.Next(0, total); if (!hash.Contains(did)) { hash.Add(did); break; } } while (true); var feature = new UMCLight(); feature.GroupId = did; feature.Id = featureId++; feature.ChargeState = charge; feature.MassMonoisotopic = x.NextDouble(); feature.Net = x.NextDouble(); feature.AbundanceSum = x.Next(100, 200); feature.Abundance = feature.Abundance; feature.ClusterId = cluster.Id; cluster.AddChildFeature(feature); features.Add(feature); } cluster.CalculateStatistics(ClusterCentroidRepresentation.Mean); clusters.Add(cluster); } featureCache.AddAll(features); clusterCache.AddAll(clusters); clusters = clusterCache.FindAll(); Console.WriteLine("Find all clusters"); clusters = clusterCache.FindByCharge(charge); WriteClusters(datasets, clusters, minimumClusterSize, charge, crossPath, databasePath, 300000); }
public void TestCreateDummyDatabase(string databasePath, int totalDatasets, int totalClusters) { File.Delete(databasePath); NHibernateUtil.ConnectToDatabase(databasePath, true); IDatasetDAO datasetCache = new DatasetDAOHibernate(); IUmcClusterDAO clusterCache = new UmcClusterDAOHibernate(); IUmcDAO featureCache = new UmcDAOHibernate(); // Creating a dataset Console.WriteLine("Creating dummy datasets"); var datasets = new List<DatasetInformation>(); var total = totalDatasets; for (var i = 0; i < total; i++) { var dataset = new DatasetInformation(); dataset.DatasetId = i; dataset.DatasetName = "test" + i; datasets.Add(dataset); } datasetCache.AddAll(datasets); datasets.Clear(); datasets = datasetCache.FindAll(); // Create features Console.WriteLine("Creating features"); var features = new List<UMCLight>(); var clusters = new List<UMCClusterLight>(); var x = new Random(); var featureId = 0; for (var i = 0; i < totalClusters; i++) { var N = x.Next(1, total); var charge = x.Next(1, 10); var hash = new HashSet<int>(); var net = x.NextDouble(); var mass = 400 + (1600*x.NextDouble()); var dt = 60*x.NextDouble(); for (var j = 0; j < N; j++) { var did = -1; do { did = x.Next(0, total); if (!hash.Contains(did)) { hash.Add(did); break; } } while (true); var feature = new UMCLight { GroupId = did, Id = featureId++, ChargeState = charge, MassMonoisotopic = FeatureLight.ComputeDaDifferenceFromPPM(mass, 3) }; feature.MassMonoisotopicAligned = feature.MassMonoisotopic; feature.Net = net + 0.03 * x.NextDouble(); feature.NetAligned = feature.Net; feature.Net = feature.Net; feature.DriftTime = dt; feature.AbundanceSum = x.Next(100, 200); feature.Abundance = feature.Abundance; feature.ClusterId = -1; features.Add(feature); } } featureCache.AddAll(features); }
public void TestCreateDummyDatabase(string databasePath, int totalDatasets, int totalClusters) { File.Delete(databasePath); NHibernateUtil.ConnectToDatabase(databasePath, true); IDatasetDAO datasetCache = new DatasetDAOHibernate(); IUmcClusterDAO clusterCache = new UmcClusterDAOHibernate(); IUmcDAO featureCache = new UmcDAOHibernate(); // Creating a dataset Console.WriteLine("Creating dummy datasets"); var datasets = new List <DatasetInformation>(); var total = totalDatasets; for (var i = 0; i < total; i++) { var dataset = new DatasetInformation(); dataset.DatasetId = i; dataset.DatasetName = "test" + i; datasets.Add(dataset); } datasetCache.AddAll(datasets); datasets.Clear(); datasets = datasetCache.FindAll(); // Create features Console.WriteLine("Creating features"); var features = new List <UMCLight>(); var clusters = new List <UMCClusterLight>(); var x = new Random(); var featureId = 0; for (var i = 0; i < totalClusters; i++) { var N = x.Next(1, total); var charge = x.Next(1, 10); var hash = new HashSet <int>(); var net = x.NextDouble(); var mass = 400 + (1600 * x.NextDouble()); var dt = 60 * x.NextDouble(); for (var j = 0; j < N; j++) { var did = -1; do { did = x.Next(0, total); if (!hash.Contains(did)) { hash.Add(did); break; } } while (true); var feature = new UMCLight(); feature.GroupId = did; feature.Id = featureId++; feature.ChargeState = charge; feature.MassMonoisotopic = FeatureLight.ComputeDaDifferenceFromPPM(mass, 3); feature.MassMonoisotopicAligned = feature.MassMonoisotopic; feature.Net = net + .03 * x.NextDouble(); feature.NetAligned = feature.Net; feature.Net = feature.Net; feature.DriftTime = dt; feature.AbundanceSum = x.Next(100, 200); feature.Abundance = feature.Abundance; feature.ClusterId = -1; features.Add(feature); } } featureCache.AddAll(features); }
public void TestClusterGeneration(string databasePath, string crossPath, int charge, int minimumClusterSize) { File.Delete(databasePath); NHibernateUtil.ConnectToDatabase(databasePath, true); IDatasetDAO datasetCache = new DatasetDAOHibernate(); IUmcClusterDAO clusterCache = new UmcClusterDAOHibernate(); IUmcDAO featureCache = new UmcDAOHibernate(); // Creating a dataset Console.WriteLine("Creating dummy datasets"); var datasets = new List <DatasetInformation>(); var total = 10; for (var i = 0; i < total; i++) { var dataset = new DatasetInformation(); dataset.DatasetId = i; dataset.DatasetName = "test" + i; datasets.Add(dataset); } datasetCache.AddAll(datasets); datasets.Clear(); datasets = datasetCache.FindAll(); // Create features Console.WriteLine("Creating features"); var features = new List <UMCLight>(); var clusters = new List <UMCClusterLight>(); var x = new Random(); var featureId = 0; for (var i = 0; i < 100; i++) { var cluster = new UMCClusterLight(); cluster.Id = i; cluster.AmbiguityScore = i; cluster.Tightness = i; var N = x.Next(1, total); cluster.Id = i; cluster.ChargeState = charge; var hash = new HashSet <int>(); for (var j = 0; j < N; j++) { var did = -1; do { did = x.Next(0, total); if (!hash.Contains(did)) { hash.Add(did); break; } } while (true); var feature = new UMCLight(); feature.GroupId = did; feature.Id = featureId++; feature.ChargeState = charge; feature.MassMonoisotopic = x.NextDouble(); feature.Net = x.NextDouble(); feature.AbundanceSum = x.Next(100, 200); feature.Abundance = feature.Abundance; feature.ClusterId = cluster.Id; cluster.AddChildFeature(feature); features.Add(feature); } cluster.CalculateStatistics(ClusterCentroidRepresentation.Mean); clusters.Add(cluster); } featureCache.AddAll(features); clusterCache.AddAll(clusters); clusters = clusterCache.FindAll(); Console.WriteLine("Find all clusters"); clusters = clusterCache.FindByCharge(charge); WriteClusters(datasets, clusters, minimumClusterSize, charge, crossPath, databasePath, 300000); }