-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use convex clustering without the GUI #6
Use convex clustering without the GUI #6
Commits on Oct 7, 2020
-
Configuration menu - View commit details
-
Copy full SHA for 07d9f14 - Browse repository at this point
Copy the full SHA 07d9f14View commit details -
Prepare MinimalHsp so that it can be used as key in a HashMap
HashMap requires a key and a value, both must be Objects, that means both are pointers in the HasMap in require 8 bytes each in 64 bit Java. Additionally, comes the memory for the Objects, if we use the same object for key and value, we can save that memory. To achieve that we need be able to use MinimalHsp as key in a HashMap, since we only want to use query and hit of MinimalHsp, the overriden methods hashCode and equals should only depend on those. And query and hit should be final so that they cannot be changed once MinimalHsp is in a HashMap, since this would screw up the HashMap.
Configuration menu - View commit details
-
Copy full SHA for 08694fe - Browse repository at this point
Copy the full SHA 08694feView commit details -
Cleanup places for better HasMap usage, before replace
In particular, declare local variables as close to where they are used. Especially keep them in a local scope.
Configuration menu - View commit details
-
Copy full SHA for be2e352 - Browse repository at this point
Copy the full SHA be2e352View commit details -
Make ClusterDataLoadHelper.parse_hsp_block use the same MinimalHsp as…
… key and value in the HashTable to save memory
Configuration menu - View commit details
-
Copy full SHA for 3f3485c - Browse repository at this point
Copy the full SHA 3f3485cView commit details -
Reduce memory by using the same MinimalHsp object for key and value i…
…n the hHashMaps in BlastVersion2.gethits
Configuration menu - View commit details
-
Copy full SHA for ce0fbb4 - Browse repository at this point
Copy the full SHA ce0fbb4View commit details -
Reduce memory by using the same MinimalHsp object for key and value i…
…n the HashMaps in FileHandling2.blast
Configuration menu - View commit details
-
Copy full SHA for 9bac3cb - Browse repository at this point
Copy the full SHA 9bac3cbView commit details -
Use MinimalAttractionValue in HashMaps as keys to itself instead of S…
…trings Strings need a lot of memory for representing two numbers seperated by an underscore. However, the value for the key is already contained in the MinimalAttractionValue object itself. To use an MinimalAttractionValue as key to itsself, it quals and hashCode function must depend on its values of query and hit. Since the att field is supposed the value part in the HashTable, this is ignored by quals and hashCode. This is a bit wired, but HashMap does not allow primitive types then a long as key would be the choice or a pair of two ints, if Java would allow to pass the object itself than a pointer onto it.
Configuration menu - View commit details
-
Copy full SHA for 707d861 - Browse repository at this point
Copy the full SHA 707d861View commit details -
Cleanup code initialize a local HasMap as late as possible, removed a…
…n unused parameter from a function
Configuration menu - View commit details
-
Copy full SHA for 3892993 - Browse repository at this point
Copy the full SHA 3892993View commit details -
Use of MinimalAttractionValue itself as key in the HashTable instead …
…a String to save memory
Configuration menu - View commit details
-
Copy full SHA for fc22539 - Browse repository at this point
Copy the full SHA fc22539View commit details -
Use HashSets instead of HashMaps in SelectedSubsetHandling to save me…
…mory Internally the HashSet also uses a HashMap, which is filled with a pointer to a static dummy object, so we save memory on the value object, but not on the pointer itself, which is not a smart design.
Configuration menu - View commit details
-
Copy full SHA for 92b77f1 - Browse repository at this point
Copy the full SHA 92b77f1View commit details -
Remove tmp members from IterationsComputerThread
Tempory variables should not be members of a class, especially if they are only used locally
Configuration menu - View commit details
-
Copy full SHA for 9942c68 - Browse repository at this point
Copy the full SHA 9942c68View commit details -
Simplify code: Use the two argement construcor of AminoAcidSequence t…
…o set the members on construction
Configuration menu - View commit details
-
Copy full SHA for b808005 - Browse repository at this point
Copy the full SHA b808005View commit details -
In ClusterMethods.removeGapsFromSequences only replace the sequence i…
…f it contains a gap String.replaceAll can be implemented in a way that it returns a new String even so the original String does not contain the gap character. This wastes time and memory for allocating the new String.
Configuration menu - View commit details
-
Copy full SHA for 881d405 - Browse repository at this point
Copy the full SHA 881d405View commit details -
Use Integer instead of String as type for the HashMaps in ClusterDete…
…ction.java to reduce meomory usage However, since hashkeys[i] = i, this looks to be superflous
Configuration menu - View commit details
-
Copy full SHA for 28cdf87 - Browse repository at this point
Copy the full SHA 28cdf87View commit details -
Remove hashkeys from ClusterDetection.java, since hashkeys[i] = i
This wasn't really a map and just used memory without need. And made the code harder to read.
Configuration menu - View commit details
-
Copy full SHA for d646435 - Browse repository at this point
Copy the full SHA d646435View commit details -
Configuration menu - View commit details
-
Copy full SHA for d6ad91d - Browse repository at this point
Copy the full SHA d6ad91dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 71f6358 - Browse repository at this point
Copy the full SHA 71f6358View commit details -
Turn clusterhash in ClusterDetection.multilinkage into a 2D-array, as…
… it is used as such anyway This simplifies the code and saves memory for the HashMap and the wrappers it requires for primitives. In fact the Integer objects were basically used as indeces.
Configuration menu - View commit details
-
Copy full SHA for a394ea5 - Browse repository at this point
Copy the full SHA a394ea5View commit details -
Replace HashMap by HashSet in ClusterDetectuin.java to reduce code co…
…mplexity This avoids adding dummy objects or fields. In principle, this could reduce memory needs, however HashSet uses internally a HashMap and uses a static dummy Object for filling the value part. That is a not very nice implementation. However, this is now out of sight of the programmer so that other code issues get clearer.
Configuration menu - View commit details
-
Copy full SHA for 70f12f9 - Browse repository at this point
Copy the full SHA 70f12f9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5d82e11 - Browse repository at this point
Copy the full SHA 5d82e11View commit details -
Configuration menu - View commit details
-
Copy full SHA for bf613bc - Browse repository at this point
Copy the full SHA bf613bcView commit details -
Configuration menu - View commit details
-
Copy full SHA for f313999 - Browse repository at this point
Copy the full SHA f313999View commit details -
Configuration menu - View commit details
-
Copy full SHA for fa2059c - Browse repository at this point
Copy the full SHA fa2059cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 84140a6 - Browse repository at this point
Copy the full SHA 84140a6View commit details -
Having the "Find clusters" menu item in the "Windows" menu starting w…
…ith a captial "F" in line with all the other menu items
Configuration menu - View commit details
-
Copy full SHA for b336f7d - Browse repository at this point
Copy the full SHA b336f7dView commit details
Commits on Oct 8, 2020
-
Configuration menu - View commit details
-
Copy full SHA for bcd7387 - Browse repository at this point
Copy the full SHA bcd7387View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9743c8f - Browse repository at this point
Copy the full SHA 9743c8fView commit details -
Clean up white space and add camelCasing for varibables in SequenceCl…
…uster.java Don't use "booleanVar == false" use instead "!booleanVar"
Configuration menu - View commit details
-
Copy full SHA for c5265ec - Browse repository at this point
Copy the full SHA c5265ecView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1d295c5 - Browse repository at this point
Copy the full SHA 1d295c5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9faab95 - Browse repository at this point
Copy the full SHA 9faab95View commit details -
Turn the code about convex clustering in ClusterDetection.java into a…
…n inner static method
Configuration menu - View commit details
-
Copy full SHA for 5b8e815 - Browse repository at this point
Copy the full SHA 5b8e815View commit details -
Configuration menu - View commit details
-
Copy full SHA for cd671f4 - Browse repository at this point
Copy the full SHA cd671f4View commit details -
Turn attvals, sigmafac, minseqnum, and seqnum into members of ConvexC…
…lustering and give them to the constructor
Configuration menu - View commit details
-
Copy full SHA for 2752c7f - Browse repository at this point
Copy the full SHA 2752c7fView commit details -
Configuration menu - View commit details
-
Copy full SHA for c0e5574 - Browse repository at this point
Copy the full SHA c0e5574View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4fa6e6e - Browse repository at this point
Copy the full SHA 4fa6e6eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0c648d2 - Browse repository at this point
Copy the full SHA 0c648d2View commit details -
Configuration menu - View commit details
-
Copy full SHA for ffa262d - Browse repository at this point
Copy the full SHA ffa262dView commit details -
Configuration menu - View commit details
-
Copy full SHA for d921188 - Browse repository at this point
Copy the full SHA d921188View commit details -
Save time by using the same HashSet for computeAverageAttraction and …
…computeAttractionVariance
Configuration menu - View commit details
-
Copy full SHA for 4497d38 - Browse repository at this point
Copy the full SHA 4497d38View commit details -
Configuration menu - View commit details
-
Copy full SHA for 11f9cbc - Browse repository at this point
Copy the full SHA 11f9cbcView commit details -
Configuration menu - View commit details
-
Copy full SHA for 346c04b - Browse repository at this point
Copy the full SHA 346c04bView commit details -
Configuration menu - View commit details
-
Copy full SHA for cc796f5 - Browse repository at this point
Copy the full SHA cc796f5View commit details -
Configuration menu - View commit details
-
Copy full SHA for 06ae700 - Browse repository at this point
Copy the full SHA 06ae700View commit details -
Configuration menu - View commit details
-
Copy full SHA for ade2e40 - Browse repository at this point
Copy the full SHA ade2e40View commit details -
Rename getCluster to getOneCluster in ConvexClustering to reflect its…
… name better what it does
Configuration menu - View commit details
-
Copy full SHA for 64b7cf9 - Browse repository at this point
Copy the full SHA 64b7cf9View commit details -
Configuration menu - View commit details
-
Copy full SHA for fe03af5 - Browse repository at this point
Copy the full SHA fe03af5View commit details
Commits on Oct 9, 2020
-
Loop only through the attraction values that belong to the nodes of i…
…nterests on ConvexClustering In the worst case, each node has an attraction value to every other node. That are O(N²) attraction avlues, if N is the number of nodes (aka sequences). The old version looked for each node on all the connections instead of just the connections of that particular node, which needed thus O(N²) loop iterations. With the new implementation it just needs in the inner loop O(N) iteration. Which improves the overall algorithm from O(N⁴) to O(N³). This is a big improvement in speed. However, it cost O(N²) extra memory, which was however transiently needed to load the data.
Configuration menu - View commit details
-
Copy full SHA for 0ba71a8 - Browse repository at this point
Copy the full SHA 0ba71a8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7c086b3 - Browse repository at this point
Copy the full SHA 7c086b3View commit details
Commits on Oct 10, 2020
-
Add the number of found clusters to the cluster output window title bar
This is not only a useful feature for checking that the cluster algorithm produces the same output after modification, for instance adding multi threading, but also useful for the user.
Configuration menu - View commit details
-
Copy full SHA for 8f718d9 - Browse repository at this point
Copy the full SHA 8f718d9View commit details -
Report to the command line how long clustering took
This helps to check whether changes, such as adding multithreading to the clustering code, indeed speed it up.
Configuration menu - View commit details
-
Copy full SHA for 47ab00e - Browse repository at this point
Copy the full SHA 47ab00eView commit details -
Configuration menu - View commit details
-
Copy full SHA for de6e8f1 - Browse repository at this point
Copy the full SHA de6e8f1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 225b65c - Browse repository at this point
Copy the full SHA 225b65cView commit details
Commits on Oct 11, 2020
-
Configuration menu - View commit details
-
Copy full SHA for de93573 - Browse repository at this point
Copy the full SHA de93573View commit details -
Improve variable names in WindowClusterDetectionResults.java, use cam…
…elCasing, more concrete names
Configuration menu - View commit details
-
Copy full SHA for d76963e - Browse repository at this point
Copy the full SHA d76963eView commit details -
Configuration menu - View commit details
-
Copy full SHA for f1c00f0 - Browse repository at this point
Copy the full SHA f1c00f0View commit details -
Cleanup variable names in WindowClusterDetectionResults further: Name…
…s and premature declaration
Configuration menu - View commit details
-
Copy full SHA for 150477c - Browse repository at this point
Copy the full SHA 150477cView commit details -
Do not add sequences if the cancel button was pressed in WindowCluste…
…rDetectionResults
Configuration menu - View commit details
-
Copy full SHA for 0666831 - Browse repository at this point
Copy the full SHA 0666831View commit details -
Configuration menu - View commit details
-
Copy full SHA for e096511 - Browse repository at this point
Copy the full SHA e096511View commit details -
Add the sequences to the sequence groups as they show up in WindowClu…
…sterDetectionResults
Configuration menu - View commit details
-
Copy full SHA for 3c079c4 - Browse repository at this point
Copy the full SHA 3c079c4View commit details -
Flexibilize the naming of the new sequence groups and conserve the in…
…dex shown in the cluster result window
Configuration menu - View commit details
-
Copy full SHA for b3a489a - Browse repository at this point
Copy the full SHA b3a489aView commit details -
Configuration menu - View commit details
-
Copy full SHA for e9e4b0b - Browse repository at this point
Copy the full SHA e9e4b0bView commit details
Commits on Oct 13, 2020
-
Remove unused parameter from ClusterMethods.computeSimpleAttractionVa…
…lue and ClusterMethods.computeComplexAttractionValue
Configuration menu - View commit details
-
Copy full SHA for b1dd26b - Browse repository at this point
Copy the full SHA b1dd26bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 44dc625 - Browse repository at this point
Copy the full SHA 44dc625View commit details -
Configuration menu - View commit details
-
Copy full SHA for bfa9844 - Browse repository at this point
Copy the full SHA bfa9844View commit details -
Remove minpal from the argument lists of computeSimpleAttractionValue…
… and computeComplexAttractionValue This value is provide by the ClusterData object already.
Configuration menu - View commit details
-
Copy full SHA for eed57af - Browse repository at this point
Copy the full SHA eed57afView commit details -
Prepare to merge duplicated code in compute_attraction_values() by ma…
…king the copies more similar
Configuration menu - View commit details
-
Copy full SHA for c7dcedb - Browse repository at this point
Copy the full SHA c7dcedbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 08e6da3 - Browse repository at this point
Copy the full SHA 08e6da3View commit details -
Merge duplicated code in ClusterData.compute_attraction_values
This way it is easier to maintain
Configuration menu - View commit details
-
Copy full SHA for 15189d5 - Browse repository at this point
Copy the full SHA 15189d5View commit details -
Configuration menu - View commit details
-
Copy full SHA for bec46f2 - Browse repository at this point
Copy the full SHA bec46f2View commit details -
Fix averaging the attraction values in ClusterData.compute_attraction…
…_values The attraction values for the same edges seem to be supposed to be avaraged. However, it was something else then avaraging. If there was only an edge between node A and B but not between B and A, then the attraction value would be only half the size if it where. In fact, it is questionable whether the attraction values should be treated differently if they come from two different HSPs, then if they came from the same.
Configuration menu - View commit details
-
Copy full SHA for 5dbbb2e - Browse repository at this point
Copy the full SHA 5dbbb2eView commit details -
Provide -rounds synonym for the -dorounds command line parameter, sin…
…ce the help calls it so
Configuration menu - View commit details
-
Copy full SHA for a801c31 - Browse repository at this point
Copy the full SHA a801c31View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7fe6d05 - Browse repository at this point
Copy the full SHA 7fe6d05View commit details