class_docstr: A reference frame in classical mechanics.
  
  ReferenceFrame is a class used to represent a reference frame in classical
  mechanics. It has a standard basis of three unit vectors in the frame's
  x, y, and z directions.
  
  It also can have a rotation relative to a parent frame; this rotation is
  defined by a direction cosine matrix relating this frame's basis vectors to
  the parent frame's basis vectors.  It can also have an angular velocity
  vector, defined in another frame.
docstr: DCM for simple axis 1,2,or 3 rotations.
docstr_tok: ["DCM","for","simple","axis","1,2",",","or","3","rotations","."]
code: def _rot(self, axis, angle):
      """DCM for simple axis 1,2,or 3 rotations."""
      if axis == 1:
          return Matrix(
              [
                  [1, 0, 0],
                  [0, cos(angle), -sin(angle)],
                  [0, sin(angle), cos(angle)],
              ]
          )
      elif axis == 2:
          return Matrix(
              [
                  [cos(angle), 0, sin(angle)],
                  [0, 1, 0],
                  [-sin(angle), 0, cos(angle)],
              ]
          )
      elif axis == 3:
          return Matrix(
              [
                  [cos(angle), -sin(angle), 0],
                  [sin(angle), cos(angle), 0],
                  [0, 0, 1],
              ]
          )
  
imports: from sympy import diff, expand, sin, cos, sympify, eye, zeros, ImmutableMatrix, MatrixBase
  from sympy.core.symbol import Symbol
  from sympy.simplify.trigsimp import trigsimp
  from sympy.physics.vector.vector import Vector, _check_vector
  from sympy.utilities.misc import translate
  from warnings import warn
label_desc: Use image node_id 15 for calling the ReferenceFrame obj's underlying member method code with example usage: obj._rot(axis, angle) and returns: Matrix, Matrix, Matrix