code: def get_sof_term(self, C, rup):
          
          if rup.rake <= -45.0 and rup.rake >= -135.0:
              # Normal faulting
              return C["FN_UM"]
          elif rup.rake > 45.0 and rup.rake < 135.0:
              # Reverse faulting
              return C["FRV_UM"]
          else:
              # No adjustment for strike-slip faulting
              return 0.0
docs: In the case of the upper mantle events separate coefficients
          are considered for normal, reverse and strike-slip