'Axis rotation is a rotation about an arbitrary axis by
some angle. The angle is supplied as a SymPy expr scalar, and
the axis is supplied as a Vector.
Parameters
name : string
The name of the new coordinate system
angle : Expr
The angle by which the new system is to be rotated
axis : Vector
The axis around which the rotation has to be performed
location : Vector(optional)
The location of the new coordinate system\'s origin wrt this
system\'s origin. If not specified, the origins are taken to
be coincident.
vector_names, variable_names : iterable(optional)
Iterables of 3 strings each, with custom names for base
vectors and base scalars of the new system respectively.
Used for simple str printing.
Examples
>>> from sympy.vector import CoordSys3D
>>> from sympy import symbols
>>> q1 = symbols(\'q1\')
>>> N = CoordSys3D(\'N\')
>>> B = N.orient_new_axis(\'B\', q1, N.i + 2 * N.j)'

def orient_new_axis(self, name, angle, axis, location=None, vector_names=None, variable_names=None):

    orienter = AxisOrienter(angle, axis)
    return self.orient_new(name, orienter, location=location, vector_names=vector_names, variable_names=variable_names)
