<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _align_monomer(self, monomer, mon_vector, move_direction):
 """ rotate the monomer so that it is aligned along the move direction Args: monomer (Molecule) mon_vector (numpy.array):
 molecule vector that starts from the start atom index to the end atom index move_direction (numpy.array):
 the direction of the polymer chain extension """

        axis = np.cross(mon_vector, move_direction)
        origin = monomer[self.start].coords
        angle = get_angle(mon_vector, move_direction)
        op = SymmOp.from_origin_axis_angle(origin, axis, angle)
        monomer.apply_operation(op)