magnopy.span_local_rf#
- magnopy.span_local_rf(direction_vector, hybridize=False)[source]#
Spans local right-handed reference frame from the direction vector.
- Parameters:
- direction_vector(3, ) array-like
Direction of the z axis of the local reference frame.
- hybridizebool, default False
If
hybridize == True, then returnsp_alpha, z_alpha.If
hybridize == False, then returnsx_alpha, y_alpha, z_alpha.
- Returns:
- x_alpha(3, ) numpy.ndarray
- y_alpha(3, ) numpy.ndarray
- p_alpha(3, ) numpy.ndarray
p_alpha = x_alpha + 1j * y_alpha.- z_alpha(3, ) numpy.ndarray
See also
Examples
Two special cases are handled as
>>> import magnopy >>> x, y, z = magnopy.span_local_rf([0, 0, 1]) >>> x array([1., 0., 0.]) >>> y array([0., 1., 0.]) >>> z array([0., 0., 1.]) >>> p, z = magnopy.span_local_rf([0, 0, 1], hybridize=True) >>> p array([1.+0.j, 0.+1.j, 0.+0.j]) >>> z array([0., 0., 1.])
>>> import magnopy >>> x, y, z = magnopy.span_local_rf([0, 0, -1]) >>> x array([ 0., -1., 0.]) >>> y array([-1., 0., 0.]) >>> z array([ 0., 0., -1.]) >>> p, z = magnopy.span_local_rf([0, 0, -1], hybridize=True) >>> p array([ 0.-1.j, -1.+0.j, 0.+0.j]) >>> z array([ 0., 0., -1.])
For the arbitrary direction the global reference frame is rotated as a whole
>>> import magnopy >>> x, y, z = magnopy.span_local_rf([1, 1, 1]) >>> x array([ 0.78867513, -0.21132487, -0.57735027]) >>> y array([-0.21132487, 0.78867513, -0.57735027]) >>> z array([0.57735027, 0.57735027, 0.57735027]) >>> p, z = magnopy.span_local_rf([1, 1, 1], hybridize=True) >>> p array([ 0.78867513-0.21132487j, -0.21132487+0.78867513j, -0.57735027-0.57735027j]) >>> z array([0.57735027, 0.57735027, 0.57735027])