docs: def transitions(self, omega_min=None, omega_max=None):
          r"""Find all allowed transitions.
  
          This function finds all allowed transitions (by electric-dipole
          selection rules) in the atom.
  
          >>> atom=Atom("Rb",85)
          >>> transitions=atom.transitions()
          >>> print(len(transitions))
          270
  
          Arguments omega_min and omega_max can be used to make filter out the
          results.
  
          >>> from scipy.constants import c
          >>> wavelength_min=770e-9
          >>> wavelength_max=790e-9
          >>> omega_min=2*pi*c/wavelength_max
          >>> omega_max=2*pi*c/wavelength_min
  
          >>> easy_transitions=atom.transitions(omega_min=omega_min,
          ...                                   omega_max=omega_max)
          >>> for ti in easy_transitions:
          ...     print("{} {}".format(abs(ti.wavelength)*1e9, ti))
          780.241476935 85Rb 5S_1/2 -----> 85Rb 5P_3/2
          776.157015322 85Rb 5P_3/2 -----> 85Rb 5D_3/2
          775.978619616 85Rb 5P_3/2 -----> 85Rb 5D_5/2
  
          """
          states = self.states()
          transitions = states
          transitions = []
          for i in range(len(states)):
              si = states[i]
              for j in range(i):
                  sj = states[j]
                  t = Transition(sj, si)
                  if t.allowed:
                      transitions += [t]
  
          if omega_min is not None:
              transitions = [ti for ti in transitions
                             if abs(ti.omega) >= omega_min]
          if omega_max is not None:
              transitions = [ti for ti in transitions
                             if abs(ti.omega) <= omega_max]
  
          return transitions