def get_solubility(molecular_weight, density):
    """
    Estimate the solubility of each oil pseudo-component
    
    Estimate the solubility (mol/L) of each oil pseudo-component using the
    method from Huibers and Lehr given in the huibers_lehr.py module of
    py_gnome in the directory gnome/utilities/weathering/. This method is from
    Huibers & Katrisky in a 2012 EPA report and was further modified by Lehr
    to better match measured values. The equation used here is adapted to
    return results in mol/L.
    
    Parameters
    ----------
    molecular_weight : np.array
        Molecular weights of each pseudo-component as recorded in the NOAA
        Oil Library (g/mol)
    density : np.array
        Density of each pseudo-component as recorded in the NOAA Oil Library
        (kg/m^3)
    
    Returns
    -------
    solubility : np.array
        Array of solubilities (mol/L) for each pseudo-component of the oil.
    
    """
    return 46.4 * 10. ** (-36.7 * molecular_weight / density)