I have more than 100 bathyimetric tracks that I am processing with x2sys package.
First I try to make a constant correction (2sys_solve -Cz -Ec
) which work fine.
Then I try a linear drift solution (2sys_solve -Cz -Ed
) but I got a message that says that I have some tracks with one 1 crossing so obviously it can’t find a solution.
My question is how to preprocess my dataset in order to remove the tracks that will have a single crossing.
Full error message:
x2sys_solve [INFORMATION]: Found 636 COE records
x2sys_solve [WARNING]: Track YBL-1_mig only has 1 crossings so can only solve for 1 of the 2 parameters
x2sys_solve [WARNING]: Track YBL-5_mig only has 1 crossings so can only solve for 1 of the 2 parameters
...
x2sys_solve [INFORMATION]: Number of unknowns is 244 and number of constraints is 1
x2sys_solve [INFORMATION]: Matrix equation N * a = b: (N = 245 x 245)
x2sys_solve [ERROR]: gmt_gaussjordan given a singular matrix
x2sys_solve [ERROR]: Singular matrix - unable to solve!
I forgot.
Should I use x2sys_list -N2
?
Yes, I think that is how you restrict what is used in the solution.
Thanks @pwessel. I though so.
But in my case It didn’t work. Because when I use -N2
two tracks were remove, but then there were 2 new tracks with only 1 crossing (see figure).

So the solution should be to run x2sys_list -N2
repetidealy until no new tracks are filter out. Should I request this feature, right? Or can be done?
Please experiment with that - I have not done this on real data in a very long time so not sure.
Yes, I did it. I remove the first two tracks, and run it again.
I got this message when I run withx2sys_list -N2
and it works.
x2sys_list [INFORMATION]: Output 611 pairs and a total of 634 crossover records.
x2sys_solve [INFORMATION]: Reading Data Table from file tmp_COE_use_N2.txt
x2sys_solve [INFORMATION]: Found 632 COE records
x2sys_solve [INFORMATION]: Normalized all distances by dividing with the maximum range = 250.025
x2sys_solve [INFORMATION]: Determine number of independent track clusters
x2sys_solve [INFORMATION]: 119 tracks form a single connected cluster
x2sys_solve [INFORMATION]: Number of unknowns is 238 and number of constraints is 1
x2sys_solve [INFORMATION]: Matrix equation N * a = b: (N = 239 x 239)
x2sys_solve [INFORMATION]: Before correction, mean and st.dev.: 0.900685 4.08519
x2sys_solve [INFORMATION]: After correction, mean and st.dev. : -0.0458738 1.26307
x2sys_solve [INFORMATION]: Writing Data Table to Standard Output stream
I got this message when I run without -N2 x2sys2_list
(without -N2) and also works but complained about 2 tracks.
x2sys_solve [INFORMATION]: Reading Data Table from file tmp_COE_use.txt
x2sys_solve [INFORMATION]: Found 634 COE records
x2sys_solve [INFORMATION]: Normalized all distances by dividing with the maximum range = 250.025
x2sys_solve [WARNING]: Track YBL-3_mig only has 1 crossings so can only solve for 1 of the 2 parameters
x2sys_solve [WARNING]: Track YBL-5_mig only has 1 crossings so can only solve for 1 of the 2 parameters
x2sys_solve [INFORMATION]: Determine number of independent track clusters
x2sys_solve [INFORMATION]: 121 tracks form a single connected cluster
x2sys_solve [INFORMATION]: Number of unknowns is 240 and number of constraints is 1
x2sys_solve [INFORMATION]: Matrix equation N * a = b: (N = 241 x 241)
x2sys_solve [INFORMATION]: Before correction, mean and st.dev.: 0.899923 4.07881
x2sys_solve [INFORMATION]: After correction, mean and st.dev. : -0.0457291 1.26108
x2sys_solve [INFORMATION]: Writing Data Table to Standard Output stream