code: def piecewise_rational_quadratic_transform(
      inputs,
      unnormalized_widths,
      unnormalized_heights,
      unnormalized_derivatives,
      inverse=False,
      tails=None,
      tail_bound=1.0,
      min_bin_width=1e-3,
      min_bin_height=1e-3,
      min_derivative=1e-3,
  ):
      if tails is None:
          spline_fn = rational_quadratic_spline
          spline_kwargs = {}
      else:
          spline_fn = unconstrained_rational_quadratic_spline
          spline_kwargs = {"tails": tails, "tail_bound": tail_bound}
  
      outputs, logabsdet = spline_fn(
          inputs=inputs,
          unnormalized_widths=unnormalized_widths,
          unnormalized_heights=unnormalized_heights,
          unnormalized_derivatives=unnormalized_derivatives,
          inverse=inverse,
          min_bin_width=min_bin_width,
          min_bin_height=min_bin_height,
          min_derivative=min_derivative,
          **spline_kwargs,
      )
      return outputs, logabsdet
  
file_path: NeMo/nemo/collections/tts/parts/utils/splines.py
imports: import numpy
  import torch
  import torch.nn.functional
label_desc: Use image node_id 6 for calling a global function with example usage: piecewise_rational_quadratic_transform(inputs, unnormalized_widths, unnormalized_heights, unnormalized_derivatives, inverse, tails, tail_bound, min_bin_width, min_bin_height, min_derivative) and returns: outputs,  logabsdet