Skip to content

How to set the seq error rate #1

@yanlolo

Description

@yanlolo

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

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions