This is new theoretical and practical work based on 20 odd years of research by Ampsys Electronics, University of Paisley and AUT University Auckland.
You can hear this in many demo wav files at this web address
http://www.speechresearch.co.nz/ampsys.html
What this program simulates is multipath in FM radio. A single path reflection whose amplitude can be varied according to a variable m
which lies from 0 (no multipath) to 1 (100% multipath). We usuall put m=0.9999 since thsi is where Rician type spikes can be seen which are present in the demodulated
baseband output of a PLL (under normal demodulation methods). We can mathematicall prove this - see the paper
Moir,T.J and Pettigrew,A.M, A Multiplicative Cancellation Approach to Multipath
Suppression in FM Radio, Wireless Personal Communications, Published Online Springer, 31/8/2013 DOI 10.1007/s11277-013-1392-5
The circuit (in this case simulation) creates a series of spikes - a special corrective waveform which multiplies the spikey signal from the PLL and reduces its spikes to near zero.
The analogue solution makes use of an Amplitude Locked Loop (ALL) also simulated here. This is used instead of a hard limiter. Limiters only ampligy noise at low carrier to noise ratios.
We also use an automatic gain control (AGC). You can switch on and off the cancellation of the spikes. I have also included a simulation of a related method which does not use an ALL.
This is the software radio approach (again see the above paper). You can also add noise to the composite FM signals and cancel Rician spikes!
The simulation does not behave as well as the real circuit did and the ALL can from time to time jump out of lock when changing certain parameters. if this happens just re-start the program.
We coined the term Supressed-Carrier AM-FM or SCAM because of tha special nature of this kind of signal. You have amplitude variations as well as frequency variations so it behaves like a double-sideband supressed carrier AM waveform BUT with FM on the carrier.
Example code from the Example Code Exchange in the NI Community is licensed with the MIT license.