NAME

txdderiv - compute derivative of data sets using central differences

SYNOPSIS

script/txdderiv [parameters] [ycol|xcol ycol [ycol2 ...]] < data.dat

DESCRIPTION

You can provide the x and y column(s) to work on on the command line as plain numbers of as values for the --xcol and --ycol parameters. The latter are overridden by the former.

PARAMETERS

These are the general rules for specifying parameters to this program:

txdderiv -s -xyz -s=value --long --long=value [--] [files/stuff]

You mention the options to change parameters in any order or even multiple times. They are processed in the oder given, later operations overriding/extending earlier settings. Using the separator "--" stops option parsing An only mentioned short/long name (no "=value") means setting to 1, which is true in the logical sense. Also, prepending + instead of the usual - negates this, setting the value to 0 (false). Specifying "-s" and "--long" is the same as "-s=1" and "--long=1", while "+s" and "++long" is the sames as "-s=0" and "--long=0".

There are also different operators than just "=" available, notably ".=", "+=", "-=", "*=" and "/=" for concatenation / appending array/hash elements and scalar arithmetic operations on the value. Arrays are appended to via "array.=element", hash elements are set via "hash.=name=value". You can also set more array/hash elements by specifying a separator after the long parameter line like this for comma separation:

--array/,/=1,2,3  --hash/,/=name=val,name2=val2

The available parameters are these, default values (in Perl-compatible syntax) at the time of generating this document following the long/short names:

append (scalar)
0

do not replace data with the derivatives, append them as additional columns instead (only works if dual-grid mode is off)

black (scalar)
0

ignore whitespace at beginning and end of line (disables strict mode) (from Text::NumericData)

comchar (scalar)
undef

comment character (if not set, deduce from data or use #) (from Text::NumericData)

comregex (scalar)
'[#%]*[^\\S\\015\\012]*'

regex for matching comments (from Text::NumericData)

config, I (array)
[]

Which configfile(s) to use (overriding automatic search in likely paths); special: just -I or --config causes printing a current config file to STDOUT

dualgrid (scalar)
0

define the derivative on points between the initial sampling points, thusly creating a new grid; otherwise, the central differences are computed on each input point with its neighbours

empty (scalar)
0

treat empty lines as empty data sets, preserving them in output (from Text::NumericData)

fill (scalar)
undef

fill value for undefined data (from Text::NumericData)

help, h (scalar)
0

Show the help message. Value 1..9: help level, par: help for paramter par (long name) only.

Additional fun with negative values, optionally followed by comma-separated list of parameter names: -1: list par names, -2: list one line per name, -3: -2 without builtins, -10: dump values (Perl style), -11: dump values (lines), -100: print POD.

lineend (scalar)
undef

line ending to use: (DOS, MAC, UNIX or be explicit if you can, taken from data if undefined, finally resorting to UNIX) (from Text::NumericData)

numformat, N (array)
[]

printf formats to use (if there is no "%" present at all, one will be prepended) (from Text::NumericData)

numregex (scalar)
'[\\+\\-]?\\d*\\.?\\d*[eE]?\\+?\\-?\\d*'

regex for matching numbers (from Text::NumericData)

outsep (scalar)
undef

use this separator for output (leave undefined to use input separator, fallback to TAB) (from Text::NumericData)

quote (scalar)
undef

quote titles (from Text::NumericData)

quotechar (scalar)
undef

quote character to use (derived from input or ") (from Text::NumericData)

separator (scalar)
undef

use this separator for input (otherwise deduce from data; TAB is another way to say "tabulator", fallback is ) (from Text::NumericData)

sort (scalar)
1

sort the data according to x column (usually desirable unless you got a specific order wich should be monotonic)

strict, S (scalar)
0

strictly split data lines at configured separator (otherwise more fuzzy logic is involved) (from Text::NumericData)

text, T (scalar)
1

allow text as data (not first column) (from Text::NumericData)

version (scalar)
0

print out the program version

xcol, x (scalar)
1

abscissa column

ycol, y (array)
[
  2
]

ordinate column, or columns as array

AUTHOR

Thomas Orgis <thomas@orgis.org>

LICENSE AND COPYRIGHT

Copyright (c) 2005-2023 Thomas Orgis, Free Software licensed under the same terms as Perl 5.10