Sunday, October 15, 2006

Math problem

Dear Lazyweb!

I would like to find the symbolic solution for XT0, YT0, dSX, dSY, qX and qY to this set of equations, in a numerically stable way:

XT0 + real_X1*dSX*Cos[qX] + real_Y1*dSY*Sin[qY] == own_X1,
YT0 - real_X1*dSX*Sin[qX] + real_Y1*dSY*Cos[qY] == own_Y1,
XT0 + real_X2*dSX*Cos[qX] + real_Y2*dSY*Sin[qY] == own_X2,
YT0 - real_X2*dSX*Sin[qX] + real_Y2*dSY*Cos[qY] == own_Y2,
XT0 + real_X3*dSX*Cos[qX] + real_Y3*dSY*Sin[qY] == own_X3,
YT0 - real_X3*dSX*Sin[qX] + real_Y3*dSY*Cos[qY] == own_Y3


Mathematica seems to not come back at all when asked for a solution, Maxima (in Debian) refuses cooporation, Maple produces a solution by approximating Sin and Cos with polynoms (which is not good enough for the whole range of [-Pi .. +Pi] and furthermore is not numerically stable.

This is for finding the parameters for the transformation between two different coordinate systems of maps. The real_* and the own_* coordinates are three identical points on both maps. A numeric solution (with simulated annealing from the gnu scientific library) exists but seems to be not exact enough. See also http://www.posc.org/Epicentre.2_2/DataModel/ExamplesofUsage/eu_cs35.html

0 Comments:

Post a Comment

<< Home