Example #1
0
    def buildGrammar(self, grammar):
        """build PFold like grammar."""

        Grammar.buildGrammar(self, grammar)

        # state pfoldS
        grammar.addRule(Rule(("pfoldS", ), ("pfoldL", ), ("prob", (1.0, ))))

        grammar.addRule(Rule(("pfoldS", ), ("pfoldB", ), ("prob", (1.0, ))))

        # state pfoldF
        annotation1 = Annotation(row="PFOLD", column="LNUC", label="<")
        annotation2 = Annotation(row="PFOLD", column="RNUC", label=">")

        grammar.addRule(
            Rule(("pfoldF", ), ("LNUC", "pfoldF*", "RNUC"),
                 gapsok=True,
                 annotations=[annotation1, annotation2]))

        grammar.addRule(Rule(("pfoldF*", ), ("pfoldF", ), ("prob", (1.0, ))))

        grammar.addRule(Rule(("pfoldF*", ), ("pfoldB", ), ("prob", (1.0, ))))

        ## state pfoldB
        grammar.addRule(Rule(("pfoldL", ), ("pfoldF", ), ("prob", (1.0, ))))

        grammar.addRule(Rule(("pfoldL", ), ("pfoldU", ), ("prob", (1.0, ))))

        ## state pfoldB
        grammar.addRule(Rule(("pfoldB", ), ("pfoldL", "pfoldS")))

        annotation3 = Annotation(row="PFOLD", column="NUC", label="_")

        ## state pfoldB
        grammar.addRule(
            Rule(("pfoldU", ), ("NUC", "pfoldU*"),
                 gapsok=True,
                 annotations=[
                     annotation3,
                 ]))

        grammar.addRule(Rule(("pfoldU*", ), (), ("prob", (1.0, ))))
Example #2
0
File: RNA.py Project: B-Rich/dart
    def buildGrammar(self, grammar):
        """build PFold like grammar."""
        
        Grammar.buildGrammar( self, grammar)
        
        # state pfoldS
        grammar.addRule( Rule( ("pfoldS",),
                               ("pfoldL",),
                               ("prob", (1.0,)) ) )

        grammar.addRule( Rule( ("pfoldS",),
                               ("pfoldB",),
                               ("prob", (1.0,)) )  )

        # state pfoldF
        annotation1 = Annotation( row = "PFOLD",
                                  column = "LNUC",
                                  label = "<" )
        annotation2 = Annotation( row = "PFOLD",
                                  column = "RNUC",
                                  label = ">" )

        
        grammar.addRule( Rule( ("pfoldF",),
                               ("LNUC", "pfoldF*", "RNUC"),
                               gapsok = True,
                               annotations = [annotation1,annotation2] ) )
        
        grammar.addRule( Rule( ("pfoldF*",),
                               ("pfoldF",),
                               ("prob", (1.0,) ) ) )
        
        grammar.addRule( Rule( ("pfoldF*",),
                               ("pfoldB",),
                               ("prob", (1.0,) ) ))
        
        ## state pfoldB
        grammar.addRule( Rule( ("pfoldL",),
                               ("pfoldF",),
                               ("prob", (1.0,)) ) )

        grammar.addRule( Rule( ("pfoldL",),
                               ("pfoldU",),
                               ("prob", (1.0,)) ) )
        
        ## state pfoldB
        grammar.addRule( Rule( ("pfoldB",),
                               ("pfoldL", "pfoldS") ) )

        annotation3 = Annotation( row = "PFOLD",
                                  column = "NUC",
                                  label = "_" )
        
        ## state pfoldB
        grammar.addRule( Rule( ("pfoldU",),
                               ("NUC", "pfoldU*"), 
                               gapsok = True,
                               annotations = [annotation3,]))
        
        grammar.addRule( Rule( ("pfoldU*",),
                               (),
                               ("prob", (1.0,)) ) )
Example #3
0
File: RNA.py Project: B-Rich/dart
 def __init__(self, *args, **kwargs):
     Grammar.__init__(self, *args, **kwargs)
Example #4
0
 def __init__(self, *args, **kwargs):
     Grammar.__init__(self, *args, **kwargs)