Thierry is absolutely correct here..
In order to do any pre-mixer wave shaping, all the harmonics required in the output (audio) waveform must be available in BOTH waveforms being fed into the (heterodyning) mixer.. The quantity (amplitude) of any particular harmonic appearing in the output (audio) waveform will never exceed the LOWEST level of that particular harmonic which is available from either input waveform.
Possibly the simplest way to modify output waveform harmonics is to have one oscillator (say the reference oscillator) having a waveform with high harmonic content, and then changing the other "pitch" oscillator waveform's waveshape..
For example - If the reference waveshape is a ramp, it will contain both odd and even harmonics - the amplitude of each harmonic = 1/harmonic number.. so the fundamental (1/1) will have reletive amplitude of 1, 2nd harmonic will have reletive amplitude of 1/2 (0.5).. 3rd have 1/3 (0.333) etc...
Now, with this waveform being fed to one input of the mixer, changes in the waveshape (harmonic content) of the other oscillator will always have an effect on the output waveform - so one can change the output waveform quite simply by changing the waveform of a single oscillator.... HOWEVER.. One is still limited to the harmonic spectrum available in a ramp waveform.. One could not produce a square wave on the output even if the waveshape of the 'pitch' oscillator was a square wave.. What one would get would be an output waveform containing odd harmonics only, but where the amplitude of these harmonics followed those of the ramp waveform (this is a really pleasing waveform to my ears, but it is not a square wave.. if you want a square wave, you cannot get it).. This is why I have been playing with a switchable reference waveshape - ramp, square and triangle.. it also allows rapid changing of output tone, as one can quickly eliminate even harmonics by switching to a square reference.
I think it should be possible to create a 'reference' waveform which would cater for all possible waveshapes - I have not tried this, or even simulated it - but if one had a waveform with a series of all harmonics at equal amplitude, this should work..?.. BUT... There could be huge problems.. the peak amplitudes of such a wave shape could be huge, even if one was able to generate it.
[b]edit>>[/b][i] I have just run some simulations mixing 1V sine generators for 16 harmonics - the output waveform is quite complex - resembling a "pulse" waveform (in fact, the 'pulse' is more like a single cycle HF sine.. with other components between the pulses...) [/i]
see WAVEFORM (http://www.therasynth.com/assets/images/harmonics1.GIF) [i]
The pulse amplitude will be a problem, as it goes from +Ve to -Ve supply (+/-12V).. One would need a mixer which could cope with these amplitudes, or attenuate both this and the other waveform suitably, with the consequential degradation of signal quality.. Also, great care would be needed in producing and coupling this HF pulse waveform, as it could radiate like hell)[/i]
Fred Mundell
Fundamental Designs Ltd.
Electronics Consultant.
<- See Profile Image for Email.
Designer of Theremins and other alternative electronic music controllers and instruments.