-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Description
Hello,
Our group is doing some DNA storage experiments and very excited to find your simulator. We would like to test with different substitution/insertion/deletion error rate during the sequencing stage.. while we don't find such config in the DEFAULT_DIC.
We really appreciate if you can provide us some suggestion Thank you very much. I attached our code for your consideration.
Regards,
Yiqing
from Model.Model import *
import Model.config as config
from Model.config import *
DEFAULT_DIC = {
'syn_yield': 0.99,
'syn_number': 30,
'syn_pcrc': 9,
'syn_pcrp': 0.8,
'syn_performPCR': False,
'syn_sub_prob': 0.001, # total: 0.004
'syn_ins_prob': 0.002,
'syn_del_prob': 0.001,
'decay_er': 0.001,
'decay_loss_rate': 0.3,
'pcrc': 12,
'pcrp':0.8,
'pcrBias': 0.05,
'sam_ratio': 0.01,
'sam_to_number': 25,
'seq_copies': 5000,
'seq_prcp': 0.8,
'seq_performPCR': False,
'seq_depth': 10,
'seq_TM': genTm(0.0015)
}
DEFAULT_PASSER = ArgumentPasser(DEFAULT_DIC)
# editting parameters of the channel
arg = DEFAULT_PASSER
arg.seq_depth = 100
arg.syn_performPCR = True
arg.seq_performPCR = True
# construct a channel by linking modules
Modules = [
('synthesizing',Synthesizer(arg)),
('decaying',Decayer(arg)),
('pcring',PCRer(arg = arg)),
('sampling',Sampler(arg = arg)),
('sequencing',Sequencer(arg))
]
Model = DNA_Channel_Model(Modules)
# load the data, and use the model to generate simulated sequencing results
with open('/data/ssd/yan/DeSP/files/lena.dna') as f:
dnas = f.readlines()
in_dnas = [dna.split('\n')[0] for dna in dnas]
out_dnas = Model(in_dnas)
Metadata
Metadata
Assignees
Labels
No labels