subpak
subpak,
an Octave code which
contains a number of utilities.
Licensing:
The information on this web page is distributed under the MIT license.
Languages:
subpak is available in
a C version and
a C++ version and
a Fortran77 version and
a Fortran90 version and
a MATLAB version and
an Octave version.
Related Programs:
subpak_test
c8lib,
an Octave code which
implements certain elementary functions for C8
or double precision complex variables;
cell,
an Octave code which
defines a cell array, a generalization of an array which
can compactly store and retrieve vector or matrix data of
varying size, such as the rows of a triangular matrix.
i4lib,
an Octave code which
contains many utility routines, using "I4" or "single precision integer"
arithmetic.
index,
an Octave code which
converts a multidimensional vector index to a one-dimensional vector index;
it can handle zero and one based indexing schemes, as well as column major
and row major conventions.
r8lib,
an Octave code which
contains many utility routines, using R8 or
double precision real arithmetic.
Reference:
-
Milton Abramowitz, Irene Stegun,
Handbook of Mathematical Functions,
National Bureau of Standards, 1964,
ISBN: 0-486-61272-4,
LC: QA47.A34.
-
Book Industry Study Group,
The Evolution in Product Identification:
Sunrise 2005 and the ISBN-13,
https://www.bisg.org/docs/The_Evolution_in_Product_ID.pdf
-
Thomas Cormen, Charles Leiserson, Ronald Rivest,
Introduction to Algorithms,
MIT Press, 2001,
ISBN: 0262032937,
LC: QA76.C662.
-
Donald Kreher, Douglas Simpson,
Combinatorial Algorithms,
CRC Press, 1998,
ISBN: 0-8493-3988-X,
LC: QA164.K73.
-
Albert Nijenhuis, Herbert Wilf,
Combinatorial Algorithms for Computers and Calculators,
Second Edition,
Academic Press, 1978,
ISBN: 0-12-519260-6,
LC: QA164.N54.
-
Branch Rickey,
Goodby to Some Old Baseball Ideas,
Life Magazine,
2 August 1954.
-
Alan Schwarz,
Looking Beyond the Batting Average,
The New York Times,
Sunday, 1 August 2004.
-
Daniel Zwillinger, editor,
CRC Standard Mathematical Tables and Formulae,
30th Edition,
CRC Press, 1996,
ISBN: 0-8493-2479-3,
LC: QA47.M315.
Source Code:
-
angle_shift.m,
shifts an angle to lie between BETA and BETA+2*PI.
-
angle_shift_deg.m,
shifts an angle to lie between BETA and BETA+360.
-
angle_to_rgb.m,
converts an angle to a color on the RGB hexagon.
-
axis_limits.m,
returns "nice" axis limits for a plot.
-
bar_check.m,
computes the check digit for a bar code.
-
bar_code.m,
constructs the 113 character bar code from 11 digits.
-
bar_digit_code_left.m,
returns the 7 character left bar code for a digit.
-
bar_digit_code_right.m,
returns the 7 character right bar code for a digit.
-
bmi_english.m,
computes the body mass index given English measurements.
-
bmi_metric.m,
computes the body mass index given metric measurements.
-
ch_cap.m,
capitalizes a single character;
-
ch_is_digit.m,
determines if a character is a digit.
-
ch_is_printable.m,
determines if a character is printable.
-
ch_swap.m,
swaps two characters;
-
ch_uniform.m,
returns a pseudorandom character.
-
chvec_permute.m,
permutes a character vector.
-
chvec_print.m,
prints a character vector.
-
chvec2_print.m,
prints a pair of character vectors.
-
chvec_reverse.m,
reverses the order of the entries of a character vector.
-
cos_deg.m
returns the cosine of an angle given in degrees.
-
degrees_to_radians.m,
converts an angle measure from degrees to radians;
-
e_constant.m,
returns the value of E.
-
euler_constant.m,
returns the value of the Euler-Mascheroni constant.
-
fac_div.m,
divides two quantities represented as prime factors.
-
fac_gcd.m,
finds the greatest common divisor of two quantities
represented as prime factors.
-
fac_lcm.m,
finds the least common multiple of two quantities
represented as prime factors.
-
fac_mul.m,
multiplies two quantities represented as prime factors.
-
fac_print.m,
prints a quantity represented as prime factors.
-
fac_to_i4.m,
converts a quantity represented as prime factors to an integer.
-
fac_to_rat.m,
converts a quantity represented as prime factors to a rational value.
-
feet_to_meters.m,
converts a measurement in feet to one in meters.
-
gauss_sum.m,
evaluates a function which is the sum of Gaussians.
-
get_seed.m,
returns a random seed for the random number generator.
-
grid1.m,
returns grid points between X1 and X2 in N dimensions.
-
grid1.m,
returns a grid point between X1 and X2 in N dimensions.
-
grid2.m,
returns grid points between X1 and X2 in N dimensions.
-
grid2n.m,
returns a grid point between X1 and X2 in N dimensions.
-
grid3.m,
returns an array of grid points between X1, X2 and X3 in N dimensions.
-
grid3n.m,
returns one of the grid points between X1, X2 and X3 in N dimensions.
-
grid4.m,
computes a grid on the parallelogram set by X1, X2 and X3 in N space.
-
grid4n.m,
computes on point from a grid on the parallelogram set
by X1, X2 and X3 in N space.
-
i2vec_print.m,
prints a vector of pairs of integers;
-
i3mat_flip_cols.m,
flips the columns in an I3MAT;
-
i3mat_flip_rows.m,
flips the rows in an I3MAT;
-
i4_log_10.m,
returns the integer part of the logarithm base 10 of an integer;
-
i4_modp.m,
returns the nonnegative remainder of integer division;
-
i4_sign.m,
returns the sign of an integer.
-
i4_to_digits_decimal.m,
determines the last N decimal digits of an integer;
-
i4_to_fac.m,
converts an integer into a product of prime factors;
-
i4_uniform_ab.m,
returns a pseudorandom integer in a given range;
-
i4int_to_r8int.m,
maps an I4 interval to an R8 interval;
-
i4vec_min.m,
returns the minimum entry in an I4VEC;
-
i4vec_permute.m,
permutes an I4VEC in place;
-
i4vec_print.m,
prints an I4VEC;
-
i4vec_uniform.m,
returns a pseudorandom I4VEC in a given range;
-
i8_btest.m,
returns TRUE if bit POS of I is a 1;
-
i8_xor.m,
returns the exclusive OR of two integers;
-
ij_next.m,
returns the next matrix index;
-
ij_next_gt.m,
returns the next matrix index, with the requirement that I < J;
-
index_box2_next_2d.m,
produces indices on the surface of a box in 2D.
-
index_box2_next_3d.m,
produces indices on the surface of a box in 3D.
-
index1_col.m,
indexes a 1D array by columns.
-
index1_row.m,
indexes a 1D array by rows.
-
index2_col.m,
indexes a 2D array by columns.
-
index2_row.m,
indexes a 2D array by rows.
-
index3_col.m,
indexes a 3 array by columns.
-
index3_row.m,
indexes a 3D array by rows.
-
index4_col.m,
indexes a 4D array by columns.
-
index4_row.m,
indexes a 4D array by rows.
-
indexn_col.m,
indexes an ND array by columns.
-
indexn_row.m,
indexes an ND array by rows.
-
lcm_12n.m,
computes the least common multiple of the integers 1 through N;
-
pause_input.m,
waits until an input character is entered;
-
perm_check.m,
checks that a vector represents a permutation;
-
perm_cycle.m,
analyzes a permutation;
-
perm_free.m,
reports the unused items in a partial permutation;
-
perm_inverse.m,
computes the inverse of a permutation;
-
perm_next.m,
computes all permutations of N things, one at a time;
-
perm_print.m,
prints a permutation;
-
perm_uniform.m,
selects a random permutation of N objects;
-
pounds_to_kilograms.m,
converts a measurement in pounds to one in kilograms;
-
prime.m,
returns the N-th prime number;
-
prime_ge.m,
returns the smallest prime greater than or equal to N;
-
primer.m,
computes the prime numbers up to a given limit;
-
r8_log_10.m,
returns the logarithm base 10 of an R8;
-
r8_uniform_ab.m,
returns a scaled pseudorandom R8;
-
r8mat_print.m,
prints an R8MAT, with an optional title;
-
r8mat_print_some.m,
prints some of an R8MAT;
-
r8mat_transpose_print.m,
prints the transpose of an R8MAT;
-
r8mat_transpose_print_some.m,
prints some of the transpose of an R8MAT;
-
r8poly_order.m,
returns the order of a polynomial.
-
r8poly_print.m,
prints a polynomial;
-
r8vec_indicator.m,
sets an R8VEC to the indicator vector;
-
r8vec_mean.m,
returns the mean of an R8VEC;
-
r8vec_print.m,
prints an R8VEC;
-
r8vec_variance.m,
returns the variance of an R8VEC;
-
radians_to_degrees.m,
converts an angle measure from radians to degrees;
-
random_initialize.m,
initializes the MATLAB random number generator;
-
rat_factor.m,
factors a rational value into a product of prime factors;
-
roots_to_r8poly.m,
converts polynomial roots to polynomial coefficients;
-
roots_to_i4poly.m,
converts polynomial roots to polynomial coefficients;
-
s_cat.m,
concatenates two strings;
-
s_eqi.m,
compares two strings for equality, ignoring case and trailing blanks;
-
s_len_trim.m,
returns the length of a character string to the last nonblank;
-
s_swap.m,
swaps two strings;
-
sin_deg.m
returns the sine of an angle given in degrees.
-
sort_heap_external.m,
external sorts a list of values into ascending order;
-
tuple_next2.m,
computes the next element of an integer tuple space;
-
tvec_bracket_even.m,
computes evenly spaced angles between THETA1 and THETA2;
-
tvec_bracket_even2.m,
computes evenly spaced angles between THETA1 and THETA2;
-
tvec_bracket_even3.m,
computes evenly spaced angles between THETA1 and THETA2;
-
tvec_even.m,
computes evenly spaced angles between 0 and 2*PI;
-
tvec_even2.m,
computes evenly spaced angles between 0 and 2*PI;
-
tvec_even3.m,
computes evenly spaced angles between 0 and 2*PI;
-
versine_pulse.m,
adds a versine pulse to a constant.
Last revised on 22 September 2024