def get_f_H_2(region, direction, y1, y2, z):
    """開口部の暖房期の取得日射熱補正係数(面する方位に応じた求め方) (2)

    Args:
      region(int): 省エネルギー地域区分
      direction(str): 外皮の部位の方位
      y1(float): 日除け下端から一般部及び大部分がガラスで構成されていないドア等の開口部の上端までの垂直方向距離 (mm)
      y2(float): 一般部及び大部分がガラスで構成されていないドア等の開口部の高さ寸法 (mm)
      z(float): 壁面からの日除けの張り出し寸法（軒等の出寸法は壁表面から先端までの寸法とする）(mm)

    Returns:
      float: 開口部の暖房期の取得日射熱補正係数

    """
    if region in [1, 2, 3, 4, 5, 6, 7]:
        if direction in ['南東', '南', '南西']:
            # 暖房期における1地域から7地域までの南東面・南面・南西面 (2a)
            f_H = min(0.01 * (5 + 20 * (3 * y1 + y2) / z), 0.72)
        else:
            # 暖房期における1地域から7地域までの南東面・南面・南西面以外 (2b)
            f_H = min(0.01 * (10 + 15 * (2 * y1 + y2) / z), 0.72)
    elif region in [8]:
        return None
    else:
        raise ValueError(region)

    return f_H