This is the RCS snapshot version history for the EDI_PISO
code.  This file needs to be edited whenever a new snapshot
is made.

v1_07:  02.04.2001, Pre-paper version
	Added 'nchunk' resolution capability
	Fixed NM1/PM1 bug
	Fixed output aux file buffer overflow
	Added HR FGM data retrieval/read

v1_08:  Brought the 'nchunk' selection out to the
	csh script, fixed some ambiguous keywords
	in extract_aux_data.pro

v1_09:  Same as v1_08.  This is the one released
	to UNH on April 5th, 2001.

v1_10:  This is the final state of v1_07, since
	some development was done in this release
	directory (bad!)...Anyway, v1_07 no longer
	will exist...v1_10 is effectively the version
	used to create all of the data for the
	AG manuscript.

v1_11:  Added pp_outlier_removal option to pp_control.pro
	Added pp_maxchan_min and pp_maxchan_max to pp_control.pro
	Fixed the phi-error estimate from the coarse grid
	surface (error bowls that enveloped the center were being
	thrown out by a 45 degree maximum limit filter).
	Added pp_cg_phires and pp_fg_phires to pp_control.pro
	which decouples the phi-grid resolution to the
	nominal firing angle error (pp_acfir) which up until
	now wasn't a problem.

v1_12:  Changed pp_acfir from 1 degree to 2.

v1_13-v1_18:  Testing rcs_snapshot_name extraction and
              various other things.

v1_19:  Released to UNH for the first official IFF production.
v1_20:  Released to Graz on 20010508...
v1_21:  Undid the IFF file naming for nchunk ne 1
	Added pp_gunid in edi_piso_gcdc_script to allow for gun choosing.
	Added plot_bestarg.pro (see routine for doc...)
	Added spaux_info.pro (see routine for doc...)
	extract_aux_data.pro now returns B_GSE and BPP2SCS.
	
v1_22:  EPDM interface/file naming (extract_aux_data.pro WILL find
        and read these files, but the fine-tuning selection needs still to
        be coded...)
        pp_acfir_assign implemented
        confidence level implemented
        Released to Scott Bounds at UIowa.

v1_23   Major overhaul of bestarg.pro in an attempt to speed it
        up and to reduce the confusion of what is exactly going
        on...The speeding-up part hasn't been done yet, but
        it's now much easier to read.

        Also, the fine grid rchi2 is being output now, since this
        is a better indicator of how good the fit it.
        Released to Mark Chutter at UNH.

v1_24:	Implemented Hans' order assignment code (use pp_order_assign=1
	to use this)
	Generalized the ep_hr_fgm.bash script because many things
	were being hardwired here.

	FIXED: Found 2 errors in ep_calculated_dp.pro which affected
	ALL of the GSE vectors (total SC velocity being used
	for correction instead of just perp part) and all of the
	E-field vectors ('flip' not being used corrected).
	
	FIXED: MAC found normalization errors in 
	edi_piso_onechunk.pro which
	affected EVERYTHING (even the target) for the flip=1
	cases...This was patched here, and reworked to be more
	fool-proof for the next snapshot, v1_25.

v1_25:  Implemented ep_construct_scs2bpp.pro

v1_26:  Now use ep_run.csh INSTEAD OF edi_piso_gcdc_script
        EDI_PISO_BASH env. variable now set in ep_run.csh
        Hardwiring of bash path removed from ep_run.csh and
        ep_get_hrfgm_oh.pro.
	poorman_tof.pro:  Interface w/ ep_calculate_dp.pro
	updated.
	preord documentation and definition updated in
	ep_prep_order.pro.  Since preord wasn't being used
	yet, this change was OK.

v1_27:	Added /relax keyword to RunEst.pro because the
	'encompassing' requirement on B-data relative
	to the EDI data was too restrictive...5s was
	causing a whole hour not to be analyzed.
	Re-defined the preord variable (again!)

v1_28:  Fixed the ep_calc_traj.pro so that it looks
	at the towards/away dependence on the angle
	adjustment.

v1_30:  First attempt to bundle all of the new code
        in with the old code.  MANY changes/additions
        made related to decisions made at the Ground
	Software Meeting in late July, 2001.
	
v1_31:	Byte-type restriction placed on sbyte5 and sbyte6
	output (max value now 254 so that we don't get
	'***' in the aux and iff files...)

v1_32:	Changed beam.class to beam.class_init in
	ep_tof_regime_test.pro

v1_33:  Fixed the '***' problem

v1_34:  Added pp_pmt_dtof_error in order to choose which
        error from Hans' toferror.pro you want to use.

v1_35:	Added pp_noclassc_tri

v1_36:	Added pp_runest_sfac

v1_37:  class A stats output to aux file; rmax output too
	Coarse grid edge result now not fatal...Continue, but
	can't do TRI, only TOF

v1_38:	Added call to ep_simultan_tof.pro and propagated
	this output to the aux files.

v2_00:  First attempt at production software release.
	One major thing still missing: Stats file output.

v2_01:  Redefined Status Bytes #1 and #2 (see STATUS_BYTE_DEF.txt)

v2_02:  Fixed the empty string problem in edi_piso_write_iff_header.pro
	   so that Traudl's checkiff software won't croak.
	Hans fixed the format problem in runest.pro which only affected
	   an error message that was supposed to be output in certain
	   cases.
	Added the missing common block statement to ep_method_logic1.pro
	   which doesn't affect default running of the code because the
	   default is to run ep_method_logic3.pro

v2_03: MANY CHANGES:
	Added new routine ep_method_logic_pmtsmt.pro

	Fixed ep_outlier_removal (was allowing too much removal which
	caused nbeam to go below pp_nbeam_min; only affected those
	intervals with very few beams.)

	DM01_DEF.txt: Added pp_method=6 option, added pp_rmax
	
	Updated status_out values and now check finiteness
	of mean_angle/stdev_angle in:
	  ep_method_logic_pmt.pro
	  ep_method_logic_smt.pro
	  ep_method_logic1.pro
	  ep_method_logic2.pro
	  ep_method_logic3.pro
	  ep_poormans_tof.pro
	  ep_simultan_tof.pro

	IFF Output Change:  Rchi2 = -1. if result is PMT or SMT type.
                    Previously it was reported as fill (-1e+31)

	IFF Output Change:  Statusbyte4 (% TRI outliers) is returned for
                    ALL analysis types (TRI,PMT,SMT) because this
                    removal is done regardless of type.
                    Previously it was reported as fill (255)
                    for PMT and SMT.

	Additional pp_method option: 6
	This means force PMT/SMT branch 
	(don't examine the parallelism test result)
	and report SMT if successful,
	otherwise PMT.  No possibility to branch to TRI.

	New control parameter:  pp_rmax
	Set this to be the radial extent (in meters) of the initial
	coarse grid for triangulation.  Traditionally,
	this was determined by the procedure whatech.pro.
	pp_rmax=0 (default) means let whatech.pro determine this
	length.

	New routine: ep_write_pstat_data.pro

	RunEst.pro improvement:  Will allow q=1 beams
	and will give runner order information (if it can) for
	these beams.

	Added checks to ep_get_spinfgm.pro and ep_get_highfgm.pro to
	make sure the files aren't empty before reading them.

	Code now creates a PSTAT file, output the the user-defined
	pstat directory.  This gives statistics on the run.

	Added new keyword 'prel_gse' to spaux_info.pro

v2_04: DON'T USE!!!
    New method, Richman's ToF, added (ep_richmans_tof.pro)
	New control variables in DM01 related to RMT:
		1) pp_noclassc_rmt
		2) pp_rmt_dtof_error
		3) pp_runest_smooth
	See DM01_DEF.txt for definitions and defaults
	RMT invoked with pp_method=7 if using DM01 difference map
	RMT gets Good/Caution/Bad assignment like SMT
	Sbyte 3: bits 5 AND 6 set indicates RMT was used in the end
	Sbyte 3: bits 0 AND 2 set indicates pp_method=7 chosen

    ep_extract_att.pro - Common block added to speed up sequential access

    edi_piso_write_iff_header.pro - Message added to caveats indicating
	that SC4 is not operating on EDI

    EDI_PP_OUTPUT_DEFS.txt - New file describing EDI data output and fills 

v2_05:	DON'T USE!!!
	Added pp_method=8 option, forced RMT
	ep_method_logic_rmt.pro is a new routine for this option.

	Added EDI_PP_OUTPUT_DEFS_pre2_03.txt

	Some new capabilities to facilitate edi_sprod, BUT
	NOT FUNCTIONAL IN THIS VERSION!  Will be in the
	next version.

	HAS BUG!  SEE NEXT VERSION!

v2_06:	DON'T USE!!!
	Forgot to add pp_method=8 definition for sbyte3
	in ep_prep_iff_data_write.pro...So, v2_05 has this
	bug!!!

v2_07:  DON'T USE v2_04 or v2_05 or v2_06!!! 
	We have come up with a better
        way to incorporate RMT in this version v2_07:  It's
        stand-alone...i.e. no triangulation prep-work is 
        needed which speeds up the code ALOT if the RMT branch
        is chosen.  So here are the new things:

	New control variables in DM01 related to RMT:
		1) pp_noclassc_rmt
		2) pp_rmt_dtof_error
		3) pp_runest_smooth
	        4) pp_method=7   TRI/RMT logic
                5) pp_method=8   Forced RMT
	See DM01_DEF.txt for definitions and defaults
	RMT gets Good/Caution/Bad assignment like SMT
	sbyte3: bits 5 AND 6 set indicates RMT was used in the end
	sbyte3: bits 0 AND 2 set indicates pp_method=7 chosen
	sbyte3: bits 0 AND 3 set indicates pp_method=8 chosen

v2_08:  BUG FIX:  v2_07 had a missing 'else' in a newly
	added case statement (bestarg.pro).

v2_09:  NaN FIX: ep_toaw_sort_sa.pro

v2_10:  Now checking the newly created ToF over/underflow
        flags added to the PICK library by Mark, after
        being advised by Hans to do so.  These flags
        are checked in the routine:
            ep_augment_oh_data.pro
        If set, and if the quality of the beam is
        greater than or equal to 2, the beam quality
        is then reassigned to be a 1.  Hans and Jack
        agreed that this is reasonable because a "1"
        beam has OK angular information, but suspect
        ToF information, which is exactly this case.

v2_11:  Fixed a logic bug in RMT:
           Now do parallelism test using all beams
           to avoid the problem of "parallelism
           test not possible with the subset of
           RMT-worthy beams, so jump over to
           TRI" which created cases where we
           definitely shouldn't have been doing
           TRI (e.g. 20010309, 12-16).

	Included new version of Hans' RunEst.pro
        which handles gaps in FGM data.  This
        necessitates the creation of a new beam
        class, class 'G' (for gap) which CANNOT
        be used for ToF.  Also, class 'D' beams
        are those that never even go to RunEst
        (maxchan ne 7, etc...) so these too
        CANNOT be used for ToF.  These new classes
        now handled, and also output on stats
        page.

v2_12:  Diagnostics...More details of changes for next release...

v2_13:  Changes to quality assignment:
           No check on B_magnitude anymore
           No check on B_variance anymore
	Change to failure assignment:
	   If TRI chosen, and B_mag < pp_bmag_trilim, then abort
	Scripts/code which interface with EDI_SPROD now in place.
	RunEst problem with sortindex fixed.
	DM02 is the default difference map now...Don't use DM01!

v2_14:  Updated EDI_PP_OUTPUT_DEFS.txt and STATUS_BYTES_DEF.txt

v2_15:  Updated all IDL 'spawn' commands (the ones that return
        information) to be more general.  Matthias' setup
        had trouble, so now we use the /noshell keyword.

v2_16:  Added exceptional class assignment: 
	runorder=0/flagtot=1 case: 'C' beam, not 'B'

v2_17:	Added IDL-specific setup/startup customization
	to facilitate interface with edi_sprod, and also
	to make sure the user's !path in IDL doesn't
	erroneously have other edi_piso or pick paths
	preceding the desired paths.
	Also, EP_TEMPDATA_PATH was moved from ep_run.csh
	to ep_${MACHINE}_paths.csh to give more control
	to the user as to where this temporary data
	is copied to.

v2_18:  Added mag2sm coordinate trans option to the ep_rotate
	routines.
	Added some closure output statements to premature
	IFF closing situations in edi_piso.pro (to satisfy
	the GCDC requirments on IFF files)

v2_19:	Replaced orbit.pro with Matthias' newest version
	which uses common blocks instead of idl save sets.
	for saving data (reduces I/O).
	This newer version I renamed ep_orbit.pro.
	Added SM2GSE to the rotate routines (ep_rotate.pro)
	Added a check on negative input times to spaux_info.pro
	Updated the ep_mpecl_paths.pro, ep_ibmcl1_paths.pro and
	ep_ibmcl2_paths.pro to reflect Traudl's new 
	data organization scheme.
	NOTE: In this version, ep_mpecl_paths.pro points
	to the 'one_detector' version of Mark's PICK library.
	This will change once it becomes the official version.

v2_20:  Changed the PICK path in ep_mpecl_paths.csh back to
	nominal path (/home/chutter/edi/pick_idl/cluster)

v2_21:  Don't Use! Updated ep_mpecl_paths.csh, ep_ibmcl1_paths.csh, and
	ep_ibmcl2_paths.csh with respect to the MSF path (I didn't
	know about the backup directory for 2001.

v2_22:  Don't Use! 7th bit/SOB code not able to handle one-detector mode!
	Once again fixed the *_paths.csh scripts for MPE-Garching
	to handle multiple MSF paths.  v2_21 is NOT handling this
	correctly (hence, the Don't Use! disclaimer).
	The script ep_run.csh was also altered to handle this
	change.  Notice that a new environment variable,
	MSF_MULTI, is initialized to 0 on line 19.  For MPE-Garching,
	this variable is set to 1 in ep_mpecl_paths.csh, ep_ibmcl1_paths.csh,
	and ep_ibmcl2_paths.csh.  See these scripts if you also
	want the multiple MSF path option for your own machine/setup.

v2_23:	Updated the 7th bit/SOB check code in order to handle the
	new data structuring of the one-detector mode.

v2_24:  Fixed a 'last line' problem with the reader for the
	satt history file (i.e. updated ep_extract_att.pro).
	The problem was that the reader didn't allow for use
	of the very last line of the file (an overshoot was
	always assumed...ooops!)

v2_25:  Took out the unintentional print statements in 
	ep_extract_att.pro

v2_26:  Updated the ep_????_paths.csh scripts to allow for
	the backup directory for the rdda raw data to be
	different than the current rdda raw data directory.
	See the script ep_mpecl_paths.csh if you want to
	have this option in your own ep_????_paths.csh
	script.  Look for the 'OPTIONAL' lines regarding
	the two environment variables RDDA_MULTI and
	GDC_RDDA_ROOT2.  These are the only two which need
	to be defined.

v2_27:	Added the control parameter pp_ediefw_out which allows
	the creation of an extra IFF-type file which has only the
	electric field in it in SCS, earth(inertial)frame
	coordinate system to facilitate comparison with EFW.
	This file is created in the aux_data area (i.e. wherever
	the aux file is written to)

v2_28:  DON'T USE!!! MEGA CHANGES!  Diag version for testing...
v2_29:  DON'T USE!!! Still diag-ing
v2_30:  DON'T USE!!! Still diag-ing
v2_31:  DON'T USE!!! Still diag-ing
v2_32:  DON'T USE!!! Still diag-ing; Added the code to 
	have the amount we climb
	up the 'bowl' be a function of nparam - npenalty (before it
	was just a function of nparam, which was always 2)
v2_33:  DON'T USE!!! Still diag-ing; Added call to cak_chiprob in 
	ep_param_errors
	Also, limited bowl_error_scale_factor to be gt 1.
v2_34:  DON'T USE!!! New order-dependent firing angle errors
v2_35:  DON'T USE!!! Now calling Craig's 'much faster' routine, 
	cak_fchiprob.pro
	in ep_param_errors.pro

v2_36:	Fixed bug!  beam.tri_ok wasn't being updated correctly after
	outlier removal!!!!!  This bug probably affected versions
	v2_28 through v2_35.  OOOOOOPS!

v2_37:  MEGA changes, all discussed at the July03 Ground Software
	Meeting at MPE.  An official EDI_PISO document is in the 
	works to document the current version of EDI_PISO.

v2_38:  Small aux output error fixed

v2_39:  Updated the ibmcl2 paths

v2_40:  Fixed chisurf/chi2 inconsistency in bestarg.pro
v2_41:  Fixed another small error involving ordering in ep_calc_chisurf.
	No effect on science result.  Was just causing crashing.

v2_42:  Disabled the 'bumping down' algorithm which was causing some
	inconsistencies.  Must check into this further.

v2_43:  Tweeking, time optimization, working towards official release

v2_44:  Made the recnum counter for the CDF a long-type  (ooops)

v2_45:  Added the IFF_HOURLY write option to ep_control.csh for Mark
	Fixed the EDI_PISO - EDI_SPROD interface, spiffied it up for Matthias

v2_46:	Added the GEOC-to-GSE rotation option to ep_rotate.pro
	   GEOC is geographic/geocentric
	Added MLT as output of spaux_info.pro
	Added pp_edidsi_out control parameter which allows
	the creation of an extra IFF-type file which has only the
	electric field in it in DSI, satellite(moving)frame
	coordinate system to facilitate comparison with EFW.
	This file is created in the aux_data area (i.e. wherever
	the aux file is written to) and has the IFF format.
	DSI stands for despun, satellite, inverted, which
	is quasi-GSE.

v2_47:  Added pp_edidsi_inertial_out which is the same as
        pp_edidsi_out (see v2_46), but the electric field is
        output in the inertial (not satellite) frame.

v2_48:  Changed the "AR"chive CDF name to "PPP" (PP-PLUS)
	Fixed the ep_get_hrfgm_oh.pro so that if we're at
	a day boundary, and one of the days fails to produce,
	we still continue to try to get the data from
	the next day instead of returning a failure flag.

v2_49:	Had forgotten to include the new PPP skeleton files (ooops)

v2_50:  Changed calc_dipole.pro to calc_dipole_2005.pro based on the
	Fortran routine by Mike Hapgood and the IDL version by
	Edita Georgescu.  The EDI_PISO library now uses the 2005
	version which uses IGRF 2005 coefficients.

