Native real-transform adjoints #
Packed complex coordinates use the ordinary real dot product. If w[k] is one at DC/Nyquist
and two at interior frequencies, the adjoints are R* g = n * irfft(g / w) and
I* g = (w / n) * rfft(g). Imaginary endpoint coordinates are zero in either adjoint.
The transforms are linear, so their JVPs apply the same forward transform to the tangent.
Packed weights for a real-transform adjoint, repeated independently for each batch row.
Instances For
Adjoint of the unnormalized real transform for arbitrary packed cotangents.
The weights compensate for the conjugate pairs inserted by the normalized inverse. Both the temporary weights and weighted spectrum are released after the inverse has consumed them.
Instances For
Adjoint of the normalized inverse, including exact zero imaginary endpoint gradients.