uk.ac.sanger.psu.gfmerge.analysis
Class GFMerge_Analysis

java.lang.Object
  extended by uk.ac.sanger.psu.gfmerge.analysis.GFMerge_Analysis

public class GFMerge_Analysis
extends java.lang.Object

class which wraps analysis of gene predictions

Gene predicter, prediction, genemodel region, cDNA region, Blast region objects are created within the class.
An region array of picked gene models is returned.

Version:
1.0
Author:
Sebastian R. Spiegler
See Also:
GFMergeRegion, GeneModel, Prediction

Field Summary
private static int _aminoacidsLength
           
private  SimpleArg allArguments
          object which contains all command line parameters
private  java.util.ArrayList analysisObjArr
          ArrayList which contains analysis objects (CDnaSpliceSiteAnalysis, CDnaOverlapAnalysis, BlastOverlapAnalysis, TotalExonLengthAnalysis, GeneModelLengthAnalysis, AvgCondProbAnalysis)
private  java.util.ArrayList arrListOfBlastRegions
          ArrayList of Blast regions
private  java.util.ArrayList arrListOfCDnaRegions
          ArrayList of cDNA regions
private  java.util.ArrayList arrListOfGMRegions
          ArrayList of genemodels from which low scoring genemodels are removed during analysis
private  java.util.ArrayList arrListOfGMRegions_org
          ArrayList of genemodel regions which contains all of the original gene models
private  java.util.ArrayList genePredicters
          ArrayList of gene predicter objects
private  java.util.ArrayList mergedFeatureTableArr
          return value of getMergedFeatureTable, contains regions of picked genemodels
private  java.util.ArrayList predictions
          ArrayList of prediction objects
 
Constructor Summary
GFMerge_Analysis(SimpleArg _allArguments)
          constructor of GFMerge_Analysis objects
 
Method Summary
private static java.util.ArrayList calcArrListOfBlastRegions(SimpleArg _allArguments)
          method which creates ArrayList of Blast regions
private static java.util.ArrayList calcArrListOfCDnaRegions(SimpleArg _allArguments)
          method which creates ArrayList of cDNA regions
private static java.util.ArrayList calcArrListOfGMRegions(java.util.ArrayList _predictions, SimpleArg _allArguments)
          method which calulates prediction objects
private  java.util.ArrayList calcMergedFeatureTable()
          method which is called from getMergedFeatureTable if variable mergedFeatureTableArr is null.
private static java.util.ArrayList copyArrOfFeatRegions(java.util.ArrayList arrListOfFeatRegions)
          method which does a deep copy of an region array, it keeps the references to the genemodel objects
private  void countFeat(java.util.ArrayList ArrListOfRegions)
           
private  java.util.ArrayList createAnalysisObjArr(java.util.ArrayList _arrListOfGMRegions, java.util.ArrayList _arrListOfCDnaRegions, java.util.ArrayList _arrListOfBlastRegions, SimpleArg _allArguments)
          method which generated an ArrayList of analysis objects (CDnaSpliceSiteAnalysis, CDnaOverlapAnalysis, BlastOverlapAnalysis, TotalExonLengthAnalysis, GeneModelLengthAnalysis, AvgCondProbAnalysis)
private static java.util.ArrayList createGeneFinderObjects(SimpleArg _allArguments)
          methode which creates genefinder objects and calculates their accuracy
private static java.util.ArrayList createPredictionObjects(SimpleArg _allArguments, java.util.ArrayList _genePredicters)
          method which creates Prediction objects
private static MyTreeMap createSimFeatObjects(java.lang.String featFilename, MyTreeMap _allFeatTreeMap)
          method which creates similarity feature objects (cDNA, Blast), puts them in a MyTreeMap object and returns this tree map
private static MyTreeMap createTreeOfGMs(java.util.ArrayList _predictions, MyTreeMap _allGmTreeMap)
          method which creates a tree structure of genemodels which are sorted by their minimum location
private  SimpleArg getAllArguments()
          accessor method which returns the object containg all command line parameters
private  java.util.ArrayList getAnalysisObjArr()
          accessor method which returns ArrayList of analysis objects generated in calcAnalysisObjArr (CDnaSpliceSiteAnalysis, CDnaOverlapAnalysis, BlastOverlapAnalysis, TotalExonLengthAnalysis, GeneModelLengthAnalysis, AvgCondProbAnalysis)
private  java.util.ArrayList getArrListOfBlastRegions()
          accessor method which return ArrayList of Blast regions
private  java.util.ArrayList getArrListOfCDnaRegions()
          accessor method which returns ArrayList of cDNA regions
 java.util.ArrayList getArrListOfGMRegions_org()
          accessor method which returns an array list of regions which correspond to the original array used in the constructor
 java.util.ArrayList getArrListOfGMRegions()
          accessor method which returns ArrayList of genemodel regions
 java.util.ArrayList getMergedFeatureTable()
          method which returns an array list of regions only containing the genemodels which have been picked during the process of scoring
 java.util.ArrayList getPredictions()
          accessor method which returns an array list of prediction objects
private static org.biojava.bio.seq.Sequence removeNonCdsFeatures(org.biojava.bio.seq.Sequence sequence, int _aminoacidsLength)
          method which removes non-CDS features from sequence
private  void setAllArguments(SimpleArg _allArguments)
          accessor method which sets SimpleArg object containing all command line parameters
private  void setAnalysisObjArr(java.util.ArrayList _analysisObjArr)
          accessor method which sets ArrayList of analysis objects generated in calcAnalysisObjArr (CDnaSpliceSiteAnalysis, CDnaOverlapAnalysis, BlastOverlapAnalysis, TotalExonLengthAnalysis, GeneModelLengthAnalysis, AvgCondProbAnalysis)
private  void setArrListOfBlastRegions(java.util.ArrayList _arrListOfBlastRegions)
          accessor method which sets ArrayList of Blast regions
private  void setArrListOfCDnaRegions(java.util.ArrayList _arrListOfCDnaRegions)
          accessor method which sets ArrayList of cDNA regions
private  void setArrListOfGMRegions_org(java.util.ArrayList _arrListOfGMRegions_org)
          accessor method which sets ArrayList of original genemodel regions
private  void setArrListOfGMRegions(java.util.ArrayList _arrListOfGMRegions)
          accessor method which sets ArrayList of genemodel regions
private  void setGenePredicters(java.util.ArrayList _genePredicters)
          accessor method which sets ArrayList of genepredicter objects
private  void setMergedFeatureTableArr(java.util.ArrayList _mergedFeatureTableArr)
          accessor method which sets mergedFeatureTableArr with ArrayList of regions which contain high scoring genemodels
private  void setPredictions(java.util.ArrayList _predictions)
          accessor method which sets ArrayList of prediction objects
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

genePredicters

private java.util.ArrayList genePredicters
ArrayList of gene predicter objects


predictions

private java.util.ArrayList predictions
ArrayList of prediction objects


arrListOfGMRegions_org

private java.util.ArrayList arrListOfGMRegions_org
ArrayList of genemodel regions which contains all of the original gene models


arrListOfGMRegions

private java.util.ArrayList arrListOfGMRegions
ArrayList of genemodels from which low scoring genemodels are removed during analysis


arrListOfCDnaRegions

private java.util.ArrayList arrListOfCDnaRegions
ArrayList of cDNA regions


arrListOfBlastRegions

private java.util.ArrayList arrListOfBlastRegions
ArrayList of Blast regions


analysisObjArr

private java.util.ArrayList analysisObjArr
ArrayList which contains analysis objects (CDnaSpliceSiteAnalysis, CDnaOverlapAnalysis, BlastOverlapAnalysis, TotalExonLengthAnalysis, GeneModelLengthAnalysis, AvgCondProbAnalysis)


mergedFeatureTableArr

private java.util.ArrayList mergedFeatureTableArr
return value of getMergedFeatureTable, contains regions of picked genemodels


allArguments

private SimpleArg allArguments
object which contains all command line parameters


_aminoacidsLength

private static int _aminoacidsLength
Constructor Detail

GFMerge_Analysis

public GFMerge_Analysis(SimpleArg _allArguments)
constructor of GFMerge_Analysis objects

It takes a SimpleArg object as parameter which contains itself all command line arguments.

Parameters:
_allArguments - object
See Also:
SimpleArg
Method Detail

getMergedFeatureTable

public java.util.ArrayList getMergedFeatureTable()
method which returns an array list of regions only containing the genemodels which have been picked during the process of scoring

There should be no overlapping gene models anymore.

Returns:
ArrayList of regions
See Also:
GFMergeRegion, GeneModel

countFeat

private void countFeat(java.util.ArrayList ArrListOfRegions)

calcMergedFeatureTable

private java.util.ArrayList calcMergedFeatureTable()
method which is called from getMergedFeatureTable if variable mergedFeatureTableArr is null. It calculates the high scoring genemodels which are picked during analysis.

Returns:
ArrayList of regions which contain picked genemodels

createAnalysisObjArr

private java.util.ArrayList createAnalysisObjArr(java.util.ArrayList _arrListOfGMRegions,
                                                 java.util.ArrayList _arrListOfCDnaRegions,
                                                 java.util.ArrayList _arrListOfBlastRegions,
                                                 SimpleArg _allArguments)
method which generated an ArrayList of analysis objects (CDnaSpliceSiteAnalysis, CDnaOverlapAnalysis, BlastOverlapAnalysis, TotalExonLengthAnalysis, GeneModelLengthAnalysis, AvgCondProbAnalysis)

Parameters:
_arrListOfGMRegions - ArrayList which contains region of genemodels
_arrListOfCDnaRegions - ArrayList which contains region of cDNA objects
_arrListOfBlastRegions - ArrayList which contains region of Blast objects
_allArguments - object which contains all command line arguments
Returns:
ArrayList of analysis objects (BasicFeatureAnalysis)

getArrListOfGMRegions_org

public java.util.ArrayList getArrListOfGMRegions_org()
accessor method which returns an array list of regions which correspond to the original array used in the constructor

Returns:
original ArrayList of regions
See Also:
GFMergeRegion, GeneModel

getPredictions

public java.util.ArrayList getPredictions()
accessor method which returns an array list of prediction objects

Returns:
ArrayList of predictions
See Also:
Prediction

copyArrOfFeatRegions

private static java.util.ArrayList copyArrOfFeatRegions(java.util.ArrayList arrListOfFeatRegions)
method which does a deep copy of an region array, it keeps the references to the genemodel objects

Parameters:
arrListOfFeatRegions - ArrayList of feature regions (cDNA, Blast)
Returns:
ArrayList of GFMergeRegion objects

createGeneFinderObjects

private static java.util.ArrayList createGeneFinderObjects(SimpleArg _allArguments)
methode which creates genefinder objects and calculates their accuracy

Parameters:
_allArguments - object which contains all command line arguments
Returns:
ArrayList of GenePredicter objects

createPredictionObjects

private static java.util.ArrayList createPredictionObjects(SimpleArg _allArguments,
                                                           java.util.ArrayList _genePredicters)
method which creates Prediction objects

Parameters:
_allArguments - object which contains all command line arguments
_genePredicters - ArrayList which contains all genepredicters
Returns:
ArrayList of Prediction objects

removeNonCdsFeatures

private static org.biojava.bio.seq.Sequence removeNonCdsFeatures(org.biojava.bio.seq.Sequence sequence,
                                                                 int _aminoacidsLength)
method which removes non-CDS features from sequence

Parameters:
sequence - BioJava sequence object
Returns:
cleaned sequence with only CDS features

calcArrListOfGMRegions

private static java.util.ArrayList calcArrListOfGMRegions(java.util.ArrayList _predictions,
                                                          SimpleArg _allArguments)
method which calulates prediction objects

Parameters:
_predictions - ArrayList which contains all prediction objects
_allArguments - object which contains all command line arguments
Returns:
ArrayList of Prediction objects

createTreeOfGMs

private static MyTreeMap createTreeOfGMs(java.util.ArrayList _predictions,
                                         MyTreeMap _allGmTreeMap)
method which creates a tree structure of genemodels which are sorted by their minimum location

Parameters:
_predictions - ArrayList which contains all prediction objects
_allGmTreeMap - empty MyTreeMap which will contain the return value
Returns:
MyTreeMap object

calcArrListOfCDnaRegions

private static java.util.ArrayList calcArrListOfCDnaRegions(SimpleArg _allArguments)
method which creates ArrayList of cDNA regions

Parameters:
_allArguments - object which contains all command line arguments
Returns:
ArrayList of cDNA regions

calcArrListOfBlastRegions

private static java.util.ArrayList calcArrListOfBlastRegions(SimpleArg _allArguments)
method which creates ArrayList of Blast regions

Parameters:
_allArguments - object which contains all command line arguments
Returns:
ArrayList of Blast regions

createSimFeatObjects

private static MyTreeMap createSimFeatObjects(java.lang.String featFilename,
                                              MyTreeMap _allFeatTreeMap)
method which creates similarity feature objects (cDNA, Blast), puts them in a MyTreeMap object and returns this tree map

Parameters:
featFilename - filename of the embl file which contains features
_allFeatTreeMap - empty MyTreeMap which will contain the return value
Returns:
MyTreeMap of similarity features (cDNA, Blast)

getArrListOfGMRegions

public java.util.ArrayList getArrListOfGMRegions()
accessor method which returns ArrayList of genemodel regions

Returns:
ArrayList of genemodel regions

getArrListOfCDnaRegions

private java.util.ArrayList getArrListOfCDnaRegions()
accessor method which returns ArrayList of cDNA regions

Returns:
ArrayList of cDNA regions

getArrListOfBlastRegions

private java.util.ArrayList getArrListOfBlastRegions()
accessor method which return ArrayList of Blast regions

Returns:
ArrayList of Blast regions

getAnalysisObjArr

private java.util.ArrayList getAnalysisObjArr()
accessor method which returns ArrayList of analysis objects generated in calcAnalysisObjArr (CDnaSpliceSiteAnalysis, CDnaOverlapAnalysis, BlastOverlapAnalysis, TotalExonLengthAnalysis, GeneModelLengthAnalysis, AvgCondProbAnalysis)

Returns:
ArrayList of analysis objects

getAllArguments

private SimpleArg getAllArguments()
accessor method which returns the object containg all command line parameters

Returns:
SimpleArg object

setArrListOfGMRegions

private void setArrListOfGMRegions(java.util.ArrayList _arrListOfGMRegions)
accessor method which sets ArrayList of genemodel regions

Parameters:
_arrListOfGMRegions - ArrayList which contains region of genemodel objects

setArrListOfCDnaRegions

private void setArrListOfCDnaRegions(java.util.ArrayList _arrListOfCDnaRegions)
accessor method which sets ArrayList of cDNA regions

Parameters:
_arrListOfCDnaRegions - ArrayList of feature cDNA regions

setArrListOfBlastRegions

private void setArrListOfBlastRegions(java.util.ArrayList _arrListOfBlastRegions)
accessor method which sets ArrayList of Blast regions

Parameters:
_arrListOfBlastRegions - ArrayList of feature Blast regions

setAllArguments

private void setAllArguments(SimpleArg _allArguments)
accessor method which sets SimpleArg object containing all command line parameters

Parameters:
_allArguments - object which contains all command line arguments

setPredictions

private void setPredictions(java.util.ArrayList _predictions)
accessor method which sets ArrayList of prediction objects

Parameters:
_predictions - ArrayList of prediction objects

setGenePredicters

private void setGenePredicters(java.util.ArrayList _genePredicters)
accessor method which sets ArrayList of genepredicter objects

Parameters:
_genePredicters - ArrayList of genepredicter objects

setArrListOfGMRegions_org

private void setArrListOfGMRegions_org(java.util.ArrayList _arrListOfGMRegions_org)
accessor method which sets ArrayList of original genemodel regions

Parameters:
_arrListOfGMRegions_org - ArrayList of original genemodel regions

setAnalysisObjArr

private void setAnalysisObjArr(java.util.ArrayList _analysisObjArr)
accessor method which sets ArrayList of analysis objects generated in calcAnalysisObjArr (CDnaSpliceSiteAnalysis, CDnaOverlapAnalysis, BlastOverlapAnalysis, TotalExonLengthAnalysis, GeneModelLengthAnalysis, AvgCondProbAnalysis)

Parameters:
_analysisObjArr - ArrayList of analysis objects

setMergedFeatureTableArr

private void setMergedFeatureTableArr(java.util.ArrayList _mergedFeatureTableArr)
accessor method which sets mergedFeatureTableArr with ArrayList of regions which contain high scoring genemodels

Parameters:
_mergedFeatureTableArr - ArrayList of regions which contain high scoring genemodels