コード例 #1
0
import sys

infile = sys.argv[1]
pop_ids = [sys.argv[2], sys.argv[3]]
projections = [int(sys.argv[4]), int(sys.argv[5])]
if len(sys.argv) == 9:
    params = np.loadtxt(sys.argv[8], delimiter=" ", unpack=False)
else:
    params = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.5]

# mutation rate per sequenced portion of genome per generation: for A.millepora, 0.02
mu = float(sys.argv[6])
# generation time, in thousand years: 0.005  (5 years)
gtime = float(sys.argv[7])

dd = Misc.make_data_dict(infile)
# set Polarized=False below for folded AFS analysis
data = Spectrum.from_data_dict(dd, pop_ids, projections, polarized=False)
ns = data.sample_sizes
np.set_printoptions(precision=3)

#-------------------
# split into unequal pop sizes with asymmetrical migration


def sc2ielsm1(params, ns):
    #    p_misid: proportion of misidentified ancestral states
    nu1_1, nu2_1, nu1_2, nu2_2, T0, T, m, mi, m12_2, m21_2, m12_2i, m21_2i, P = params
    sts = moments.LinearSystem_1D.steady_state_1D(ns[0] + ns[1])
    fs = moments.Spectrum(sts)
    fs = moments.Manips.split_1D_to_2D(fs, ns[0], ns[1])
コード例 #2
0
ファイル: dadi22Dsfs.py プロジェクト: z0on/2bRAD_GATK
#!/usr/bin/env python

import moments
import numpy as np
from numpy import array
from moments import Misc,Spectrum
import sys

infile=sys.argv[1]
pop_ids=[sys.argv[2],sys.argv[3]]
projections=[int(sys.argv[4]),int(sys.argv[5])]
outname=pop_ids[0]+pop_ids[1]+"_sfs"

dd = Misc.make_data_dict(infile)
data = Spectrum.from_data_dict(dd, pop_ids,projections,polarized=True)
Spectrum.to_file(data,outname,precision=4,foldmaskinfo=False)