-
Notifications
You must be signed in to change notification settings - Fork 16
/
history.txt
568 lines (372 loc) · 20.6 KB
/
history.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
2016/07/10 Release 2.0.1
Replaced numpy for Numeric and oldnumeric throughout, including XML file definition.
========================================================================
2012/04/18 Release 2.0.0
Slimmed-down distribution on GitHub.
========================================================================
2011/05/12 Release 1.4.3
New revised orbit files from Oliver Jennrich (NGO_1M_10deg_rev_synthlisa.txt and NGO_1M_closest_rev_synthlisa.txt)
========================================================================
2011/05/05 Release 1.4.2
Accept generic orbit files (see makeSampledLISA in lisautils.py).
========================================================================
2011/04/27 Release 1.4.1
New Lagrange-point halo-orbit analytic model (HaloAnalytic).
========================================================================
2011/04/22 Release 1.4.0
First release for lisalight evaluations. Allow different armlength in EccentricInclined (in analogy to StandardRotating).
========================================================================
2011/03/14 Release 1.3.7
Fixed possible NaN in lisasim-tdisignal.cpp
========================================================================
2011/02/23 Release 1.3.6
Added GalacticBinary class for chirping binaries, compatible with MLDC parameters.
========================================================================
2010/07/05 Release 1.3.5
Important bugfix in assigning noises to lasers in TDInoise
========================================================================
2008/08/28 Release 1.3.4h, more bugfixes
========================================================================
2007/04/09--05/08 Release 1.3.4a-g, small improvements
Updated and reinstated example files mentioned in manual.pdf. They are now
in examples/manual-examples, together with their gnuplot scripts.
Added BandIntFilter to generate 1/f^3 noise for stochastic background.
Changed setup.py to install c includes within python packages (they're in
the same directory as __init__.py, something like $HOME/lib/python2.4/site-packages/synthlisa).
Changed bin/sdist-here.sh not to include pesky xattr files on OS X.
Added python access to CircularRotating variable-L constructor
Added and then reverted this change: --make-clib is now the default behavior for setup.py; to disable it use --make-clib=False. Distutils has problems with clibs (does not accept extra cflags, will link them by default to the Python extension) that make such a change unwise now.
Added hack in setup.py to handle Leopard stock 2.5.1 Python handling of get_python_lib
Fixed bug in TDInoise constructor (with lists of user-specified noise objects), which was assigning the same laser noises twice.
========================================================================
2006/12/17 Release 1.3.3, MLDC Challenge 2 version
Removed lisasim/GSL/rng_test.c from archive and distribution (just a test
program).
Fixed Python refcount for Noise sequence in lisasim/lisasim-typemaps.i.
Added derivative interpolator to getInterpolator in lisasim/lisasim-signal.cpp and
lisasim/lisasim-swig.i; tweaked accurate version of InterpolatedSignal calls in
lisasim/lisasim-signal.cpp.
Added CTRL-C exception handling to fastgetobsc in lisasim/lisasim-swig.i and
lisasim/lisasim-tdi.cpp (and also lisasim/lisasim-except.h).
Added SampledTDIaccurate in lisasim/lisasim-tdi.[cpp|h] and lisasim/lisasim-swig.i.
Look for positions.txt in site-packages-relative location in lisasim/lisautils.py.
Added C-library building (--make-clib) and better handling of numpy location to
setup.py.
========================================================================
2006/11/04 Release 1.3.2, numpy version
In setup.py, added build and install of static C library (thanks to Duncan
Brown); currently the final location is within lib/python2.4/site-packages,
and it may be nice to bring it up to lib.
In default-install.py, added capability to specify --prefix. In setup.py, added
synthlisa-recompile.sh script.
For CacheLISA, fixed caching mechanism; added putp caching; moved most of code
to cpp file (lisasim-retard.cpp). In lisasim-lisa.(cpp|h), added hook (putp(LISA
*anotherlisa,Vector &p, int craft, double t)) for CacheLISA caching of putp
while allowing physlisa mechanism. In lisasim-tdisignal.cpp, optimized calls to
armlength (through retard), putn, and putp. Harmonized with CacheLISA
optimization. Some LISA-intensive tests report 20% improvement in speed. With
CacheLISA, armlength and putp are called the minimum number of times necessary.
Added TDIobject destructors (they do nothing) to lisasim-tdi.h, and defs to call
them in lisasim-swig.i.
Improved detrending in lisautils.py with quick least-squares routine.
Added Phi method in lisasim-tdisignal.(cpp|h), for debugging. Might go away at
some point.
Added ApproxLISA interface to CircularRotating and EccentricInclined. Modified
lisasim-swig.i and lisasim-lisa.(cpp|h).
Implemented fastgetobs, written directly in C++, which takes TDIobject
functors. These are returned by empty calls such as TDI.X(). Modified
lisautils.py, lisasim-swig.i, lisasim-typemaps.i, lisasim-tdi.h,
lisasim-tdi.cpp.
Modified MANIFEST.in to distribute numpy, and healpix only in contrib
directory. Switched default-install.py to unpack and install numpy rather
than Numeric. Same for bin/recompile-here.sh
Changed setup.py to use numpy, to correctly build pure-C plugins (in
contrib), including healpix, to build setdir scripts in a temporary
directory rather than in lisasim.
Changed examples/plotxml.py for numpy. Changed lisasim/lisapar.py to
numpy. Changed lisautils.py to numpy (some calls, interpolation now
done by hand for SN.) Changed lisasim-typemaps.i for numpy typemaps.
Healpix is now a plugin, and is not included in the main CVS anymore.
Improved plugin architecture, moving XML definitions to .i files in contrib.
Modified lisaXML accordingly. Changed lisasim/__init.py__ to import lisawp,
lisawp_emri (MLDC), and lisarigid (experimental).
Added some notes to README.txt on the installation and use of matplotlib.
========================================================================
2006/08/12 Release 1.3.1b, second correction to official challenge version
Changed SLInclination to ThetaInclination; updated XML definitions for BBH.
========================================================================
2006/08/12 Release 1.3.1a, correction to official challenge version
Added appending to writebinary in lisasim/lisautils.py.
Added direct yijk and zijk access methods to lisasim/lisasim-tdi.h;
modified lisasim/lisasim-swig.i accordingly.
Added FileSignalSource for buffered file input to
lisasim/lisasim-signal.cpp lisasim/lisasim-signal.h. Modified
lisasim/lisasim-swig.i interface accordingly, and added possibility of
specifying a file (rather than an array) to the SampledSignal Python
constructor.
Added ZeroLISA (null arms) to lisasim/lisasim-lisa.h (for JPL's Frequency
Correction Project).
Added ExceptionFileError to lisasim/lisasim-except.h.
Added lisawp_emri (from Stas) to contrib directory.
Added XML support files to the data directory (modified setup.py and
MANIFEST.in accordingly).
========================================================================
2006/05/21 Release 1.3.1, official challenge version
In lisaxml.py, fixed some parameter names for EMRIs.
In lisaxml.py, fixed naming of "Second" (from "s"); added second
xml-stylesheet for lisaXML; on XML load, remove DTD parsing if it fails to
be loaded (for off-line use...)
In setup.py, disallow compilation of packages requiring GSL
if --with-gsl is not provided.
In lisaxml.py, lots of work to allow for input/output of Noise and TDInoise
objects.
In lisautils.py, added choice of windows.
In lisasim-tdi.[h|cpp], added SampledTDI.
In lisasim-swig.i, added global seed choice mechanism for PowerLawNoise
objects; added SumSignal; added RedAcceleration (exp=-4.0) pseudorandom
noise; fixed XML treatment for interpolated signals.
In lisasim-signal.cpp, removed some warnings for early and late access
to sampled signals, fixed (temporarily) a bug in the choice of
prebuffering.
In lisasim-signal.h, added SumSignal class to sum two noises (e.g.,
WhiteAcceleration and RedAcceleration PowerLawNoises).
In convertunit.py, added RedAcceleration spectral type (for
PowerLawNoise with exponent -4.0), fixed some conversion rules.
In default-install.py, added whitespace escaping in local directory.
In lisasim-swig.i, fixed XML introspection of SampledWave to allow
for XML output.
In lisaxml.y, worked to allow output of SampledWave; the new binary-file
writing mechanism (through outputrxp) will eventually replace the
present facility. Also moved reference to standard DTD and XSL to
www.vallis.org.
========================================================================
2005/05/31 Release 1.3.0, beta version
Worked substantially on lisaxml.py to allow for read/write of lisaXML
files.
Added differentiating Lagrange interpolator; fixed bug in Signal Filter
for IIR filters; modified SampledNoise to return zeros (with warning) at
end of arrays.
Modified CacheLengthLISA to use derivative-interpolator to get
armlengths; addition of LISA.putv (LISA s/c coordinate velocities) and
LISA.dotarmlength.
In the SWIG interface, new "intelligent" Python constructor for TDInoise
(will look at arguments and understand what's being given, and also
keep Python references to allocated objects).
In lisasim/lisasim-tdinoise, Fixed (perhaps) noise seeds; used more
precise expressions (hopefully) for Doppler corrections to lasers.
In lisautils, corrected angle conversions in healpix calls; added more
healpix calls; modified stdSampledLISA to return Cached object that uses
differentiating interpolator.
Modified setup.py to allow compilation of Stas' lisawp components (added
to contrib directory).
========================================================================
2005/3/10 Release 1.2.9, beta version
Reorganized distribution directory.
Modified default-install.py to do selected installs only, including
MMPI. I'm currently distributing a modified version of MMPI. Also,
added mpi to the PYTHONPATH created in setup.py.
Added first serious version of LISApar (lisapar.py), using MMPI; added
time and t as TDI observables
Fixed sys/time.h include in lisasim-TDIsignal.h (needed in Linux).
Added time series plotting to plotxml.py; but XML needs to have column
for time.
Added tagging (from CVS tags) to XML output (Comment field). Included
.py files among the tagged files.
Removed lisasim-swig_wrap.h from the "depends" file in setup.py.
Otherwise a simple change to lisasim-swig.i triggers recompilation of
all cpp files.
Experimental: started adding dumpXML method to TDInoise and Noise;
problem with having the correct inherited version of Noise being called
might be solved by moving creation of "standard" Noise objects to the
Python layer. Should also keep a C++ version though in case anybody
wants to use the library directly.
Added null noise object NoSignal to lisasim-signal.h
Added methods to return spacecraft velocities (putv) and armlength rates
of change (dotarmlength) to the base class LISA in lisasim-lisa.[h|cpp].
So far the derivatives are taken with a simple 1-s finite-difference
expression.
Experimental: added typemap for retrieving Noise object from C++ Noise*
pointer; unfortunately, the resulting SWIG pointer does not have any
derived-class information. Experimented with dynamic casting,
unsuccessfully. It seems that the best approach would be to have
object-allocating constructors written directly in Python.
plotXML now tries to open the graphics files it produces by calling
"open" on OS X and "gv" on Linux.
Added TDIdoppler (TDIaccurate with 1 - Ldot multipliers) and TDIcarrier
(returns only laser carrier frequency differences) to lisasim-tdinoise.[h|cpp].
========================================================================
2005/1/18 Release 1.2.8, beta version
Added experimental lisaXML (XSIL-BFD) output in lisaxml.py. Some use of
it (and also of PyX plotting) is made in examples/test-tdiequal.py.
Modified __init__.py to load lisaxml.py.
========================================================================
2005/12/21 Release 1.2.7, beta version
Moved the main PyLISA code to lisasim-lisa.cpp from lisasim-lisa.h.
Added AllPyLISA object, which takes pointers to two Python functions:
the first is analog to putp(sc,time), and should return the three
spacecraft positions (in seconds, given as tuples); the second is
analog to armlength(link,time), and should return the armlengths in
seconds. If only one function is given, the armlengths will be
determined from the s/c positions using the exact light-propagation
equation (solved in the base LISA class).
Added a function setguessL to the base LISA to initialize the initial
light-propagation--equation guesses from the positions of the
spacecraft (this was needed by AllPyLISA).
Added TDIalpha, TDIbeta, TDIgamma functionoid (w/Signal interface) to
lisasim-tdi.h.
Added default parameters for standard TDInoise constructor. Documented
constructor in lisasim-swig.i.
Added ResampledSignalSource and CachedSignal (in analogy to
CacheLengthLISA) to lisasim-signal.(h|cpp). The idea is that an
expensive function (such as the TDI functionoids) is sampled at
regular intervals, and interpolation is used to get values in between.
========================================================================
2005/12/2 Release 1.2.6, beta version
Added SampledLISA to lisasim-lisa and lisasim-swig to support sampled
spacecraft positions; added file of positions from Ted Sweetser's
simulations to distribution, and patched lisautils.py to load it and
massage it into useful form.
Fixed bad initialization bug in lisasim-signal.cpp that broke
LagrangeInterpolator.
Patched lisasim-typemaps.i to accept 2D Numeric arrays and flatten them
for use in SampledLISA.
Added putep and putec static methods to Wave to access basic
polarization tensors.
Added SampleCacheLISA() to speed up armlength determination of
SampledLISA (and possibly other LISA classes).
Inlined many Vector methods.
Cleaned up lisasim-lisa.cpp somewhat, with standard link-index and
s/c-index checking functions. Fixed conceptual (but ineffectual)
sqrt(negative) bug in LISA::armlength().
Recoded LagrangeInterpolator (NewLagrangeInterpolator) to increase
efficiency. Gains seem nominal.
Added mechanism to set the seed of pseudorandom number generators
globally. This should ensure the reproducibility of results if the
initial seed is captured with WhiteNoiseSource.getglobalseed(). If the
seed is not set explicitly, it is obtained from the current time (in
microseconds); the global seed is increased by one after creating each new
WhiteNoiseSource object.
Added TAUS pseudorandom engine from GSL 1.4. Should be faster than
ranlux. Switched to using TAUS in WhiteNoiseSource.
========================================================================
2005/11/10 Release 1.2.5, beta version
Removed some old putp and putn -> double[] calls in lisasim-lisa and
lisasim-retard.
Added some exception trapping:
- invalid spacecraft index in EccentricInclined::settime
- invalid hash in CacheLISA::retard
- time OutOfBounds in TDInoise::y and TDInoise::z
Fixed indentation:
- lisasim-lisa.h
- lisasim-retard.h
New Signal/Noise architecture in lisasim-signal.cpp and lisasim-signal.h
Changed main Noise (now Signal) method to value():
- locking noise objects in lisasim-tdinoise.cpp
Changed standard Noise objects in lisasim-TDInoise.* to PowerLawNoise
(lisasim-signal); NoiseWave and SampledWave objects in lisasim-wave.*
Added SWIG typecast for Numeric array with size
Added some error trapping to getobsc in lisautils
Simplified SWIG interface, added exception trapping, converted to new
Noise/Signal interface
Added CVS Ids:
- most source and header files
Added SineGaussian wave type.
========================================================================
2005/11/1 Release 1.2.4, beta version
Changed dec and asc to beta (= elat) and lambda (= elon) everywhere.
Removed "special" LISAs (development and testing only): NoisyLISA,
NominalLISA, LinearLISA, MeasureLISA. Moved to extra (not
distributed).
Fixed some "delete"s that should have been "delete []".
Added GaussianPulse Wave object, with optimized "inscope"
functionality implemented in TDIsignal.
Continued improving online documentation (added docstring for several
Wave objects, removed duplicate docstring for constructors and
destructors).
Simplified interface: moved some proprietary LISA functionality to
extra.
Removed direct Python access to k and pp, pc in Wave, added putk. pp
and pc can be gotten using a specially-designed PyWave.
Removed InterpolateMemory (but defined backward-compatible Python
factory based on NoiseWave). InterpolateMemory is replaced by
SampledWave, defined by a Python factory.
========================================================================
2005/07/21 Release 1.2.3, beta version
Added class-variable access to some Vector and Tensor objects.
Removed AnyLISA (generic armlength class based on SWIG directors).
Created WaveObject, WaveArray, to allow multiple waves (at different
positions) to be added together within TDIsignal.
Restructured package and module names. Now lisautils imports Numeric
and FFT explicitly; added master package synthlisa. Changed example
files accordingly.
Added swigged Healpix C functions in package "healpix".
Added NoiseWave to get hp and hc from Noise objects. Constructors
allow setting the Noise objects from simple spectral densities (with
the exponent syntax), and from sampled time series. This supercedes
InterpolateMemory as the preferred buffered wave, since it allows
filtering and higher-order interpolation of hp and hc.
Fixed bug (perhaps partially) in the range checks for sampled noise.
Added docstring documentation for LISA classes in SWIG interface;
cleaned up some method definitions, prepared to remove some LISA
derived classes.
In lisasim-lisa.(cpp|h), cleaned up constructor calls, fixed bug in
handling of ccw n[i] in OriginalLISA, removed stdlisa(), replaced by
CircularRotating().
========================================================================
2005/07/06 Release 1.2.2, beta version
Added SWIG typemap to return three-vectors (class Vector) as Python
tuples, and three-tensors (class Tensor) as Python tuples-of-tuples;
correspondingly, added functions putp(craft,time) and putn(craft,time)
for all the LISA classes, and putwave for all the Wave classes. [Note
that these take first arguments Vector& and Tensor& in C++, not needed
in Python where we can return tuples.]
Also, exposed Wave.hp(t) and Wave.hc(t) to Python.
========================================================================
2005/05/19 Release 1.2.1, beta version
Fixed persistence problem for LISA/Noise/Wave objects passed to TDI
constructors. Using SWIG's %feature("addtofunc") to inject Python code
(which saves arguments) into Python shadow class constructors.
========================================================================
2005/05/06 Release 1.2, beta version
Current state of the art, after clearance; sent to various people on
05/09
========================================================================
Changes from 1.0 to 1.2 include...
2004/07/28 1.2 lisasim-retard.h
Second version of CacheLISA, based on home-grown hashed map. Better.
2004/07/28 1.1 lisasim-retard.h
First version of CacheLISA, based on STL map; not very fast
2004/07/28 1.4 lisautils.py
Made getobsc print final speed report
2004/07/28 1.10 lisasim.h
Added lisasim-retard.h include
2004/07/28 1.6 lisasim-tdisignal.cpp
Fixed nominal-physical LISA exchange bug. Changed from retardtime
mechanism to LISA retard calls
2004/07/28 1.15 lisasim-tdinoise.cpp
Fixed nominal-physical LISA exchange bug. Changed from retardtime
mechanism to LISA retard calls
2004/07/28 1.11 lisasim-tdi.cpp
Moved retardtime mechanism to base LISA class methods, added zeta1,
zeta2, zeta3 definitions
2004/07/28 1.8 lisasim-tdi.h
Moved retardtime mechanism to base LISA class methods
2004/07/28 1.19 lisasim-swig.i
Added CacheLISA interface; added zeta1, zeta2, zeta3 to TDI interface
2004/07/28 1.16 lisasim-lisa.h
Moved retardtime mechanism to base LISA class methods, to facilitate
overloading in a CacheLISA class.
2004/07/28 1.17 lisasim-lisa.cpp
Moved retardtime mechanism to base LISA class methods, to facilitate
overloading in a CacheLISA class. Corrected buffering of noise in
NoisyLISA to 8 lighttimes.
2004/07/28 1.19 Makefile
Corrected lisasim-swig_wrap.cxx dependency on headers; added
lisasim-retard.h to headers
2004/07/26 1.18 lisasim-swig.i
Revised public interface, added public method noise to Noise
2004/07/26 1.3 lisautils.py
Added nonoverlapping-windowed periodogram, zerotime option for getobs,
fixed bug in triangular window
2004/07/14 Release 1.0
This history starts here.