Open yuluenter opened 1 year ago
Hi, this error occurs due to the failure of the 'linprog' function, which is the built-in function in Matlab to solve our equation as I have mentioned in the README. This error basically means that the equation is so hard to solve that it can't give a solution, which might imply that the quality of the data is not good enough.
I am sorry that currently there is no straightforward solution as I don't find any other way to solve the equation. My suggestion would be: 1) You can try re-running the tile again to see if works (sometimes it does). 2) Slightly change how you divide the data and it might be easier for solving the equation. 3) Filter the interferogram to improve the quality of the data.
Currently, I am trying to write the core function code by myself, which hopefully can solve this issue and have quicker calculation for a large dataset.
Hi, I have used prep_pu_data.m to split my data into 26 tiles, and go into every tile folder to run ThreeD_MCF. In all tile folders, the ThreeD_MCF run successfully, except in tile_9. It got this error "Exiting: cannot converge because the primal residual, dual residual, or upper-bound feasibility is NaN.". I don't know the reason for this error and how to correct it. Many thanks for your help. The details of this error are below.
Residuals: Primal Dual Duality Total Infeas Infeas Gap Rel Ax-b A'y+z-f x'*z Error
Iter 0: 4.71e+02 2.25e+06 1.38e+25 1.37e+22 Iter 1: 5.96e+16 2.25e+06 1.38e+25 1.26e+14 Iter 2: 7.06e+16 2.25e+06 1.38e+25 1.50e+14 Iter 3: 7.67e+16 2.25e+06 1.38e+25 1.63e+14 Iter 4: 9.42e+16 2.25e+06 1.38e+25 2.00e+14 Iter 5: 1.07e+17 2.25e+06 1.38e+25 2.28e+14 Exiting: cannot converge because the primal residual, dual residual, or upper-bound feasibility is NaN. Error using JointUnwrap (line 152) The algorithm of linprog cannot output its optimal solution. Error in ThreeD_MCF (line 39) JointUnwrap();