Transcript Inaki Ortiz
ESAC SkyNode in Java
IVOA Interoperability Meeting, Kyoto, Japan
Inaki Ortiz de Landaluze
ESAC, Villafranca del Castillo, Madrid, Spain
Implementation Framework
JAVA programming language
Web Services technology : Tomcat Server, Apache AXIS
• Both open-source software.
• AXIS plugs into Tomcat in a reliable way (Apache Software
Foundation projects).
Other technologies: Ant, XML, XSLT and XPath
• XML fully supported by Apache Software Foundation in Java (Xerces
and Xalan).
• Ant is a Java based build tool.
Linux/Solaris operating systems
IVOA Interoperability Meeting, Kyoto 16/05/2005, page 2
Inaki Ortiz
European Space Astronomy Centre
Implementation Framework
Technical Problems encountered
• AXIS bug in serialization/deserialization. Reported but still opened
(AXIS-1417)
• Affects deserialization of ComparisonType type in ADQLv0.7.4
schema.
• Xalan XPath processor does not handle namespaces properly.
IVOA Interoperability Meeting, Kyoto 16/05/2005, page 3
Inaki Ortiz
European Space Astronomy Centre
Basic and Full SkyNodes at ESAC
17th March 2005, ISO and XMM-Newton registered as BASIC SkyNodes
in NVO Registry
• Minor changes to best fit in ESAC operational context.
• Source code provided by NVO (NVO Summer School, 2004)
• Simple ADQL queries. No XMatch/Region query support.
Late March 2005, starts Java FULL SkyNode development (XMM-Newton
source catalog)
• ADQL tools built to process incoming plans: Last node, pass plan and
execute cross-match use cases.
• Circular Region Search supported.
• Cross-Match Algorithm implementation.
6th May 2005, XMM-Newton SkyNode registered in NVO Registry
• First Java implementation of FULL SkyNode Interface available at
NVO SkyPortal (http://www.openskyquery.net)
IVOA Interoperability Meeting, Kyoto 16/05/2005, page 4
Inaki Ortiz
European Space Astronomy Centre
Spherical Coordinates Approach
Historical overview XYZ vs. Ra-Dec
• NVO Full SkyNode implementation uses XYZ and HTM
• XMatch algorithm is cuadratic in XYZ. Fast and easy to compute.
2
•
1
2
n
1
n ( x xn ) 2 ( y yn ) 2 ( z zn ) 2 x 2 y 2 z 2 1
2
Angular distance given by standard spherical geometry may led to
singularities at computing time (rounding errors)
cos d sin 1 sin 2 cos 1 cos 2 cos( 2 1 )
•
Result: Circular Region Search and XMatch using XYZ coordinates.
•
XMM Full SkyNode uses standard astronomical coordinates instead.
IVOA Interoperability Meeting, Kyoto 16/05/2005, page 5
Inaki Ortiz
European Space Astronomy Centre
Spherical Coordinates Approach (cont.)
Getting rid of singularities: The Haversine formula
•
Cosine formula does not give accurate results for small distances and small
angles.
• Haversine formula (R.W Sinnot, 1984) is particularly well-conditioned for
numerical computation.
1
d 2 sin 1 sin 2 2 1 cos 1 cos 2 sin 2 2
2
2
•
XMM Full SkyNode implements Haversine for Circular Region Search
queries.
REGION(‘CIRCLE J2000 178.5 23.40 6.5)
IVOA Interoperability Meeting, Kyoto 16/05/2005, page 6
Inaki Ortiz
Haversine(178.5, 23.40) < 6.5
European Space Astronomy Centre
Spherical Coordinates Approach (cont.)
Simple Catalog XMatch in spherical coordinates
Details
•
•
•
•
•
•
•
Makes use of Haversine formula to calculate distances in right ascension and
declination.
Does not adopt HTM (Hierarchical Triangular Mesh).
Wrapper built to convert back and forth cartesian (XYZ) and equatorial coordinates
(Ra-Dec).
Fast implementation: reuses algorithm used by Circular Region Search.
Good performance for small catalogues (Currently XMM source catalog consist of
~56 K sources)
Allows usage of standard astronomy coordinates: right ascension and declination.
Used in the Java Full SkyNode implementation for XMM-Newton source catalog.
IVOA Interoperability Meeting, Kyoto 16/05/2005, page 7
Inaki Ortiz
European Space Astronomy Centre
Spherical Coordinates Approach (end)
Simple Catalog XMatch in spherical coordinates (cont.)
Comments/Problems
•
•
Performance might be a problem for large catalogs (alternative and further steps
later). O(NM) scale algorithm.
Current implementation of SkyNode forces to make use of XYZ coordinates when
interfacing between nodes.
Conversion from Ra-Dec to XYZ is straight forward (last node case).
Conversion from XYZ to Ra-Dec is multi-valued in right ascension and might
affect performance (middle node case).
IVOA Interoperability Meeting, Kyoto 16/05/2005, page 8
Inaki Ortiz
European Space Astronomy Centre
Spherical Coordinates Approach
Further Actions: Improving catalog cross matching
• Implement a XMatch based on spherical coordinates and efficient on large
datasets.
Split the sky into bounding boxes of constant ra and dec. First iteration. Easy and
efficient to compute.
Filter-refine strategy for subsequent iterations.
O(N logM) scale algorithm.
•
•
•
•
See “Notes on the implementation of Catalogue Cross Matching” Deveraux et. al,
CSIRO TR-04/1847 here
See “An O(N logM) Algorithm for Catalog Matching” Abel et. al, CSIRO TR-04/1846
here
Improve statistical determination of true locations.
How do others handle cross match?
IVOA Interoperability Meeting, Kyoto 16/05/2005, page 9
Inaki Ortiz
European Space Astronomy Centre
On-line demo
http://www.openskyquery.net
IVOA Interoperability Meeting, Kyoto 16/05/2005, page 10
Inaki Ortiz
European Space Astronomy Centre
Summary and further actions
ESAC has implemented the FULL SkyNode interface in Java, available
from NVO SkyPortal for the XMM-Newton Science Archive
Implemented using standard astronomical coordinates.
Should we adopt a general XMatch algorithm for the ra-dec case?
Should SkyNodes be more flexible and interface between themselves by
using right ascension and declination?
SkyNode supports ADQL 0.7.4. Should we aim for ADQL 0.9 support?
SkyNode should allow region search geometries other than circular.
IVOA Interoperability Meeting, Kyoto 16/05/2005, page 11
Inaki Ortiz
European Space Astronomy Centre