code: def spm_hrf(tr, oversampling=16, time_length=32.0, onset=0.0):
      """Implementation of the SPM hrf model
  
      Parameters
      ----------
      tr: float, scan repeat time, in seconds
      oversampling: int, temporal oversampling factor, optional
      time_length: float, hrf kernel length, in seconds
      onset: float, onset of the response
  
      Returns
      -------
      hrf: array of shape(length / tr * oversampling, float),
           hrf sampling on the oversampled time grid
      """
      return _gamma_difference_hrf(tr, oversampling, time_length, onset)
  
file_path: nipy/nipy/modalities/fmri/hemodynamic_models.py
imports: import warnings
  import numpy
  from scipy.stats import gamma
label_desc: Use image node_id 2 for calling a global function with example usage: spm_hrf(tr, oversampling, time_length, onset) and returns: _gamma_difference_hrf