[go: up one dir, main page]

Menu

Tree [r199] / libpetey /
 History

HTTPS access


File Date Author Commit
 datasets 2012-07-22 peteysoft [r197] Symbol table for all my parsing needs.
 sparse 2012-07-25 peteysoft [r198] Row reduction utility/sparse calculator
 README 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 bin_search.cc 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 bit_array.cc 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 bit_array.h 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 date_calc.y 2012-01-29 peteysoft [r162] bug in time class; working (albeit basic) time ...
 date_parse.l 2012-01-15 peteysoft [r158] Added lex file for parsing dates. Couple of bu...
 date_parse2.l 2012-01-29 peteysoft [r162] bug in time class; working (albeit basic) time ...
 dtree_lg.cc 2011-04-03 peteysoft [r41] Binary tree for standard strings, function for ...
 dtree_lg.h 2011-04-03 peteysoft [r41] Binary tree for standard strings, function for ...
 dtree_lgi.cc 2012-07-22 peteysoft [r197] Symbol table for all my parsing needs.
 dtree_lgi.h 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 error_codes.h 2011-05-02 peteysoft [r66] adding error codes...
 heapsort_ptr.cc 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 heapsort_tmpl.cc 2011-08-27 peteysoft [r104] Added random number generator interface...
 ignore_code.cc 2012-04-30 peteysoft [r190] Fixing help screens
 kextreme.cc 2011-11-01 peteysoft [r136] Forgot two double instantiations for kextreme...
 kextreme.h 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 kextreme2.cc 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 kextreme_quick.cc 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 kleast.cc 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 kleast2.cc 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 kleast_exp.cc 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 kleast_quick.cc 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 linked.cc 2012-07-16 peteysoft [r195] Error in linked.cc, tree_tmp.cpp (wrong templat...
 linked.h 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 makefile 2012-07-16 peteysoft [r195] Error in linked.cc, tree_tmp.cpp (wrong templat...
 parse_command_opts.cc 2011-11-01 peteysoft [r133] Better linking between the makefiles
 parse_command_opts.h 2011-08-25 peteysoft [r102] Extra options to parse_command_opts function:
 petey_pointer.h 2012-04-22 peteysoft [r189] Debugging: fixing a lot of stupid errors (mostl...
 peteys_tmpl_lib.cc 2012-07-06 peteysoft [r194] Errors in peteys_tmpl_lib and linked
 peteys_tmpl_lib.h 2011-09-18 peteysoft [r110] - cleaning up randomize library
 quicksort.cc 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 quicksort.h 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 random.cc 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 randomize.cc 2011-10-02 peteysoft [r122] - Added ran_end routine to randomize library
 randomize.h 2011-10-02 peteysoft [r122] - Added ran_end routine to randomize library
 read_ascii_all.cc 2011-11-07 peteysoft [r141] Bug in read_ascii_all
 read_ascii_all.h 2011-11-06 peteysoft [r138] ...
 rk_dumb_tmpl.cc 2011-06-21 peteysoft [r82] Should I add parameters to RK4 routines??
 sorter.cc 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 string_operators.h 2011-04-03 peteysoft [r42] Mistakes in last commit...
 string_petey.cc 2011-04-28 peteysoft [r60] Cleaning up debug information...
 string_petey.h 2011-02-12 peteysoft [r28] Adapting to brown...
 supernewton.cc 2011-11-01 peteysoft [r133] Better linking between the makefiles
 supernewton.h 2011-11-01 peteysoft [r133] Better linking between the makefiles
 symbol_table.cc 2012-07-25 peteysoft [r199] Symbol table utility
 symbol_table.h 2012-07-25 peteysoft [r199] Symbol table utility
 test_parse_opts.cc 2011-08-25 peteysoft [r102] Extra options to parse_command_opts function:
 time_calc.cc 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 time_class.cc 2012-01-29 peteysoft [r162] bug in time class; working (albeit basic) time ...
 time_class.h 2012-01-29 peteysoft [r161] Unsuccessful attempt at a date calculator using...
 tree_lg.cc 2011-11-01 peteysoft [r135] In tree_lg, tree_lgi and kextreme, instantiatio...
 tree_lg.h 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 tree_lgi.cc 2011-11-01 peteysoft [r135] In tree_lg, tree_lgi and kextreme, instantiatio...
 tree_lgi.h 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 tree_tmp.cpp 2012-07-16 peteysoft [r195] Error in linked.cc, tree_tmp.cpp (wrong templat...
 tree_tmp.h 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 treesort.cpp 2011-02-10 peteysoft [r24] Started new version of this scientific library ...
 useful_mainly_for_reference.cc 2012-07-25 peteysoft [r199] Symbol table utility

Read Me

Installation

To install, download the tarball from Sourceforge and unpack to the desired location.  Edit the makefile and type, "make".  You must have the GSL (GNU Scientific Library installed.  To copy the library and include files to the appropriate directories, type, "make install".  Or, simply add the installation directory to your path.  The following macros must be changed to suit your system:

CPP		= name of your C++ compiler
GSL_INCLUDE	= location of GSL include files
INCLUDE_PATH	= desired location of include files
LIB_PATH	= desired location of compiled library
CFLAGS		= compiler options

The level of optimisation can be changed in the usual way by editing the CFLAGS macro or by setting the OPT_VER macro to the desired flag.  This is to create multiple versions with different levels of optimisation--the optimisation flag will be appended to all compiled object files and libraries.

Summary

Here is a brief summary of the contents of the library, by include file:

peteys_tmpl_lib.h:  A set of template libraries for numerical computation.

heapsort_inplace:	Performs a heapsort on arbitary classes (as long as they have the comparison operators defined).  This is done in place with no extra storage required.
heapsort:		Performs a heapsort.  Returns a set of indices for rearranging a vector while leaving the original vector untouched.  Slightly slower than above.
treesort:		Treesort routine.  Sorts the data and returns a set of indices.
reverse:		Reverses the order of an array.
map_vector:		For use with heapsort routine.  Rearranges a vector from a set of indices.
bin_search:		Binary search on ordered data.
interpolate:		Interpolation on ordered data.  Returns a double precision float in which the whole number portion indexes into the array while the fractional value is the interpolation coefficient.
rk_dumb:		Fourth-order Runge-Kutta integrator with fixed (non-adaptive) stepsize.

kextreme.h:  Routines for finding a set of k minimum or maximum values in an unsorted array.  Performs this in n log k time using binary trees.

kleast:		Returns the k minimum values in an array.  Two versions: one returns a set of indices.
kgreatest:	Returns the k maximum values in an array.  		"

time_class.h:	A class for working with dates and times.  Very useful.

supernewton.h:	A very powerful root-finding algorithm.  Works by bracketing the root and fitting a third-order polynomial, combining fast convergence with numerical stability.  Function to be zeroed must return its derivatives.

tree_lg:	Binary tree class used to find k- minimum and maximum values.
tree_lgi:	Binary tree class used to find k- minimum and maximum values.  Sorts indices simultaneous to actual values.

linked.h:	Templated linked-list class.

tree_tmp.h:	Another binary tree class.  Not well tested.

string_petey.h:	A string class.  Not well tested.

bit_array.h:	For compact storage of bit data.


Questions or comments about this software?  Email me:

Peter Mills
peteymills@hotmail.com