toolbox - Toolbox of various functions and generic utilities

Toolbox of various functions and generic utilities.

Authors: Steve Morley, Jon Niehof, Brian Larsen, Josef Koller, Dan Welling Institution: Los Alamos National Laboratory Contact: smorley@lanl.gov, jniehof@lanl.gov, balarsen@lanl.gov, jkoller@lanl.gov, dwelling@lanl.gov Los Alamos National Laboratory

Copyright 2010 Los Alamos National Security, LLC.

Array binning

arraybin(array, bins) Split a sequence into subsequences based on value.
bin_center_to_edges(centers) Convert a list of bin centers to their edges
bin_edges_to_center(edges) Convert a list of bin edges to their centers
binHisto(data[, verbose]) Calculates bin width and number of bins for histogram using Freedman-Diaconis rule, if rule fails, defaults to square-root method

Array creation

dist_to_list(func, length[, min, max]) Convert a probability distribution function to a list of values
geomspace(start[, ratio, stop, num]) Returns geometrically spaced numbers.
linspace(min, max, num, **kwargs) Returns linear-spaced bins.
logspace(min, max, num, **kwargs) Returns log-spaced bins.

Array searching and masking

interweave(a, b) given two array-like variables interweave them together.
isview(array1[, array2]) Returns if an object is a view of another object.
tCommon(ts1, ts2[, mask_only]) Finds the elements in a list of datetime objects present in another
tOverlap(ts1, ts2, *args, **kwargs) Finds the overlapping elements in two lists of datetime objects
tOverlapHalf(ts1, ts2[, presort]) Find overlapping elements in two lists of datetime objects

Other functions

assemble(fln_pattern, outfln[, sortkey, verbose]) assembles all pickled files matching fln_pattern into single file and
dictree(in_dict[, verbose, spaces, levels, …]) pretty print a dictionary tree
eventTimer(Event, Time1) Times an event then prints out the time and the name of the event,
feq(x, y[, precision]) compare two floating point values if they are equal
getNamedPath(name) Return the full path of a parent directory with name as the leaf
human_sort(l) Sort the given list in the way that humans expect.
hypot(*args) compute the N-dimensional hypot of an iterable or many arguments
interpol(newx, x, y[, wrap]) 1-D linear interpolation with interpolation of hours/longitude
intsolve(func, value[, start, stop, maxit]) Find the function input such that definite integral is desired value.
medAbsDev(series[, scale]) Calculate median absolute deviation of a given input series
mlt2rad(mlt[, midnight]) Convert mlt values to radians for polar plotting
normalize(vec[, low, high]) Given an input vector normalize the vector to a given range
pmm(a, *b) print min and max of input arrays
rad2mlt(rad[, midnight]) Convert radians values to mlt
windowMean(data[, time, winsize, overlap, …]) Windowing mean function, window overlap is user defined

Multithreading and multiprocessing

thread_job(job_size, thread_count, target, …) Split a job into subjobs and run a thread for each
thread_map(target, iterable[, thread_count]) Apply a function to every element of a list, in separate threads

System tools

do_with_timeout(timeout, target, *args, **kwargs) Execute a function (or method) with a timeout.
loadpickle(fln) load a pickle and return content as dictionary
progressbar(count, blocksize, totalsize[, text]) print a progress bar with urllib.urlretrieve reporthook functionality
query_yes_no(question[, default]) Ask a yes/no question via raw_input() and return their answer.
savepickle(fln, dict[, compress]) save dictionary variable dict to a pickle with filename fln
timeout_check_call(timeout, *args, **kwargs) Call a subprocess with a timeout.
TimeoutError Raised when a time-limited process times out
update([all, QDomni, omni, omni2, leapsecs, …]) Download and update local database for omni, leapsecs etc