Esempio n. 1
0

snapshot = sys.argv[1]

snap_dir = '/orange/narayanan/desika.narayanan/gizmo_runs/simba/m25n512/output/'
cfile = glob.glob(snap_dir+'/Groups/caesar_0'+"{:03d}".format(int(snapshot))+'_*.hdf5')
ids = np.load('/orange/narayanan/s.lower/simba/snap'+str(snapshot)+'_galaxy.npz', allow_pickle=True)
gal = ids['galid']
#gal_file = np.load('/orange/narayanan/s.lower/simba/_galaxy.npz')['galids']

print('loading yt snap')
ds = yt.load(snap_dir+'snapshot_'+snapshot+'.hdf5')


print('quick loading caesar')
obj = caesar.quick_load(cfile[0])
obj.yt_dataset = ds
dd = obj.yt_dataset.all_data()
print('loading particle data')
scalefactor = dd[("PartType4", "StellarFormationTime")]
star_masses = dd[("PartType4", "Masses")]
star_metal = dd[("PartType4", 'metallicity')]
print('now loading fsps')
fsps_ssp = fsps.StellarPopulation(sfh=0,
                zcontinuous=1,
                imf_type=2,
                zred=0.0, add_dust_emission=False)
solar_Z = 0.0196


# Compute the age of all the star particles from the provided scale factor at creation                               
    r'Cool CGM $(T < T_{\rm photo})$', 'Wind', 'Dust', 'ISM', 'Stars'
]
colours = ['m', 'b', 'c', 'g', 'tab:orange', 'tab:pink', 'r']
colours = get_cb_colours(palette_name)[::-1]
stats = ['median', 'percentile_25_75', 'std', 'cosmic_median', 'cosmic_std']

frac_stats_file = fracdata_dir + model + '_' + wind + '_' + snap + '_avail_metal_frac_stats.h5'

if os.path.isfile(frac_stats_file):

    frac_stats = read_phase_stats(frac_stats_file, plot_phases, stats)

else:

    caesarfile = '/home/rad/data/' + model + '/' + wind + '/Groups/' + model + '_' + snap + '.hdf5'
    sim = caesar.quick_load(caesarfile)
    quench = -1.8 + 0.3 * sim.simulation.redshift
    central = np.array([i.central for i in sim.galaxies])
    gal_sm = np.array(
        [i.masses['stellar'].in_units('Msun') for i in sim.galaxies])[central]
    gal_sfr = np.array([i.sfr.in_units('Msun/Gyr')
                        for i in sim.galaxies])[central]
    gal_ssfr = np.log10(gal_sfr / gal_sm)

    gal_pos = np.array([i.pos.in_units('kpc/h')
                        for i in sim.galaxies])[central]

    fractions = read_phases(fracdata_dir + 'available_metal_fraction.h5',
                            all_phases)

    frac_stats = {}
Esempio n. 3
0
import caesar
import numpy as np
import pprint
import argparse

parser = argparse.ArgumentParser()
parser.add_argument('caesar_file')
args = parser.parse_args()

obj = caesar.old_load(args.caesar_file)
qobj = caesar.quick_load(args.caesar_file)

assert len(obj.galaxies) == len(qobj.galaxies)
for galaxy, qgalaxy in zip(obj.galaxies, qobj.galaxies):
    for k, v in galaxy.__dict__.items():
        if k[0] != '_' and k not in ['obj', 'halo', 'satellites', 'clouds']:
            if isinstance(getattr(galaxy, k), np.ndarray):
                if np.any(getattr(galaxy, k) != getattr(qgalaxy, k)):
                    print(k)
                    pprint.pprint(getattr(galaxy, k))
                    pprint.pprint(getattr(qgalaxy, k))
                    print()
            else:
                if getattr(galaxy, k) != getattr(qgalaxy, k):
                    print(k)
                    print(getattr(galaxy, k))
                    print(getattr(qgalaxy, k))
                    print()

assert len(obj.halos) == len(qobj.halos)
for halo, qhalo in zip(obj.halos, qobj.halos):
# coding: utf-8

import yt
import caesar
import numpy as np
import fsps
import sys, os
from prospector_output_utilities import *

#old_caesar = pd.read_pickle('/Users/sidneylower/Documents/snap305_dirichlet/caesar_galaxy_properties_evo2000.pkl')
caesar_snap = '/orange/narayanan/desika.narayanan/gizmo_runs/simba/m25n512/output/Groups/caesar_0305_z0.000.hdf5'
snapshot = '/orange/narayanan/desika.narayanan/gizmo_runs/simba/m25n512/output/snapshot_305.hdf5'

gal = int(sys.argv[1])

obj = caesar.quick_load(caesar_snap)
solar_Z = 0.0196

ds = yt.load(snapshot)
obj.yt_dataset = ds
dd = obj.yt_dataset.all_data()

scalefactor = dd[("PartType4", "StellarFormationTime")]
star_masses = dd[("PartType4", "Masses")]
star_Z = dd[("PartType4", "metallicity")]
formation_z = (1.0 / scalefactor) - 1.0
yt_cosmo = yt.utilities.cosmology.Cosmology(hubble_constant=0.68)
stellar_formation_age = yt_cosmo.t_from_z(formation_z).in_units("Gyr")
simtime = yt_cosmo.t_from_z(ds.current_redshift).in_units("Gyr")
stellar_ages = (simtime - stellar_formation_age).in_units("Gyr")
Esempio n. 5
0
import numpy as np
import glob
snap = int(sys.argv[1])



ids = np.load('/orange/narayanan/s.lower/simba/snap'+str(snap)+'_galaxy.npz', allow_pickle=True)
gal = ids['galid']
snap_dir = '/orange/narayanan/s.lower/simba/desika_filtered_snaps/snap'+str(snap)+'/'
outfile = '/orange/narayanan/s.lower/simba/desika_filtered_snaps/simba_snap'+str(snap)+'_pos.npz'
print('loading yt ds')
ds = yt.load('/orange/narayanan/desika.narayanan/gizmo_runs/simba/m25n512/output/snapshot_'+"{:03d}".format(snap)+'.hdf5')
ad = ds.all_data()
print('caesar quick loading')
c_files = glob.glob('/orange/narayanan/desika.narayanan/gizmo_runs/simba/m25n512/output/Groups/caesar_0'+"{:03d}".format(snap)+'_z*.hdf5')
obj = caesar.quick_load(c_files[0])

gas_masses = ad[('PartType0', 'Masses')].value
#star_masses = ad[('PartType4', 'Masses')].value
star_masses = ad[('PartType4', 'Masses')].value
gas_coords = ad[('PartType0', 'Coordinates')].value#[:,0]
star_coords = ad[('PartType4', 'Coordinates')].value#[:,0]


pos = {}
ngalaxies = {}


for i in range(len(gal)):
    print('on galaxy ',i,' of ',len(gal))
    try: