|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectedu.cmu.emulator.signal.GeoFadingSpectrum
public class GeoFadingSpectrum
Generate Doppler power spectrum Model: Geometrical Model for V2V - Cheng Assumptions: - Model road-side obstacles only - Similar (no) delay for all reflected path
| Field Summary | |
|---|---|
protected double |
d_s
Roadside scatterers distance |
protected double |
d0
Reference distance |
protected double |
dc
Two-ray cross-over distance d_c |
protected double |
density
|
protected double |
dtr
Tx-Rx distance |
static double |
fcarrier_GHz
Carrier Frequency |
protected double |
fm
Maximum Doppler frequency |
protected double[][] |
fSpec
Doppler Spectrum |
protected double[][] |
fSpecI
Interpolated doppler spectrum at given freq points |
protected Logger |
log
|
protected int |
N
Frequency Samples |
protected Antenna |
receiver
Receiver |
protected double[][] |
rho
Roadside Object Density |
protected Antenna |
transmitter
Trasmitter |
protected double |
V_min
Minimum Speed |
protected double |
V_rx
Rx speed |
protected double |
V_tx
Tx speed |
| Constructor Summary | |
|---|---|
GeoFadingSpectrum(Antenna srcAntenna,
Antenna destAntenna)
Constructor. |
|
GeoFadingSpectrum(String specName,
int samples)
Constructor for manual use. |
|
| Method Summary | |
|---|---|
protected double[] |
gen_Sf(double theta)
Calculate frequency shift, response and power density at given angle |
void |
genDopperSpectrum(double R_tx,
double d_tr,
double rho)
Generate Doppler Spectrum using speed Ratio and default MAX_SPEED |
void |
genDopplerSpectrum()
Generate Doppler Spectrum using default parameters |
void |
genDopplerSpectrum(double v_tx,
double v_rx,
double d_tr,
double rho)
Generate Doppler Spectrum for given set of parameters |
protected double |
get_density(double theta)
Calculate scatterer density at angle theta |
double |
getDMDistance(double d)
Calculate the dual-mode distance |
protected double[][] |
getFadingSpectrum()
Get (frequency shift) Interpolated Doppler Spectrum |
protected double[][] |
getFadingSpectrumOriginal()
Get Original Doppler Spectrum/Power Density |
protected double |
interp_lin(double f1,
double f2,
double Sf1,
double Sf2,
double f)
Estimate power density at given frequency shift f Mathod 1: linear interpolation |
protected double[] |
interp_poly(double[] f0,
double[] Sf0,
double[] f,
int power)
Estimate power density at given frequency shift f points Method 2: Spline interpolation |
protected void |
interpolateSpectrum()
Interpolate Spectrum at desired frequency shift points |
static void |
main(String[] args)
|
protected void |
show(String name,
double value)
for debug: check parameter values |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected Antenna transmitter
protected Antenna receiver
protected double V_tx
protected double V_rx
protected double V_min
protected double dtr
protected double fm
protected int N
protected double[][] rho
protected double density
public static final double fcarrier_GHz
protected double d0
protected double dc
protected double d_s
protected double[][] fSpec
protected double[][] fSpecI
protected Logger log
| Constructor Detail |
|---|
public GeoFadingSpectrum(Antenna srcAntenna,
Antenna destAntenna)
public GeoFadingSpectrum(String specName,
int samples)
| Method Detail |
|---|
public void genDopplerSpectrum()
public void genDopperSpectrum(double R_tx,
double d_tr,
double rho)
public void genDopplerSpectrum(double v_tx,
double v_rx,
double d_tr,
double rho)
protected void show(String name,
double value)
protected double[] gen_Sf(double theta)
theta - scatterer at angle theta with respect to receiver
protected double get_density(double theta)
theta - angle with respect to receiver
public double getDMDistance(double d)
d - original distance
protected void interpolateSpectrum()
protected double interp_lin(double f1,
double f2,
double Sf1,
double Sf2,
double f)
f1 - frequency shift f1f2 - frequency shift f2Sf1 - power density Sf1Sf1 - power density Sf2f - given frequency shift f
protected double[] interp_poly(double[] f0,
double[] Sf0,
double[] f,
int power)
f0 - array of frequency shift f0Sf0 - array of power density Sf0. the length should match with f0f - array of desired shift pings fpower - polynomial order. In general 3 (cubic) gives the best trade-off
protected double[][] getFadingSpectrumOriginal()
protected double[][] getFadingSpectrum()
public static void main(String[] args)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||