Archived
See update notes:
This commit is contained in:
1 parent
a3fb64a657
commit
8059c482e3
13 files changed
+387
-118
No files matched your search
@@ -237,6 +237,7 @@ typedef struct nav_body{//Body data of file of nav: GPS BeiDou Galileo GLONASS
|
||||
typedef struct obs_head{//Header data of file of obs
|
||||
double ver;
|
||||
char type[30];
|
||||
char marker[10];
|
||||
|
||||
double apX;
|
||||
double apY;
|
||||
|
||||
@@ -603,6 +603,10 @@ void read_o_h(FILE* fp_obs, pobs_head obs_h)
|
||||
strncpy(obs_h->type, buff + 20, 30);
|
||||
continue;
|
||||
}
|
||||
else if (strstr(lable, "MARKER NAME")) {
|
||||
strncpy(obs_h->marker, buff + 0, 10);
|
||||
continue;
|
||||
}
|
||||
else if (strstr(lable, "APPROX POSITION XYZ")) {
|
||||
obs_h->apX = strtonum(buff, 0, 14);
|
||||
obs_h->apY = strtonum(buff, 0 + 14, 14);
|
||||
|
||||
+4
-2
@@ -286,7 +286,7 @@ int sat_pos_cal(pobs_head obs_h, pobs_epoch obs_e, pobs_body obs_b,
|
||||
break;
|
||||
case GAL:
|
||||
obs.Per1[k] = obs_b->obs_gal[j][code2type(C1, obs_h->obstypenum_gal, obs_h->obscode_gal)];
|
||||
obs.Per2[k] = obs_b->obs_gal[j][code2type(C2, obs_h->obstypenum_gal, obs_h->obscode_gal)];
|
||||
obs.Per2[k] = obs_b->obs_gal[j][code2type(C6, obs_h->obstypenum_gal, obs_h->obscode_gal)];
|
||||
obs.freq1 = FREQ1; obs.freq2 = FREQ6;
|
||||
break;
|
||||
case GLO:
|
||||
@@ -325,7 +325,9 @@ int sat_pos_cal(pobs_head obs_h, pobs_epoch obs_e, pobs_body obs_b,
|
||||
stop++;
|
||||
}solution(solu, obs_h, ap_X, ap_Y, ap_Z);
|
||||
}
|
||||
else;
|
||||
else {
|
||||
fprintf(solu,"\nRec:insufficient quantity of sat, sat=%d",k);
|
||||
}
|
||||
free(in_lsq.l); free(in_lsq.m); free(in_lsq.n); free(in_lsq.o);
|
||||
free(in_lsq.B); free(in_lsq.P); free(in_lsq.L);
|
||||
return 1;
|
||||
|
||||
+5
-3
@@ -35,7 +35,7 @@ static double trosaastamoinen(pobs_head obs_h, double elev)
|
||||
return dtrop;
|
||||
}
|
||||
/*Tropshere correction with hopfiled model*/
|
||||
static double trohopfiled(pobs_head obs_h, double elev)
|
||||
static double trohopfield(pobs_head obs_h, double elev)
|
||||
{
|
||||
double P0, e0, T0, deltaSd, deltaSw, dtropd, dtropw, dtrop;
|
||||
double B = obs_h->apB, L = obs_h->apL, H = obs_h->apH;
|
||||
@@ -99,7 +99,7 @@ static double restcorr(pobs_head obs_h, acct_obs obs, int ionopt, int tropopt,
|
||||
}
|
||||
switch (tropopt) {
|
||||
case 0:break;
|
||||
case 1:dtrop = trohopfiled(obs_h, elev); break;
|
||||
case 1:dtrop = trohopfield(obs_h, elev); break;
|
||||
case 2:dtrop = trosaastamoinen(obs_h, elev); break;
|
||||
}
|
||||
P = P - diono - dtrop;
|
||||
@@ -139,7 +139,8 @@ stations designmat(pobs_head obs_h, acct_obs obs,
|
||||
R = sqrt(
|
||||
pow(l[i] - X, 2) +
|
||||
pow(m[i] - Y, 2) +
|
||||
pow(n[i] - Z, 2));
|
||||
pow(n[i] - Z, 2)
|
||||
);
|
||||
B[i + satnum * 0] = -(l[i] - X) / R;
|
||||
B[i + satnum * 1] = -(m[i] - Y) / R;
|
||||
B[i + satnum * 2] = -(n[i] - Z) / R;
|
||||
@@ -167,6 +168,7 @@ FILE* headerout(pobs_head obs_h,
|
||||
fclose(result_file_clear);
|
||||
FILE* result_file = fopen(res_path, "a+");
|
||||
fprintf(result_file, ">GENERATE PROGRAM : KNZ_GeoTrackLab ver%s\n", KNZ_GTL_VER);
|
||||
fprintf(result_file, " GENERATE SOURCE : %.10s\n", obs_h->marker);
|
||||
fprintf(result_file, " GENERATE TYPE : Satellite Position\n");
|
||||
fprintf(result_file, " GENERATE TIME : %s", ctime(&gen_time));
|
||||
fprintf(result_file, " OBS FILE PATH : %s\n", obs_path);
|
||||
|
||||
Reference in new issue
Block a user