HMI_Logo HMI Ring Diagrams
Pipeline Module Specifications

pspec3

Module Version
	1.3	5 XI 2021

General Description
	pspec3 is designed to calculate the full 3-dimensional power spectra of
	a set of time series of 2-dimensional images. The input data are optionally
	apodized by a (1-x^2)^2 taper operating between specified inner and
	outer radii of the images and a similar taper operating on the time axis
	(image number). The input data series must consist of 3-dimensional
	data cubes (such as those produced by mtrack), each treated as a
	separate data record. 

Status
	Scheduled for inclusion in JSOC release 9.5
	In use for ring-diagram pipelines 2021.11.21 – 
	This version supersedes Version 1.2

	The source code and Makefile are expected to be in the JSOC CVS repository

	pspec3_v13 is a compiled standalone DRMS binary built with NetDRMS 2.4
	to run in the JSOC configuration. A versions is:
		~rick/bin/avx/pspec3_v13
	The source code and Makefile is in ~rick/src/pspec

Usage
	pspec3 [-lvx] in= InputDescriptor pspec= OutputDescriptor
	    [param= val ...]
	
Flags
	-l	output direct power spectrum rather than scaled log
	-n	do not save output record (diagnostics only)
	-v	run verbose
	-x	use double-precision calculation internally

Parameters
	in		The name of an input dataset (record selection); No default.

	segment		The name of the segment in the input data set to be used;
			ignored if there is only one 3-dimensional segment in the
			data set. Default: not specified

	pspec		The name of the output data series, which must already
			exist; record specification is based on the input data record(s)
			and the series prime keywords. No default.

	mask_in		Inner radial edge of spatial taper; Default: 0.9375

	mask_ex		Outer radial edge of spatial taper; Default: 1.0

	apodize		Inner edge of temporal taper; Default: 0.96875

	fbin		Output frequency binning; 0 -> no binning; Default: 0

	copy             A comma-separated list of keywords to be propagated as-is from
			input to output; Default: "+"

Input Data series class:
	tracked mapped data cubes from solar image data

Sample input series:
	hmi.rdVtrack_fd05
	hmi.rdVtrack_fd15
	hmi.rdVtrack_fd30
	mdi.rdVtrack_dp

Input keys used or inspected:
	CDELT3, CUNIT3, MapScale, T_STOP, T_START

	Either CDELT3 or both T_STOP and T_START must be present. If CDELT3 is
	present it is used; if CUNIT3 is missing and needed to interpret CDELT3,
	the value of CUNIT3 is assumed to be "s"

	MapScale is required for the WCS keywords in the output spectrum to be
	set; its values are expected to be in deg/pixel.

Output Data series class:
	power spectra of data cubes

Output keys set (if possible):
	CRPIX1, CRPIX2, CRPIX3, CRVAL1, CRVAL2, CRVAL3, CTYPE1, CTYPE2, CTYPE3,
	CDELT1, CDELT2, Delta_k, Delta_kx, Delta_ky, CDELT3, Delta_nu, D_OMEGA,
	Cadence, Apode_k_min, APOD_MIN, Apode_k_max, APOD_MAX, apode_f, LOG_BASE,
	DataMin, DataMax, Module, BLD_VERS, Source, Input, Created

Sample output series:
	hmi.rdVpspec_fd05
	hmi.rdVpspec_fd15
	hmi.rdVpspec_fd30
	mdi.rdVpspec_dp

Input keys propagated to output (if possible) if "+" in copy list:
	CarrTime, CarrRot, CMLon, LonHG, LatHG, LonCM, MidTime, Duration, LonSpan,
	T_START, T_STOP, Coverage, ZonalTrk, ZonalVel, MeridTrk, MeridVel,
	MapScale, Size, Width, Height, MapProj, Map_PA, PosAng, RSunRef, MAI,
	Ident

Significant changes from Previous Version
	— Fixed errors involving large input cubes (>= 2G elements)

	— Removed potentially dangerous frees of template records

Bugs in current version
	For large input data cubes (~1 Gpxl) the results may be garbage,
	for larger ones (~2 Gpxl) the input may fail altogether. The exact
	causes of these problems and consequently the exact limits of
	validity are not known, but the code has been verified to work with
	"normal" input cubes (Dopplergrams as compressed scaled shorts)
	of up to 800 Mpxl. This may no longer be applicable to the current
	version, but the limits of reliability have not been tested.

	The value of CDELT3 in the input set overrides the value of Cadence if
	propagated, but is not checked against the units field of the Cadence
	keyword, hence it will be incorrect if the Cadence units field differs
	from the value of CUNIT3.

	WCS keywords should be an acceptable (even preferred) alternative to
	MapScale as input keywords.

Valid HTML 4.01 Transitional HMI Ring Diagrams 6 Nov 2021, 13:17-0700