docs: def get_median_mag(self, area, rake):
          """
          Return magnitude (Mw) given the area and rake.
  
          Setting the rake to ``None`` causes their "All" rupture-types
          to be applied.
  
          :param area:
              Area in square km.
          :param rake:
              Rake angle (the rupture propagation direction) in degrees,
              from -180 to 180.
          """
          assert rake is None or -180 <= rake <= 180
          if rake is None:
              # their "All" case
              return 4.07 + 0.98 * log10(area)
          elif (-45 <= rake <= 45) or (rake > 135) or (rake < -135):
              # strike slip
              return 3.98 + 1.02 * log10(area)
          elif rake > 0:
              # thrust/reverse
              return 4.33 + 0.90 * log10(area)
          else:
              # normal
              return 3.93 + 1.02 * log10(area)