def get_beam_cache_directory():
    """
    Get a directory where pickled Beam Data can be stored.

    Create that directory, if it doesn't exist.

    Returns
    -------
    str
        Path to the directory
    """
    home = os.path.expanduser("~")
    cache_dir = os.path.join(home, '.hwrt-beam-cache')
    if not os.path.exists(cache_dir):
        os.makedirs(cache_dir)
    return cache_dir