FileInfo $SMEI/ucsd/gen/for/os/linux/fileinfo.f
[Previous] [Next]
 NAME:
	FileInfo
 PURPOSE:
	Obtain info about open file
 CALLING SEQUENCE:
	subroutine FileInfo(iU,cFile)
 INPUTS:
	iU	integer		logical unit number of open file
 OUTPUTS:
	None
 CALLS: ***
	AskChar, BadI4, iSearch, itrim
 CALLED BY:
	Pandora
 INCLUDE:
	include		'filparts.h'
 PROCEDURE:
 >	Calls INQUIRE to obtain information about the file and prints it on
	the screen. The program is paused until user hits any key.
 >	If iU .ne. FIL__NOUNIT it is used in an `inquire by unit number'.
 >	If iU .eq. FIL__NOUNIT then FILE is used in an `inquire by file name' (if the
	file exists).
 MODIFICATION HISTORY:
	JAN-1995, Paul Hick (UCSD)


FileSelection $SMEI/ucsd/gen/for/lib/gen/fileselection.f
[Previous] [Next]
 NAME:
	FileSelection
 PURPOSE:
	Set wildcards for locating data files
 CATEGORY:
	I/O
 CALLING SEQUENCE:
	subroutine FileSelection(cStr,cWild)
 INPUTS:
	cStr		character*(*)	info from which to construct wildcard
 OUTPUTS:
	cWild		character*(*)	file name (incl. directory) with wildcard
 CALLS: ***
	LocFirst, LocFirstLen, Say, Str2Flt, iCheckDirectory, iFilePath, iGetFileSpec
	iGetLogical [1], iGetLogical [2], iPutFileSpec, iSetFileSpec, itrim
 CALLED BY:
	BListAll, ForeignFile
 INCLUDE:
	include		'dirspec.h'
	include		'filparts.h'
 PROCEDURE:
 >	The directory information cStr has the following format,
		filename.type,root,sub1,sub2,....
	All except the first part (the filename) are optional
	'filename.type' is used to determine the file name including a wildcard.

	'root' is used to set a directory name. 'root' can be a logical (it's
	translation is substituted), a relative directory name (the working directory
	is prepended) or an absolute directory name.

	'root' is concatenated with 'sub1', 'sub2',... to form the final directory.
	This directory must exist. If it does not then program execution stops.

	'filename.type' can contain any number of substrings of the form '(n)' or '[n]' where n
	is an integer. Each substring '(n)' is replaced with n single wildcharacters.

 >	If '(n)' is omitted then 'filename.type(4)' is assumed, i.e.
	four wild characters are appended to the file type.
	E.g. 'nagoya' becomes 'nagoya.????'

 >	If 'root' is omitted then 'filename' and 'type' are checked for
	a non-zero-length prefix, and 'root'='$dat,prefix' is assumed.
	E.g. 'nagoya.????' becomes 'nagoya.????,$dat,nagoya'
	     '????.srf'    becomes '????.srf,$dat,srf'

 >	Examples: (for logical $dat = /mnt/work/dat/)
	nagoya				-->	/mnt/work/dat/nagoya/nagoya.????
	nagoya,dat,yearly		-->	/mnt/work/dat/nagoya/yearly/nagoya.????
	wind_(4).hravg,dat,insitu	-->	/mnt/work/dat/insitu/wind_????.hravg

	If tmp is not defined as a logical
	nagoya,tmp,somewhere,sub	-->	./somewhere/sub/nagoya.????
		where the leading dot is replaced by the working directory.
 MODIFICATION HISTORY:
	JUL-2000, Paul Hick (UCSD/CASS)
	APR-2002, Paul Hick (UCSD/CASS)
		Added option to specify multiple wildcard patterns
	MAY-2002, Paul Hick (UCSD/CASS)
		Added option to use square brackets instead of round brackets for
		wildcard specification. Round brackets will cause problems in
		bash unless explicit quotes are used.
	AUG-2003, Paul Hick (UCSD/CASS, pphick@ucsd.edu)
		Added option to replace (0) by single wildcard *.


FillMap $SMEI/for/lib/fillmap.f
[Previous] [Next]
 NAME:
	FillMap
 PURPOSE:
	Fills maps at a given longitude with an average of the data from
 	the other longitudes. Found a big mistake 10/30/00 BVJ. IP and IM
	were taking data from the wrong place.
 CATEGORY:
	Data processing
 CALLING SEQUENCE:
	subroutine FillMap(Mode,XCbeg,XCend,nLng,nLat,Const,DMap)
 INPUTS:
	Mode		   integer	0 - only bad values are processed
					1 - all values are processed
					2 - only good values are processed, all weighted equally
					3 - make all 90 deg. longitudes the same value
					4 - make all valid 90 deg. longitudes the same value
					5 - make all 90 deg. longitudes the same value if equatorial longitudes are valid
	XCbeg		   real		Beginning rotation values
	XCend		   real		Ending rotation value
	nLng		   integer	# Longitude points
	nLat		   integer	# Latitude points
	Const		   real		Longitude filter constant (in terms of the numbers of intervals in one rotation)
	DMap(nLng,nLat) real		Input map
 OUTPUTS:
	DMap(nLng,nLat) real		Output map
 CALLS: ***
	BadR4
 CALLED BY:
	ipsd
 PROCEDURE:
	Bad values (indicated by BadR4()) are processed
 MODIFICATION HISTORY:
	MAY, 1999 B. Jackson (STEL,UCSD)
	JUN-2001, Paul Hick (UCSD/CASS)
	    Renamed the subroutine from FillMapL to FillMap.
	    Both tomography programs (ipsd and ipsdt call this subroutine).


FillMapL $SMEI/for/tdlib/fillmapl.f
[Previous] [Next]
 NAME:
	FillMapL
 PURPOSE:
	To fill maps at a given longitude with an average of the data from
 	the other longitudes. Found a big mistake 10/30/00 BVJ. IP and IM
	were taking data from the wrong place.
 CATEGORY:
	Data processing
 CALLING SEQUENCE:
	call FillMapL(Mode,XCbeg,XCend,nLng,nLat,Const,DMap)
 INPUTS:
	Mode		   integer	0 - only bad values are processed
					1 - all values are processed
					2 - only good values are processed, all weighted equally
					3 - make all 90 deg. longitudes the same value
					4 - make all valid 90 deg. longitudes the same value
					5 - make all 90 deg. longitudes the same value if equatorial longitudes are valid
	XCbeg		   real		Beginning rotation values
	XCend		   real		Ending rotation value
	nLng		   integer	# Longitude points
	nLat		   integer	# Latitude points
	Const		   real		Longitude filter constant (in terms of the numbers of intervals in one rotation)
	DMap(nLng,nLat) real		Input map
 OUTPUTS:
	DMap(nLng,nLat) real		Output map
 CALLS: ***
	BadR4
 CALLED BY:
	FillMaptN, ipsdt
 PROCEDURE:
	Bad values (indicated by BadR4()) are processed
 MODIFICATION HISTORY:
	MAY, 1999 B. Jackson (STEL,UCSD)


FillMapOLS $SMEI/for/tdlib/fillmapols.f
[Previous] [Next]
 NAME:
	FillMapOLS
 PURPOSE:
	To fill maps at opposite the region of interest with a smooth average of the 
	data from the other nearby longitudes. 
 CATEGORY:
	Data processing
 CALLING SEQUENCE:
	call FillMapOLS(Mo,XCbe,XCint,nLng,nLat,nT,N,nTmax,RRS,Speed,Const,AEmax,AEmin,AEang,DMap)
 INPUTS:
	Mo		   integer	1 - Smooth/interpolate region most distant from Earth
					2 - Limit values farthest from Earth
	XCbe(2,nT)	   real		Boundary values of time maps
	XCint(NTmax)	   real		Start and end times of intervals
	nLng		   integer	# Longitude points
	nLat		   integer	# Latitude points
	nT		   integer	# Time points
	N		   integer	Map time value
	nTmax		   integer	Total # of map time values
	RRS		   real		Deconvolution source surface distance
	Speed		   real		Average speed used for data analysis
	Const		   real		Longitude filter constant (in terms of the numbers of intervals in one rotation)
	AEmax		   real		Anti-Earth maximum value
	AEmin		   real		Anti-Earth minimum value
	AEang		   real		Angle from Earth to begin longitude limit
	DMap(nLng,nLat,nT) real		Input map
 OUTPUTS:
	DMap(nLng,nLat,nT) real		Output map
 CALLS: ***
	BadR4
 CALLED BY:
	ipsdt
 PROCEDURE:
	Bad values (indicated by BadR4()) are processed
 MODIFICATION HISTORY:
	MAY, 1999 B. Jackson (STEL,UCSD)


FillMaptN $SMEI/for/tdlib/fillmaptn.f
[Previous] [Next]
 NAME:
	FillMaptN
 PURPOSE:
	To fill maps at a given time with an average of the data from
 	the other time maps from the same longitude and latitude.
	Error found in this subroutine 10/15/00 B. Jackson (improper 
	DMNT initalization)
 CATEGORY:
	Data processing
 CALLING SEQUENCE:
	call FillMaptN(nTTVa,XCbe,nLng,nLat,nT,CONST,DMap,DMp)
 INPUTS:
	nTTVa		   integer	0  - cycle through all values of nT
					>0 - use nTTVa as the one and only value of nT to correct
	XCbe		   real		Beginning (and ending) rotation values
	nLng		   integer	# Longitude points
	nLat		   integer	# Latitude points
	nT		   integer	# DMap times
	CONST		   real		Time filter constant (in terms of the time interval)
	DMap(nLng,nLat,nT) real		Input map
 OUTPUTS:
	DMap(nLng,nLat,nT) real		Output map
 SCRATCH ARRAY:
	DMp(nLng)	   real		NOT USED (pph)
 CALLS: ***
	BadR4, FLINT, FillMapL
 CALLED BY:
	FillWholeT, ipsdt
 PROCEDURE:
	Bad values (indicated by BadR4()) are not processed
 MODIFICATION HISTORY:
	MAY, 1999 B. Jackson (STEL,UCSD)


FillWholeT $SMEI/for/tdlib/fillwholet.f
[Previous] [Next]
 NAME:
	FillWholeT
 PURPOSE:
	To fill Whole T Maps from maps at the other times

 CATEGORY:
	Data processing
 CALLING SEQUENCE:
	subroutine FillWholeT(Mode,Nit,NiterT,XCbe,nLng,nLat,NT,nLngLat,ConsTM,DMap,DDD)
 INPUTS:
	Mode		   integer	0 - density
					1 - velocity
	Nit		   integer	iteration number
	NiterT		   integer	Total number of iterations
	XCbe(2,NT)	   real		Beginning (and ending) rotation values
	nLng		   integer	# of Longitudes
	nLat		   integer	# of Latitudes
	nT		   integer	# of times
	ConsTM		   real		Longitude filter constant (in terms of the numbers of intervals in one rotation)
	DMap(nLng,nLat,NT) real		Input map
 SCRATCH ARRAY:
	DDD(nLng)
 OUTPUTS:
	DMap(nLng,nLat) real		Output map
 CALLS: ***
	ArrR4GetMinMax, BadR4, FillMaptN
 CALLED BY:
	ipsdt
 PROCEDURE:
	Bad values (indicated by BadR4()) are processed
 MODIFICATION HISTORY:
	MAY, 1999 B. Jackson (STEL,UCSD)


filparts $SMEI/ucsd/gen/for/h/filparts.h
[Previous] [Next]
 NAME:
	filparts
 PURPOSE:
	Defines named constant for use with SetFileSpec, PutFileSpec and GetFileSpec
	to avoid having to use the integer values themselves.
 CALLING SEQUENCE:
	include		'filparts.h'
 INCLUDED BY:
	Average, BField_Get, BListAll, BList_NSO_NOAA, BList_WSO, BList_WSO_NOAA, BRead_WSO
	Connect, Dust, FileInfo, FileSelection, ForeignArgFind, ForeignArgSet, HERDISK
	HOSRunningMean, MapReadTimes, NODAT, NicHdr, OGetRecord, OSExitCmd, ParseRepair, Peep
	ReadVIPS, ReadVIPSn, SD, SD_TREE, Say, SetGipsy, SetLog2Dir, SetRotations, SortIPS
	T3D_marker, T3D_marker_num, TheFit, Time2smei_eph, UlyssesOrbit, WR2DARR, bAskChar
	bCompressNic, bGetLun, bHOSName, bOSFind, bOpenFile, bTempFile, bUncompressNic
	bWriteNic, dailyips [1], dailyips [2], iAskChar, iCheckDirectory, iDir2File
	iFile2Dir, iFilePath, iFltArr, iGetDefaultDir, iGetLogical [1], iGetLun, iHOSInfo
	iHideLogical, iOSCheckDirectory, iOSCopyFile, iOSgunzip, iPutFileSpec, iSearch
	iSetDefaultDir, iSetFileSpec, iUniqueName, ice_write, jpl_state, rice
	smei_Time2Split, smei_base, smei_cal, smei_cal_build, smei_cal_c3mask
	smei_cal_get, smei_cal_group, smei_cal_read, smei_cal_write, smei_foreign
	smei_frm_base, smei_frm_fts, smei_frm_fts_base, smei_frm_get, smei_frm_getfirst
	smei_frm_getlist, smei_frm_getnext, smei_frm_path, smei_frm_ped_guess
	smei_frm_read, smei_frm_write, smei_get_glare, smei_get_lsff, smei_get_starmask
	smei_orb, smei_orb_get, smei_orb_read, smei_orb_write, smei_orbit_info2
	smei_sky_iread, smei_sky_read, smei_skyd, smei_skyd_combine, smei_skyd_fill
	smei_skyd_go, smei_skyd_scan, smei_skyd_size, smei_skyd_sky, sprint
 PROCEDURE:


FixModel $SMEI/for/lib/fixmodel.f
[Previous] [Next]
 NAME:
	FixModel
 PURPOSE:
	To determine the change needed for the various lines of sight (LOS)
	[g = m/<m> ==> dm = <m> dg]
 CATEGORY:
	Data processing
 CALLING SEQUENCE:
	subroutine FixModel(ID,NL,OBSV,MODV,PW,NBS,SIG,FIXR,SSIG,RAT)
 INPUTS:
	ID		integer	1: Fix V model
				2: Fix G model
	NL		integer	# data points
	OBSV(NL)	real	Observed values
	MODV(NL)	real	Model values
	SIG		real	previous convergence criteria
	PW		real    Power of G
	NBS(NL)		integer Bad source
 OUTPUTS:
	SIG		real	new convergence criteria
	FIXR(NL)		real	Ratio of observed to model values	????
	SSIG(NL)	real	deviation from mean			????
	RAT		real	Ratio by which to multiply DEN1AU (G only)
 CALLS: ***
	Say, itrim
 CALLED BY:
	ipsd
 PROCEDURE:
 MODIFICATION HISTORY:
	NOV, 1995 B. Jackson (STEL,UCSD)


FixModeltdn $SMEI/for/tdlib/fixmodeltdn.f
[Previous] [Next]
 NAME:
	FixModeltdn
 PURPOSE:
	To determine the change needed for the various lines of sight (LOS)
	[g = m/<m> ==> dm = <m> dg]
 CATEGORY:
	Data processing
 CALLING SEQUENCE:
	call FixModeltdn(ID,NL,OBSV,MODV,PW,NBS,SIG,FIX,SSIG,RAT)
 INPUTS:
	ID		integer	1: Fix V model
				2: Fix G model
	NL		integer	# data points
	OBSV(NL)	real	Observed values
	MODV(NL)	real	Model values
	SIG		real	previous convergence criteria
	PW		real    Power of G
	NBS(NL)		integer Bad source
 OUTPUTS:
	SIG		real	new convergence criteria
	FIX(NL)		real	Ratio of observed to model values	????
	SSIG(NL)	real	deviation from mean			????
	RAT		real	Ratio by which to multiply DEN1AU (G only)
 CALLS: ***
	Say, itrim
 CALLED BY:
	ipsdt
 PROCEDURE:
 MODIFICATION HISTORY:
	NOV, 1995 B. Jackson (STEL,UCSD)


FLINT $SMEI/ucsd/gen/for/lib/math/flint.f
[Previous] [Next]
 NAME:
	FLINT
 PURPOSE:
	Linear interpolation in N dimensions
 CALLING SEQUENCE:
	function FLINT(NN,ND,F,P,EPS)
 INPUTS:
	NN	integer		N=abs(NN): # dimensions. If NN<0 then values in F equal
				to BadR4() are considered 'invalid' (see PROCEDURE).
	ND(N)	integer		size of each dimension. Up to 10 degenerate dimensions
				of 1 element are allowed (e.g. F(10,1,10,1,10))
	F(*)	real		array with function values on which to interpolate
	P(N)	real		point in N-dim cube, using the array indices as coordinate axes
	EPS	real		controls interpolation very close to grid lines (see PROCEDURE)
 OUTPUTS:
	Result	real		the interpolated value
 CALLS: ***
	ArrI4Copy, ArrR4Copy, BadR4
 CALLED BY:
	BuildSourceSurface, CopyDtoDVN, CopyVtoVDN, CosdLookup, ExtractMap, FillMaptN
	GaussLookup, Get2Dval, Get3DTval, Get3Dval, Get4Dval, GetLOSValue, MkShift, MkShiftdn
	SW_Model_Kinematic, SindLookup, Write3D_bb, Write3D_bb_UT, Write3D_bb_XC
	Write3D_bbtt, Write3D_nv, Write3D_nv_UT, Write3D_nv_XC, shift_MOD [1]
	shift_MOD [2], sim_MOD, surf_MOD
 SEE ALSO:
	FLINT8
 RESTRICTIONS:
 >	The coordinate values of P are best kept inside the range for each
	dimension: 1<=P(i)<=ND(i), i.e. the point should lie 'inside'
	the 'volume' covered by the array F.
	Strictly speaking extrapolation is possible for one unit in each index:
	as long as 0<=P(i)<=ND(i)+1 the result will be useful.
	(in particular, for P(I)<0 the calculation of the principal corner
	will not work properly). In this case the value BadR4() is returned.
 >	Currently 10 degerate dimensions are allowed. This is set as parameter N1MAX.
	If there are more than N1MAX degenerate dimensions then the value BadR4()
	is returned.
 PROCEDURE:
 >	The interpolating function is a linear function in all dimensions which
	matches the function values F in all corners of the N-dimensional cube.
	1-dim:	f = a+bx
	2-dim:	f = a+bx+cy+dxy
	3-dim:	f = a+bx+cy+dz+exy+fyz+gxz+hxyz
	etc.
	The constants are uniquely determined by the condition that the
	function values in the corners must be matched:
	1-dim:	f = (1-wx)F(0)+wx*F(1)
	2-dim:	f = (1-wx)(1-wy)F(0,0)+(1-wx)wy*F(0,1)+
		       wx*(1-wy)F(1,0)+   wx*wy*F(1,1)
	3-dim:	f = (1-wx)(1-wy)(1-wz)F(0,0,0)+
		    (1-wx)(1-wy)   wz*F(0,0,1)+
		    (1-wx)   wy*(1-wz)F(0,1,0)+
		    (1-wx)   wy*   wz*F(0,1,1)+
		       wx*(1-wy)(1-wz)F(1,0,0)+
		       wx*(1-wy)   wz*F(1,0,1)+
		       wx*   wy*(1-wz)F(1,1,0)+
		       wx*   wy*   wz*F(1,1,1)
	etc. for higher dimensions.
 >	The array F is declared in the calling program as
		real	F(ND(1),ND(2),..,ND(N))
 >	The array P defines a point in the N-dim cube where the interpolated
	function value is needed.
 >	The principal corner NP is the array element nearest to P.
	with all indices smaller than the coordinate values of P.
 >	The weights W are defined as P-NP. By definition W >= 0.
 >	Array NP selects an element in the N-dim array F:
		F(NP(1)  ,NP(2)  ,..,NP(N))
	This is one corner (the principal corner) of an N-dimensional cube.
	The other corners are:
		F(NP(1)+n1,NP(2)+n2,..,NP(N)+nn)
	where n1,n2,..,nn take on values 0 and 1 (the principal corner
	has n1=n2=..=nn=0). The N-dimensional cube has a total of 2^N corners.

	Use the array indices as coordinate system:
	Point (1,1,..,1) has function value F(1,1,..,1).
	Point (ND(1),ND(2),..,ND(N)) has function value F(ND(1),ND(2),..,ND(N)).
	etc. for all other elements in array F.

	The weights W define a point P inside the N-dimensional cube.
		P(NP(1)+W(1),NP(2)+W(P),..,NP(N)+W(N))
	i.e. the weights W are the distances of P to the principal corner
	along each of the coordinate axes.
 >	If NN<0 then, if one or more of the corners of the N-dim cube contain
	the value BadR4() (defined in math.h), then the value BadR4() is
	returned. Typically BadR4() is used to flag entries in F as 'invalid'.
 >	For degenerate dimensions the corresponding coordinate in P is ignored.
 >	If the condition 0 <= P(i) <= ND(i)+1 is violated on any of the
	non-degenerate dimensions (ND(i) > 1) than the result BadR4() is
	returned.

 >	The constant EPS influences how interpolation near grid lines is done.
	If the point P is closer than EPS to a side of an N-dim cube
	then P is assumed to lie exactly on the side of the cube.
	This argument was added primarily to handle differences between
	compilers (specifically Absoft and G77) when P is close to the side
	of a cube. Typically EPS will be no larger than the machine precision,
	e.g. as returned by TinyR4. In all cases I have seen so far
	setting EPS to a non-zero small value was unnecessary, and could have
	been avoided with a little bit of careful coding. Preferably EPS is
	set to zero.

 MODIFICATION HISTORY:
	APR-1996, Paul Hick (UCSD/CASS)
	MAY-1997, Paul Hick (UCSD/CASS)
	    added BadR4() check
	DEC-1999, Paul Hick (UCSD/CASS)
	    added capacity to deal with degenerate dimensions; added FLINT8
	DEC-2000, Paul Hick (UCSD/CASS)
	    removed stop statement used to stop execution if there are more
	    then N1MAX degenerate dimensions. Now the value BadR4() is returned.
	AUG-2001, Paul Hick (UCSD/CASS)
	    added a check for zero weight of any of the corners involved in the
	    interpolation. If the weight is zero the corner now is ignored if
	    the function value is bad (previously a bad corner would result in
	    a bad return value). As a result if the point P is on a face of the
	    N-dim cube only the corners of the face matter (i.e. an (N-1)-dim
	    interpolation is done); if P is on an edge of the N-dim cube then an
	    (N-2)-dim interpolation is done; etc.
	AUG-2001, Paul Hick (UCSD/CASS)
	    A bad value would be returned if any of the coordinates P(I) was
	    more than one unit outside the range [1,ND(I)], even for degenerate
	    dimensions. Now the coordinate P(I) for a degerate dimension is
	    completely ignored (effectively it is set to P(I) = 1; the value is
	    not explicitly used in the calculation).
	SEP-2001, Paul Hick (UCSD/CASS; pphick@ucsd.edu)
	    Added argument EPS


FLINT8 $SMEI/ucsd/gen/for/lib/math/flint8.f
[Previous] [Next]
 NAME:
	FLINT8
 PURPOSE:
	Linear interpolation in N dimensions.
 CALLING SEQUENCE:
	double precision function FLINT8(NN,ND,F,P,EPS)
 CALLS: ***
	ArrI4Copy, ArrR8Copy, BadR8
 CALLED BY:
	AdjustJDCar, ExtractInsitu, JD_SYNC, ReadVIPS, ReadVIPSLOSCheck, ReadVIPSLOSCheckn
	ReadVIPSn, SetGrid, Write3D_bb_UT, Write3D_nv_UT, ipsd
 SEE ALSO:
	FLINT
 PROCEDURE:
	Double precision version of FLINT.
	Same syntax as FLINT, but uses double precision
	instead of real*4 arguments.
 MODIFICATION HISTORY:
	SEP-2001, Paul Hick (UCSD/CASS; pphick@ucsd.edu)


FlipFlop $SMEI/ucsd/gen/for/lib/gen/flipflop.f
[Previous] [Next]
 NAME:
	FlipFlop
 PURPOSE:
	Rearrange 2D array
 CALLING SEQUENCE:
	subroutine FlipFlop(N,NX,NY,Z)
 INPUTS:
	N		integer		0,1,2,3
	NX		integer		horizontal array dim
	NY		integer		vertical array dim
	Z(NX,NY)	real		2D array
 OUTPUTS:
	Z(NX,NY)	real		rearranged array
 CALLED BY:
	iFltArr
 PROCEDURE:
 >	N = 1 : produces a mirror image (map 1,..,NX to NX,..,1)
 >	N = 2 : flips array upside down (map 1,..,NY to NY,..,1)
 >	N = 3 : mirror image and upside down
 >	All other values: array unchanged
 MODIFICATION HISTORY:
	JUL-1995, Paul Hick (UCSD/CASS; pphick@ucsd.edu)


Flt2Str $SMEI/ucsd/gen/for/lib/str/flt2str.f
[Previous] [Next]
 NAME:
	Flt2Str
 PURPOSE:
       Convert floating point number to string
 CATEGORY:
	Strings: write floating point number to string
 CALLING SEQUENCE:
	integer function Flt2Str(Fin,Nin,cFlt)
 INPUTS:
	Fin	real		floating point number to be converted
	Nin	integer		(see PROCEDURE)
 OUTPUTS:
	cFlt	character*(*)	resulting string
	Flt2Str	integer		number of useful characters in cFlt
 CALLED BY:
	AskR4, BList_NSO_NOAA, BList_WSO_NOAA, BuildSourceSurface, CheckMass
	IPSConstraints, LOSTweak, MAP_TZERO, Peep, ReadVIPS, ReadVIPSLOSCheck
	ReadVIPSLOSCheckn, ReadVIPSn, T3D_fill_global, T3D_fill_time, T3D_get, T3D_get_all
	T3D_get_grid, T3D_get_mode, T3D_header, T3D_iget, T3D_iset, T3D_set, T3D_set_mode
	TheFit, XCvarFormat, cFlt2Str, iFltArr, ice_write, ipsd, ipsdt, ipsg2, ipsg2s, ipsg2t
	smei_cal_add, smei_cal_build, smei_cal_write, smei_frm_base, smei_skyd_combine
	smei_skyd_fill, smei_skyd_flush, smei_skyd_fts, smei_skyd_init, smei_skyd_make
	smei_skyd_size, smei_skyd_sky, smei_skyd_sort
 INCLUDE:
	include		'str2str_inc.h'
 CALLS: ***
	Int2Str, Int2StrSet, LocFirst, icompress
 SEE ALSO:
	Int2Str, Str2Str, cFlt2Str
 PROCEDURE:
 >	Round-off is done properly (I think)
 >	Maximum number of digits behind the decimal point is 8
 >	ndig=mod(Nin,100) is the number of digits behind the decimal point
 >	The output string is made as short as possible. Trailing zero's in the
	decimal fraction are dropped (unless ndig < 0). A zero decimal fraction
	is dropped, including decimal point.
 >	If ndig < 0 then trailing zero's in the decimal fraction are retained
	(this implies that a zero fraction is not automatically dropped)
 >	nexp = abs(Nin)/100 determines the range of numbers printed in F 
	format: 0.1 <= Fin < 10^nexp is printed in F format. Numbers outside
	this range are printed in E format.
 MODIFICATION HISTORY:
	AUG-1995, Paul Hick (UCSD)


fncWZ $SMEI/ucsd/gen/for/lib/io/fncwz.f
[Previous] [Next]
 NAME:
	fncWZ
 PURPOSE:
	Sampel function to be supplied to iFltArr
 CALLING SEQUENCE:
	function fncWZ(Z1,Z2)
 INPUTS:
	Z1	real
	Z2	real
 OUTPUTS:
	R	real	Z1+Z2
 CALLED BY:
	ExpandSW, MKVTRACE, READ_HOS, iReadProxyMap, iReadProxyMapN
 EXTERNAL BY:
	ExpandSW, MKVTRACE, READ_HOS
 MODIFICATION HISTORY:
	SEP-2007, Paul Hick (UCSD/CASS)
	    Extracted from ifltarr.f


ForeignArg $SMEI/ucsd/gen/for/lib/what/foreignarg.f
[Previous] [Next]
 NAME:
	ForeignArg
 PURPOSE:
	Get input from DCL command line invoking main program executable
 CATEGORY:
	Command line processing
 CALLING SEQUENCE:
	subroutine ForeignArg(cSep,iVar,cVar,cArg)
 INPUTS:
	cSep	character*1	Separator character used to delimit individual
				arguments on command line
	iVar	integer		maximum # of (cSep-separated) entries read
				from command line into cVar
 OUTPUTS:
	iVar	integer		actual number of entries read into cVar
				(after argument switches have been removed for
				ForeignArg and ForeignArgs)
	cVar	character(iVar)*(*)
				values of valid entries
	cArg	character*(*)	values of argument switches (single string)
 CALLED BY:
	ForeignArgs, HERDISK, Peep, SD, Time2Time, dailyips [1], dailyips [2], ipsd, ipsdt, ipsg2
	ipsg2s, ipsg2t, mkenv, rice, smei_foreign, sprint
 SEE ALSO:
	ForeignArgs, ForeignInput
 CALLS: ***
	LocFirstLen, Say, cInt2Str, iOSGetForeign, itrim, uppercase
 INCLUDE:
	include		'dirspec.h'
 RESTRICTIONS:
 >>>	The separator character cSep must be only one character long.
	At most 500 characters are read from the DCL command line.

 >	The function iOSGetForeign is a system dependent function.
	Currently versions are available for VMS, NT and Unix/Linux.
 >	Only the first iVar elements of cVar and the first iArg elements of 
	cArg contain valid entries.
 >	No warning is given if # arguments on the command line exceed the
	input values of iVar or iArg, or if they do not fit into the cArg
	string (they will simply be ignored).
 PROCEDURE:
 >	iOSGetForeign is used to read the argument list into the character*200
	string. The string is interpreted using the cSep character as delimiter.
 >	A switch begins at the character '/' and ends at the next cSep, blank or
	'/'. All switches are concatenated and returned in cArg in the form
	'/switch1/switch2/switch3'. Only non-zero length switches are stored.
 >	Non-switches are stored in the cVar array.
 MODIFICATION HISTORY:
	MAR-1995, Paul Hick (UCSD/CASS)
	JUN-2006, Paul Hick (UCSD/CASS; pphick@ucsd.edu)
	    Added check for cSwitch followed by numeric char to escape
	    minus signs on Linux.


ForeignArgFind $SMEI/ucsd/gen/for/lib/what/foreignargfind.f
[Previous] [Next]
 NAME:
	ForeignArgFind
 PURPOSE:
	Check keyword arguments for consistency
	(internal use only)
 CALLING SEQUENCE:
	subroutine ForeignArgFind(id,cStr,cName,i,k)
 INPUTS:
	id		integer		if id=0 search for keyword followed
					by equal sign.
					if id=1 search for keyword alone
	cStr*(*)	character	full list of keywords
	cName*(*)	character	keyword to search for
 OUTPUTS:
	i		integer		location in cStr where cName
					(possibly abbreviated) was 
					found. i=0 if keyword cName was
					not found.
	k		integer		if cName was found (i NOT equal zero)
					this is the position in cStr after the
					(possibly abbreviated) keyword cName
					For id=0 it is the position after the
					equal sign. 
 CALLED BY:
	ForeignArgSet, ForeignI2ArgN, ForeignI4ArgN, ForeignR4ArgN, ForeignR8ArgN
	ForeignStrArg
 INCLUDE:
	include		'filparts.h'
	include		'dirspec.h'
 CALLS: ***
	LocFirst, Say, itrim
 PROCEDURE:
	If the keyword (or one of its abbreviations is found, but is not
	unique then the program is aborted.
 MODIFICATION HISTORY:
	FEB-2005, Paul Hick (UCSD/CASS)
	JUN-2006, Paul Hick (UCSD/CASS; pphick@ucsd.edu)
	    Added documentation.


ForeignArgs $SMEI/ucsd/gen/for/lib/what/foreignargs.f
[Previous] [Next]
 NAME:
	ForeignArgs
 PURPOSE:
	Get input from DCL command line invoking main program executable
	Split off argument switches
 CATEGORY:
	Command line processing
 CALLING SEQUENCE:
	subroutine ForeignArgs(cSep,iVar,cVar,iArg,cArg)
 INPUTS:
	cSep	character*1	Separator character used to delimit individual
				arguments on command line
	iVar	integer		maximum # of (cSep-separated) entries read
				from command line into cVar
	iArg	integer		maximum # of argument switches extracted from
				cVar array
 OUTPUTS:
	iVar	integer		actual number of entries read into cVar
				(after argument switches have been removed for
				ForeignArg and ForeignArgs)
	cVar	character(iVar)*(*)
				values of valid entries
	iArg	integer		actual number of argument switches found
	cArg	character(iArg)*(*)
				values of argument switches (array of strings)
 SEE ALSO:
	ForeignInput
 CALLS: ***
	ForeignArg, LocFirstLen, itrim
 INCLUDE:
	include		'dirspec.h'
 RESTRICTIONS:
 >>>	The separator character cSep must be only one character long.
	At most 500 characters are read from the DCL command line.

 >	Only the first iVar elements of cVar and the first iArg elements of 
	cArg contain valid entries.
 >	No warning is given if # arguments on the command line exceed the
	input values of iVar or iArg, or if they do not fit into the cArg
	string (they will simply be ignored).
 PROCEDURE:
 >	iOSGetForeign is used to read the argument list into the character*200
	string cStr. cStr is interpreted using the cSep character as delimiter.
 >	A switch begins at the character '/' and ends at the next cSep, blank or
	'/'. Switches are returned in the cArg array with each element in the form
	'/switch'. Only non-zero length switches are stored.
 MODIFICATION HISTORY:
	MAR-1995, Paul Hick (UCSD/CASS; pphick@ucsd.edu)


ForeignArgSet $SMEI/ucsd/gen/for/lib/what/foreignargset.f
[Previous] [Next]
 NAME:
	ForeignArgSet
 PURPOSE:
 CALLING SEQUENCE:
	logical function ForeignArgSet(cStr,cName)
 INPUTS:
	cStr		character*(*)	string with keywords
	cName		character*(*)	name of keyword
 OUTPUTS:
	ForeignArgSet	logical		.TRUE. if keyword is set
					.FALSE if keyword is NOT set.
 CALLED BY:
	smei_base, smei_cal, smei_foreign, smei_frm_ok, smei_orb, smei_skyd, smei_skyd_fts
	smei_skyd_init, smei_skyd_make, smei_skyd_sky
 INCLUDE:
	include		'dirspec.h'
	include		'filparts.h'
 CALLS: ***
	ForeignArgFind, LocFirst, itrim
 MODIFICATION HISTORY:
	NOV-2004, Paul Hick (UCSD/CASS; pphick@ucsd.edu)


ForeignFile $SMEI/ucsd/gen/for/lib/what/foreignfile.f
[Previous] [Next]
 NAME:
	ForeignFile
 PURPOSE:
	Select a directory using foreign input information
 CATEGORY:
	Environment
 CALLING SEQUENCE:
	subroutine ForeignFile(nVar,cVar,cKey,cWild)
 INPUTS:
	nVar		integer		# valid entries in cVar
					setting the 1st argument to -nVar-1 < 0
					prevents setting cWild to the default if the
					key is not found; instead cWild=' ' is returned.
	cVar(*)*(*)	character	foreign input array
					(these two arguments typically are output
					arguments from a call to ForeignInput)
	cKey*(*)	character	key string to select entry in cVar
 OUTPUTS:
	cWild*(*)	character	directory and file selection
 CALLS: ***
	FileSelection, LocFirst, itrim, lowercase, uppercase
 CALLED BY:
	BField_Choose, BField_Get, ipsd, ipsdt, ipsg2, ipsg2s, ipsg2t
 SEE ALSO:
	ForeignInput
 PROCEDURE:
	All entries in cVar are searched for the string cKey with the equal
	sign appended. If found than part of the cVar entry trailing the
	equal sign is processed using FileSelection.
	If no match is found then the string cKey,,daily is processed.
 EXAMPLE:
	If cVar(1) = 'nagoya=nagoya,dat,nagoya,yearly' then
		call SetForeignDir(1,cVar,'nagoya',cWild)
	will return
		cWild = /mnt/work/dat/nagoya/yearly
	if 'dat' is defined as a logical pointing to /mnt/work/dat
	The same is accomplished using the shorthand
	cVar(1) = 'nagoya=nagoya,,yearly'
 MODIFICATION HISTORY:
	AUG-2000, Paul Hick (UCSD/CASS)
	JUN-2003, Paul Hick (UCSD/CASS; pphick@ucsd.edu)
		Added option to input negative nVar.


ForeignI2Arg $SMEI/ucsd/gen/for/lib/what/foreigni2arg.f
[Previous] [Next]
 NAME:
	ForeignI2Arg
 PURPOSE:
	Extract integer*2 value from keyword/value pair
 CALLING SEQUENCE:
	subroutine ForeignI2Arg(cStr,cName,Def,Val)
 INPUTS:
	cStr		character*(*)	string with keywords
	cName		character*(*)	name of keyword
	Def		integer*2	value assigned if keyword not present
 OUTPUTS:
	Val		integer*2	value of keyword
 CALLS: ***
	ForeignI2ArgN
 MODIFICATION HISTORY:
	NOV-2004, Paul Hick (UCSD/CASS)
	JUN-2006, Paul Hick (UCSD/CASS; pphick@ucsd.edu)
	    Old ForeignI2Arg was used to make ForeignI2ArgN.
	    New ForeignI2Arg is one-line interface to ForeignI2ArgN


ForeignI2ArgN $SMEI/ucsd/gen/for/lib/what/foreigni2argn.f
[Previous] [Next]
 NAME:
	ForeignI2ArgN
 PURPOSE:
	Extract multiple integer*2 values from keyword/value pair
 CALLING SEQUENCE:
	subroutine ForeignI2ArgN(cStr,cName,Def,nVal,Val)
 INPUTS:
	cStr		character*(*)	string with keywords
	cName		character*(*)	name of keyword
	Def		integer*2	value assigned if keyword not present
	nVal		integer		max nr of values extracted
 OUTPUTS:
	nVal		integer		actual nr of values extracted
					(if more than nVal numbers were extracted
					then the negative of the input nVal is
					returned; see Str2Flt)
	Val(nVal)	integer*2	value of keyword
					If less then the input nVal are found then
					the remaining values are set to the default	
 CALLED BY:
	ForeignI2Arg
 INCLUDE:
	include		'dirspec.h'
 CALLS: ***
	ForeignArgFind, LocFirstLen, Str2Int, itrim
 MODIFICATION HISTORY:
	NOV-2004, Paul Hick (UCSD/CASS)
	JUN-2006, Paul Hick (UCSD/CASS; pphick@ucsd.edu)
	    Modified to skip past cSwitch when it is followed by a
	    numeric char (123456789.). This allows negative value to be
	    specified on Linux


ForeignI4Arg $SMEI/ucsd/gen/for/lib/what/foreigni4arg.f
[Previous] [Next]
 NAME:
	ForeignI4Arg
 PURPOSE:
	Extract integer*4 value from keyword/value pair
 CALLING SEQUENCE:
	subroutine ForeignI4Arg(cStr,cName,Def,Val)
 INPUTS:
	cStr		character*(*)	string with keywords
	cName		character*(*)	name of keyword
	Def		integer		value assigned if keyword not present
 OUTPUTS:
	Val		integer		value of keyword
 CALLS: ***
	ForeignI4ArgN
 CALLED BY:
	smei_base, smei_foreign, smei_frm_ok, smei_orb, smei_skyd, smei_skyd_fts
	smei_skyd_init, smei_skyd_make, smei_skyd_sky
 MODIFICATION HISTORY:
	NOV-2004, Paul Hick (UCSD/CASS)
	JUN-2006, Paul Hick (UCSD/CASS; pphick@ucsd.edu)
	    Old ForeignI4Arg was used to make ForeignI4ArgN.
	    New ForeignI4Arg is one-line interface to ForeignI4ArgN


ForeignI4ArgN $SMEI/ucsd/gen/for/lib/what/foreigni4argn.f
[Previous] [Next]
 NAME:
	ForeignI4ArgN
 PURPOSE:
	Extract multiple integer*4 value from keyword/value pair
 CALLING SEQUENCE:
	subroutine ForeignI4ArgN(cStr,cName,Def,nVal,Val)
 INPUTS:
	cStr		character*(*)	string with keywords
	cName		character*(*)	name of keyword
	Def		integer		value assigned if keyword not present
	nVal		integer		max nr of values extracted
 OUTPUTS:
	nVal		integer		actual nr of values extracted
					(if more than nVal numbers were extracted
					then the negative of the input nVal is
					returned; see Str2Flt)
	Val		integer		value of keyword
					If less then the input nVal are found then
					the remaining values are set to the default	
 CALLED BY:
	ForeignI4Arg
 INCLUDE:
	include		'dirspec.h'
 CALLS: ***
	ForeignArgFind, LocFirstLen, Str2Int, itrim
 MODIFICATION HISTORY:
	NOV-2004, Paul Hick (UCSD/CASS)
	JUN-2006, Paul Hick (UCSD/CASS; pphick@ucsd.edu)
	    Modified to skip past cSwitch when it is followed by a
	    numeric char (123456789.). This allows negative value to be
	    specified on Linux


ForeignInput $SMEI/ucsd/gen/for/lib/what/foreigninput.f
[Previous] [Next]
 NAME:
	ForeignInput
 PURPOSE:
	Get input from DCL command line invoking main program executable
 CATEGORY:
	Command line processing
 CALLING SEQUENCE:
	subroutine ForeignInput(cSep,iVar,cVar)
 INPUTS:
	cSep	character*1	Separator character used to delimit individual
				arguments on command line
	iVar	integer		maximum # of (cSep-separated) entries read
				from command line into cVar
 OUTPUTS:
	iVar	integer		actual number of entries read into cVar
	cVar	character(iVar)*(*)
				values of valid entries
 CALLED BY:
	HOSPlot, libarg, timer
 SEE ALSO:
	ForeignArg, ForeignArgs
 CALLS: ***
	LocFirstLen, iOSGetForeign, uppercase
 INCLUDE:
	include		'dirspec.h'
 RESTRICTIONS:
 >>>	The separator character cSep must be only one character long.
	At most 500 characters are read from the DCL command line.

 >	The function iOSGetForeign is a system dependent function.
	Currently versions are available for VMS, NT and Unix/Linux.
 >	Only the first iVar elements of cVar contain valid entries.
 >	No warning is given if # arguments on the command line exceed the
	input values of iVar or iArg, or if they do not fit into the cArg
	string (they will simply be ignored).
 PROCEDURE:
	iOSGetForeign is used to read the argument list into the character*200
	string. The cStr is split at every cSep and every space. The separate
	components are returned in cVar.
 MODIFICATION HISTORY:
	MAR-1995, Paul Hick (UCSD/CASS; pphick@ucsd.edu)


ForeignR4Arg $SMEI/ucsd/gen/for/lib/what/foreignr4arg.f
[Previous] [Next]
 NAME:
	ForeignR4Arg
 PURPOSE:
	Extract single real*4 value from keyword/value pair
 CALLING SEQUENCE:
	subroutine ForeignR4Arg(cStr,cName,Def,Val)
 INPUTS:
	cStr		character*(*)	string with keywords
	cName		character*(*)	name of keyword
	Def		real		value assigned if keyword not present
 OUTPUTS:
	Val		real		value of keyword
 CALLS: ***
	ForeignR4ArgN
 CALLED BY:
	smei_base
 MODIFICATION HISTORY:
	NOV-2004, Paul Hick (UCSD/CASS)
	JUN-2006, Paul Hick (UCSD/CASS; pphick@ucsd.edu)
	    Old ForeignR4Arg was used to make ForeignR4ArgN.
	    New ForeignR4Arg is one-line interface to ForeignR4ArgN


ForeignR4ArgN $SMEI/ucsd/gen/for/lib/what/foreignr4argn.f
[Previous] [Next]
 NAME:
	ForeignR4ArgN
 PURPOSE:
	Extract multiple real*4 value from keyword/value pair
 CALLING SEQUENCE:
	subroutine ForeignR4ArgN(cStr,cName,Def,nVal,Val)
 INPUTS:
	cStr		character*(*)	string with keywords
	cName		character*(*)	name of keyword
	Def		real		value assigned if keyword not present
	nVal		integer		max nr of values extracted
 OUTPUTS:
	nVal		integer		actual nr of values extracted
					(if more than nVal numbers were extracted
					then the negative of the input nVal is
					returned; see Str2Flt)
	Val		real		value of keyword
					If less then the input nVal are found then
					the remaining values are set to the default	
 CALLED BY:
	ForeignR4Arg
 INCLUDE:
	include		'dirspec.h'
 CALLS: ***
	ForeignArgFind, LocFirstLen, Str2Flt, itrim
 MODIFICATION HISTORY:
	NOV-2004, Paul Hick (UCSD/CASS)
	JUN-2006, Paul Hick (UCSD/CASS; pphick@ucsd.edu)
	    Modified to skip past cSwitch when it is followed by a
	    numeric char (123456789.). This allows negative value to be
	    specified on Linux


ForeignR8Arg $SMEI/ucsd/gen/for/lib/what/foreignr8arg.f
[Previous] [Next]
 NAME:
	ForeignR8Arg
 PURPOSE:
	Extract single real*8 value from keyword/value pair
 CALLING SEQUENCE:
	subroutine ForeignR8Arg(cStr,cName,Def,Val)
 INPUTS:
	cStr		character*(*)		string with keywords
	cName		character*(*)		name of keyword
	Def		double precision	value assigned if keyword not present
 OUTPUTS:
	Val		double precision	value of keyword
 CALLS: ***
	ForeignR8ArgN
 CALLED BY:
	smei_foreign, smei_skyd_fts, smei_skyd_init, smei_skyd_make, smei_skyd_sky
 MODIFICATION HISTORY:
	NOV-2004, Paul Hick (UCSD/CASS)
	JUN-2006, Paul Hick (UCSD/CASS; pphick@ucsd.edu)
	    Old ForeignR8Arg was used to make ForeignR8ArgN.
	    New ForeignR8Arg is one-line interface to ForeignR8ArgN


ForeignR8ArgN $SMEI/ucsd/gen/for/lib/what/foreignr8argn.f
[Previous] [Next]
 NAME:
	ForeignR8ArgN
 PURPOSE:
	Extract multiple double precision value from keyword/value pair
 CALLING SEQUENCE:
	subroutine ForeignR8ArgN(cStr,cName,Def,nVal,Val)
 INPUTS:
	cStr		character*(*)		string with keywords
	cName		character*(*)		name of keyword
	Def		double precision	value assigned if keyword not present
	nVal		integer			max nr of values to be assigned
 OUTPUTS:
	nVal		integer			actual nr of values assigned
						(if more than nVal numbers were extracted
						then the negative of the input nVal is
						returned; see Str2Dbl)
	Val(nVal)	double precision	value of keyword
						If less then the input nVal are found then
						the remaining values are set to the default	
 CALLED BY:
	ForeignR8Arg, smei_frm_ok
 INCLUDE:
	include		'dirspec.h'
 CALLS: ***
	ForeignArgFind, LocFirstLen, Str2Dbl, itrim
 PROCEDURE:
 MODIFICATION HISTORY:
	NOV-2004, Paul Hick (UCSD/CASS)
	JUN-2006, Paul Hick (UCSD/CASS; pphick@ucsd.edu)
	    Added nVal argument to be able to read more than one number.
	    Modified to skip past cSwitch when it is followed by a
	    numeric char (123456789.). This allows negative value to be
	    specified on Linux


ForeignStrArg $SMEI/ucsd/gen/for/lib/what/foreignstrarg.f
[Previous] [Next]
 NAME:
	ForeignStrArg
 PURPOSE:
	Extract string value from keyword/value pair
 CALLING SEQUENCE:
	subroutine ForeignStrArg(cStr,cName,Def,Val)
 INPUTS:
	cStr		character*(*)	string with keywords
	cName		character*(*)	name of keyword
	Def		character*(*)	value assigned if keyword not present
 OUTPUTS:
	Val		character*(*)	value of keyword
 CALLED BY:
	smei_foreign
 INCLUDE:
	include		'dirspec.h'
 CALLS: ***
	ForeignArgFind, LocFirstLen, itrim
 MODIFICATION HISTORY:
	NOV-2004, Paul Hick (UCSD/CASS)
	JUN-2006, Paul Hick (UCSD/CASS; pphick@ucsd.edu)
	    Modified to skip past cSwitch when it is followed by a
	    numeric char (123456789.). This allows negative value to be
	    specified on Linux


fortime $SMEI/ucsd/gen/for/h/fortime.h
[Previous] [Next]
 NAME:
	fortime
 PURPOSE:
	Include file for fortime.f library
 CATEGORY:
	gen/for/h
 CALLING SEQUENCE:
	include		'fortime.h'
 INCLUDED BY:
	Time2Carrington, Time2CarringtonT0, Time2ChangeUnits, Time2GetOrigin, Time2Split
	Time2Standardize, Time2Str, Time2Time, Time2Units
 PROCEDURE:
	Julian days are sometimes specified after subtracting some large
	offset e.g. NBIG = 2400000, 2440000 or 2450000

	The corresponding time origin is [-2451545+NBIG,43200000], i.e.
		T0=[-51545,43200000] for NBIG = 2400000
		T0=[-51544,       0] for NBIG = 2400000.5 (Modified Julian Day)
		T0=[-11545,43200000] for NBIG = 2440000
		T0=[-11544,       0] for NBIG = 2440000.5
		T0=[- 1545,43200000] for NBIG = 2450000
		T0=[- 1544,       0] for NBIG = 2450000.5
 MODIFICATION HISTORY:
	NOV-2003, Paul Hick (UCSD/CASS; pphick@ucsd.edu)


FTCLOS $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTCLOS
 PURPOSE:
	Closes a fits file
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTCLOS(iU, iStatus)
 INPUTS:
	iU		integer		logical unit number
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	iStatus		integer		non-zero value indicates error
 CALLED BY:
	BList_NSO_NOAA, BList_WSO_NOAA, BRead_WSO, smei_cal_read, smei_cal_write
	smei_frm_fts, smei_frm_read, smei_frm_read_get_sdark, smei_frm_write
	smei_get_glare, smei_get_lsff, smei_get_starmask, smei_orb, smei_orb_cal_name
	smei_orb_camera, smei_orb_min_name, smei_orb_min_number, smei_orb_name
	smei_orb_number, smei_orb_read, smei_orb_time, smei_orb_version, smei_orb_write
	smei_sky_iread, smei_sky_read, smei_skyd_fts, smei_skyd_go, smei_skyd_init
	smei_skyd_make, smei_skyd_sky
 PROCEDURE:
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTCRHD $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTCRHD
 PURPOSE:
	Create (append) a new empty HDU following the last extension that
	has been previously accessed by the program.
 CALLING SEQUENCE:
	call FTCRHD(unit, iStatus)
 INPUTS:
	iU		integer		logical unit number
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	iStatus		integer		non-zero value indicates error
 CALLED BY:
	smei_cal_write, smei_orb_write, smei_skyd_fts, smei_skyd_init, smei_skyd_make
	smei_skyd_sky
 PROCEDURE:
	This will overwrite any extensions in an existing FITS file if the
	program has not already moved to that (or a later) extension using
	the FTMAHD or FTMRHD routines.
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTGISZ $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGISZ
 PURPOSE:
	Get the size of all the dimensions of the image 
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTGISZ(iU, nMax, nDim, iStatus)
 INPUTS:
	iU		integer		logical unit number
	nMax		integer		Max. # dimensions allowed
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	nDim(nMax)	integer		array with dimensions
	iStatus		integer		non-zero value indicates error
 CALLED BY:
	BRead_WSO, smei_cal_read, smei_frm_read, smei_frm_read_get_sdark, smei_frm_write
	smei_get_glare, smei_get_lsff, smei_get_starmask, smei_orb_cal_name
	smei_orb_camera, smei_orb_min_name, smei_orb_min_number, smei_orb_name
	smei_orb_number, smei_orb_read, smei_orb_time, smei_orb_version, smei_sky_iread
	smei_sky_read
 PROCEDURE:
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTGKN_JEDLS $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGKN_JEDLS
 PURPOSE:
	Reads an array of keyword values from a Fits header
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTGKN[JEDLS](iU, cName, iStart, iMax, ArrV, nFnd, iStatus)
 INPUTS:
	iU		integer		logical unit number
	cName		character*8	keyword root name (e.g. 'NAXIS')
	iStart		integer		start number
	iMax		integer		max. number of keys
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	ArrV(nFound)	[JEDLS]		array with keyword values
	nFound		integer		# keys found
	iStatus		integer		non-zero value indicates error
 PROCEDURE:
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTGKND $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGKND
 CALLED BY:
	smei_frm_read, smei_frm_read_get_sdark
 SEE ALSO:
	FTGKN_JEDLS


FTGKNE $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGKNE
 SEE ALSO:
	FTGKN_JEDLS


FTGKNJ $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGKNJ
 SEE ALSO:
	FTGKN_JEDLS


FTGKNL $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGKNL
 SEE ALSO:
	FTGKN_JEDLS


FTGKNS $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGKNS
 CALLED BY:
	smei_cal_read
 SEE ALSO:
	FTGKN_JEDLS


FTGKY_JEDLS $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGKY_JEDLS
 PURPOSE:
	Reads a single keyword value from Fits header
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTGKY[JEDLS](iU, cName, iValue, Comment, iStatus)
 INPUTS:
	iU		integer		logical unit number
	cName		character*8	keyword name
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	Value		[JEDLS]		value of keyword
	Comment		character*(*)	Comment string (following backslash)
	iStatus		integer		non-zero value indicates error
 PROCEDURE:
	J - integer (I*4)
	E - real floating point (R*4)
	D - double precision real floating-point (R*8)
	L - logical (L*4)
	S - character string
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTGKYD $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGKYD
 CALLED BY:
	smei_cal_read, smei_frm_read, smei_frm_read_get_sdark, smei_orb_cal_name
	smei_orb_camera, smei_orb_min_name, smei_orb_min_number, smei_orb_name
	smei_orb_number, smei_orb_read, smei_orb_time, smei_orb_version, smei_sky_read
	smei_skyd_go
 SEE ALSO:
	FTGKY_JEDLS


FTGKYE $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGKYE
 CALLED BY:
	BList_NSO_NOAA, BList_WSO_NOAA, smei_cal_read, smei_get_glare
 SEE ALSO:
	FTGKY_JEDLS


FTGKYJ $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGKYJ
 CALLED BY:
	BRead_WSO, smei_cal_read, smei_frm_read, smei_frm_read_get_sdark
	smei_orb_cal_name, smei_orb_camera, smei_orb_min_name, smei_orb_min_number
	smei_orb_name, smei_orb_number, smei_orb_read, smei_orb_time, smei_orb_version
 SEE ALSO:
	FTGKY_JEDLS


FTGKYL $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGKYL
 CALLED BY:
	smei_cal_read, smei_orb_cal_name, smei_orb_camera, smei_orb_min_name
	smei_orb_min_number, smei_orb_name, smei_orb_number, smei_orb_read
	smei_orb_time, smei_orb_version
 SEE ALSO:
	FTGKY_JEDLS


FTGKYS $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGKYS
 CALLED BY:
	BList_NSO_NOAA, BList_WSO_NOAA, smei_cal_read, smei_frm_read
	smei_frm_read_get_sdark, smei_orb_cal_name, smei_orb_camera, smei_orb_min_name
	smei_orb_min_number, smei_orb_name, smei_orb_number, smei_orb_read
	smei_orb_time, smei_orb_version, smei_sky_iread, smei_sky_read
 SEE ALSO:
	FTGKY_JEDLS


FTGMSG $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGMSG
 PURPOSE:
	Return top message from internal FITSIO error stack.
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTGMSG(cStr)
 OUTPUTS:
	cStr		character*(*)	name of fits file
 CALLED BY:
	say_fts
 PROCEDURE:
	Return the top (oldest) 80-character error message from the
	internal FITSIO stack of error messages and shift any remaining
	messages on the stack up one level.
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTGPV_BIJED $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGPV_BIJED
 PURPOSE:
	Reads the data area from a Fits file
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTGPV[BIJED](iU, iGroup, iFPix, nBuf, NullVal, ZBuf, AnyF, iStatus)
 INPUTS:
	iU		integer		logical unit number
	iGroup		integer		sequence number of data group
					(set to zero usually).
	iFPix		integer		1st pixel to read
	nBuf		integer		# values to read
	NullVal		[BIJED]		undefined array elements are set to
					NullVal. If NullVal=0 no such check is
					performed.
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	ZBuf(nBuf)	real		data array
	AnyF		logical		set to .TRUE. if any ZBuf elements are
					undefined.
	iStatus		integer		non-zero value indicates error
 PROCEDURE:
	B - character*1 (unsigned byte)  
	I - short integer (I*2)
	J - integer (I*4)
	E - real floating point (R*4)
	D - double precision real floating-point (R*8)
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTGPVB $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGPVB
 SEE ALSO:
	FTGPV_BIJED


FTGPVD $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGPVD
 SEE ALSO:
	FTGPV_BIJED


FTGPVE $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGPVE
 CALLED BY:
	BRead_WSO, smei_cal_read, smei_frm_read, smei_frm_read_get_sdark, smei_frm_write
	smei_get_glare, smei_get_lsff, smei_orb_cal_name, smei_orb_camera
	smei_orb_min_name, smei_orb_min_number, smei_orb_name, smei_orb_number
	smei_orb_read, smei_orb_time, smei_orb_version, smei_sky_read
 SEE ALSO:
	FTGPV_BIJED


FTGPVI $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGPVI
 SEE ALSO:
	FTGPV_BIJED


FTGPVJ $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTGPVJ
 CALLED BY:
	smei_get_starmask, smei_sky_iread
 SEE ALSO:
	FTGPV_BIJED


FTINIT $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTINIT
 PURPOSE:
	Open a new fits file
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTINIT(iu, cFile, blocksize, iStatus)
 INPUTS:
	iU		integer		logical unit number
	cFile		character*(*)	name of fits file
	blocksize	integer		block size (set to 1)
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	iStatus		integer		non-zero value indicates error
 CALLED BY:
	smei_cal_write, smei_frm_fts, smei_orb_write, smei_skyd_fts, smei_skyd_init
	smei_skyd_make, smei_skyd_sky
 PROCEDURE:
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTMAHD $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTMAHD
 PURPOSE:
	Move to a specified (absolute) HDU in the FITS file
	(nhdu = 1 for the FITS primary array)
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTMAHD(iu, nhdu, > hdutype, status)
 INPUTS:
	iU		integer		logical unit number
	nhdu		integer		index of HDU (1 for primary array)
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	hdutype		integer		type of HDU:
					 0 = primary array or IMAGE
					 1 = ASCII table
					 2 = binary table
					-1 = unknown
	iStatus		integer		non-zero value indicates error
 CALLED BY:
	smei_cal_read, smei_get_starmask, smei_sky_iread, smei_sky_read
 MODIFICATION HISTORY:
	Part of FITSIO package


FTMRHD $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTMRHD
 PURPOSE:
	Move to a new (existing) HDU forward or backwards relative
	to the current HDU (CHDU)
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTMRHD(iu, nmove, > hdutype, status)
 INPUTS:
	iU		integer		logical unit number
	nmove		integer		number of HDU to move
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	hdutype		integer		type of HDU:
					 0 = primary array or IMAGE
					 1 = ASCII table
					 2 = binary table
					-1 = unknown
	iStatus		integer		non-zero value indicates error
 MODIFICATION HISTORY:
	Part of FITSIO package


FTNOPN $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTNOPN
 PURPOSE:
	Open an existing fits file
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTNOPN(iU, cFile, Mode, iStatus)
 INPUTS:
	iU		integer		logical unit number
	cFile		character*(*)	name of fits file
	Mode		integer		FTS__READONLY: read - only mode
					FTS__WRITE: write mode
					(parameters in include file ftspar.h)
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	iStatus		integer		non-zero value indicates error
 CALLED BY:
	BList_NSO_NOAA, BList_WSO_NOAA, BRead_WSO, smei_cal_read, smei_frm_read
	smei_frm_read_get_sdark, smei_frm_write, smei_get_glare, smei_get_lsff
	smei_get_starmask, smei_orb, smei_orb_cal_name, smei_orb_camera
	smei_orb_min_name, smei_orb_min_number, smei_orb_name, smei_orb_number
	smei_orb_read, smei_orb_time, smei_orb_version, smei_sky_iread, smei_sky_read
	smei_skyd_go
 PROCEDURE:
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTPHPR $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPHPR
 PURPOSE:
	Writes basic Fits header to a Fits file
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTPHPR(iU, bSimple, iBitPix, 2, nAxes, 0, 1, bExtend, iStatus)
 INPUTS:
	iU		integer		logical unit number
	bSimple		logical		set .TRUE.
	iBitPix		integer		# bits per value (8,16,32,-32,-64)
	nAxis		integer		# dimensions
	nAxis(nAxis)	integer		size of each dimension
	pCount		integer		set 0
	gCount		integer		set 1
	bExtend		logical		set .TRUE.
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	iStatus		integer		non-zero value indicates error
 CALLED BY:
	smei_cal_write, smei_frm_fts, smei_orb_write, smei_skyd_fts, smei_skyd_init
	smei_skyd_make, smei_skyd_sky
 PROCEDURE:
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTPKN_EDFG $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPKN_EDFG
 PURPOSE:
	Put numbered sequence of keyword into header
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTPKN[EDFG](iU,cKeyroot,iStartNr,iNr,Keyvals,Decimals,Comments,iStatus)
 INPUTS:
	iU		integer		logical unit number
	cKeyRoot	character*(*)	root name of the sequence
	iStartNr	integer		start number of the sequence (usually 1)
	iNr		integer		# keys in the sequence
	Keyvals(iNr)	J: int*2, L: int*4, S:character
					array of sequence values
	Decimals	integer		# decimal points
	Comment(iNr)	character*(*)	comment strings
					(add '&' to first elements to use only the first
					comment for all sequence elements)
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	iStatus		integer		non-zero value indicates error
 PROCEDURE:
	E - real exponential floating point (R*4)
	F - real fixed-format floating point (R*4)
	D - double precision real floating-point (R*8)
	G - double precision fixed-format floating point (R*8)
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTPKN_JLS $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPKN_JLS
 PURPOSE:
	Put numbered sequence of keyword into header
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTPKN[JLS](iU, cKeyRoot, startno, no_keys, keyvals, comments, iStatus)
 INPUTS:
	iU		integer		logical unit number
	cKeyRoot	character*(*)	root name of the sequence
	iStartNr	integer		start number of the sequence (usually 1)
	iNr		integer		# keys in the sequence
	Keyvals(iNr)	J: int*2, L: int*4, S:character
					array of sequence values
	Comment(iNr)	character*(*)	comment strings
					(add '&' to first elements to use only the first
					comment for all sequence elements)
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	iStatus		integer		non-zero value indicates error
 PROCEDURE:
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTPKND $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
 	FTPKND
 CALLED BY:
	smei_frm_fts
 SEE ALSO:
	FTPKN_EDFG


FTPKNE $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
 	FTPKNE
 SEE ALSO:
	FTPKN_EDFG


FTPKNF $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
 	FTPKNF
 SEE ALSO:
	FTPKN_EDFG


FTPKNG $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
 	FTPKNG
 SEE ALSO:
	FTPKN_EDFG


FTPKNJ $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
 	FTPKNJ
 SEE ALSO:
	FTPKN_JLS


FTPKNL $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
 	FTPKNL
 SEE ALSO:
	FTPKN_JLS


FTPKNS $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
 	FTPKNS
 CALLED BY:
	smei_cal_write
 SEE ALSO:
	FTPKN_JLS


FTPKY_EDFG $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPKY_EDFG
 PURPOSE:
	Writes a single keyword value from Fits header
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTPKY[EDFG](iU, cName, Value, iDecimals, Comment, iStatus)
 INPUTS:
	iU		integer		logical unit number
	cName		character*8	keyword name
	Value		[JEDLS]		value of keyword
	iDecimals	integer		number of digits
	Comment		character*(*)	Comment string (following backslash)
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	iStatus		integer		non-zero value indicates error
 PROCEDURE:
	E - real exponential floating point (R*4)
	F - real fixed-format floating point (R*4)
	D - double precision real floating-point (R*8)
	G - double precision fixed-format real floating-point (R*8)
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTPKY_JLS $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPKY_JLS
 PURPOSE:
	Writes a single keyword value from Fits header
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTPKY[JLS](iU, cName, Value, Comment, iStatus)
 INPUTS:
	iU		integer		logical unit number
	cName		character*8	keyword name
	Value		[JEDLS]		value of keyword
	Comment		character*(*)	Comment string (following backslash)
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	iStatus		integer		non-zero value indicates error
 PROCEDURE:
	J - integer (I*4)
	L - logical (L*4)
	S - character string
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTPKYD $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPKYD
 CALLED BY:
	smei_frm_fts
 SEE ALSO:
	FTPKY_EDFG


FTPKYE $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPKYE
 CALLED BY:
	smei_cal_write, smei_orb_write
 SEE ALSO:
	FTPKY_EDFG


FTPKYF $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPKYF
 SEE ALSO:
	FTPKY_EDFG


FTPKYG $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPKYG
 CALLED BY:
	smei_orb_write, smei_skyd_fts, smei_skyd_init, smei_skyd_make, smei_skyd_sky
 SEE ALSO:
	FTPKY_EDFG


FTPKYJ $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPKYJ
 CALLED BY:
	smei_cal_write, smei_frm_fts, smei_orb_write, smei_skyd_fts, smei_skyd_init
	smei_skyd_make, smei_skyd_sky
 SEE ALSO:
	FTPKY_JLS


FTPKYL $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPKYL
 CALLED BY:
	smei_cal_write, smei_skyd_fts, smei_skyd_init, smei_skyd_make, smei_skyd_sky
 SEE ALSO:
	FTPKY_JLS


FTPKYS $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPKYS
 CALLED BY:
	smei_cal_write, smei_frm_fts, smei_orb_write, smei_skyd_fts, smei_skyd_init
	smei_skyd_make, smei_skyd_sky
 SEE ALSO:
	FTPKY_JLS


FTPPR_BIJED $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPPR_BIJED
 PURPOSE:
	Writes the data area to a Fits file
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTPPR[BIJED](iU, iGroup, iFPix, nBuf, ZBuf, iStatus)
 INPUTS:
	iU		integer		logical unit number
	iGroup		integer		sequence number of data group
					(set to zero usually).
	iFPix		integer		1st pixel to write
	nBuf		integer		# values to write
	ZBuf(nBuf)	real		data array
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	iStatus		integer		non-zero value indicates error
 PROCEDURE:
	B - character*1 (unsigned byte)  
	I - short integer (I*2)
	J - integer (I*4)
	E - real floating point (R*4)
	D - double precision real floating-point (R*8)
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTPPRB $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPPRB
 CALLED BY:
	smei_skyd_fts, smei_skyd_init, smei_skyd_make, smei_skyd_sky
 SEE ALSO:
	FTPPR_BIJED


FTPPRD $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPPRD
 SEE ALSO:
	FTPPR_BIJED


FTPPRE $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPPRE
 CALLED BY:
	smei_cal_write, smei_frm_fts, smei_orb_write, smei_skyd_fts, smei_skyd_init
	smei_skyd_make, smei_skyd_sky
 SEE ALSO:
	FTPPR_BIJED


FTPPRI $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPPRI
 CALLED BY:
	smei_frm_fts
 SEE ALSO:
	FTPPR_BIJED


FTPPRJ $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTPPRJ
 CALLED BY:
	smei_frm_fts, smei_skyd_fts, smei_skyd_init, smei_skyd_make, smei_skyd_sky
 SEE ALSO:
	FTPPR_BIJED


ftspar $SMEI/ucsd/gen/for/h/ftspar.h
[Previous] [Next]
 NAME:
	ftspar
 PURPOSE:
	Include file for use with FITS routines
 CATEGORY:
	gen/for/h
 CALLING SEQUENCE:
	include		'ftspar.h'
 INCLUDED BY:
	BList_NSO_NOAA, BList_WSO_NOAA, BRead_WSO, smei_cal_read, smei_cal_write
	smei_frm_read, smei_frm_write, smei_get_glare, smei_get_lsff, smei_get_starmask
	smei_orb, smei_orb_read, smei_sky_iread, smei_sky_read, smei_skyd_go
 PROCEDURE:
 MODIFICATION HISTORY:
	NOV-2003, Paul Hick (UCSD/CASS; pphick@ucsd.edu)


FTUKY_EDFG $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTUKY_EDFG
 PURPOSE:
	Updates a single keyword value from Fits header
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTUKY[EDFG](iU, cName, Value, iDecimals, Comment, iStatus)
 INPUTS:
	iU		integer		logical unit number
	cName		character*8	keyword name
	Value		[EDFG]		value of keyword
	iDecimals	integer		number of digits
	Comment		character*(*)	Comment string (following backslash)
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	iStatus		integer		non-zero value indicates error
 PROCEDURE:
	E - real exponential floating point (R*4)
	F - real fixed-format floating point (R*4)
	D - double precision real floating-point (R*8)
	G - double precision fixed-format real floating-point (R*8)
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTUKY_JLS $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTUKY_JLS
 PURPOSE:
	Updates a single keyword value from Fits header
 CATEGORY:
	gen/for
 CALLING SEQUENCE:
	call FTUKY[JLS](iU, cName, Value, Comment, iStatus)
 INPUTS:
	iU		integer		logical unit number
	cName		character*8	keyword name
	Value		[JLS]		value of keyword
	Comment		character*(*)	Comment string (following backslash)
	iStatus		integer		must be initialized to zero
 OUTPUTS:
	iStatus		integer		non-zero value indicates error
 PROCEDURE:
	J - integer (I*4)
	L - logical (L*4)
	S - character string
 MODIFICATION HISTORY:
	Part of FITSIO packeage


FTUKYD $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTUKYD
 CALLED BY:
	smei_frm_fts_axis, smei_frm_fts_base, smei_frm_fts_eph
 SEE ALSO:
	FTUKY_EDFG


FTUKYE $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTUKYE
 SEE ALSO:
	FTUKY_EDFG


FTUKYF $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTUKYF
 SEE ALSO:
	FTUKY_EDFG


FTUKYG $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTUKYG
 CALLED BY:
	smei_frm_fts_base
 SEE ALSO:
	FTUKY_EDFG


FTUKYJ $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTUKYJ
 CALLED BY:
	smei_frm_fts_base
 SEE ALSO:
	FTUKY_JLS


FTUKYL $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTUKYL
 SEE ALSO:
	FTUKY_JLS


FTUKYS $SMEI/ucsd/gen/for/lib/io/forfits.f
[Previous] [Next]
 NAME:
	FTUKYS
 CALLED BY:
	smei_frm_fts_base, smei_orb
 SEE ALSO:
	FTUKY_JLS