Beispiel #1
0
    def set_walk(self, gp, timestamp='-1'):
        self.dir = self.basepath + 'DTwalk/'
        if gp.case == 0:
            gamma_star1 =   0.1;    gamma_star2 =   1.0 # 1. or 0.1
            beta_star1  =   5.0;    beta_star2  =   5.0 # fixed to 5
            r_star1     = 1000.;    r_star2     = 1000. # 500 or 1000
            r_a1        =   1.0;    r_a2        =   1.0
            gamma_DM    = 0 # 0 or 1
            rno         = 3
        elif gp.case == 1:
            gamma_star1 =   1.0;    gamma_star2 =   1.0 # 1. or 0.1
            beta_star1  =   5.0;    beta_star2  =   5.0 # fixed to 5
            r_star1     =  500.;    r_star2     = 1000. # 500 or 1000
            r_a1        =   1.0;    r_a2        =   1.0
            gamma_DM    = 0 # core
            rno         = 2
        elif gp.case == 2:
            gamma_star1 =   1.0;    gamma_star2 =   1.0 # 1. or 0.1
            beta_star1  =   5.0;    beta_star2  =   5.0 # fixed to 5
            r_star1     =  500.;    r_star2     = 1000. # 500 or 1000
            r_a1        =   1.0;    r_a2        =   1.0
            gamma_DM    = 1 # cusp
            rno         = 8
        elif gp.case == 4:
            gamma_star1 =   0.1;    gamma_star2 =   0.1 # 1. or 0.1
            beta_star1  =   5.0;    beta_star2  =   5.0 # fixed to 5
            r_star1     =  100.;    r_star2     =  500. # 500 or 1000
            r_a1        =   1.0;    r_a2        =   1.0
            gamma_DM    = 1 # cusp
            rno         = 5
        elif gp.case == 5:
            gamma_star1 =   1.0;    gamma_star2 =   0.1 # 1. or 0.1
            beta_star1  =   5.0;    beta_star2  =   5.0 # fixed to 5
            r_star1     = 1000.;    r_star2     = 1000. # 500 or 1000
            r_a1        =   1.0;    r_a2        =   1.0
            gamma_DM    = 0 # core
            rno         = 6

        alpha_DM    = 1
        beta_DM     = 3
        r_DM        = 1000                    # fixed to 1000pc
        AAA = gh.myfill(100*gamma_star1)     # 100
        BBB = gh.myfill(10*beta_star1)       # 050
        CCC = gh.myfill(r_star1/10)          # 100
        DDD = gh.myfill(100*r_a1)            # 100
        EEE = {0: "core",
             1: "cusp"
             }[gamma_DM]                     # core
        FFF = gh.myfill(100*gamma_star2)     # 010
        GGG = gh.myfill(10*beta_star2)       # 050
        HHH = gh.myfill(r_star2/10)          # 100
        III = gh.myfill(100*r_a2)            # 100
        JJJ = EEE                            # core
        NNN = gh.myfill(rno)                   # 003    # realization (1..10)
        self.longdir = "c1_"+AAA+"_"+BBB+"_"+CCC+"_"+DDD+"_"+EEE+"_c2_"+FFF+"_"+GGG+"_"+HHH+"_"+III+"_"+JJJ+"_"+NNN+"_6d/"
        self.dir = self.modedir + self.longdir
        if timestamp != '-1':
            self.dir += timestamp + '/'
        self.analytic = self.dir + 'samplepars'
        LINE = np.loadtxt(self.analytic, skiprows=0, unpack=False)
        rho0        = LINE[19] # read from the corresp. samplepars file
        self.params = [beta_star1, r_DM, gamma_star1, r_star1, r_a1, gamma_DM, rho0]
        for pop in np.arange(gp.pops+1): # 0, 1, 2 for gp.pops=2
            spop = str(pop)
            self.massfiles.append(self.dir + 'M/M_'+spop+'.txt')
            self.Sigfiles.append(self.dir  + 'Sigma/Sig_'+spop+'.txt')
            self.nufiles.append(self.dir   + 'nu/nu_'+spop+'.txt')
            self.sigfiles.append(self.dir  + 'siglos/siglos_'+spop+'.txt')
            self.kappafiles.append(self.dir+ 'kappalos/kappalos_'+spop+'.txt')
            self.zetafiles.append(self.dir + 'zeta/zeta_'+spop+'.txt')
        return
Beispiel #2
0
    def set_walk(self, gp, timestamp="-1"):
        self.dir = self.basepath + "DTwalk/"
        if gp.case == 0:
            gamma_star1 = 0.1
            gamma_star2 = 1.0  # 1. or 0.1
            beta_star1 = 5.0
            beta_star2 = 5.0  # fixed to 5
            r_star1 = 1000.0
            r_star2 = 1000.0  # 500 or 1000
            r_a1 = 1.0
            r_a2 = 1.0
            gamma_DM = 0  # 0 or 1
            rno = 3
        elif gp.case == 1:
            gamma_star1 = 1.0
            gamma_star2 = 1.0  # 1. or 0.1
            beta_star1 = 5.0
            beta_star2 = 5.0  # fixed to 5
            r_star1 = 500.0
            r_star2 = 1000.0  # 500 or 1000
            r_a1 = 1.0
            r_a2 = 1.0
            gamma_DM = 0  # core
            rno = 2
        elif gp.case == 2:
            gamma_star1 = 1.0
            gamma_star2 = 1.0  # 1. or 0.1
            beta_star1 = 5.0
            beta_star2 = 5.0  # fixed to 5
            r_star1 = 500.0
            r_star2 = 1000.0  # 500 or 1000
            r_a1 = 1.0
            r_a2 = 1.0
            gamma_DM = 1  # cusp
            rno = 8
        elif gp.case == 4:
            gamma_star1 = 0.1
            gamma_star2 = 0.1  # 1. or 0.1
            beta_star1 = 5.0
            beta_star2 = 5.0  # fixed to 5
            r_star1 = 100.0
            r_star2 = 500.0  # 500 or 1000
            r_a1 = 1.0
            r_a2 = 1.0
            gamma_DM = 1  # cusp
            rno = 5
        elif gp.case == 5:
            gamma_star1 = 1.0
            gamma_star2 = 0.1  # 1. or 0.1
            beta_star1 = 5.0
            beta_star2 = 5.0  # fixed to 5
            r_star1 = 1000.0
            r_star2 = 1000.0  # 500 or 1000
            r_a1 = 1.0
            r_a2 = 1.0
            gamma_DM = 0  # core
            rno = 6

        alpha_DM = 1
        beta_DM = 3
        r_DM = 1000  # fixed to 1000pc
        AAA = gh.myfill(100 * gamma_star1)  # 100
        BBB = gh.myfill(10 * beta_star1)  # 050
        CCC = gh.myfill(r_star1 / 10)  # 100
        DDD = gh.myfill(100 * r_a1)  # 100
        EEE = {0: "core", 1: "cusp"}[gamma_DM]  # core
        FFF = gh.myfill(100 * gamma_star2)  # 010
        GGG = gh.myfill(10 * beta_star2)  # 050
        HHH = gh.myfill(r_star2 / 10)  # 100
        III = gh.myfill(100 * r_a2)  # 100
        JJJ = EEE  # core
        NNN = gh.myfill(rno)  # 003    # realization (1..10)
        self.longdir = (
            "c1_"
            + AAA
            + "_"
            + BBB
            + "_"
            + CCC
            + "_"
            + DDD
            + "_"
            + EEE
            + "_c2_"
            + FFF
            + "_"
            + GGG
            + "_"
            + HHH
            + "_"
            + III
            + "_"
            + JJJ
            + "_"
            + NNN
            + "_6d/"
        )
        self.dir = self.modedir + self.longdir
        if timestamp != "-1":
            self.dir += timestamp + "/"
        self.analytic = self.dir + "samplepars"
        LINE = np.loadtxt(self.analytic, skiprows=0, unpack=False)
        rho0 = LINE[19]  # read from the corresp. samplepars file
        self.params = [beta_star1, r_DM, gamma_star1, r_star1, r_a1, gamma_DM, rho0]
        for pop in np.arange(gp.pops + 1):  # 0, 1, 2 for gp.pops=2
            spop = str(pop)
            self.massfiles.append(self.dir + "M/M_" + spop + ".txt")
            self.Sigfiles.append(self.dir + "Sigma/Sig_" + spop + ".txt")
            self.nufiles.append(self.dir + "nu/nu_" + spop + ".txt")
            self.sigfiles.append(self.dir + "siglos/siglos_" + spop + ".txt")
            self.kappafiles.append(self.dir + "kappalos/kappalos_" + spop + ".txt")
            self.zetafiles.append(self.dir + "zeta/zeta_" + spop + ".txt")
        return
Beispiel #3
0
 def set_gaia(self, gp, timestamp='-1'):
     beta_star1 = 5; r_DM = 1000
     if gp.case == 1:
         gamma_star1=0.1;
         r_star1=100;  r_a1=100;    gamma_DM=1; rho0=0.064 # cusp
     elif gp.case == 2:
         gamma_star1=0.1;
         r_star1=250;  r_a1=250;    gamma_DM=0; rho0=0.400 # core
     elif gp.case == 3:
         gamma_star1=0.1;
         r_star1=250;  r_a1=np.inf; gamma_DM=1; rho0=0.064 # cusp
     elif gp.case == 4:
         gamma_star1=0.1;
         r_star1=1000; r_a1=np.inf; gamma_DM=0; rho0=0.400 # core
     elif gp.case == 5:
         gamma_star1=1.0;
         r_star1=100;  r_a1=100;    gamma_DM=1; rho0=0.064 # cusp
     elif gp.case == 6:
         gamma_star1=1.0;
         r_star1=250;  r_a1=250;    gamma_DM=0; rho0=0.400 # core
     elif gp.case == 7:
         gamma_star1=1.0;
         r_star1=250;  r_a1=np.inf; gamma_DM=1; rho0=0.064 # cusp
     elif gp.case == 8:
         gamma_star1=1.0;
         r_star1=1000; r_a1=np.inf; gamma_DM=0; rho0=0.400 # core
     elif gp.case == 9:
         alpha_DM=1.0; beta_DM=4.0; gamma_DM=1.0
         r_DM=2000. # [pc]
         rho_h=2.387329e-2 #Msun/pc^3
         alpha_star1=0.5
         gamma_star1=0.1
         r_star1=500.
         #gamma_star1=1.0; r_star1=500;  r_a1=np.inf; gamma_DM=1; rho0=2.387329e-2
         #r_DM = 2000 # [pc]
     elif gp.case == 10:
         alpha_DM=1.0; beta_DM=4.0; gamma_DM=0.0
         r_DM=4000. #[pc]
         rho0=3.021516e-2 #Msun/pc^3
         alpha_star1=0.5
         beta_star1=5.0
         gamma_star1=0.1
         r_star1=1750. # [pc]
         #gamma_star1=1.0; r_star1=500;  r_a1=np.inf; gamma_DM=1; rho0=2.387329e-2
         #r_DM = 2000 # [pc]
     elif gp.case == 11:
         gamma_star1=1.0; r_star1=500;  r_a1=np.inf; gamma_DM=1; rho0=2.387329e-2
         r_DM = 2000 # [pc]
     elif gp.case == 12:
         gamma_star1=1.0; r_star1=1750; r_a1=np.inf; gamma_DM=0; rho0=3.021516e-2
         r_DM = 4000 # [pc]
     self.params = [beta_star1, r_DM, gamma_star1, r_star1, r_a1, gamma_DM, rho0]
     AAA = gh.myfill(100*gamma_star1)  # 100
     BBB = gh.myfill(10*beta_star1)    # 050
     CCC = gh.myfill(100*r_star1/r_DM) # 100
     DDD = gh.myfill(100*r_a1/r_star1) # 100
     EEEE = {0: "core",
          1: "cusp"
          }[gamma_DM]                # core
     FFFF = gh.myfill(1000*rho0, 4)
     self.longdir = 'gs'+AAA+'_bs'+BBB+'_rcrs'+CCC+\
                    '_rarc'+DDD+'_'+EEEE+'_'+FFFF+'mpc3_df/'
     if gp.case == 9:
         self.longdir = 'data_h_rh2_rs05_gs10_ra0_b05n_10k/'
     elif gp.case == 10:
         self.longdir = 'data_c_rh4_rs175_gs10_ra0_b05n_10k/'
     self.dir = self.modedir + self.longdir
     if timestamp != '-1':
         self.dir += timestamp + '/'
     ## new variable to hold the .dat input file
     self.datafile = self.dir + 'dat'
     #self.analytic = self.dir + 'samplepars'
     for pop in np.arange(gp.pops+1):
         spop = str(pop)
         self.massfiles.append(self.dir+'M/M_'+spop+'.txt')
         self.Sigfiles.append(self.dir+'Sigma/Sig_'+spop+'.txt') # all comp.
         self.nufiles.append(self.dir+'nu/nu_'+spop+'.txt') # all comp.
         self.sigfiles.append(self.dir+'siglos/siglos_'+spop+'.txt')
         self.kappafiles.append(self.dir+'kappalos/kappalos_'+spop+'.txt')
         self.zetafiles.append(self.dir+'zeta/zeta_'+spop+'.txt')
     return
Beispiel #4
0
 def set_gaia(self, gp, timestamp="-1"):
     beta_star1 = 5
     r_DM = 1000
     if gp.case == 1:
         gamma_star1 = 0.1
         r_star1 = 100
         r_a1 = 100
         gamma_DM = 1
         rho0 = 0.064  # cusp
     elif gp.case == 2:
         gamma_star1 = 0.1
         r_star1 = 250
         r_a1 = 250
         gamma_DM = 0
         rho0 = 0.400  # core
     elif gp.case == 3:
         gamma_star1 = 0.1
         r_star1 = 250
         r_a1 = np.inf
         gamma_DM = 1
         rho0 = 0.064  # cusp
     elif gp.case == 4:
         gamma_star1 = 0.1
         r_star1 = 1000
         r_a1 = np.inf
         gamma_DM = 0
         rho0 = 0.400  # core
     elif gp.case == 5:
         gamma_star1 = 1.0
         r_star1 = 100
         r_a1 = 100
         gamma_DM = 1
         rho0 = 0.064  # cusp
     elif gp.case == 6:
         gamma_star1 = 1.0
         r_star1 = 250
         r_a1 = 250
         gamma_DM = 0
         rho0 = 0.400  # core
     elif gp.case == 7:
         gamma_star1 = 1.0
         r_star1 = 250
         r_a1 = np.inf
         gamma_DM = 1
         rho0 = 0.064  # cusp
     elif gp.case == 8:
         gamma_star1 = 1.0
         r_star1 = 1000
         r_a1 = np.inf
         gamma_DM = 0
         rho0 = 0.400  # core
     elif gp.case == 9:
         alpha_DM = 1.0
         beta_DM = 4.0
         gamma_DM = 1.0
         r_DM = 2000.0  # [pc]
         rho_h = 2.387329e-2  # Msun/pc^3
         alpha_star1 = 0.5
         gamma_star1 = 0.1
         r_star1 = 500.0
         # gamma_star1=1.0; r_star1=500;  r_a1=np.inf; gamma_DM=1; rho0=2.387329e-2
         # r_DM = 2000 # [pc]
     elif gp.case == 10:
         alpha_DM = 1.0
         beta_DM = 4.0
         gamma_DM = 0.0
         r_DM = 4000.0  # [pc]
         rho0 = 3.021516e-2  # Msun/pc^3
         alpha_star1 = 0.5
         beta_star1 = 5.0
         gamma_star1 = 0.1
         r_star1 = 1750.0  # [pc]
         # gamma_star1=1.0; r_star1=500;  r_a1=np.inf; gamma_DM=1; rho0=2.387329e-2
         # r_DM = 2000 # [pc]
     elif gp.case == 11:
         gamma_star1 = 1.0
         r_star1 = 500
         r_a1 = np.inf
         gamma_DM = 1
         rho0 = 2.387329e-2
         r_DM = 2000  # [pc]
     elif gp.case == 12:
         gamma_star1 = 1.0
         r_star1 = 1750
         r_a1 = np.inf
         gamma_DM = 0
         rho0 = 3.021516e-2
         r_DM = 4000  # [pc]
     self.params = [beta_star1, r_DM, gamma_star1, r_star1, r_a1, gamma_DM, rho0]
     AAA = gh.myfill(100 * gamma_star1)  # 100
     BBB = gh.myfill(10 * beta_star1)  # 050
     CCC = gh.myfill(100 * r_star1 / r_DM)  # 100
     DDD = gh.myfill(100 * r_a1 / r_star1)  # 100
     EEEE = {0: "core", 1: "cusp"}[gamma_DM]  # core
     FFFF = gh.myfill(1000 * rho0, 4)
     self.longdir = "gs" + AAA + "_bs" + BBB + "_rcrs" + CCC + "_rarc" + DDD + "_" + EEEE + "_" + FFFF + "mpc3_df/"
     if gp.case == 9:
         self.longdir = "data_h_rh2_rs05_gs10_ra0_b05n_10k/"
     elif gp.case == 10:
         self.longdir = "data_c_rh4_rs175_gs10_ra0_b05n_10k/"
     self.dir = self.modedir + self.longdir
     if timestamp != "-1":
         self.dir += timestamp + "/"
     ## new variable to hold the .dat input file
     self.datafile = self.dir + "dat"
     # self.analytic = self.dir + 'samplepars'
     for pop in np.arange(gp.pops + 1):
         spop = str(pop)
         self.massfiles.append(self.dir + "M/M_" + spop + ".txt")
         self.Sigfiles.append(self.dir + "Sigma/Sig_" + spop + ".txt")  # all comp.
         self.nufiles.append(self.dir + "nu/nu_" + spop + ".txt")  # all comp.
         self.sigfiles.append(self.dir + "siglos/siglos_" + spop + ".txt")
         self.kappafiles.append(self.dir + "kappalos/kappalos_" + spop + ".txt")
         self.zetafiles.append(self.dir + "zeta/zeta_" + spop + ".txt")
     return