Main Content

doppler

Construct Doppler spectrum structure

Description

s = doppler(specType) constructs a Doppler spectrum structure of type specType for use with a fading channel System object. The returned structure, s, has default values for its dependent fields.

example

s = doppler(specType, fieldValue) constructs a Doppler spectrum structure of type specType for use with a fading channel System object. The returned structure, s, has its dependent field specified to fieldValue.

example

s = doppler('BiGaussian', Name,Value) constructs a BiGaussian Doppler spectrum structure for use with a fading channel System object. The returned structure, s, has dependent fields specified by Name,Value pair arguments.

example

Examples

collapse all

Construct a flat Doppler structure variable for use with channel objects such as comm.RayleighChannel.

Invoke the doppler function to create a flat Doppler structure variable.

s = doppler('Flat')
s = struct with fields:
    SpectrumType: 'Flat'

Use the doppler function to create a Doppler structure variable having the Bell spectrum.

s = doppler('Bell')
s = struct with fields:
    SpectrumType: 'Bell'
     Coefficient: 9

Specify the coefficients of the Doppler spectrum structure variable.

Construct a Rounded Doppler spectrum structure with coefficients a0, a2, and a4 set to 2, 6, and 1, respectively.

s = doppler('Rounded', [2, 6, 1])
s = struct with fields:
    SpectrumType: 'Rounded'
      Polynomial: [2 6 1]

Use the doppler function to create a Doppler spectrum structure with the parameters specified for a BiGaussian spectrum.

s = doppler('BiGaussian','NormalizedCenterFrequencies', ...
    [.1 .85],'PowerGains',[1 2])
s = struct with fields:
                    SpectrumType: 'BiGaussian'
    NormalizedStandardDeviations: [0.7071 0.7071]
     NormalizedCenterFrequencies: [0.1000 0.8500]
                      PowerGains: [1 2]

The NormalizedStandardDeviations field is set to the default value. The NormalizedCenterFrequencies, and PowerGains fields are set to the values specified from the input arguments.

Input Arguments

collapse all

The spectrum type of a Doppler spectrum structure for use with a fading channel System object. Specify this value as a character vector.

The analytical expression for each Doppler spectrum type is described in the Algorithms section.

Data Types: char

The value of the dependent field of the Doppler spectrum structure, specified as a scalar or vector of built-in data type. If you do not specify fieldValue , the dependent fields of the spectrum type use the default values.

Spectrum TypeDependent FieldDescriptionDefault Value
Jakes
Flat
RoundedPolynomial1-by-3 vector of real finite values, representing the polynomial coefficients, a0, a2 and a4[1 -1.72 0.785]
BellCoefficientNonnegative, finite, real scalar representing the Bell spectrum coefficient9
Asymmetric JakesNormalizedFrequencyInterval1-by-2 vector of real values between –1 and 1, inclusive, representing the minimum and maximum normalized Doppler shifts[0 1]
Restricted JakesNormalizedFrequencyInterval1-by-2 vector of real values between 0 and 1, inclusive, representing the minimum and maximum normalized Doppler shifts[0 1]
GaussianNormalizedStandardDeviationNormalized standard deviation of the Gaussian Doppler spectrum, specified as a positive, finite, real scalar0.7071
BiGaussianNormalizedStandardDeviationsNormalized standard deviations of the BiGaussian Doppler spectrum, specified as a positive, finite, real 1-by-2 vector[0.7071 0.7071]
NormalizedCenterFreqenciesNormalized center frequencies of the BiGaussian Doppler spectrum specified as a real 1-by-2 vector whose elements fall between –1 and 1[0 0]
PowerGainsLinear power gains of the BiGaussian Doppler spectrum specified as a real nonnegative 1-by-2 vector[0.5 0.5]

Data Types: double

Name-Value Arguments

Specify optional pairs of arguments as Name1=Value1,...,NameN=ValueN, where Name is the argument name and Value is the corresponding value. Name-value arguments must appear after other arguments, but the order of the pairs does not matter.

Before R2021a, use commas to separate each name and value, and enclose Name in quotes.

Example: s=doppler('BiGaussian', 'NormalizedStandardDeviations', [.8 .75], 'NormalizedCenterFrequencies', [-.8 0], 'PowerGains', [.6 .6])

The normalized standard deviation of the first and second Gaussian functions. You can specify this value as a 1-by-2 positive numeric vector, of built-in data types.

When you do not specify this dependent field, the default value is [1/sqrt(2) 1/sqrt(2)].

Data Types: double

The normalized center frequencies of the first and second Gaussian functions. You can specify this value as a 1-by-2 numeric vector of real values between –1 and 1, of built-in data types.

When you do not specify this dependent field, the default value is [0 0].

Data Types: double

The power gains of the first and second Gaussian functions. You can specify this value as a 1-by-2 nonnegative numeric vector of built-in data types.

When you do not specify this dependent field, the default value is [0.5 0.5].

Data Types: double

Algorithms

collapse all

The following algorithms represent the analytical expressions for each Doppler spectrum type. In each case, fd denotes the maximum Doppler shift (MaximumDopplerShift property) of the associated fading channel System object.

Jakes

The theoretical Jakes Doppler spectrum, S(f) has the analytic formula

S(f)=1πfd1(f/fd)2, |f|fd

Flat

The theoretical Flat Doppler spectrum, S(f) has the analytic formula

S(f)=12fd|f|fd

Rounded

The theoretical Rounded Doppler spectrum, S(f) has the analytic formula

S(f)=Cr[a0+a2(ffd)2+a4(ffd)4]|f|fd

where

Cr=12fd[a0+a23+a45]

and you can specify [a0, a2, a4] in the dependent field, polynomial.

Bell

The theoretical Bell Doppler spectrum, S(f) has the analytic formula

S(f)=Cb1+A(ffd)2

|f|fd

where

Cb=Aπfd

You can specify A in the dependent field, coefficient.

Asymmetric Jakes

The theoretical Asymmetric Jakes Doppler spectrum, S(f) has the analytic formula

S(f)=Aaπfd1(f/fd)2,  fdfminffmaxfdAa=11π[sin1(fmaxfd)sin1(fminfd)]

where you can specify fmin/ fd andfmax /fd in the dependent field, NormalizedFrequencyInterval.

Restricted Jakes

The theoretical Restricted Jakes Doppler spectrum, S(f) has the analytic formula

S(f)=Arπfd1(f/fd)2, 0fmin|f|fmaxfd

where

Ar=12π[sin1(fmaxfd)sin1(fminfd)]

where you can specify fmin/ fd andfmax /fd in the dependent field, NormalizedFrequencyInterval.

Gaussian

The theoretical Gaussian Doppler spectrum, S(f) has the analytic formula

SG(f)=12πσG2exp(f22σG2)

You can specify σG/fd in the dependent field, NormalizedStandardDeviation.

BiGaussian

The theoretical BiGaussian Doppler spectrum, S(f) has the analytic formula

SG(f)=AG[CG12πσG12exp((ffG1)22σG12)+CG22πσG22exp((ffG2)22σG22)]

where AG=1CG1+CG2 is a normalization coefficient.

You can specify σG1/fd and σG2/fd in the NormalizedStandardDeviations dependent field.

You can specify fG1/fd and fG2/fd in the NormalizedCenterFrequencies dependent field.

CG1 and CG2 are power gains that you can specify in the PowerGains dependent field.

Extended Capabilities

Version History

Introduced in R2007a