def modelOutputSlow(self,params):
     filename,namesList = self.filename,self.namesList
     endTime,nSteps = self.endTime,self.nSteps
     
     # use BNG to integrate the model
     writeBNGL.writeBNGLsimulate(filename,namesList,params,endTime,nSteps)
     os.system(BNGpath+"Perl2/BNG2.pl "+filename+"_simulate.bngl > "             \
             +filename+"_simulate_messages.txt")
     
     # read in output of model
     output = self._readModelOutput(filename+"_simulate.cdat")
     self.recentOutput = output
     return output
    def modelOutputSlow(self, params):
        filename, namesList = self.filename, self.namesList
        endTime, nSteps = self.endTime, self.nSteps

        # use BNG to integrate the model
        writeBNGL.writeBNGLsimulate(filename, namesList, params, endTime,
                                    nSteps)
        os.system(BNGpath+"Perl2/BNG2.pl "+filename+"_simulate.bngl > "             \
                +filename+"_simulate_messages.txt")

        # read in output of model
        output = self._readModelOutput(filename + "_simulate.cdat")
        self.recentOutput = output
        return output
 def _createNetwork(self,verbose):
     """
     Creates BioNetGen network 'filename.net'.
     
     Returns list of names of network parameters.
     """
     filename,n,rulesList = self.filename,self.n,self.rulesList
     if self.verbose:
         mult = 2
         if self.MichaelisMenten:
           mult = 4
         start,startWall = cpuTime(),wallTime()
         print ""
         print "Creating network with "+str(n)+" activation sites"
         print "  and "+str(len(rulesList))+" additional rules ("                \
               +str(mult*(n+len(rulesList)))+" parameters)."
     
     namesList = writeBNGL.writeBNGLnetwork(n,rulesList,filename,                \
         MichaelisMenten=self.MichaelisMenten)
     self._runBNGLfile(filename)
     
     if self.verbose:
         print "Network creation took "+bothTimeStr(start,startWall)
     
     return namesList
    def _createNetwork(self, verbose):
        """
        Creates BioNetGen network 'filename.net'.
        
        Returns list of names of network parameters.
        """
        filename, n, rulesList = self.filename, self.n, self.rulesList
        if self.verbose:
            mult = 2
            if self.MichaelisMenten:
                mult = 4
            start, startWall = cpuTime(), wallTime()
            print ""
            print "Creating network with " + str(n) + " activation sites"
            print "  and "+str(len(rulesList))+" additional rules ("                \
                  +str(mult*(n+len(rulesList)))+" parameters)."

        namesList = writeBNGL.writeBNGLnetwork(n,rulesList,filename,                \
            MichaelisMenten=self.MichaelisMenten)
        self._runBNGLfile(filename)

        if self.verbose:
            print "Network creation took " + bothTimeStr(start, startWall)

        return namesList
 def modelOutput(self,params):
     """
     Returns model output as array: 
     output[0] = time series for species 1,
     output[1] = time series for species 2, 
       ...
     """
     netFile,namesList = self.filename,self.namesList
     endTime,nSteps = self.endTime,self.nSteps
     
     # use BNG to integrate the model
     writeBNGL.writeModifiedNet(netFile,namesList,params,"_modified")
     writeBNGL.writeBNGLsimulate(netFile+"_modified",endTime,nSteps)
     self._runBNGLfile(netFile+"_modified_simulate")
     
     # or use (slow)
     #writeBNGL.writeBNGLsimulateSlow(filename,namesList,params,endTime,nSteps)
     #os.system(BNGpath+"Perl2/BNG2.pl "+filename+"_simulate.bngl > "            \
     #       +filename+"_simulate_messages.txt")
     
     # read in output of model
     output = self._readModelOutput(netFile+"_modified_simulate.cdat")
     self.recentOutput = output
     return output
    def modelOutput(self, params):
        """
        Returns model output as array: 
        output[0] = time series for species 1,
        output[1] = time series for species 2, 
          ...
        """
        netFile, namesList = self.filename, self.namesList
        endTime, nSteps = self.endTime, self.nSteps

        # use BNG to integrate the model
        writeBNGL.writeModifiedNet(netFile, namesList, params, "_modified")
        writeBNGL.writeBNGLsimulate(netFile + "_modified", endTime, nSteps)
        self._runBNGLfile(netFile + "_modified_simulate")

        # or use (slow)
        #writeBNGL.writeBNGLsimulateSlow(filename,namesList,params,endTime,nSteps)
        #os.system(BNGpath+"Perl2/BNG2.pl "+filename+"_simulate.bngl > "            \
        #       +filename+"_simulate_messages.txt")

        # read in output of model
        output = self._readModelOutput(netFile + "_modified_simulate.cdat")
        self.recentOutput = output
        return output
 def writeSBML(self,params):
     writeBNGL.writeBNGL_SBML(self.filename,self.namesList,params)
     self._runBNGLfile(self.filename[:-4]+"sbml")
     return self.filename[:-4]+"sbml.xml"
 def writeSBML(self, params):
     writeBNGL.writeBNGL_SBML(self.filename, self.namesList, params)
     self._runBNGLfile(self.filename[:-4] + "sbml")
     return self.filename[:-4] + "sbml.xml"