code: def getMatrix(self):
          
          if self.mflag:
              m0 = 9.10938215e-31
              e0 = 1.602176487e-19
              c0 = 299792458.0
              rho = np.sqrt(self.gamma ** 2 - 1) * m0 * c0 / self.bend_field / e0
              theta = np.arcsin(self.bend_length / rho)
              self.bangle = theta
  
              m_rb_1 = transRbend(theta, rho, self.gamma, -1)
              m_rb_2 = transRbend(-theta, -rho, self.gamma, 1)
              m_rb_3 = transRbend(-theta, -rho, self.gamma, -1)
              m_rb_4 = transRbend(theta, rho, self.gamma, 1)
              m_df_12 = transDrift(self.dflist[0], self.gamma)
              m_df_23 = transDrift(self.dflist[1], self.gamma)
              m_df_34 = transDrift(self.dflist[2], self.gamma)
  
              self.transM = reduce(np.dot, [m_rb_1, m_df_12, m_rb_2, m_df_23, m_rb_3, m_df_34, m_rb_4])
  
              return self.transM
docs: get transport matrix with ``mflag`` flag,
          if ``mflag`` is True, return calculated matrix, else return unity matrix
  
          :return: transport matrix