First time here? Check out the FAQ!

Could a ComplexProduct be used to encode signals with a range larger than -1,1 ?

0 votes
I have run into a situation that is clipping when translated into Kyma's normalised system. Usually, I scale things down and then scale them up again, but in this case, I'd rather try an approach that doesn't lose Bits.

I'm not so advanced in Complex Number maths, but wondered if the ComplexProduct could be used to somehow encode signal values that  might be higher than 1 during a sequence of calculations... I guess its just a day dreaming DSP thought, but maybe inspires something...
asked Feb 24, 2019 in Sound Design by cristian-vogel (Master) (8,140 points)
How big is the range?

I'm wondering if you can split your signal into two (or more) [-1, 0] signals and then recombine them.

1 Answer

0 votes
Unfortunately the answer is no. To simplify things you can think of a complex signal as a 2D signal with a x-value (also called real) and a y-value (also called imaginary). So a complex multiply is just the product of multiplying 2 points. (x1, y1) * (x2, y2) = ((x1*x2 - y1*y2), (x1*y2 + y1*x2)). It doesn't involve anything fancy, the ComplexProduct class is just a little helper to avoid patching all those products and mixers.
answered Feb 25, 2019 by kymaguy (Virtuoso) (10,580 points)
p.s. you could work with the magnitude, because that would be 2 sqrt for a point (1, 1). however, the magnitude object would still clip at 1, so you end up with the same problem you started..
ok got it, thanks for that explanation. Good to find out that the ComplexProduct could be useful for calculating vectors