Speed of Group

CV2 = (0, 300, 100)
GV2 = (341.79558510779384, 638.7326294093414, 269.1990847858536)
GV = Vector(CV2, GV2)
GH2: (x(GV2), y(GV2), z(CV2))
GV_1 = Vector(CV2, GH2)
alpha: atan2(y(GV_1),x(GV_1))
FollowDistance: 200
a = Sphere(CV2, FollowDistance)
CVI: (x(CV2) + (FollowDistance * cos(alpha)), y(CV2) + (FollowDistance * sin(alpha)), z(GH2))
CS: 200
DirectionDistance: ((x(CV2) - x(CVI))^(2) + (y(CV2) - y(CVI))^(2) + (z(CV2) - z(CVI))^(2))^(0.5)
DV = Vector(CVI, CV2)
DV': (x(DV) / DirectionDistance, y(DV) / DirectionDistance, z(DV) / DirectionDistance)
GDV: (x(CVI) + ((x(DV') * CS) * 2), y(CVI) + ((y(DV') * CS) * 2), z(CVI) + ((z(DV') * CS) * 2))
FlyDistance: ((x(GH2) - x(CV2))^(2) + (y(GH2) - y(CV2))^(2) + (z(GH2) - z(CV2))^(2))^(0.5)
CatchUpSpeed: FlyDistance / 30
GS: 5
u = Vector(GH2, GDV)
Speed: CS + CatchUpSpeed
P: (x(CV2) - x(CVI), y(CV2) - y(CVI), z(CV2) - z(CVI))