aboutsummaryrefslogtreecommitdiff
path: root/noao/astutil/pdm/pdmshow.x
blob: 6f8af37ae450efcd401b54621e0828f7d8e5bfa7 (plain) (blame)
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
include <mach.h>
include <ctype.h>
include <error.h>
include "pdm.h"

# PDM_SHOW -- Print information to file.

procedure pdm_show (pdmp, file, verbose)

pointer	pdmp			# pointer to PDM data structure
char	file[ARB]		# file to put the show information in
bool	verbose			# verbose output flag

int	fd, open(), i
errchk	open()

begin
	# Open the output file.
	fd = open (file, APPEND, TEXT_FILE)

	# Print information from the data structure.
	call fprintf (fd,
		    "minimum period searched = %12.12g, maximum = %g12.12\n")
	    call pargd (PDM_PMIN(pdmp))
	    call pargd (PDM_PMAX(pdmp))
	call fprintf (fd,
		    "period = %12.12g, amplitude = %12.12g, epoch = %12.12g\n")
	    call pargd (PDM_MINR(pdmp))
	    call pargd (PDM_AMPL(pdmp))
	    call pargd (PDM_EPOCH(pdmp))

	if (verbose) {
	    # Print the working data set out as x,y,in-use triplets.
	    call fprintf (fd, "The working data vector is as follows: \n")
	    do i = 1, PDM_NPT(pdmp) {
		call fprintf ( fd, "index = %d, x = %12.12g, y = %12.12g\n")
		    call pargi (i)
		    call pargd (PDM_X(pdmp,i))
		    call pargd (PDM_DY(pdmp,i))
	    }

	    if (PDM_XPHP(pdmp) != NULL) {
	        # Print the phasecurve out as x,y pairs
	        call fprintf (fd, "\nThe phase curve vector is as follows: \n")
	        do i = 1, PDM_NPT(pdmp) {
		    call fprintf ( fd, "index = %d, x = %12.12g, y = %12.12g\n")
		        call pargi (i)
		        call pargd (PDM_XPH(pdmp,i))
		        call pargd (PDM_YPH(pdmp,i))
	        }
	    }
	}

	# Close the output file.
	call close (fd)
end