new vector calculation method