Initialization of a waveform object

Calling sequence

wf = wf_init('bpsk')
wf = wf_init('qpsk')
wf = wf_init('8psk')
wf = wf_init('psk'[,M=2])
wf = wf_init('oqpsk')
wf = wf_init('fsk'[,M=2,index=0.5,filt='n',BT=0.8])
wf = wf_init('gfsk'[,index=0.5])
wf = wf_init('gmsk')
wf = wf_init('msk')
wf = wf_init('ask'[,M=2,K1=-1,K2=2/(M-1)])
wf = wf_init('ook')
wf = wf_init('qam',M)



Output waveform object


Number of possible symbols (number of bits per symbol is ). Default value is 2 (1 bit / symbol).


Modulation index for FSK modulations (ratio between excursion and symbol frequency). Default value is 0.5 (e.g. MSK)


A waveform object is the theorical description of a waveform. It can be used to configure a modulator or a demodulator, or to plot a constellation diagram. By default, the pulse shaping filter for the waveform is NRZ. This can be changed afterwards using the wf_set_filter function.

Support the following modulation types: phase modulations (BPSK, QPSK, M-PSK), amplitude modulations (ASK / OOK), quadrature phase / amplitude modulations (QAM), frequency modulations (M-FSK, with or without gaussian filtering).


wf = wf_init('qam64');
clf(); plot_const(wf);

QAM64 constellation