detgeom
package
The detgeom
package contains matlab routines which
define and manipulate the geometry of Earth-based gravitational
wave (GW) detectors. The functions take as arguments
human-readable quantities such as locations specified by
latitude and longitude in decimal degrees and height in meters
above a reference ellipsoid (the WGS-84 Earth model), or
orientations specified by azimuth (decimal degrees clockwise of
local North) and an optional altitude (tilt) angle in decimal
degrees. Major existing earth-based GW detectors are
pre-defined. Internally, the geometry is manipulated via
geographical structures which contain angles (latitude,
longitude, azimuth, etc) in radians, as well as geometrical
structures which describe the detector via a position vector and
response tensor in Cartesian coördinates.
The routines were designed for use in stochastic analysis, and a routine is included to calculate the overlap reduction function from a pair of suitable detector structures, but they could also be useful for other searches. The detector response tensors included here can be contracted with polarization tensors to describe the response of a given detector to a given GW signal,
definedetectors; flog=10.^((0:400)./100); gamma=overlapreductionfunction(flog,detector_LHO.det,detector_GEO600.det); semilogx(flog,gamma);
flog=10.^((0:400)./100); gamma=overlapreductionfunction(flog,getdetector('H'),getdetector('G')); semilogx(flog,gamma);
definedetectors; f=(0:2000); gamma=overlapreductionfunction(f,detector_VIRGO.det,detector_AURIGA.IGECdet); plot(f,gamma);
f=(0:2000); gamma=overlapreductionfunction(f,getdetector('VIRGO'),getdetector('AURIGA')); plot(f,gamma);
definedetectors; f=907+(-125:124); eastAxis = createorientation(90); ALLEGRO_east = buildbardetector(detector_ALLEGRO.loc,eastAxis); gamma=overlapreductionfunction(f,detector_LLO.det,ALLEGRO_east);
f=907+(-125:124); gamma=overlapreductionfunction(f,getdetector('LLO'),getdetector('ALLEGRO',90));
The package consists of a number of functions which manipulate detector geometry structures, and one script (definedetectors) which populates geometry structures corresponding to the five large-scale ground-based interferometers and the five IGEC (International Gravitational Event Collaboration) resonant bar detectors.
The functions are as follows.
Function | Inputs | Outputs | Calls | Synopsis |
---|---|---|---|---|
overlapreductionfunction |
f {vector of Hertz} det1 {detector} det2 {detector} |
gamma {vector of dimensionless} | sphericalbessel | Calculate overlap reduction function between two detectors |
sphericalbessel |
n {dimensionless} z {vector of dimensionless} |
y {vector of dimensionless} | Calculate spherical Bessel functions | |
getdetector |
site {keyword or character} azDeg {degrees} |
detector {detector} |
getsitefromletter createlocation createorientation buildifodetector buildbardetector |
Construct detector geometry structure for major detector |
getsitefromletter | site {character} | site {keyword} | Convert one-letter abbreviation to standard keyword for standard detector. | |
buildifodetector |
loc {location} xarm {orientation} yarm {orientation} |
detector {detector} |
getcartesianposition getiforesponse |
Build Cartesian structure describing IFO geometry |
buildbardetector |
loc {location} axis {orientation} |
detector {detector} |
getcartesianposition getbarresponse |
Build Cartesian structure describing bar geometry |
getcartesianposition | loc {location} | r {[3x1] meters} | Construct Cartesian position vector from geographic coordinates | |
getiforesponse |
loc {location} xarm {orientation} yarm {orientation} |
d {[3x3] dimensionless} | getcartesiandirection | Construct Cartesian response tensor from geographic coordinates & IFO arm orientations |
getbarresponse |
loc {location} axis {orientation} |
d {[3x3] dimensionless} | getcartesiandirection | Construct Cartesian response tensor from geographic coordinates & bar orientation |
getcartesiandirection |
ori {orientation} loc {location} |
u {[3x1] dimensionless} | Construct Cartesian unit vector from Earth-based orientation | |
createdetector |
r {[3x1] meters} d {[3x3] dimensionless} |
detector {detector} | Create Cartesian detector structure from position and response | |
createlocation |
latDeg {degrees} lonDeg {degrees} h {meters} |
loc {location} | Create geodetic location structure (converting angles from degrees to radians) | |
createorientation |
azDeg {degrees} altDeg {degrees} |
orient {orientation} | Create orientation structure (converting angles from degrees to radians) |
The following structures are used by the routines in this package and passed between them as inputs and outputs.
r: [3x1 double{meters}] d: [3x3 double{dimensionless}]
The position vector and response tensor of a GW detector, in an Earth-fixed right-handed Cartesian coördinate system. The origin is at the center of the Earth, the z axis passes through the North Pole, and the x axis passes through the intersection of the Equator and the Prime Meridian. The response tensor can be contracted with a metric perturbation to give the GW strain measured in that detector.
lat: {floating pt radians} lon: {floating pt radians} height: {floating pt meters}
A geographical location on the surface of the earth, specified by latitude, longitude, and height above the WGS-84 reference ellipsoid. (See LIGO Technical Document T980044 for details on the ellipsoidal coördinate system used.)
az: {floating pt radians} alt: {floating pt radians}
A direction relative to the tangent plane to the WGS-84 reference ellipsoid (see LIGO Technical Document T980044 for details), specified by an azimuth angle measured clockwise from North, and an altitude (tilt) angle above the horizon.
loc: [1x1 struct{location}] IGECaxis: [1x1 struct{orientation}] IGECdet: [1x1 struct{detector}]
The observing geometry for a resonant bar GW detector. The
loc
field specifies its position on the Earth; the
IGECaxis
field specifies the orientation of its
long axis when nearly parallel to the other IGEC bars; the
IGECdet
field gives the Cartesian detector geometry
in this orientation.
loc: [1x1 struct{location}] xarm: [1x1 struct{orientation}] yarm: [1x1 struct{orientation}] det: [1x1 struct{detector}]
The observing geometry for an interferometric GW detector. The
loc
field specifies its position on the Earth; the
xarm
and yarm
fields specify the
orientations of its arms; the det
field gives the
Cartesian detector geometry.