@classmethod
def preload_SAM(cls, h5_path, sites, unscale=True, str_decode=True, tech=
    'pv', clearsky=False, downscale=None, means=False):
    """
        Pre-load project_points for SAM

        Parameters
        ----------
        h5_path : str
            Path to directory containing multi-file resource file sets.
            Available formats:
                /h5_dir/
                /h5_dir/prefix*suffix
        sites : list
            List of sites to be provided to SAM
        unscale : bool
            Boolean flag to automatically unscale variables on extraction
        str_decode : bool
            Boolean flag to decode the bytestring meta data into normal
            strings. Setting this to False will speed up the meta data read.
        tech : str, optional
            Technology to be run by SAM, by default 'pv'
        clearsky : bool
            Boolean flag to pull clearsky instead of real irradiance
        downscale : NoneType | str
            Option for NSRDB resource downscaling to higher temporal
            resolution. Expects a string in the Pandas frequency format,
            e.g. '5min'.
        means : bool
            Boolean flag to compute mean resource when res_array is set

        Returns
        -------
        SAM_res : SAMResource
            Instance of SAMResource pre-loaded with Solar resource for sites
            in project_points
        """
    with cls(h5_path, unscale=unscale, str_decode=str_decode) as res:
        SAM_res = res._preload_SAM(sites, tech=tech, clearsky=clearsky,
            downscale=downscale, means=means)
    return SAM_res
