def solow_model(t, k, g, n, s, alpha, delta):
    """
    Equation of motion for capital stock (per unit effective labor).

    Parameters
    ----------
    t : float
        Time
    k : ndarray (float, shape=(1,))
        Capital stock (per unit of effective labor)
    g : float
        Growth rate of technology.
    n : float
        Growth rate of the labor force.
    s : float
        Savings rate. Must satisfy `0 < s < 1`.
    alpha : float
        Elasticity of output with respect to capital stock. Must satisfy
        :math:`0 < alpha < 1`.
    delta : float
        Depreciation rate of physical capital. Must satisfy :math:`0 < \delta`.

    Returns
    -------
    k_dot : ndarray (float, shape(1,))
        Time derivative of capital stock (per unit effective labor).

    """
    k_dot = s * k**alpha - (g + n + delta) * k
    return k_dot