-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathREADME
More file actions
93 lines (64 loc) · 2.96 KB
/
Copy pathREADME
File metadata and controls
93 lines (64 loc) · 2.96 KB
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
README
======
Author: Louis Strous
Date: 2013-10-11 09:01:34 CEST
Table of Contents
=================
1 LUX
2 Third Party Software used in LUX
2.1 FFTPACK
2.2 SOFA
1 LUX
======
LUX is a program for (numerical) data processing and image
processing. See [http://lux.quae.nl] for its packaged source code
distribution and for the on-line LUX manual.
2 Third Party Software used in LUX
===================================
LUX includes the third party software packages mentioned below.
2.1 FFTPACK
------------
The LUX source code includes some Fast Fourier Transform routines
based on FFTPACK version 4 by Paul N. Swarztrauber (April 1985),
copied from the Netlib CDROM (2nd edition), translated from Fortran
to C using f2c, with manual cleanup by Louis Strous (15 June 1998).
LUX also uses (through linking, not in the form of source code)
Fast Fourier Transform routines from the GNU Scientific Library
(GSL), which routines are themselves also based on FFTPACK. The
direct use of FFTPACK source code is being phased out, in favor of
the routines from GSL.
2.2 SOFA
---------
LUX includes source code from the "Standards of Fundamental
Astronomy (SOFA)" Library for ANSI C, obtained from
[http://www.iausofa.org/index.html]. LUX uses routines and
computations derived by the author of LUX from software provided by
SOFA under license to the author of LUX. LUX does not itself
constitute software provided by and/or endorsed by SOFA.
The SOFA library comes complete with its own "makefile", which is
not suitable for including in an autoconfiscated project such as
LUX. The SOFA sources were adapted as follows for inclusion into
the current project:
1. Change into the "sofa" subdirectory of the current project's main
directory:
cd sofa
2. Extract the sofa sources from the tarball:
tar xzf Location_of_Tarball/sofa_c-20120301_a.tar.gz
This yields a subdirectory "sofa" in the current directory, which
is itself also called "sofa" (i.e., the new subdirectory is
"sofa/sofa" relative to the project's main directory).
3. Locate the "c" subdirectory in the extracted sources (it is
several directory levels down) and copy its contents into the
current directory:
cp -r sofa/20120301_a/c/* .
4. Remove the extracted directory, as it is not needed anymore:
rm -rf sofa
5. Rename SOFA's original "makefile" so it is not run and causes no
trouble:
mv src/makefile src/original-makefile
6. Create our own "src/Makefile.am" that builds "libsofa_c.a" from
the SOFA *.c and *.h files in the "src" subdirectory.
Many SOFA routines are bound to LUX subroutines or functions. The
names of the LUX subroutines or functions bound to SOFA routines
are the same as the names of the SOFA routines, but with the "iau"
prefix removed to comply with the SOFA license.