コード例 #1
0
def download_atom_data(atomic_data_name=None):
    """
    Download the atomic data from the repository

    Parameters
    ----------
    atomic_data_name : str
        if None

    Returns
    -------
        : None
    """
    atomic_repo = get_atomic_repo_config()

    if atomic_data_name is None:
        atomic_data_name = atomic_repo["default"]

    if atomic_data_name not in atomic_repo:
        raise ValueError(
            "Atomic Data name {0} not known".format(atomic_data_name))
    dst_dir = os.path.join(get_data_dir(), "{0}.h5".format(atomic_data_name))
    src_url = atomic_repo[atomic_data_name]["url"]
    logger.info("Downloading atomic data from {0} to {1}".format(
        src_url, dst_dir))
    download_from_url(src_url, dst_dir)
コード例 #2
0
ファイル: util.py プロジェクト: tardis-sn/tardis
def resolve_atom_data_fname(fname):
    """
    Check where if atom data HDF file is available on disk, can be downloaded or does not exist

    Parameters
    ----------
    fname: str
        name or path of atom data HDF file

    Returns
    -------
        : str
        resolved fpath
    """

    if os.path.exists(fname):
        return fname

    fpath = os.path.join(os.path.join(get_data_dir(), fname))
    if os.path.exists(fpath):
        logger.info('Atom Data {0} not found in local path. Exists in TARDIS Data repo {1}'.format(fname, fpath))
        return fpath

    atom_data_name = fname.replace('.h5', '')
    atom_repo_config = get_atomic_repo_config()
    if atom_data_name in atom_repo_config:
        raise IOError('Atom Data {0} not found in path or in TARDIS data repo - it is available as download:\n'
                      'from tardis.io.atom_data import download_atom_data\n'
                      'download_atom_data(\'{1}\')'.format(fname, atom_data_name))

    raise IOError('Atom Data {0} is not found in current path or in TARDIS data repo. {1} is also not a standard known'
                  'TARDIS atom dataset.'.format(fname, atom_data_name))
コード例 #3
0
def download_atom_data(atomic_data_name=None):
    """
    Download the atomic data from the repository

    Parameters
    ----------
    atomic_data_name : str
        if None

    Returns
    -------
        : None
    """
    atomic_repo = get_atomic_repo_config()

    if atomic_data_name is None:
        atomic_data_name = atomic_repo["default"]

    if atomic_data_name not in atomic_repo:
        raise ValueError(f"Atomic Data name {atomic_data_name} not known")

    dst_dir = os.path.join(get_data_dir(), f"{atomic_data_name}.h5")
    src_url = atomic_repo[atomic_data_name]["url"]
    mirrors = atomic_repo[atomic_data_name]["mirrors"]

    logger.info(f"Downloading atomic data from {src_url} to {dst_dir}")
    download_from_url(src_url, dst_dir, mirrors)
コード例 #4
0
def resolve_atom_data_fname(fname):
    """
    Check where if atom data HDF file is available on disk, can be downloaded or does not exist

    Parameters
    ----------
    fname : str
        name or path of atom data HDF file

    Returns
    -------
        : str
        resolved fpath
    """

    if os.path.exists(fname):
        return fname

    fpath = os.path.join(os.path.join(get_data_dir(), fname))
    if os.path.exists(fpath):
        logger.info(
            f"\n\tAtom Data {fname} not found in local path.\n\tExists in TARDIS Data repo {fpath}"
        )
        return fpath

    atom_data_name = fname.replace(".h5", "")
    atom_repo_config = get_atomic_repo_config()
    if atom_data_name in atom_repo_config:
        raise IOError(
            f"Atom Data {fname} not found in path or in TARDIS data repo - it is available as download:\n"
            f"from tardis.io.atom_data import download_atom_data\n"
            f"download_atom_data('{atom_data_name}')"
        )

    raise IOError(
        f"Atom Data {fname} is not found in current path or in TARDIS data repo. {atom_data_name} "
        "is also not a standard known TARDIS atom dataset."
    )
コード例 #5
0
ファイル: atom_web_download.py プロジェクト: tardis-sn/tardis
def download_atom_data(atomic_data_name=None):
    """
    Download the atomic data from the repository
    Parameters
    ----------
    atomic_data_name: str
        if None

    Returns
    -------
        : None

    """
    atomic_repo = get_atomic_repo_config()

    if atomic_data_name is None:
        atomic_data_name = atomic_repo['default']

    if atomic_data_name not in atomic_repo:
        raise ValueError('Atomic Data name {0} not known'.format(atomic_data_name))
    dst_dir = os.path.join(get_data_dir(), '{0}.h5'.format(atomic_data_name))
    src_url = atomic_repo[atomic_data_name]['url']
    logger.info('Downloading atomic data from {0} to {1}'.format(src_url, dst_dir))
    download_from_url(src_url, dst_dir)
コード例 #6
0
ファイル: util.py プロジェクト: zdy0903/tardis
def resolve_atom_data_fname(fname):
    """
    Check where if atom data HDF file is available on disk, can be downloaded or does not exist

    Parameters
    ----------
    fname: str
        name or path of atom data HDF file

    Returns
    -------
        : str
        resolved fpath
    """

    if os.path.exists(fname):
        return fname

    fpath = os.path.join(os.path.join(get_data_dir(), fname))
    if os.path.exists(fpath):
        logger.info(
            'Atom Data {0} not found in local path. Exists in TARDIS Data repo {1}'
            .format(fname, fpath))
        return fpath

    atom_data_name = fname.replace('.h5', '')
    atom_repo_config = get_atomic_repo_config()
    if atom_data_name in atom_repo_config:
        raise IOError(
            'Atom Data {0} not found in path or in TARDIS data repo - it is available as download:\n'
            'from tardis.io.atom_data import download_atom_data\n'
            'download_atom_data(\'{1}\')'.format(fname, atom_data_name))

    raise IOError(
        'Atom Data {0} is not found in current path or in TARDIS data repo. {1} is also not a standard known'
        'TARDIS atom dataset.'.format(fname, atom_data_name))