data_structures.py 文件源码

python
阅读 31 收藏 0 点赞 0 评论 0

项目:yt 作者: yt-project 项目源码 文件源码
def _parse_parameter_file(self):
        """
        Parses the parameter file and establishes the various
        dictionaries.
        """

        f = open(self.parameter_filename, "r")
        # get dimension from first block name
        b0, fn0 = f.readline().strip().split()
        level0, left0, right0 = get_block_info(b0, min_dim=0)
        root_blocks = get_root_blocks(b0)
        f.close()
        self.dimensionality = left0.size
        self.periodicity = \
          ensure_tuple(np.ones(self.dimensionality, dtype=bool))

        fh = h5py.File(os.path.join(self.directory, fn0), "r")
        self.domain_left_edge  = fh.attrs["lower"]
        self.domain_right_edge = fh.attrs["upper"]

        # all blocks are the same size
        ablock = fh[list(fh.keys())[0]]
        self.current_time = ablock.attrs["time"][0]
        gsi = ablock.attrs["enzo_GridStartIndex"]
        gei = ablock.attrs["enzo_GridEndIndex"]
        self.ghost_zones = gsi[0]
        self.root_block_dimensions = root_blocks
        self.active_grid_dimensions = gei - gsi + 1
        self.grid_dimensions = ablock.attrs["enzo_GridDimension"]
        self.domain_dimensions = root_blocks * self.active_grid_dimensions
        fh.close()

        self.periodicity += (False, ) * (3 - self.dimensionality)

        # WIP hard-coded for now
        self.refine_by = 2
        self.cosmological_simulation = 0
        self.gamma = 5. / 3.
        self.particle_types = ()
        self.particle_types_raw = self.particle_types
        self.unique_identifier = \
          str(int(os.stat(self.parameter_filename)[stat.ST_CTIME]))
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号