nct.networkblast.graph
Class CompatibilityGraph

java.lang.Object
  extended by nct.graph.basic.BasicGraph<java.lang.String,java.lang.Double>
      extended by nct.networkblast.graph.CompatibilityGraph
All Implemented Interfaces:
java.lang.Cloneable, java.lang.Comparable<Graph<java.lang.String,java.lang.Double>>, Graph<java.lang.String,java.lang.Double>

public class CompatibilityGraph
extends BasicGraph<java.lang.String,java.lang.Double>

This class creates a compatibility graph based on the homology of proteins between two species and the interaction graphs for the given species.


Field Summary
protected  CompatibilityCalculator compatCalc
           
protected  java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>> edgeDescMap
           
protected  KPartiteGraph<java.lang.String,java.lang.Double,? extends DistanceGraph<java.lang.String,java.lang.Double>> homologyGraph
           
protected  java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.Double>> homologyMap
           
protected  java.util.List<? extends DistanceGraph<java.lang.String,java.lang.Double>> interactionGraphs
           
protected  ScoreModel<java.lang.String,java.lang.Double> scoreModel
           
 
Fields inherited from class nct.graph.basic.BasicGraph
assumeGraphFinished, descMap, id, numEdges, score, weightMap
 
Constructor Summary
CompatibilityGraph(KPartiteGraph<java.lang.String,java.lang.Double,? extends DistanceGraph<java.lang.String,java.lang.Double>> homologyGraph, java.util.List<? extends DistanceGraph<java.lang.String,java.lang.Double>> interactionGraphs, ScoreModel<java.lang.String,java.lang.Double> scoreModel, CompatibilityCalculator compatCalc)
          Constructor.
 
Method Summary
 
Methods inherited from class nct.graph.basic.BasicGraph
addEdge, addEdge, addNode, clone, compareTo, degreeOfNode, getEdge, getEdgeDescription, getEdges, getEdgeWeight, getId, getNeighbors, getNodes, getScore, isEdge, isNode, numberOfEdges, numberOfNodes, removeEdge, removeNode, setEdgeDescription, setEdgeWeight, setScore, toString
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

homologyMap

protected java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.Double>> homologyMap

edgeDescMap

protected java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>> edgeDescMap

interactionGraphs

protected java.util.List<? extends DistanceGraph<java.lang.String,java.lang.Double>> interactionGraphs

homologyGraph

protected KPartiteGraph<java.lang.String,java.lang.Double,? extends DistanceGraph<java.lang.String,java.lang.Double>> homologyGraph

scoreModel

protected ScoreModel<java.lang.String,java.lang.Double> scoreModel

compatCalc

protected CompatibilityCalculator compatCalc
Constructor Detail

CompatibilityGraph

public CompatibilityGraph(KPartiteGraph<java.lang.String,java.lang.Double,? extends DistanceGraph<java.lang.String,java.lang.Double>> homologyGraph,
                          java.util.List<? extends DistanceGraph<java.lang.String,java.lang.Double>> interactionGraphs,
                          ScoreModel<java.lang.String,java.lang.Double> scoreModel,
                          CompatibilityCalculator compatCalc)
Constructor.

Parameters:
homologyGraph - A k-partite graph where edges represent homology relations between proteins and partitions represent species/organisms.
interactionGraphs -
scoreModel - The ScoreModel used to score an edge in the graph.
compatCalc - The CompatibilityCalculator used to determine whether two possible compatibility nodes should be added to the compatibility graph and if so, adds the nodes and edge.