geospace-code / pymap3d

pure-Python (Numpy optional) 3D coordinate conversions for geospace ecef enu eci
https://geospace-code.github.io/pymap3d
BSD 2-Clause "Simplified" License
391 stars 85 forks source link

geodetic2aer output different value from Matlab function #48

Closed quonn77 closed 2 years ago

quonn77 commented 2 years ago

Invoking geodetic2aer using the following code: `import pymap3d as pm lat1 = 45.977 lon1 = 7.658 h1 = 4531 lat0 = 46.017 lon0 = 7.750 h0 = 1673

a,e,r = pm.geodetic2aer(lat1,lon1,h1,lat0,lon0,h0) print ("A=%f E=%f R=%f" % (a,e,r)) ` Output A=238.075833 E=-7134.628771 R=8876.843346

It should be (please don't take int account different floating point precision) A=238.08 E=18.744 R= 8876.8

as you can check here https://it.mathworks.com/help/map/ref/geodetic2aer.html

quonn77 commented 2 years ago

Sorry it was late at night...it was my fault it was printing the wrong output because on the test file i have something like that

x,y,z = pm.geodetic2ecef(lat1,lon1,h1,ellipsoid)
a,e,r = pm.geodetic2aer(lat1,lon1,h1,lat0,lon0,h0,ellipsoid)
e,n,u = pm.ecef2enu(x,y,z,lat0,lon0,h0,ellipsoid)

and of course printing e....was the one of ecef2enu.... I'm really sorry for that