Changeset 2670 in ntrip
- Timestamp:
- Nov 12, 2010, 10:25:48 AM (14 years ago)
- Location:
- trunk/BNC
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
TabularUnified trunk/BNC/bncmodel.cpp ¶
r2650 r2670 724 724 epoData->satDataGlo) != 0); 725 725 726 // Remember the Epoch-specific Results for the computation of means 727 // ---------------------------------------------------------------- 728 pppPos* newPos = new pppPos; 729 newPos->time = epoData->tt; 730 _posAverage.push_back(newPos); 731 726 732 // Set Solution Vector 727 733 // ------------------- … … 745 751 } 746 752 else if (par->type == bncParam::TROPO) { 753 double aprTrp = delay_saast(M_PI/2.0); 747 754 strB << "\n trp = " << par->prn.toAscii().data() 748 << setw(7) << setprecision(3) << delay_saast(M_PI/2.0)<< " "755 << setw(7) << setprecision(3) << aprTrp << " " 749 756 << setw(6) << setprecision(3) << showpos << par->xx << noshowpos 750 757 << " +- " << setw(6) << setprecision(3) 751 758 << sqrt(_QQ(par->index,par->index)); 759 newPos->xnt[6] = aprTrp + par->xx; 752 760 } 753 761 } … … 755 763 _log += strB.str().c_str(); 756 764 emit newMessage(_log, false); 757 758 765 759 766 // Final Message (both log file and screen) … … 780 787 xyzRef[2] = settings.value("pppRefCrdZ").toDouble(); 781 788 782 pppPos* newPos = new pppPos; 783 newPos->time = epoData->tt; 784 newPos->xn[0] = x() - xyzRef[0]; 785 newPos->xn[1] = y() - xyzRef[1]; 786 newPos->xn[2] = z() - xyzRef[2]; 789 newPos->xnt[0] = x() - xyzRef[0]; 790 newPos->xnt[1] = y() - xyzRef[1]; 791 newPos->xnt[2] = z() - xyzRef[2]; 787 792 788 793 double ellRef[3]; 789 794 xyz2ell(xyzRef, ellRef); 790 xyz2neu(ellRef, newPos->xn, &newPos->xn[3]); 795 xyz2neu(ellRef, newPos->xnt, &newPos->xnt[3]); 791 796 792 797 strC << " NEU " 793 << setw(8) << setprecision(3) << newPos->xn[3] << " " 794 << setw(8) << setprecision(3) << newPos->xn[4] << " " 795 << setw(8) << setprecision(3) << newPos->xn[5]; 796 797 _posAverage.push_back(newPos); // remember for the computation of mean 798 << setw(8) << setprecision(3) << newPos->xnt[3] << " " 799 << setw(8) << setprecision(3) << newPos->xnt[4] << " " 800 << setw(8) << setprecision(3) << newPos->xnt[5]; 801 798 802 } 799 803 … … 814 818 // Compute the Mean 815 819 // ---------------- 816 ColumnVector mean( 6); mean = 0.0;820 ColumnVector mean(7); mean = 0.0; 817 821 818 822 QMutableVectorIterator<pppPos*> it(_posAverage); … … 824 828 } 825 829 else { 826 for (int ii = 0; ii < 6; ++ii) {827 mean[ii] += pp->xn[ii]; 830 for (int ii = 0; ii < 7; ++ii) { 831 mean[ii] += pp->xnt[ii]; 828 832 } 829 833 } … … 838 842 // Compute the Deviation 839 843 // --------------------- 840 ColumnVector std( 6); std = 0.0;844 ColumnVector std(7); std = 0.0; 841 845 QVectorIterator<pppPos*> it2(_posAverage); 842 846 while (it2.hasNext()) { 843 847 pppPos* pp = it2.next(); 844 for (int ii = 0; ii < 6; ++ii) {845 std[ii] += (pp->xn[ii] - mean[ii]) * (pp->xn[ii] - mean[ii]); 846 } 847 } 848 for (int ii = 0; ii < 6; ++ii) {848 for (int ii = 0; ii < 7; ++ii) { 849 std[ii] += (pp->xnt[ii] - mean[ii]) * (pp->xnt[ii] - mean[ii]); 850 } 851 } 852 for (int ii = 0; ii < 7; ++ii) { 849 853 std[ii] = sqrt(std[ii] / nn); 850 854 } … … 869 873 << setw(6) << setprecision(3) << std[4] << " " 870 874 << setw(14) << setprecision(3) << mean[5] << " +- " 871 << setw(6) << setprecision(3) << std[5] << endl;875 << setw(6) << setprecision(3) << std[5]; 872 876 873 877 emit newMessage(QByteArray(strE.str().c_str()), true); 878 879 ostringstream strF; strF.setf(ios::fixed); 880 strF << _staID.data() << " AVE-TRP " 881 << epoData->tt.timestr(1) << " " 882 << setw(13) << setprecision(3) << mean[6] << " +- " 883 << setw(6) << setprecision(3) << std[6] << endl; 884 885 emit newMessage(QByteArray(strF.str().c_str()), true); 874 886 } 875 887 } -
TabularUnified trunk/BNC/bncmodel.h ¶
r2649 r2670 99 99 class pppPos { 100 100 public: 101 pppPos() { 102 for (int ii = 0; ii < 7; ++ii) { 103 xnt[ii] = 0.0; 104 } 105 } 101 106 bncTime time; 102 double xn [6];107 double xnt[7]; 103 108 }; 104 109
Note:
See TracChangeset
for help on using the changeset viewer.