add function for forward mdling using meshtool3d mesh and phy files

This commit is contained in:
kiciollo
2019-09-12 18:55:37 +08:00
parent ab2a765c91
commit 716939c93a
31 changed files with 289 additions and 227 deletions

View File

@@ -10,18 +10,18 @@ int GM3D::ForwardDeltaTx(char* noise_level,char* mag_para){
double R222,R122,R212,R112,R221,R121,R211,R111;
double G222,G122,G212,G112,G221,G121,G211,G111;
//初始化正演值和不确定度
//<EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ<EFBFBD>Ͳ<EFBFBD>ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
for (int i = 0; i < obs_num_; i++){
obs_p_[i].val = obs_p_[i].dev = 0.0;
}
//确定噪声水平
//ȷ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮƽ
double noise_mean, noise_dev, temp_noise;
if (2 != sscanf(noise_level,"%lf/%lf",&noise_mean,&noise_dev)){
noise_mean = noise_dev = 0.0;
}
//确定磁化参数
//ȷ<EFBFBD><EFBFBD><EFBFBD>Ż<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (4 != sscanf(mag_para,"%lf/%lf/%lf/%lf",&I0,&A0,&I,&A)){
I0 = I = 90; A0 = A = 0;
}
@@ -39,7 +39,7 @@ int GM3D::ForwardDeltaTx(char* noise_level,char* mag_para){
k6=-sin(I0)*sin(I);
}
//添加高斯噪声值
//<EFBFBD><EFBFBD><EFBFBD>Ӹ<EFBFBD>˹<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֵ
default_random_engine generator;
normal_distribution<double> dist(noise_mean, noise_dev);