def project(position_current, velocity_current, acceleration_current, use_acceleration, delta_t):
    """
    This module estimates the projected position of a particle.

    :param position_current: The position of the particle at time "t". It must be a numpy array.
    :param velocity_current: The velocity of the particle at time "t". It must be a numpy array.
    :param delta_t: Time increment. It must be positive.
    :param use_acceleration: Ignore acceleration if false.
    :return:   (The projected position of the particle at time "t+1". It is a numpy array,
                The projected position variance of the particle at time "t+1". It is a numpy array.)
    """
    if delta_t <= 0:
        raise ValueError('Timestep must be positive')
    if not use_acceleration:
        acceleration_current = 0
    position_projected = (position_current
                          + delta_t * velocity_current
                          + 0.5 * delta_t * delta_t * acceleration_current)

    return position_projected