Question

Hi,

I'm running GPSTk 1.3 DDBase to determine carrier phase L1 double difference residuals.

I have had success running DDBase with the following command line arguments on my Desktop PC:
--DT 1.00 
--Freq L1 
--RDDFileOut day1_RDD.txt
--DDDFileOut day1_DDD.txt
--DDRFileOut day1_DDR.txt 
--ObsFile Mobs179L.07o,1 
--ObsFile Melb179L.07o,2 
--NavFile Mobs179L.07n 
--PosXYZ -4130635.7761,2894953.1006,-3890531.4568,1
--PosXYZ -4131249.8717,2896667.2391,-3888683.3012,2 
--Fix 1 
--EOPFile EOPP7175.txt 
--verbose
DDBase exits correctly and the output is perfect, awesome!

Note: There are 1800 epochs, with 5-8 SVs each.

However, when run on my laptop of similar configuration with the same config file, DDBase crashes upon completing the 'pseudo-range' estimation stage.

All commands are invoked from the Cygwin bash shell using the same command line arguments file.

Specifications:

[Desktop] GPSTk 1.3 AMD 64 X2 Dual Core 2.0ghz 1024mb ram Windows XP Pro using Cygwin bash

[laptop] GPSTk 1.3 Intel Core 2 Duo T7100 1.7ghz 1024mb ram Windows XP Pro using Cygwin bash

The failing DDBase.exe ddbase.log file lists the following last entries:

[verbose] "BEGIN EditRawDataBuffers()"

[debug] "End of data reached in ReadRawData."

The computed pseudo-ranges for site 1 and 2 are identical on both computers.

Question: If my desktop is running DDBase fine, any ideas why the laptop might be failing with the input?

Querying a performance issue, I ran the same setup on a third PC (Intel P4 Windowx XP Pro ... ), yet resulted with the same 'crash and log file position' as found using the laptop.

Thanks! smile

Michael

-- MichaelRigby - 15 Aug 2007

Answer

ALERT! If you answer a question - or have a question you asked answered by someone - please remember to edit the page and set the status to answered. The status is in a drop-down list below the edit box.

Hello Michael,

It is possible that this crash has to do with 32 bit/64 bit compatibility in Cygwin. Or some other incompatibility introduced by variances in Cygwin installations.

I can suggest a way to test this theory. You might try building the GPSTk in Cygwin on the machines where the crash occurs and running the newly build version. I bet that will solve your crash problems (and it would indicate that we need to reconsider how we create packages for Cygwin users).

Best of luck, Ben Harris

-- BenHarris - 15 Aug 2007

No idea. I have never seen it behave differently on different machines, and we routinely run it a lot on Windows and at least 3 kinds of linux. Are you sure the input files are identical? If you would like, send me the two log files and the data, and I'll look into it. Brian Tolman (btolman@arlut.utexas.edu)

Hi, I did as Ben instructed and it worked brilliantly! smile Perfect.

Now I have one more question relating to DDBase, I'll add it now smile

Thanks again

-- MichaelRigby - 20 Aug 2007

I have had the same problem running this in Windows. I recompiled and debugged the application. The program crashes at line 125 in EditRawDataBuffers:

k = *cjt - *cit;

it is caused by these line of code while(cit = rd.count.end()) (cjt = cit)++; // cjt points to the next count

When cit is one less than rd.count.end(), cjt will then equal rd.count.end() and is pointing passed the end of the data structure/array as arrays are indexed from 0 (not 1).

-- AlanBuchanan - 14 Jan 2008

-- BrianTolman - 14 Jan 2008

This is fixed in a later version of DDBase. Before the "k = ..." add if(cjt = rd.count.end())

-- BrianTolman - 14 Jan 2008 No such template def TMPL:DEF{PROMPT:supportquery}

Topic revision: r8 - 14 Jan 2008, BrianTolman
 

This site is powered by FoswikiCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding Foswiki? Send feedback