diff --git a/postprocessor.py b/postprocessor.py index af3d080..0ab2467 100644 --- a/postprocessor.py +++ b/postprocessor.py @@ -714,8 +714,8 @@ class PostProcessor(HDF5Container): bins : int, number of bins logbins : bool, if true, the bins will be logaritmically distributed """ - x = self.save.get_node(group + name_x + "_" + ax_los).read() - y = self.save.get_node(group + name_y + "_" + ax_los).read() + x = self.get_value(group + name_x + "_" + ax_los) + y = self.get_value(group + name_y + "_" + ax_los) centers, values = mean_by_bins(x, y, bins, logbins) # return ({os.path.basename(name_x) : centers, os.path.basename(name_y) : y_mean}, @@ -727,7 +727,7 @@ class PostProcessor(HDF5Container): Mean of Ek/Eb in rho bins """ self.load_cells() - mean_speed = self.save.get_node("/globals/mwa_speed").read() + mean_speed = self.get_value("/globals/mwa_speed") mean_speed = mean_speed * self.info["unit_velocity"].express(U.km_s) vel_fluct = (self.cells)["vel"] * self.info["unit_velocity"].express( U.km_s @@ -774,7 +774,7 @@ class PostProcessor(HDF5Container): def cos_vfluct_B(self): "return the cos of the angle between the magnetic field and the velocity fluctuation field" - mean_speed = self.save.get_node("/globals/mwa_speed").read() + mean_speed = self.get_value("/globals/mwa_speed") def getter_cos_vfluct_B(dset): vel_fluct = dset["vel"] - mean_speed @@ -787,7 +787,7 @@ class PostProcessor(HDF5Container): return self._vol_pdf(getter_cos_vfluct_B) def _mwa_sigma(self, axes=["x", "y", "z"]): - mw_speed = self.save.get_node("/globals/mwa_speed").read() + mw_speed = self.get_value("/globals/mwa_speed") if axes == ["x", "y", "z"]: @@ -852,7 +852,7 @@ class PostProcessor(HDF5Container): def _temperature(self, ax_los, z=0.0): P_op = ScalarOperator(lambda dset: dset["P"], self._ro.info["unit_pressure"]) dmap_P = (slicing.SliceMap(self._amr, self._cam[ax_los], P_op, z=z)).map.T - dmap_rho = self.save.get_node("/maps/slice_rho_{}".format(ax_los)).read() + dmap_rho = self.get_value("/maps/slice_rho_{}".format(ax_los)) return dmap_P / dmap_rho def _levels(self, ax_los): @@ -865,14 +865,14 @@ class PostProcessor(HDF5Container): return datamap.map.T def _jeans(self, ax_los): - dmap_T = self.save.get_node("/maps/T_" + ax_los).read() - dmap_rho = self.save.get_node("/maps/slice_rho_" + ax_los).read() + dmap_T = self.get_value("/maps/T_" + ax_los) + dmap_rho = self.get_value("/maps/slice_rho_" + ax_los) dmap_jeans = np.sqrt(np.pi * dmap_T / dmap_rho) return dmap_jeans def _jeans_ratio(self, ax_los): - dmap_jeans = self.save.get_node("/maps/jeans_" + ax_los).read() - dmap_levels = self.save.get_node("/maps/levels_" + ax_los).read() + dmap_jeans = self.get_value("/maps/jeans_" + ax_los) + dmap_levels = self.get_value("/maps/levels_" + ax_los) dmap_jeans_ratio = dmap_jeans * 2 ** (dmap_levels) return dmap_jeans_ratio @@ -989,7 +989,7 @@ class PostProcessor(HDF5Container): return rad_bins def _radial_centers(self, ax_los="z"): - radial_bins = self.save.get_node("/radial/radial_bins_" + ax_los).read() + radial_bins = self.get_value("/radial/radial_bins_" + ax_los) bin_centers = 0.5 * (radial_bins[1:] + radial_bins[:-1]) return bin_centers @@ -1016,8 +1016,8 @@ class PostProcessor(HDF5Container): return rr def _bins_on_map(self, ax_los="z"): - rad_bins = self.save.get_node("/radial/radial_bins_" + ax_los).read() - rr = self.save.get_node("/maps/rr_" + ax_los).read() + rad_bins = self.get_value("/radial/radial_bins_" + ax_los) + rr = self.get_value("/maps/rr_" + ax_los) # Find appropriate bin for each coordinate set bins = np.zeros(rr.shape, dtype=int) @@ -1080,7 +1080,7 @@ class PostProcessor(HDF5Container): def _fluct_map(self, name, ax_los="z", mass_weighted=False): - dmap = self.save.get_node("/maps/" + name + "_" + ax_los).read() + dmap = self.get_value("/maps/" + name + "_" + ax_los) if mass_weighted: avg_map = self.get_value("/maps/mwavg_map_" + name + "_" + ax_los) else: @@ -1147,8 +1147,8 @@ class PostProcessor(HDF5Container): return np.stack([values, centers]) def _fit_pdf(self, name, ax_los="z"): - pdf = self.save.get_node("/hist/pdf_" + name + "_" + ax_los) - values, centers = pdf.read() + pdf = self.get_value("/hist/pdf_" + name + "_" + ax_los) + values, centers = pdf mask_fit = ( (centers > self.pp_params.pdf.xmin_fit) & (centers < self.pp_params.pdf.xmax_fit) @@ -1171,15 +1171,13 @@ class PostProcessor(HDF5Container): # Mean part - T_avg = self.save.get_node("/maps/avg_map_T_mwavg_z").read() + T_avg = self.get_value("/maps/avg_map_T_mwavg_z") - radial_bins = self.save.get_node("/radial/radial_bins_" + ax_los).read() - mean_bin_vr = self.save.get_node( - "/radial/rad_avg_" + "slice_velr" + "_" + ax_los - ).read() - mean_bin_vphi = self.save.get_node( + radial_bins = self.get_value("/radial/radial_bins_" + ax_los) + mean_bin_vr = self.get_value("/radial/rad_avg_" + "slice_velr" + "_" + ax_los) + mean_bin_vphi = self.get_value( "/radial/rad_avg_" + "slice_velphi" + "_" + ax_los - ).read() + ) mean_bin_vr = np.concatenate((mean_bin_vr, [mean_bin_vr[-1]])) mean_bin_vphi = np.concatenate((mean_bin_vphi, [mean_bin_vr[-1]])) @@ -1223,8 +1221,8 @@ class PostProcessor(HDF5Container): "Map of the gravitational contribution to the Shakura&Sunaev alpha parameter for disks" assert ax_los == "z" - T_avg = self.save.get_node("/maps/avg_map_T_mwavg_z").read() - coldens = self.save.get_node("/maps/avg_map_coldens_z").read() + T_avg = self.get_value("/maps/avg_map_T_mwavg_z") + coldens = self.get_value("/maps/avg_map_coldens_z") def getter_alpha_grav(dset): r2 = np.sum((self.lbox * self.oct_getter_pos_disk(dset)) ** 2, axis=2) @@ -1284,7 +1282,7 @@ class PostProcessor(HDF5Container): def _pspec(self, **kwargs): outfile = self.pspec_filename pspec_new.pspec(repo=self.path, iouts=[self.num], outfile=outfile, **kwargs) - return True + return np.array([self.pspec_filename]) def _particles(self): """Ensure particles are written in the hdf5 file""" @@ -1303,7 +1301,7 @@ class PostProcessor(HDF5Container): branch_thresh = self.pp_params.filaments.branch_thresh glob_thresh = self.pp_params.filaments.glob_thresh - datamap = self.save.get_node("/maps/" + datamap_name + "_z").read() + datamap = self.get_value("/maps/" + datamap_name + "_z") shape = datamap.shape x = np.arange(shape[0]) - shape[0] / 2 y = np.arange(shape[1]) - shape[1] / 2