code: def diff2eigenvectors(dx, dy, dz):
      """numerical derivatives 2 eigenvectors"""
      basis = np.eye(3)
      u = np.array([dx, dy, dz])
      u = u / np.linalg.norm(u)
      R = vec2vec_rotmat(basis[:, 0], u)
      eig0 = u
      eig1 = np.dot(R, basis[:, 1])
      eig2 = np.dot(R, basis[:, 2])
      eigs = np.zeros((3, 3))
      eigs[:, 0] = eig0
      eigs[:, 1] = eig1
      eigs[:, 2] = eig2
      return eigs, R
  
file_path: dipy/dipy/sims/phantom.py
imports: import numpy
  from dipy.sims.voxel import single_tensor, diffusion_evals
  import dipy.sims.voxel
  from dipy.core.geometry import vec2vec_rotmat
  from dipy.data import get_fnames
  from dipy.core.gradients import gradient_table
label_desc: Use image node_id 2 for calling a global function with example usage: diff2eigenvectors(dx, dy, dz) and returns: eigs,  R