def quadratic_normal_form_saddlecenter_ham(t, u):
    """
    Hamiltonian for a 2DoF Saddle.
    Functional form: H = 1/2(p_x**2 + p_y**2) + 1/2(y**2 - x**2), with u = (x, y, p_x, p_y).

    Parameters
    ----------
    t : float
        Time. (This Hamiltonian is independent of time.)

    u : ndarray, shape(n,)
        Points in phase space.

    Returns
    -------
    H : ndarray, shape(n,)
        Hamiltonian at points u, in phase space at time t.

    """
    points_positions = u.T[:2]
    points_momenta = u.T[2:4]
    x, y = points_positions
    p_x, p_y = points_momenta
    H = 0.5*(p_x**2 + p_y**2 + y**2 - x**2)
    return H