📄 variable_generate.h
字号:
//Variable_Generate.h
//2003.11.7
//define the random variable generate funtions
#include <stdlib.h>
#include <time.h>
#include <math.h>
#define E 0.000001
#define PIX2 6.2831853072
//void unif_distr(UINT ,int ,float*);
//void exp_distr(UINT ,int ,float*);
//void rili_distr(UINT ,int ,float*);
//void normal_distr(UINT ,int ,float*);
void unif_distr(UINT s,const int num,float* pf)
{
srand(s);
for(int i = 0;i < num;i++)
{
pf[i] =(FLOAT) rand()/RAND_MAX;
}
}
void exp_distr(UINT s,const int num,float* pf)
{
unif_distr(s,num,pf);
for(int i = 0; i < num; i++)
{
if(!pf[i]) pf[i] = pf[i] + (float)E;
pf[i] = -logf(pf[i]);
}
}
void rili_distr(UINT s,const int num,float* pf)
{
exp_distr(s,num,pf);
for(int i = 0; i < num; i++)
{
pf[i] = sqrtf(2*pf[i]);
}
}
void normal_distr(UINT s,const int num,float* pf)
{
rili_distr(s,num,pf);
srand(1);
for(int i = 0; i < num; i++)
{
pf[i] = cosf( (float)PIX2 * (float) rand()/RAND_MAX ) * pf[i];
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -