trp.addTemplates(input,stockconc=10.0/6.0,units="x",plate=Experiment.EPPENDORFS) # Add a template else: reagents=Sample.getAllOnPlate(Experiment.REAGENTPLATE)+Sample.getAllOnPlate(Experiment.EPPENDORFS) for r in reagents: if r.volume<=0: r.initvolume=-r.volume+r.plate.unusableVolume Sample.clearall() t71master=["%s.MT"%s for s in srcs] trp.runT7Setup(theo=False,src=srcs,tgt=t71master,vol=len(timepoints)*12.2+15,srcdil=10.0/6) t71=[]; for i in range(len(timepoints)): t71=t71+trp.saveSamps(src=t71master,tgt=["%s.T%d"%(s,timepoints[i]) for s in srcs],vol=10,dil=1,plate=trp.e.SAMPLEPLATE) # Stop one sample immediately for a zero timepoint trp.runT7Stop(theo=False,vol=10, tgt=t71[0:len(srcs)],stopmaster=stop) trp.runT7Pgm(vol=10,dur=timepoints[-1]) for s in findsamps(t71[len(srcs):]): s.volume=s.volume+10 # Program doesn't know that they were diluted 2x by hand s.addhistory("Manual stop",10,None) # No stop, done during run trp.diluteInPlace(tgt=t71,dil=5) # Dilute input samples enough to use in qPCR directly (should be 5000/(rnagain*2*5) = 20) qpcrdil1=trp.runQPCRDIL(src=t71,tgt=[],vol=100,srcdil=20,dilPlate=True) rt1=trp.runRT(pos=True,src=t71,tgt=[],vol=5,srcdil=2) rt1=trp.diluteInPlace(tgt=rt1,dil=5) lig1=trp.runLig(src=rt1,tgt=[],vol=10,srcdil=3,master=ligmaster) prods=trp.diluteInPlace(tgt=lig1,dil=10)
t71 = trp.runT7Setup(theo=False, src=srcs * 2, tgt=[ "%s.T%d" % (srcs[i], timepoints[j]) for j in range(len(timepoints)) for i in range(len(srcs)) ], vol=10, srcdil=10.0 / 6) timesofar = 0 for i in range(len(timepoints)): lastelapse = trp.e.w.elapsed trp.runT7Pgm(10, timepoints[i] - timesofar) timesofar = timesofar + timepoints[i] tp = trp.runT7Stop(theo=False, vol=10, tgt=t71[(i * len(srcs)):((i + 1) * len(srcs))], stopmaster=stop) print "Dead time=%.1f min" % ((trp.e.w.elapsed - lastelapse) / 60.0) trp.diluteInPlace(tgt=t71, dil=5) print t71 # Dilute input samples enough to use in qPCR directly (should be 5000/(rnagain*2*5) = 20) qpcrdil1 = trp.runQPCRDIL(src=t71, tgt=[], vol=100, srcdil=20, dilPlate=True) rt1 = trp.runRT(pos=True, src=t71, tgt=[], vol=5, srcdil=2) rt1 = trp.diluteInPlace(tgt=rt1, dil=5) lig1 = trp.runLig(src=rt1, tgt=[], vol=10, srcdil=3, master=ligmaster)
if iteration==0: trp.addTemplates(input,stockconc=10.0/6.0,units="x",plate=Experiment.EPPENDORFS) # Add a template else: reagents=Sample.getAllOnPlate(Experiment.REAGENTPLATE)+Sample.getAllOnPlate(Experiment.EPPENDORFS) for r in reagents: if r.volume<=0: r.initvolume=-r.volume+r.plate.unusableVolume Sample.clearall() t71=trp.runT7Setup(theo=False,src=srcs*2,tgt=["%s.T%d"%(srcs[i],timepoints[j]) for j in range(len(timepoints)) for i in range(len(srcs))],vol=10,srcdil=10.0/6) timesofar=0 for i in range(len(timepoints)): lastelapse=trp.e.w.elapsed trp.runT7Pgm(10,timepoints[i]-timesofar) # vol, duration timesofar=timesofar+timepoints[i] tp=trp.runT7Stop(theo=False,vol=10,tgt=t71[(i*len(srcs)):((i+1)*len(srcs))],stopmaster=stop) print "Dead time=%.1f min"%((trp.e.w.elapsed-lastelapse)/60.0) trp.diluteInPlace(tgt=t71,dil=5) # Dilute input samples enough to use in qPCR directly (should be 5000/(rnagain*2*5) = 20) qpcrdil1=trp.runQPCRDIL(src=t71,tgt=[],vol=100,srcdil=20,dilPlate=True) rt1=trp.runRT(pos=True,src=t71,tgt=[],vol=10,srcdil=2) rt1=trp.diluteInPlace(tgt=rt1,dil=5) lig1=trp.runLig(src=rt1,tgt=[],vol=25,srcdil=3,master=ligmaster) prods=trp.saveSamps(lig1,vol=5,dil=10,plate=Experiment.DILPLATE) trp.runQPCR(src=qpcrdil1,vol=15,srcdil=10.0/4,primers=["WX","REF"]) trp.runQPCR(src=prods,vol=15,srcdil=10.0/4,primers=["WX","AX","REF"])
r.initvolume=-r.volume+r.plate.unusableVolume Sample.clearall() t71master=["%s.MT"%s for s in srcs] trp.runT7Setup(theo=False,src=srcs,tgt=t71master,vol=len(timepoints)*(t7vol*1.02+2)+1+15+20,srcdil=10.0/6) startTime=trp.e.w.elapsed t71=[] stopDelay=0*60 for i in range(len(timepoints)): trp.e.sanitize() pauseTime=(timepoints[i]*60-(trp.e.w.elapsed-startTime)-stopDelay) if pauseTime>0: print "Pausing for %.1f minutes"%(pauseTime/60.0) trp.e.w.userprompt("Pausing to incubate first T7 at room temperature...",pauseTime) tp=trp.saveSamps(src=t71master,tgt=["%s.T%d"%(s,timepoints[i]) for s in srcs],vol=t7vol,dil=1,plate=trp.e.SAMPLEPLATE) trp.runT7Stop(theo=False,vol=t7vol,tgt=tp,stopmaster=stop) print "T7 stop %d done at %.1f minutes"%(i,(trp.e.w.elapsed-startTime)/60.0) trp.diluteInPlace(tgt=tp,dil=5) trp.e.w.flushQueue() t71=t71+tp # Dilute input samples enough to use in qPCR directly (should be 5000/(rnagain*2*5) = 20) qpcrdil1=trp.runQPCRDIL(src=t71,tgt=[],vol=100,srcdil=20,dilPlate=False) rt1=trp.runRT(pos=True,src=t71,tgt=[],vol=5,srcdil=2) rt1=trp.diluteInPlace(tgt=rt1,dil=5) lig1=trp.runLig(src=rt1,tgt=[],vol=10,srcdil=3,master=ligmaster) prods=trp.diluteInPlace(tgt=lig1,dil=10) for i in range(len(qpcrdil1)): trp.runQPCR(src=qpcrdil1[i],vol=15,srcdil=10.0/4,primers=[tmplqpcr[i]])