This page was created by IDL
lasco_mk_html_help.pro
on
Wed Aug 17 12:22:03 2005.
NAME: ABBRV_FILPOL PURPOSE: This function returns an abbreviated code for the filter and polarizer/sector wheels. CATEGORY: UTIL CALLING SEQUENCE: Result = ABBRV_FILPOL(Filter) INPUTS: Filter = String giving the filter or polarizer/sector value OPTIONAL INPUTS: None OUTPUTS: The function result is a string containing the code for the filter wheel or the polarizer wheel. Each wheel posisiton is a two character string. PROCEDURE: The wheel position is decoded and converted to a 2 character string. EXAMPLE: MODIFICATION HISTORY: Written, RA Howard, NRL, 7 October 1996 15 Oct 96 RAH Added removing whitespace from filter Corrected filter/polarizer/sector cases @(#)abbrv_filpol.pro 1.3 10/15/96 LASCO IDL LIBRARY
NAME: ADD_LASCO_LOGO PURPOSE: This function inserts the LASCO logo into the corner of an image CATEGORY: LASCO_SYNOPTIC CALLING SEQUENCE: Result = ADD_LASCO_LOGO(Img) INPUTS: Img: Input image KEYWORDS: LEFT When set, puts logo on lower left corner OUTPUTS: Result: Output image with same type and dimenstion as input COMMON: ADD_LASCO_LOGO_COMMON, w_logo Temporary storage for the logo PROCEDURE: Checks to see if the logo array has been read in, and restores it if not. Then inserts the logo into the lower, right hand corner. MODIFICATION HISTORY: Written by: Scott Paswaters, NRL, Dec 1997 99/07/14 N Rich Add LEFT keyword @(#)add_lasco_logo.pro 1.3 07/14/99 LASCO IDL LIBRARY
NAME: AWIN PURPOSE: This procedure opens a window of the same size as the input array CATEGORY: UTIL CALLING SEQUENCE: AWIN, Arr INPUTS: Arr: A two dimensional array of any type OUTPUTS: None SIDE EFFECTS: A blank window is displayed. EXAMPLE: Open a window of the same size as an arbitrary image array AWIN, image MODIFICATION HISTORY: Written by: SE Paswaters, NRL, June 1996 @(#)awin.pro 1.2 05/14/97 LASCO IDL LIBRARY
NAME: BROWSE_DISP PURPOSE: This procedure displays an image of an input string of hex values. CATEGORY: UTIL CALLING SEQUENCE: BROWSE_DISP, Img_str INPUTS: Img_str: A string array of image intensities OPTIONAL INPUTS: Img_name: The name of the image OUTPUTS: None PROCEDURE: This pro displays an image. It requires an input string of hex values that is, normally, result of a sybase query for a browse image. Note that a browse image is stored in sybase and retured by a query as a string of hex values. To display it, we must change it to its original byte array format, save it to a file, and use "read_jpeg" and "tvscl" to display it. It also accepts a second (optional) input string that will be displayed, as is, in the lower left corner of the display. It can be used to display such information as name, date, etc., about the image. MODIFICATION HISTORY: Written by: Ed Esfandiari Feb 1996 @(#)browse_disp.pro 1.1 10/05/96 LASCO IDL LIBRARY
Project : SOHO - LASCO/EIT Name : BUILD_LASCO_HELP Purpose : Create html help files for all LASCO IDL library routines. Use : BUILD_LASCO_HELP Inputs : None. Outputs : None. Keywords : None. Restrictions: Must have write permission to $NRL_LIB/lasco directories. Side effects: Creates files in the subdirectories of $NRL_LIB/lasco of the form: help_subdir.html. Ex. help_data_anal.html Category : Help. Prev. Hist. : None. Written : Scott Paswaters, NRL, Mar. 1996. Modified : RAH, NRL, 3/31/99. Added inout and expfac directories Version : @(#)build_lasco_help.pro 1.5 03/31/99 :LASCO IDL LIBRARY
NAME: CAT_PHASER PURPOSE: This procedure displays 64x64 fits images on phaser for cataloging CATEGORY: UTIL CALLING SEQUENCE: CAT_PHASER, Fname INPUTS: Fname: root name of the fits images to search for eg: fname = 'c1' will search for all files whose file names begin with c1: c1*.fts OUTPUTS: An IDL plot file is generated. PROCEDURE: A 512 x 512 plotting area is established, and a series of 64 x 64 images are displayed. EXAMPLE: To display the series of MODIFICATION HISTORY: Written by: RA Howard, NRL, 12 Jan 1996 @(#)cat_phaser.pro 1.1 10/05/96 LASCO IDL LIBRARY
Project : SOHO - CDS Name : CDS2JD() Purpose : Converts any CDS time format to full Julian day. Explanation : Converts any CDS time format to the equivalent Julian day value. Returns result in a structure with the tags int (long) and frac (double). Use : IDL> jd = cds2jd(any_format) Inputs : any_format - date/time in any of the acceptable CDS time formats -- for acceptable formats see file aaareadme.txt. Opt. Inputs : None Outputs : Function returns JD in a structure {int:0L,frac:0.0d0}. Opt. Outputs: None Keywords : ERRMSG = If defined and passed, then any error messages will be returned to the user in this parameter rather than being printed to the screen. If no errors are encountered, then a null string is returned. In order to use this feature, the string ERRMSG must be defined first, e.g., ERRMSG = '' JD = CDS2JD ( DT, ERRMSG=ERRMSG, ...) IF ERRMSG NE '' THEN ... Calls : ANYTIM2UTC, INT2UTC, JULDAY Common : None Restrictions: None Side effects: None Category : Util, time Prev. Hist. : None Written : C D Pike, RAL, 16-May-94 Modified : Version 1, C D Pike, RAL, 16-May-94 Version 2, William Thompson, GSFC, 14 November 1994 Changed .DAY to .MJD Version 3, Donald G. Luttermoser, GSFC/ARC, 20 December 1994 Added the keyword ERRMSG. Included ON_ERROR flag. Version 4, Donald G. Luttermoser, GSFC/ARC, 30 January 1995 Added ERRMSG keyword to internally called procedured. Made error handling routine more robust. Version 5, Donald G. Luttermoser, GSFC/ARC, 13 February 1995 Allowed for input to be either scalar or vector. Version : Version 5, 13 Februaryy 1995
NAME: CDS_GEN_HELP PURPOSE: This procedure goes through all the LASCO IDL directories and generates a help file in HTML format of the form help_.html CATEGORY: Utility CALLING SEQUENCE: CDS_GEN_HELP INPUTS: NONE KEYWORD PARAMETERS: NONE OUTPUTS: HTML Help Files in each directory are generated EXAMPLE: CDS_GEN_HELP MODIFICATION HISTORY: Written by: Dennis Wang Created: 2 Feb 2001 %W% %H% LASCO IDL LIBRARY
NAME: check_filename PURPOSE: Removes the extension and path from the filename if present CALLING SEQUENCE: check_filename,filename check_filename,filename,path,extension INPUTS: filename = string to be checked (may be a string array) OUTPUTS: filename will be returned without extension and path OPTIONAL OUTPUTS: path = path name extension = extension not including decimal point MODIFICATION HISTORY: RAH 10/1/89 rah 3/28/91 added array input for filename SCCS variables for IDL use @(#)check_filename.pro 1.1 7/6/92 :NRL Solar Physics
NAME: check_imgdir PURPOSE: checks !imgdir for a / on the end CALLING SEQUENCE: check_imgdir INPUTS: None OPTIONAL INPUT PARAMETERS: None KEYWORD PARAMETERS: None PROCEDURE: if !imgdir does not end with / then puts one on MODIFICATION HISTORY: RAH 3/26/91 SCCS variables for IDL use @(#)check_imgdir.pro 1.1 7/6/92 :NRL Solar Physics
NAME: CHECK_PRO_NAMES PURPOSE: This procedure checks for duplicate procedure names in $NRL_LIB CATEGORY: LASCO UTIL CALLING SEQUENCE: CHECK_PRO_NAMES INPUTS: None KEYWORD PARAMETERS: LASCO: Set this keyword to only print duplicates if they also occur underneath the lasco directory. OUTPUTS: This procedure writes the results to a file 'duplicate_pros.txt' in the users home directory. PROCEDURE: All files with pro in their name are found using the find commadn Then only files ending in .pro and which are not in teh SCCS directory are saved. Duplicate file names are then located using the where function. MODIFICATION HISTORY: Written by: RA Howard, NRL, 7 March 1997 @(#)check_pro_names.pro 1.1 09/26/97 LASCO IDL LIBRARY
TITLE: CW_ARRSEL PURPOSE: This function takes a vector and allows the user to add new values and reject values already there. INPUT PARAMETERS: X: Initial value of group of buttons OPTIONAL INPUT PARAMETERS: SELECTED: A vector of values that should start checked. This parameter takes precedence over 'status'. If X is not specified but selected is, then the initial buttons to be shown will be read from selected instead of x STATUS: A vector of binary values the same size as x. All buttons with a nonzero corresponding element of status will be shown as checked. The 'selected' keyword takes precedence over status. TITLE: A string which will be the title of the widget. Default is 'Array Selection' PROMPT: A string which will prompt the user to enter a new value. Default is 'New Value:' OUTPUTS: The values selected by the user are returned as a vector. SIDE EFFECTS: None RESTRICTIONS: This widget is MODAL. No other widget applications will be responsive while this widget is in use. PROCEDURE: CW_ARRSEL is primarily an extension of the CW_BGROUP included with IDL which allows buttons to be added dynamically. It does this by saving necessary values internally and then destroying and rebuilding its widget interface as necessary. EXAMPLES: To change the coefficients sent to a curvefit routine according to the user's demands, starting with a default of [3,7,9] coeffs=CW_ARRSEL([3,7,9]) result=curvefit(x,y,weights,coeffs, function_name='f') WRITTEN: 11 August, 2000 Andrew Hayes, NRL @(#)cw_arrsel.pro 1.1 08/21/00 :LASCO IDL LIBRARY
FUNCTION DIFF Returns values in arr1 that are not in arr2; if none, then returns -1. INPUTS: arr1, arr2 Arrays to compare, can be any size or type (???) OUTPUTS: flag Zero if no values are returned (-1), else is 1 Written by N. Rich, NRL/Interferometrics, about 2000 Modified: 01.11.06, nbr - Rewrite so it works one way only. 11/08/01 @(#)diff.pro 1.2 - NRL LASCO IDL Library
NAME: dirpath PURPOSE: Converts input into a directory with a delimiter on the end. Takes OS differences into account. CATEGORY: System File Utility CALLING SEQUENCE: Result = DIRPATH(Rootdir, Subdirs) INPUTS: Rootdir: The first portion of the directory structure OPTIONAL INPUTS: Subdirs STRARR List of subdirectories to add to rootdir KEYWORD PARAMETERS: None OUTPUTS: Returns directory with correct delimiters. PROCEDURE: Uses !DELIMITER if defined, else uses GET_DELIM() EXAMPLE: dir = DIRPATH(getenv('NRL_LIB'),['idl','expfac']) returns DIR STRING = '/net/cronus/opt/local/idl_nrl_lib/idl/expfac/' for OS Solaris (UNIX) MODIFICATION HISTORY: Written by: N. Rich, 01/12/17, NRL @(#)dirpath.pro 1.1, 12/17/01 LASCO IDL LIBRARY
PRO display_jpg, lzorql, day, tscope PURPOSE: DISPLAY_JPG is called by the VIEW_JPG2 procedure to display .jpg images from a certain day and telescope, from cplex1 or cplex2 on corona. It is also designed to print these images. CALLING SEQUENCE: display_jpg, lzorql, day, tscope INPUTS: lzorql, day, tscope: all string variables OUTPUT: Draw widget on screen; postcript file '~/printjpg.ps' Written by Nathan Rich, July 1996 MODIFIED: NR 1 Aug 1996 rename findfile directories NR 5 Aug added -o nobanner to print nbr, 5 Nov 2001 - Add SCCS tags 11/05/01 @(#)display_jpg.pro 1.3 - NRL LASCO IDL Library
NAME: DISTARR PURPOSE: This function generates an array whose elements are the Euclidean distance from a given point. CATEGORY: LASCO UTIL CALLING SEQUENCE: Resut = DISTARR([xsize[,ysize[,xcen[,ycen[,dxs[,dys]]]]]]) OPTIONAL INPUTS: Xsize: The size of the array along the abscissa. Default is 1024 YSIZE: The size of the array along the ordinate. Default is equal to xsize XCEN: The position of the center. Default is half of xsize YCEN: The position of the center. Default is half of ysize KEYWORDS: MEM: Setting this keyword sacrifices some speed for lower memory consumption during routine. Has no effect on output or side effects, nor does it have any effect if either xcen or ycen are float or double. OUTPUTS: Result: The euclidean distance from (Xcen, Ycen) OPTIONAL OUTPUTS: Dxs: The distance from (Xcen,0) Dys: The distance from (0,Ycen) PROCEDURE: Generates a 2D matrix whose elements are the RMS distance from sun center in pixels. Also returns two matrices whose elements are the signed distances in either x or y from sun center EXAMPLE: To generate a 1024x1024 matrix whose values are the Euclidean distance from (512,512) result = distarr() To generate a 1024-element by 512-element matrix whose values are the Euclidean distance from (X,Y) result = distarr(512,1024,X,Y) MODIFICATION HISTORY: Written by: Andrew Hayes, NRL Dec, 1998 Modified by: Andrew Hayes, NRL Aug, 2000 Rewritten for greater speed if parameters are integers, changed inputs to optional input parameters, now chooses calculation method and output type intelligently depending on the type[s] of the input parameters instead of forcing double. %W% %H% LASCO IDL LIBRARY
NAME: FIND_CLOSEST PURPOSE: This function finds the subscript of an array that is closest to a given number. CATEGORY: LASCO UTIL CALLING SEQUENCE: Result = FIND_CLOSEST (Num, Arr) INPUTS: Num: Number for which the array will be searched Arr: An array of points in (preferably) ascending order KEYWORD PARAMETERS: LESS: Returns the closest subscript for arr that is less than or equal to num Otherwise the subscript of the point closest to num is returned. Notice that the value of arr might be greater than num. OUTPUTS: This function returns the subscript of an array closest to the given number. RESTRICTIONS: The input array should be in ascending order. But not necessary. MODIFICATION HISTORY: Written by: Scott Passwaters, NRL, Feb, 1997 24 Sep 1998, N Rich changed /LESS keyword to include equal-to 31 Jan 2000, N Rich Allow for MOSTLY (except for isolated stray elements) sorted arr, but must still be ascending order 12 Apr 2005, N.Rich Return -1 in one case. %W% %H% LASCO IDL LIBRARY
NAME: FIND_CLOSEST_ARR PURPOSE: This routine matches up elements of two arrays, returning the subscripts of the array that are closest to the elements from the other array. CATEGORY: LASCO UTIL CALLING SEQUENCE: FIND_CLOSEST_ARR, arr1, arr2, ind1, ind2 [, /LESS] INPUTS: arr1: The first array of numbers arr2: The second array of numbers (doesn't have to have same elements as first) OUTPUTS: ind1: index into arr1 that corresponds to arr2 ind2: index into arr1 that corresponds to arr2 KEYWORD PARAMETERS: LESS: Returns the closest subscript for arr2 that is less than arr1 Otherwise the subscript of arr2 that is closest to arr1 is returned. Notice that the value of arr2 might be greater than arr1 if /LESS is not used. MATCH: Returns 1-to-1 matches for arrays RESTRICTIONS: The input arrays should be in ascending order. MODIFICATION HISTORY: Written by: Scott Paswaters, NRL, Dec, 1997 3/7/01, nbr Fix LESS keyword 3/16/01,nbr Add MATCH keyword; use UNIQ 11/05/01 @(#)find_closest_arr.pro 1.2 LASCO IDL LIBRARY
NAME: FIXWRAP PURPOSE: This function removes the overflow values of an image CATEGORY: CALLING SEQUENCE: out = FIXWRAP(in) INPUTS: in = image with overflows OPTIONAL INPUTS: NONE KEYWORD PARAMETERS: NONE OUTPUTS: out = a long image with overflows removed OPTIONAL OUTPUTS: NONE COMMON BLOCKS: NONE SIDE EFFECTS: The output image is LONG type RESTRICTIONS: NONE PROCEDURE: EXAMPLE: in = LASCO_READFITS(file, h) out = FIXWRAP(in) MODIFICATION HISTORY: Written by: A. Vourlidas, NRL, 9/30/97
NAME: GETENV_SLASH PURPOSE: Calls GETENV to return the environment variable, and then checks to see if a slash is at the end of the string and appends one if there isn't. CATEGORY: REDUCE CALLING SEQUENCE: Result = GETENV_SLASH (Envvar) INPUTS: Envvar = String of the environment variable OUTPUTS: Result = Environment variable with a slash PROCEDURE: If the environment variable is defined, a slash is appended to the string returned by GETENV. EXAMPLE: s = GETENV_SLASH ('LEB_IMG') If $LEB_IMG is defined to be /net/lasco6/data/packets then the result would be: /net/lasco6/data/packets/ MODIFICATION HISTORY: Written RA Howard, NRL, 1 Nov 1995 Version 1 RAH, Initial Release Version 2 RAH, Use system variable !delimiter 8.16.01, NBR - Check existence of !delimiter using datatype 12.17.01, NBR - Use get_delim.pro instead of '/' 12/17/01, @(#)getenv_slash.pro 1.4 : NRL LASCO IDL LIBRARY
NAME: IMG2DNPERSEC PURPOSE: Convert an image in raw counts (DN) to DN/sec CATEGORY: DATA_ANAL CALLING SEQUENCE: Result = IMG2DNPERSEC(Img,Header) INPUTS: Img = Input Image array. Header = Image header OUTPUTS: The function returns an image converted to DN/second. The type will be double precision. PROCEDURE: The corrected exposure time is determined. Bias is subtracted. If image is binned, the correct factor is applied. Then divide by exposre time. output = (binning correction(input - bias))/exposure Note that EXP_CORR will return the old exposure time and the current offset bias, if the correction factor is not found. Calls: EXP_CORR REDUCE_STD_SIZE MODIFICATION HISTORY: Written, RA Howard, NRL, 25 November 1997 Modified: 20 Feb 98 RAH Added exposure factor correction 21 Nov 01, NBR - Add binning correction with REDUCE_STD_SIZE @(#)img2dnpersec.pro 1.3 11/30/01 LASCO IDL LIBRARY
NAME: IMG_DIF_MIN PURPOSE: This function returns the non-zero minimum of the two images. CATEGORY: UTILITY CALLING SEQUENCE: Result = IMG_DIF_MIN (Imga,Imgb) INPUTS: Imga: First image Imgb: Second image OPTIONAL INPUTS: None KEYWORD PARAMETERS: None OUTPUTS: None. SIDE EFFECTS: Writes a fits file to $MONTHLY_IMAGES. RESTRICTIONS: Images must be the same size and non-negative. PROCEDURE: The images are checked to be the same size. Zero values are checked for. EXAMPLE: To create the minimum image between image A and B: c = IMG_DIF_MIN(a,b) MODIFICATION HISTORY: Written by: R.A. Howard, NRL, 6/8/00 @(#)img_dif_min.pro 1.1 06/10/00 :LASCO IDL LIBRARY
NAME: KDATE PURPOSE: This procedure converts a k index (modified julian date) into the day, month and year CATEGORY: UTIL CALLING SEQUENCE: KDATE,K,Id,Im,Iy INPUTS: K: The k-index (modified julian date) OUTPUTS: Id: The date of month Im: The number of the month (1..12) Iy: The year MODIFICATION HISTORY: Written by: RA Howard, 1975 @(#)kdate.pro 1.2 10/17/96 LASCO IDL LIBRARY
NAME: KDAY PURPOSE: This procedure converts a calendar date to the corresponding serial day number. CATEGORY: UTIL CALLING SEQUENCE: KDAY,Id,Im,Iy,K INPUTS: Id: The day of month (1..31) Im: The number of month (1..12) Iy: The year, either as a two or four digit number OUTPUTS: K: The serial day number. To obtain the Julian Day number (valid at noon), add 2415079 MODIFICATION HISTORY: Written by: RA Howard, NRL, 1975. @(#)kday.pro 1.3 05/09/98 LASCO IDL LIBRARY
NAME: LASCO_GEN_HELP PURPOSE: This procedure goes through all the LASCO IDL directories and generates a help file in HTML format of the form help_.html CATEGORY: Utility CALLING SEQUENCE: LASCO_GEN_HELP INPUTS: NONE KEYWORD PARAMETERS: NONE OUTPUTS: HTML Help Files in each directory are generated EXAMPLE: LASCO_GEN_HELP MODIFICATION HISTORY: Written by: Dennis Wang Created: 28 Jan 2001 @(#)lasco_gen_help.pro 1.1 01/29/01 LASCO IDL LIBRARY
NAME: LASER8 PURPOSE: This procedure generates a "nice" layout for printing images using an interactive menu system. CATEGORY: UTIL CALLING SEQUENCE: LASER8 INPUTS: None OUTPUTS: None, File written to disk AUTHOR: Eric T. Swanson, NRL Summer Student, Aug, 1991 @(#)laser8.pro 1.2 05/14/97 LASCO IDL LIBRARY + NAME: LASER8 PURPOSE: This procedure generates a "nice" layout for printing images using an interactive menu system. CATEGORY: UTIL CALLING SEQUENCE: LASER8 INPUTS: None OUTPUTS: None, File written to disk AUTHOR: Eric T. Swanson, NRL Summer Student, Aug, 1991 @(#)laser8.pro 1.2 05/14/97 LASCO IDL LIBRARY
NAME: CONGRID PURPOSE: Simulate the action of the VAX/VMS CONGRID/CONGRIDI function. Shrink or expand the size of an image. CATEGORY: Image processing. CALLING SEQUENCE: Result = CONGRID(Image, Xs, Ys [, Interp = Interp]) INPUTS: Image = 2D array to resample. Xs = desired number of columns for result. Ys = number of rows for result. KEYWORD PARAMETERS: Interp = keyword which if set causes bilinear interpolation to be used. Otherwise nearest neighbor method is used. OUTPUTS: Result = Image of same type as input, of size (Xs, Ys). COMMON BLOCKS: None. SIDE EFFECTS: None. RESTRICTIONS: Doesn't completely emulate the VAX/VMS CONGRID. The case of a rectangular grid is not implemented. This can be done using multiple calls to POLY_2D. PROCEDURE: Simple call POLY_2D with the warping coefficients. MODIFICATION HISTORY: DMS, Sept. 1988.
NAME: LEG_DISP PURPOSE: This procedure computes the leg actuator motions required for the pointing of LASCO. CATEGORY: UTIL CALLING SEQUENCE: LEG_DISP,Theta,Phi INPUTS: Theta: Desired motion in pitch (in arc sec) Phi: Desired motion in yaw (in arc sec) OUTPUTS: The number of steps is printed on the display. RESTRICTIONS: Assumes starting at center positions EXAMPLE: To obtain the number of steps to move the two legs 4 arc min in pitch and 2 arc min in yaw: LEG_DISP,240.,120. MODIFICATION HISTORY: Written by: S.Plunkett, DSR, 1994 @(#)leg_disp.pro 1.1 10/05/96 LASCO IDL LIBRARY
NAME: LIST_HDR_SUM PURPOSE: Output information from headers for easy comparison CATEGORY: Analysis CALLING SEQUENCE: list_hdr_sum, filelist [,keywords] INPUTS: filelist List of FITS files OPTIONAL INPUTS: keywords STRARR of keywords to list in addition to default (default is filename, date/time-obs, naxis1,2) KEYWORD PARAMETERS: None OUTPUTS: Img_hdr.txt-style text file in current directory OPTIONAL OUTPUTS: None MODIFICATION HISTORY: Written, N Rich, 04.04.05 SCCS variables for IDL use @(#)list_hdr_sum.pro 1.1 05/03/04 :LASCO IDL LIBRARY
NAME: M1ANGLE PURPOSE: Compute the angular offset of the M1 mirror from LVDT values. CATEGORY: LASCO-UTIL CALLING SEQUENCE: Result = M1ANGLE (LVDT) INPUTS: LVDT: A three element array giving the values of the LVDT for the P1, P2 and P3 piezo electric stacks. The LVDT values are obtained by running the LP to for the M1 measurement unit. OPTIONAL INPUTS: None KEYWORD PARAMETERS: None OUTPUTS: This function returns a 2 element array giving the pointing angles in the X and Y directions. The values returned are in units of arc seconds in the M1 coordinate system. OPTIONAL OUTPUTS: None COMMON BLOCKS: None SIDE EFFECTS: None RESTRICTIONS: None PROCEDURE: The equations provided by Kaiser-Trede have been implemented. EXAMPLE: To find the offset associated with the LVDT values (547, 603, 767): Result = M1ANGLE ([547,603,767]) MODIFICATION HISTORY: Written by: RA Howard, 1993 @(#)m1angle.pro 1.1 10/05/96 LASCO IDL LIBRARY
NAME: M1COEFF PURPOSE: This routine returns coefficients needed for computing the M1 pointing. It is used by other routines. CATEGORY: UTIL CALLING SEQUENCE: M1COEFF,B,C,F,K7,K8,K9 INPUTS: None OUTPUTS: B,C,F,K7,K8,K9: The coefficients for the M1 mirror pointing MODIFICATION HISTORY: Written by: RA Howard, NRL, 1994 @(#)m1coeff.pro 1.1 10/05/96 LASCO IDL LIBRARY
NAME: M1DACS PURPOSE: This function returns a 3 word array of the P1, P2 and P3 DAC values to command the M1 mirror to a given offset. CATEGORY: LASCO-UTIL CALLING SEQUENCE: Result = M1DACS ( Alphax, Alphay) INPUTS: Alphax: The pointing angle in the x direction in the M1 coordinate system. The value is in arc seconds. Alphay: The pointing angle in the y direction in the M1 coordinate system. The value is in arc seconds. OPTIONAL INPUTS: None KEYWORD PARAMETERS: None OUTPUTS: This function returns a three word array containing the values of the P1, P2 and P3 DACS necessary to move to the input offset angles. OPTIONAL OUTPUTS: None COMMON BLOCKS: None SIDE EFFECTS: None RESTRICTIONS: None PROCEDURE: The equations provided by Kaiser-Trede have been implemented. The input values are relative to the "active zero" point. EXAMPLE: To move to a point that is located at (+10.2, -5.7) arc seconds Result = M1DACS (10.2,-5.7) MODIFICATION HISTORY: Written by: RA Howard, 1993 Version 2 RAH 26 May 1996 Deleted the various models. @(#)m1dacs.pro 1.1 10/05/96 LASCO IDL LIBRARY
NAME: M1DYNIMG PURPOSE: Returns a 4 word array of the constants for dynamic imaging. CATEGORY: LASCO-UTIL CALLING SEQUENCE: Result = M1DYNIMG (Alhpax, Alphay) INPUTS: Alphax: The angle (in arc sec) to move the M1 in the X direction. Alphay: The angle (in arc sec) to move the M1 in the Y direction. OPTIONAL INPUTS: None KEYWORD PARAMETERS: None OUTPUTS: This function returns a 4 word array containing the constants A, B, C and D that are used by the LEB to compute the DAC values in the dynamic imaging LP. OPTIONAL OUTPUTS: None COMMON BLOCKS: None SIDE EFFECTS: None RESTRICTIONS: None PROCEDURE: The equations provided by Kaiser-Trede have been implemented. EXAMPLE: Normally, dynamic imaging will move the M1 by 0.5 pixel steps To find the coefficients to move in 0.5 pixel steps: Result = M1DYNIMG ( 0.5*5.6, 0.5*5.6 ) MODIFICATION HISTORY: Written by: RA Howard, NRL, 1993 @(#)m1dynimg.pro 1.1 10/05/96 LASCO IDL LIBRARY
NAME: M1REVERSE PURPOSE: This function reverses the bits of the m1 lvdt reading. CATEGORY: UTIL CALLING SEQUENCE: M1REVERSE,Dd INPUTS: Dd: Then DN value from the M1 LVDT OUTPUTS: This function returns the value of the M1 LVDT reading after bit reversal. MODIFICATION HISTORY: Written by: RA Howard, NRL, 1994 @(#)m1reverse.pro 1.1 10/05/96 LASCO IDL LIBRARY
alphax and alphay are the pointing angles in arc seconds returns a 3 word array of the P1, P2 and P3 DAC values @(#)m1tees.pro 1.1 10/05/96 LASCO IDL LIBRARY
computes the m1 wobble parameters, A, B, C, D @(#)m1wobble.pro 1.1 10/05/96 LASCO IDL LIBRARY
NAME: MK_HTML_HELP PURPOSE: Given a list of IDL procedure files (.PRO), VMS text library files (.TLB), or directories that contain such files, this procedure generates a file in the HTML format that contains the documentation for those routines that contain a DOC_LIBRARY style documentation template. The output file is compatible with World Wide Web browsers. CATEGORY: Help, documentation. CALLING SEQUENCE: MK_HTML_HELP, Sources, Outfile INPUTS: Sources: A string or string array containing the name(s) of the .pro or .tlb files (or the names of directories containing such files) for which help is desired. If a source file is a VMS text library, it must include the .TLB file extension. If a source file is an IDL procedure, it must include the .PRO file extension. All other source files are assumed to be directories. Outfile: The name of the output file which will be generated. KEYWORDS: TITLE: If present, a string which supplies the name that should appear as the Document Title for the help. VERBOSE: Normally, MK_HTML_HELP does its work silently. Setting this keyword to a non-zero value causes the procedure to issue informational messages that indicate what it is currently doing. !QUIET must be 0 for these messages to appear. STRICT: If this keyword is set to a non-zero value, MK_HTML_HELP will adhere strictly to the HTML format by scanning the the document headers for characters that are reserved in HTML (<,>,&,"). These are then converted to the appropriate HTML syntax in the output file. By default, this keyword is set to zero (to allow for faster processing). COMMON BLOCKS: None. SIDE EFFECTS: A help file with the name given by the Outfile argument is created. RESTRICTIONS: The following rules must be followed in formatting the .pro files that are to be searched. (a) The first line of the documentation block contains only the characters ";+", starting in column 1. (b) There must be a line which contains the string "NAME:", which is immediately followed by a line containing the name of the procedure or function being described in that documentation block. If this NAME field is not present, the name of the source file will be used. (c) The last line of the documentation block contains only the characters ";-", starting in column 1. (d) Every other line in the documentation block contains a ";" in column 1. Note that a single .pro file can contain multiple procedures and/or functions, each with their own documentation blocks. If it is desired to have "invisible" routines in a file, i.e. routines which are only for internal use and should not appear in the help file, simply leave out the ";+" and ";-" lines in the documentation block for those routines. No reformatting of the documentation is done. MODIFICATION HISTORY: July 5, 1995, DD, RSI. Original version. July 13, 1995, Mark Rivers, University of Chicago. Added support for multiple source directories and multiple documentation headers per .pro file. July 17, 1995, DD, RSI. Added code to alphabetize the subjects; At the end of each description block in the HTML file, added a reference to the source .pro file. July 18, 1995, DD, RSI. Added STRICT keyword to handle angle brackets. July 19, 1995, DD, RSI. Updated STRICT to handle & and ". Changed calling sequence to accept .pro filenames, .tlb text librarie names, and/or directory names. Added code to set default subject to name of file if NAME field is not present in the doc header. Mar 14, 1996, SEP, NRL-LASCO, Made "See" a hypertext link to file. Fix to handle case of no valid headers. @(#)mk_html_help.pro 1.2 10/11/96 LASCO IDL LIBRARY
FUNCTION nums2string Converts an array of numbers to a space delimited list of numeric characters INPUTS: nums FIX,FLOAT,BYT ARR OUTPUTS: numstring CHAR KEYWORDS: DELIM Set = character to use as delimiter, default is ' ' AUTHOR: Nathan Rich, NRL/Interferometrics, 2001 @(#)nums2string.pro 1.1, 11/08/01 - NRL IDL LASCO Library
NAME: ONE2TWO PURPOSE: Convert from 1-d indices to 2-d indices. CATEGORY: CALLING SEQUENCE: one2two, in, arr, ix, iy INPUTS: in = 1-d indices (may be a scalar). in arr = array to use (for size only). in Alternatively, arr can be [nx, ny] where nx and ny are the image sizes in x and y (saves space). KEYWORD PARAMETERS: OUTPUTS: ix, iy = equivalent 2-d indices. out COMMON BLOCKS: NOTES: MODIFICATION HISTORY: R. Sterner, 25 May, 1986. Johns Hopkins Applied Physics Lab. R. Sterner, 19 Nov, 1989 --- converted to SUN. R. Sterner, 9 Jun, 1993 --- Allowed [nx,ny] instead of ARR. Copyright (C) 1986, Johns Hopkins University/Applied Physics Laboratory This software may be used, copied, or redistributed as long as it is not sold and this copyright notice is reproduced on each copy made. This routine is provided as is without any express or implied warranties whatsoever. Other limitations apply as described in the file disclaimer.txt.
unction plot_thetas, im, xc, yc, th, HDR=hdr, INTRVAL=intrval, RANGE=range, SDIR=sdir, ROOT=root, SAVE=save, PIXELS=pixels, OCC=occ, RSUN=rsun, OVERPLOT=overplot, YTITLE=ytitle, XRANGE=xrange, YRANGE=yrange, THICKNESS=thickness Purpose: generates values of plots starting at a given center for different thetas INPUTS: im: 2D array xc, yc: Center of plot in IDL pixels th: (first) angle to plot KEYWORDS INTRVAL: Interval of Thetas to test (ie, 2 means plot every other angle) HDR: LASCO or EIT image header (structure) RANGE: range of angles to test (Degrees). Default is 180. SDIR: Directory to save plots in ROOT: Identifier for plot filenames RSUN: Label in units of solar radii from center (needs HDR set) START: First angle to plot (default is 0, defined as right equator) OCC: Use occulter center instead of sun center (if HDR is set) RMAX: Length of each ray computed; default is sqrt(naxis1)/2 OVERPLOT: Use oplot instead of plot YTITLE: Units of values in im (string) RESTRICTIONS: Must have window 0 for image and window 2 for plot open Written by N. Rich, NRL/Interferometrics Modified 8/21/02, N. Rich - Make general rather than using header for center 08/29/02 @(#)plot_thetas.pro 1.1
NAME: POLY_E PURPOSE: Evaluate a polynomial function of a variable. CATEGORY: C1 - Operations on polynomials. CALLING SEQUENCE: Result = POLY_E(X,C,[E]) INPUTS: X: The variable. This value can be a scalar, vector or array. C: The vector of polynomial coefficients. The degree of of the polynomial is N_ELEMENTS(C) - 1. E: The vector of exponents. OUTPUTS: POLY_E returns a result equal to: C(0) + c(1) * X + c(2)*x^2 + ... COMMON BLOCKS: None. SIDE EFFECTS: None. RESTRICTIONS: None. PROCEDURE: Straightforward. MODIFICATION HISTORY: Andrew Hayes 16 AUG 2000
NAME: ps_setup PURPOSE: setup Postscript printer CATEGORY: CALLING SEQUENCE: ps_setup,param,printer INPUTS: param = 0 to change the idl plot device to the printer param = 1 to return the plot device back to the screen and to transfer the plot file to the printer param = 2 to read current window and send to Postscript This may be faster for plots with lots of points. This is a screen dump, if you suddenly decide a plot is worth printing. param = 3 Save to a file param = 4 Same as 2 but color table is inverted first OPTIONAL INPUTS: printer = ascii string designating the printer to be used color_prt = specify color postscript printer encap = output encapsulated Postscript gif = output gif image (only for ps_setup,2) OUTPUTS: OPTIONAL OUTPUT PARAMETERS: COMMON BLOCKS: SIDE EFFECTS: RESTRICTIONS: PROCEDURE: Example: ps_setup,0 plot,x plot,y ps_setup,1,'A13' Example: ps_setup,0,/color_prt tvscl,img ps_setup,1,'lasco_phaser' Example: plot,huge_array ps_setup,2 MODIFICATION HISTORY: WRITTEN BY: RA Howard, NRL, 1990 2000/07/18, NBR - Use printer input for naming GIF file 07/18/00 @(#)ps_setup.pro 1.10 LASCO IDL LIBRARY
NAME: SHARPEN PURPOSE: Sharpens a ratio image by adding in a small amount of an edge enhanced image CATEGORY: LASCO UTIL CALLING SEQUENCE: Result = SHARPEN(Img,Bkg,factor) INPUTS: Img: Input image in DN/sec Bkg: Background image in DN/sec Factor: Factor of edge enhanced image to add to original image, Default is .015 KEYWORD PARAMETERS: PF: Point filter factor, default is 4 BOX_SIZE: Size of box to use in unsharp mask. Default is 11 points NO_RATIO: Return straight edge-enhanced image OUTPUTS: This function returns the edge enhance ratio image as a real number. SIDE EFFECTS: RESTRICTIONS: PROCEDURE: The procedure to enhance an image adds a little edge enhancement to the original image. First the image (in DN/sec) is point filtered to remove the stars and cosmic rays. Then the unsharp mask image is formed with the original image and the background image. The edge enhanced image is the difference between the unsharp mask of the original image and the background image. The difference is performed to remove any artifacts such as stray light arcs that are in both the original and background images. The ratio image is computed and the missing blocks are set to 1.0. The edge enhanced image is computed as: (Img/Bkg) + factor*edge_enhanced_image EXAMPLE: MODIFICATION HISTORY: Written by: RAH, 20 Apr 98 99/10/27, N Rich Add NO_RATIO keyword %W% %H% LASCO IDL LIBRARY
NAME: STR_SEP2 PURPOSE: This function breaks up a string into words that are separated by either spaces or tabs. CATEGORY: UTIL CALLING SEQUENCE: Result = STR_SEP2(Str) INPUTS: Str: String to be processed OUTPUTS: The function result is a string array with each word in each element of the array. MODIFICATION HISTORY: Written by: @(#)str_sep2.pro 1.1 10/05/96 LASCO IDL LIBRARY
NAME: STR_UNIQUE PURPOSE: Returns an array which is the unique elements of the input string CATEGORY: UTIL CALLING SEQUENCE: Result = STR_UNIQUE(Str) INPUTS: Str: A string array OUTPUTS: This function returns a string array containing the unique elements of the input array RESTRICTIONS: The input string must be a singly dimensioned array PROCEDURE: EXAMPLE: Suppose you have a string array, s, that contains, ['A','A','a','B','B','A'] To create an array of the unique elements of the array s: unique= STR_UNIQUE(s) The output array, unique will contain ['A','a','B'] MODIFICATION HISTORY: Written by: RA Howard, 7/30/97 @(#)str_unique.pro 1.2 11/20/97 LASCO IDL LIBRARY
NAME: STV PURPOSE: Create a scrolling graphics window for examining large images. By default, 1 draw widgets are used. It displays the actual image with scrollbars that allow sliding the visible window. CALLING SEQUENCE: STV , Image INPUTS: Image: The 2-dimensional image array to be displayed. If this argument is not specified, no image is displayed. The WID keyword can be used to obtain the window number of the draw widget so it can be drawn into at a later time. KEYWORDS: GROUP: The widget ID of the widget that calls SLIDE_IMAGE. If this keyword is specified, the death of the caller results in the death of STV. ORDER: This keyword is passed directly to the TV procedure to control the order in which the images are drawn. Usually, images are drawn from the bottom up. Set this keyword to a non-zero value to draw images from the top down. REGISTER: Set this keyword to create a "Done" button for SLIDE_IMAGE and register the widgets with the XMANAGER procedure. The basic widgets used in this procedure do not generate widget events, so it is not necessary to process events in an event loop. The default is therefore to simply create the widgets and return. Hence, when register is not set, SLIDE_IMAGE can be displayed and the user can still type commands at the "IDL>" prompt that use the widgets. RETAIN: This keyword is passed directly to the WIDGET_DRAW function, and controls the type of backing store used for the draw windows. If not present, a value of 2 is used to make IDL handle backing store. WID: A named variable in which to store the IDL window number of the sliding window. This window number can be used with the WSET procedure to draw to the scrolling window at a later time. TITLE: The title to be used for the SLIDE_IMAGE widget. If this keyword is not specified, "STV Image" is used. TOP_ID: A named variable in which to store the top widget ID of the STV hierarchy. This ID can be used to kill the hierarchy as shown below: STV, TOP_ID=base, ... . . . WIDGET_CONTROL, /DESTROY, base XVISIBLE: The width of the viewport on the scrolling window. If this keyword is not specified, 1/2 of display size is used. YVISIBLE: The height of the viewport on the scrolling window. If this keyword is not present, 1/2 of display size is used. OUTPUTS: None. COMMON BLOCKS: None. SIDE EFFECTS: Widgets for displaying a very large image are created. The user typically uses the window manager to destroy the window, although the TOP_ID keyword can also be used to obtain the widget ID to use in destroying it via WIDGET_CONTROL. RESTRICTIONS: Scrolling windows don't work correctly if backing store is not provided. They work best with window-system-provided backing store (RETAIN=1), but are also usable with IDL provided backing store (RETAIN=2). Various machines place different restrictions on the size of the actual image that can be handled. MODIFICATION HISTORY: 04.01.02, nbr - Written, based on SLIDE_IMAGE.pro 01/02/04 @(#)stv.pro 1.1
NAME: SUMMARY_PLOT PURPOSE: This procedure writes gif files of up to 25 browse images per file from the list of images CATEGORY: UTIL CALLING SEQUENCE: SUMMARY_PLOT,List INPUTS: List: A string array of the filenames to be used KEYWORD PARAMETERS OUTDIR: If set, specifies the output directory to write the images to. If not set, writes to the users' home directory OUTPUTS: A series of files are written. SIDE EFFECTS: RESTRICTIONS: At this time, the page size, the number of images/page, and the image annotation is coded into the routine. It is easy to add a branch point for different number of images per page, i.e., 25, 36, etc. It is not clear how to change the annotation. PROCEDURE: Make gifs that are 650 by 900. Portrait mode EXAMPLE: MODIFICATION HISTORY: Written by: M.D. Andrews, 18 Aug 1997 Modifications: 19 Oct 1998 RAH use lasco_readfits, test for bad image %W% %H% LASCO IDL LIBRARY
NAME: SUNDIST PURPOSE: This procedure generates two arrays whose elements are the distance from the center of the sun and the position angle from solar north. CATEGORY: UTIL CALLING SEQUENCE: SUNDIST,Coord,Dist,Angle INPUTS: Coord = 4 word array containing the solar coordinates, column center of sun, row center of sun, roll angle of solar north, number of pixels per radius KEYWORD PARAMETERS: XSIZE = Number of columns in image, default is 1024 YSIZE = Number of rows in image, default is square matrix OUTPUTS: Dist = array whose elements are solar radii OPTIONAL OUTPUTS: Angle = array whose elements are position angle MODIFICATION HISTORY: Written by: R.A. Howard, NRL, 27 October 1995 @(#)sundist.pro 1.1 09/19/96 LASCO IDL LIBRARY
NAME: TWO2ONE PURPOSE: Convert from 2-d indices to 1-d indices. CATEGORY: CALLING SEQUENCE: two2one, ix, iy, arr, in INPUTS: ix, iy = 2-d indices. in arr = array to use (for size only). in Alternatively, arr can be [nx, ny] where nx and ny are the image sizes in x and y (saves space). KEYWORD PARAMETERS: OUTPUTS: in = equivalent 1-d indices. out COMMON BLOCKS: NOTES: MODIFICATION HISTORY: R. Sterner, 7 May, 1986. Johns Hopkins Applied Physics Lab. R. Sterner, 19 Nov, 1989 --- converted to SUN R. Sterner, 15 Feb, 1993 --- fixed a bug in the [nx,ny] case. Copyright (C) 1986, Johns Hopkins University/Applied Physics Laboratory This software may be used, copied, or redistributed as long as it is not sold and this copyright notice is reproduced on each copy made. This routine is provided as is without any express or implied warranties whatsoever. Other limitations apply as described in the file disclaimer.txt.
NAME: UNIQ_NOSORT PURPOSE: Return the subscripts of the unique elements in an array. Does not require array to be sorted (as in UNIQ). CATEGORY: Array manipulation. CALLING SEQUENCE: UNIQ_SORT(Array) INPUTS: Array: The array to be scanned. OUTPUTS: An array of indicies into ARRAY is returned. The expression: ARRAY(UNIQ_NOSORT(ARRAY)) will be a copy of the sorted Array with duplicate elements removed. COMMON BLOCKS: None. Written : Scott Paswaters, NRL, Dec 1996. SCCS variables for IDL use @(#)uniq_nosort.pro 1.1 05/14/97 :NRL Solar Physics
NAME: UTC2YYMMDD PURPOSE: This function converts a modified julian date structure into a date string in the format yymmdd CATEGORY: UTIL CALLING SEQUENCE: Result = UTC2YYMMDD(Utc) INPUTS: Utc: Universal time in the CDS time structure OPTIONAL KEYWORDS: Use /HHMMSS to have '_HHMMSS' added. Ex result: 'YYMMDD_HHMMSS' Use /YYYY to have 4 digit year. Ex result: 'YYYYMMDD_HHMMSS' OUTPUTS: This function returns a date string in the format YYMMDD. MODIFICATION HISTORY: Written by: RA Howard, 1995 Updated : 97/01/28 SE Paswaters - Added /HHMMSS keyword Updated : 97/12/15 SE Paswaters - Added /HHMMSS keyword @(#)utc2yymmdd.pro 1.2 05/14/97 LASCO IDL LIBRARY
NAME w256 PURPOSE To assure an IDL color table with the full 256 colors. CALLING EXAMPLE w256 RESULT IDL will use full 256 colors for the rest of the session. In order to achieve this the color table of a window is only correct when the cursor is on a window. The outcome here is like that of 'Netscape -install'. RESTRICTIONS This will only work if done BEFORE any other windows are opened with a "window" or "wdsef" command. Do it first thing upon beginning a session. HISTORY Written by S.Paswaters, NRL, 1997/10/21 6/ 6/01, nbr - Add header notes.
NAME: WIN2PS PURPOSE: This routine reads the current window and colortable and saves it to a postscript file in the current directory named win2ps.ps. CATEGORY: Utilities. Output. CALLING SEQUENCE: WIN2PS INPUTS: None. OUTPUTS: None. SIDE EFFECTS: Creates a file in the current directory (or /tmp if no write permission) named win2ps.ps. MODIFICATION HISTORY: Written by: S.E. Paswaters October, 1996 Modified: 96/12/12 SEP Scaled image to 256 colors for postscript 00/10/18 RAH Added option to not rescale image, default was to rescale SCCS variables for IDL use %W% %H% :NRL Solar Physics
NAME: XREGISTERED PURPOSE: This function returns true if the widget named as its argument is currently registered with the XMANAGER as an exclusive widget, otherwise this routine returns false. CATEGORY: Widgets. CALLING SEQUENCE: Result = XREGISTERED(Name) INPUTS: Name: A string containing the name of the widget in question. KEYWORD PARAMETERS: NOSHOW: If the widget in question is registered, it is brought to the front of all the other windows by default. Set this keyword to keep the widget from being brought to the front. ID: If the widget in question is registered, this named variable will contain the id of the first instance of the widget. OUTPUTS: If the named widget is registered, XREGISTERED returns the number of instances of that name in the list maintained by XMANAGER. Otherwise, XREGISTERED returns 0. COMMON BLOCKS: MANAGED SIDE EFFECTS: Brings the widget to the front of the desktop if it finds one. RESTRICTIONS: None. PROCEDURE: Searches the list of exclusive widget names and if a match is found with the one in question, the return value is modified. MODIFICATION HISTORY: Written by Steve Richards, November, 1990 Jan, 92 - SMR Fixed a bug where an invalid widget was being referenced with WIDGET_CONTROL and the /SHOW keyword. 17 November 1993 - AB and SMR. Added ID validity checking to fix a bug where already dead widgets were being accessed. 21 October 1994 - Scott Paswaters (NRL) added the ID optional param. @(#)xregistered2.pro 1.1 10/08/96 LASCO IDL LIBRARY
NAME: YYMMDD2UTC PURPOSE: This function converts a date string in the format [YY]YYMMDD[_][HHMMSS] into a modified julian date structure CATEGORY: UTIL, time CALLING SEQUENCE: Result = YYMMDD2UTC(Dates) INPUTS: Dates: Date string in the format yymmdd, yyyymmdd, or yyyymmdd_hhmmss, or mjd or CDS time structure OUTPUTS: This function returns a CDS date structure. If the input is an array of date strings, then the output will be an array of structures. MODIFICATION HISTORY: Written by: RA Howard, 1995 V2: RAH, Jun 2, 1997, input dates can be long, string or CDS time structure V3: RAH, Sep 22, 1997, corrected CDS time structure to be longs not integers 2005.03.17, nbr - allow/use _hhmmss in argument 2005.03.30, nbr - fix bug that modified argument @(#)yymmdd2utc.pro 1.6 03/30/05 LASCO IDL LIBRARY
lasco_mk_html_help.pro
on
Wed Aug 17 12:22:03 2005.