10 lal.swig_redirect_standard_output_error(
True)
12 __version__ =
"7.2.4.1"
15 """This package provides Python wrappings and extensions to LAL"""
26 cached_detector_by_prefix = dict((cd.frDetector.prefix, cd)
for cd
in CachedDetectors)
28 assert len(cached_detector_by_prefix) == len(CachedDetectors)
31 cached_detector_by_name = dict((cd.frDetector.name, cd)
for cd
in CachedDetectors)
33 assert len(cached_detector_by_name) == len(CachedDetectors)
36 name_to_prefix = dict((name, detector.frDetector.prefix)
for name, detector
in cached_detector_by_name.items())
37 prefix_to_name = dict((prefix, name)
for name, prefix
in name_to_prefix.items())
48 from six.moves
import copyreg
50 numpy_to_lal_types = {
'char':
'CHAR',
59 'complex64':
'COMPLEX8',
60 'complex128':
'COMPLEX16'}
64 return LIGOTimeGPS, (obj.gpsSeconds, obj.gpsNanoSeconds)
68 return Unit, (str(obj),)
72 lal_type = numpy_to_lal_types[data.dtype.name]
73 creator = globals()[
'Create{}Vector'.format(lal_type)]
74 result = creator(len(data))
80 return unpickle_vector, (obj.data,)
84 lal_type = numpy_to_lal_types[attrs[
'data'].data.dtype.name]
85 kind =
'Frequency' if 'deltaF' in attrs
else 'Time'
86 creator = globals()[
'{}{}Series'.format(lal_type, kind)]
88 for key, value
in attrs.items():
89 setattr(result, key, value)
94 attrs = {
'name': obj.name,
'epoch': obj.epoch,
'f0': obj.f0,
95 'sampleUnits': obj.sampleUnits,
'data': obj.data}
96 if hasattr(obj,
'deltaF'):
97 attrs[
'deltaF'] = obj.deltaF
99 attrs[
'deltaT'] = obj.deltaT
100 return unpickle_series, (attrs,)
103 copyreg.pickle(LIGOTimeGPS, pickle_gps)
104 copyreg.pickle(Unit, pickle_unit)
105 for datatype
in numpy_to_lal_types.values():
106 clazz = globals().get(
'{}Vector'.format(datatype))
108 copyreg.pickle(clazz, pickle_vector)
109 clazz = globals().get(
'{}FrequencySeries'.format(datatype))
111 copyreg.pickle(clazz, pickle_series)
112 clazz = globals().get(
'{}TimeSeries'.format(datatype))
114 copyreg.pickle(clazz, pickle_series)
def unpickle_vector(data)
def unpickle_series(attrs)