📄 cpp2.cpp
字号:
#include <iostream.h>
#include "dist_radio.h"
#include "matlab_interface.h"
#define NUM_RAD 22
void main(void)
{
DSSS_radio d[NUM_RAD];
DSSS_base_station bs;
int k;
int num_iterations;
double x,y;
double power;
double max = 10;
double *temp_power;
double hf;
double *x_line;
double *x_pos, *y_pos;
double x_plot[2], y_plot[2];
//set initial positions
bs.set_pos(0,0);
x_pos = (double *) calloc(sizeof(double), NUM_RAD);
y_pos = (double *) calloc(sizeof(double), NUM_RAD);
max_power = 20;
target_ber = 0.01;
//random positions, powers for mobiles
for(k=0;k<NUM_RAD;k++)
{
x = rand_double(max) - max/2;
y = rand_double(max) - max/2;
x_pos[k] = x;
y_pos[k] = y;
d[k].set_pos(x,y);
power = rand_double(1.0);
d[k].set_power(power);
d[k].set_spreading_gain(63.0);
bs.add_radio(&d[k]);
}
num_iterations = 600;
bs.set_total_iterations(num_iterations);
bs.set_noise(0.01);
x_line = (double *) calloc(sizeof(double), num_iterations);
for(k=0;k<num_iterations;k++)
{
bs.iterate();
x_line[k] = k;
}
for(k=0;k<NUM_RAD;k++)
{
cout << d[k].get_rcv() << endl;
}
//plot stuff
matlab_figure_handler mi;
mi.spawn_matlab();
hf = mi.create_figure();
x_plot[0] = 0;
y_plot[0] = 0;
for(k=0;k<NUM_RAD;k++)
{
temp_power = d[k].get_power_store();
x_plot[1] = x_pos[k];
y_plot[1] = y_pos[k];
mi.add_line2(x_plot,y_plot,hf,2);
}
//mi.scatter_plot(x_pos,y_pos,NUM_RAD);
hf = mi.create_figure();
for(k=0;k<NUM_RAD;k++)
{
temp_power = d[k].get_power_store();
//temp_power = d[k].get_obj_store();
mi.add_line(x_line,temp_power,hf,num_iterations);
}
mi.set_xlabel("Iteration",hf);
mi.set_ylabel("Power (dB)",hf);
mi.close_matlab();
max_power = 5;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -