ISCE_INSAR/components/mroipac/geolocate/test/test_geolocate.py

40 lines
1.2 KiB
Python
Raw Normal View History

2019-01-16 19:40:08 +00:00
import unittest
from mroipac.geolocate.Geolocate import Geolocate
from isceobj.Planet.Planet import Planet
class test_geolocate(unittest.TestCase):
def setUp(self):
# These are the state vectors for ERS-1 track 113 frame 2745 from 1993 01 09 near the scene start time
self.pos = [-2503782.263,-4652987.799,4829281.081]
self.vel = [-4002.34200000018,-3450.91900000069,-5392.36600000039]
self.range = 831929.866545593
self.squint = 0.298143953340833
planet = Planet(pname='Earth')
self.geolocate = Geolocate()
self.geolocate.wireInputPort(name='planet',object=planet)
def tearDown(self):
pass
def testGeolocate(self):
ans = [42.457487,-121.276432]
loc,lla,lia = self.geolocate.geolocate(self.pos,self.vel,self.range,self.squint)
lat = loc.getLatitude()
lon = loc.getLongitude()
self.assertAlmostEquals(lat,ans[0],5)
self.assertAlmostEquals(lon,ans[1],5)
def testLookAngle(self):
ans = 17.2150393
loc,lla,lia = self.geolocate.geolocate(self.pos,self.vel,self.range,self.squint)
self.assertAlmostEquals(lla,ans,5)
if __name__ == "__main__":
unittest.main()