import numpy as np from numpy import array from moments import Misc, Spectrum, Numerics, Manips, Integration, Demographics1D, Demographics2D import sys infile = sys.argv[1] pop_ids = [sys.argv[2], sys.argv[3]] projections = [int(sys.argv[4]), int(sys.argv[5])] #params=[float(sys.argv[6]),float(sys.argv[7]),float(sys.argv[8]),float(sys.argv[9]),float(sys.argv[10]),float(sys.argv[11])] params = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0.5, 0.01] # 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=True) ns = data.sample_sizes np.set_printoptions(precision=3) #------------------- # split into unequal pop sizes with asymmetrical migration def sc12iml(params, ns): # p_misid: proportion of misidentified ancestral states nu0, nu1_2, nu2_2, nu1_3, nu2_3, T1, T2, T3, m12_3, m21_3, m12_3i, m21_3i, P, p_misid = params sts = moments.LinearSystem_1D.steady_state_1D(ns[0] + ns[1]) fs = moments.Spectrum(sts)
#!/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)