def dlog(v): x = np.linalg.norm(v) y = trig.specialFun4(x) z = trig.specialFun2(x) I = np.identity(3) S = skew(v) W = v * v.transpose() return y*I - 0.5*S + z*W