R8LIB
A Real Arithmetic Utility Library
R8LIB,
an Octave code which
contains a number of utilities for
double precision real (R8) arithmetic.
Licensing:
The computer code and data files made available on this web page
are distributed under
the MIT license
Languages:
r8lib is available in
a C version and
a C++ version and
a FORTRAN90 version and
a MATLAB version and
an Octave version and
a Python version.
Related Programs:
C4LIB,
an Octave code which
implements certain elementary functions for
single precision complex (C4) variables.
C8LIB,
an Octave code which
implements certain elementary functions for
double precision complex (C8) variables;
I4LIB,
an Octave code which
contains many utility routines, using "I4" or "single precision integer"
arithmetic.
QUATERNIONS,
an Octave code which
carries out some simple arithmetic operations for quaternions.
R8COL,
an Octave code which
contains utility routines for R8COL's, that is,
double precision real MxN arrays, considered as N column vectors,
each of length M. The data may be thought of as a matrix of
multiple columns, and many operations will be carried out columnwise.
r8lib_test
R8POLY,
an Octave code which
contains a number of utilities for polynomials with R8 coefficients,
that is, using double precision or 64 bit real arithmetic.
R8ROW,
an Octave code which
contains utility routines for R8ROW's, that is,
double precision real MxN arrays, considered as M row vectors,
each of length N. The data may be thought of as a matrix of
multiple rows, and many operations will be carried out rowwise.
SUBPAK,
an Octave code which
contains many utility routines;
Source Code:
-
boolean_to_string.m,
returns "True" or "False", given a boolean value.
-
c8_sqrt_r8.m,
returns the complex square root of an R8;
-
gamma_log_values.m
returns some values of the logarithm of the Gamma function.
-
gamma_values.m,
returns selected values of the Gamma function.
-
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 I4.
-
i4_uniform_ab.m,
returns a pseudorandom integer in a given range;
-
i4_wrap.m,
forces an integer to lie between given limits by wrapping.
-
i4int_to_r8int.m,
maps an integer interval to a real interval.
-
i4mat_print.m,
prints an I4MAT;
-
i4mat_print_some.m,
prints some of an I4MAT;
-
i4vec_indicator0.m,
sets an I4VEC to the indicator vector.
-
i4vec_indicator1.m,
sets an I4VEC to the indicator vector.
-
i4vec_permute.m,
permutes an I4VEC in place;
-
i4vec_print.m,
prints an I4VEC;
-
i4vec_uniform_ab.m,
returns a pseudorandom I4VEC in a given range;
-
ksub_next4.m,
compute K-subsets of an N-set, one at a time.
-
legendre_zeros.m,
returns the zeros of the Legendre polynomial of degree N.
-
perm0_check.m,
checks that a vector represents a 0-based permutation;
-
perm0_uniform.m,
selects a random permutation of 0,...,N-1;
-
perm1_check.m,
checks that a vector represents a 1-based permutation;
-
perm1_uniform.m,
selects a random permutation of 1,...,N;
-
r8_abs.m,
returns the absolute value of an R8;
-
r8_acos.m,
computes the inverse cosine;
-
r8_acosh.m,
computes the inverse hyperbolic cosine;
-
r8_add.m,
adds two R8's;
-
r8_agm.m,
computes the arithmetic-geometric mean of two R8's;
-
r8_aint.m,
truncates an R8 to an integer value by rounding towards zero;
-
r8_asin.m,
computes the inverse sine;
-
r8_asinh.m,
computes the inverse hyperbolic sine of a value;
-
r8_atan.m,
computes the arctangent, with regard to the correct quadrant.
-
r8_atanh.m,
computes the inverse hyperbolic tangent of a value;
-
r8_big.m,
returns a "big" R8;
-
r8_cas.m,
returns the "casine" of an R8;
-
r8_ceiling.m,
rounds an R8 "up" towards +oo to the next integer.
-
r8_choose.m,
returns a binomial coefficient as an R8.
-
r8_chop.m,
returns an R8 chopped to a given number
of binary digits;
-
r8_cosd.m,
returns the cosine of an angle given in degrees.
-
r8_cot.m,
computes the cotangent of an angle;
-
r8_cotd.m,
returns the cotangent of an angle given in degrees.
-
r8_csc.m,
returns the cosecant of an R8;
-
r8_cscd.m,
returns the cosecant of an angle given in degrees.
-
r8_cube_root.m,
returns the cube root of an R8;
-
r8_days_to_dhms.m,
converts decimal days into days, hours, minutes, seconds.
-
r8_degrees.m,
converts an angle from radians to degrees.
-
r8_dhms_to_days.m,
converts days, hours, minutes, seconds into decimal days.
-
r8_diff.m,
returns the difference of two R8's to a specified accuracy;
-
r8_digit.m,
returns a decimal digit of an R8;
-
r8_divide_i4.m,
returns an I4 fraction as an R8;
-
r8_e.m,
returns the value of the base of the natural logarithm system;
-
r8_epsilon.m,
returns the R8 roundoff unit;
-
r8_epsilon_compute.m,
computes the R8 roundoff unit;
-
r8_exp.m,
computes the exponential function, avoiding overflow and underflow.
-
r8_factorial.m,
returns N factorial as an R8;
-
r8_factorial_sterling.m
computes Stirling's approximation to the factorial function.
-
r8_factorial_values.m,
returns selected values of the factorial function.
-
r8_factorial2.m,
computes the double factorial function;
-
r8_factorial2_values.m,
returns selected values of the double factorial function.
-
r8_fall.m,
computes a falling factorial as an R8;
-
r8_fall_values.m,
returns selected values of the falling factorial function.
-
r8_floor.m,
rounds an R8 "down" (towards -oo) to the next integer.
-
r8_fractional.m,
returns the fractional part of an R8;
-
r8_gamma.m,
evaluates Gamma(X) for an R8.
-
r8_gamma_log.m,
evaluates Log(Gamma(X)) for an R8.
-
r8_haversine.m,
returns the haversine of an angle;
-
r8_heaviside.m,
evaluates the Heaviside step function;
-
r8_huge.m,
returns a "huge" R8;
-
r8_hypot.m,
returns sqrt ( x^2 + y^2 ) as an R8;
-
r8_is_in_01.m,
is true if an R8 is in [0,1];
-
r8_is_inf.m,
is true if an R8 if plus or minus infinity;
-
r8_is_insignificant.m,
is true if an R8 is insignificant;
-
r8_is_integer.m,
is true if an R8 equals an integer value;
-
r8_is_nan.m,
is true if an R8 is a NaN;
-
r8_log_2.m,
returns the logarithm base 2 of an R8;
-
r8_log_10.m,
returns the logarithm base 10 of an R8;
-
r8_log_b.m,
returns the logarithm base B of an R8;
-
r8_mant.m,
returns the mantissa of an R8;
-
r8_max.m,
returns the maximum of two R8's;
-
r8_min.m,
returns the minimum of two R8's;
-
r8_mod.m,
returns the remainder of R8 division;
-
r8_modp.m,
returns the nonnegative remainder of R8 division;
-
r8_mop.m,
returns a power of -1 as an R8;
-
r8_nint.m,
returns, for a given R8, the nearest integer value;
-
r8_normal_01.m,
returns a unit pseudonormal R8;
-
r8_normal_ab.m,
returns a pseudonormal R8 with mean A and variance B.
-
r8_nth_root.m,
returns the Nth root of an R8.
-
r8_pi.m,
returns the value of Pi as an R8;
-
r8_power.m,
returns the value of an integral power of an R8;
-
r8_power_fast.m,
quickly returns the value of an integral power of an R8;
-
r8_print.m,
prints an R8.
-
r8_radians.m,
converts an angle from degrees to radians.
-
r8_relu.m,
computes max(x,0);
-
r8_rise.m,
computes a rising factorial;
-
r8_rise_values.m,
returns selected values of the rising factorial function.
-
r8_round.m,
rounds an R8 to the nearest integral value.
-
r8_round2.m,
rounds an R8 to a specified number of binary digits.
-
r8_roundb.m,
rounds an R8 to a specified number of digits in a given base.
-
r8_roundx.m,
rounds an R8 to a specified number of decimal digits.
-
r8_secd.m,
returns the secant of an angle given in degrees.
-
r8_sech.m,
evaluates the hyperbolic secant of an R8.
-
r8_sigmoid.m,
evaluates the sigmoid function for an R8.
-
r8_sign.m,
returns the sign of an R8.
-
r8_sign_char.m,
returns a character indicating the sign of an R8.
-
r8_sign_match.m,
is TRUE if two R8's have the same sign.
-
r8_sign_match_strict.m,
is TRUE if two R8's have the same strict sign.
-
r8_sign_opposite.m,
is TRUE if two R8's have opposite sign.
-
r8_sign_opposite_strict.m,
is TRUE if two R8's have strictly opposite signs.
-
r8_sign3.m,
returns the three-way sign of an R8.
-
r8_sincos_sum.m,
simplifies a*sin(cx)+b*cos(cx).
-
r8_sind.m,
returns the sine of an angle given in degrees.
-
r8_softplus.m,
evaluates a smoothed version of the max(x,0) function.
-
r8_sqrt_i4.m,
returns the square root of an I4 as an R8.
-
r8_sqrt_pi.m,
returns the square root of Pi as an R8;
-
r8_swap.m,
swaps two R8's.
-
r8_swap3.m,
swaps three R8's.
-
r8_tand.m,
returns the tangent of an angle given in degrees.
-
r8_tiny.m,
returns a "tiny" R8;
-
r8_to_i4.m,
maps X in [XMIN,XMAX] to I in [IMIN,IMAX];
-
r8_to_r8_discrete.m,
maps R to RD in [RMIN,RMAX] with NR discrete values.
-
r8_uniform_01.m,
returns a unit pseudorandom R8;
-
r8_uniform_ab.m,
returns a scaled pseudorandom R8;
-
r8_unswap3.m,
unswaps three R8's;
-
r8_walsh_1d.m,
evaluates the Walsh function;
-
r8_wrap.m,
forces an R8 to lie between given limits by wrapping.
-
r8_zeta.m,
returns an estimate of the zeta function.
-
r82_dist_l2.m,
returns the L2 distance between a pair of R82's.
-
r82_print.m,
prints an R82;
-
r82_to_c8.m,
uses two R8's to create a C8;
-
r82_uniform_ab.m,
returns a scaled pseudorandom R82 value;
-
r82col_print_part.m,
prints part of an R82ROW.
-
r82row_order_type.m,
finds if an R82ROW is (non)strictly ascending/descending.;
-
r82row_part_quick_a.m,
reorders an R82ROW as part of a quicksort;
-
r82row_permute.m,
permutes the elements of an R82ROW;
-
r82row_print.m,
prints an R82ROW;
-
r82row_print_part.m,
prints part of an R82ROW.
-
r82row_sort_heap_index_a.m,
creates an ascending sort index for the elements of an R82ROW;
-
r82row_sort_quick_a.m,
ascending sorts an R82ROW using quicksort;
-
r82row_uniform_ab.m,
returns a pseudorandom R82ROW;
-
r82vec_order_type.m,
returns the order type of an R82VEC.
-
r82vec_part_quick_a.m,
reorders an R82VEC as part of a quicksort operation.
-
r82vec_permute.m,
permutes an R82VEC.
-
r82vec_print.m,
prints an R82VEC.
-
r82vec_print_part.m,
prints part of an R82VEC.
-
r82vec_sort_heap_index_a.m,
ascending sort index for an R82VEC.
-
r82vec_sort_quick_a.m,
applies ascending quicksort to an R82VEC.
-
r82vec_uniform_01.m,
randomly sets an R82VEC by selecting from the interval [0,1].
-
r82vec_uniform_ab.m,
randomly sets an R82VEC by selecting from the interval [A,B].
-
r83_norm.m,
returns the Euclidean norm of an R83.
-
r8int_to_i4int.m
maps an R8 interval to an I4 interval.
-
r8int_to_r8int.m
maps one R8 interval to another.
-
r8r8_compare.m,
compares two R8R8's;
-
r8r8_print.m,
prints an R8R8, that is, a pair of R8's.
-
r8r8vec_index_insert_unique.m,
inserts unique R8R8 values into an index sorted R8R8VEC;
-
r8r8r8_compare.m,
compares two R8R8R8's;
-
r8r8vec_index_search.m,
searches for an R8R8 value in an index sorted R8R8VEC;
-
r8r8r8vec_index_insert_unique.m,
inserts unique R8R8R8 values into an index sorted R8R8R8VEC;
-
r8r8r8vec_index_search.m,
searches for an R8R8R8 value in an index sorted R8R8R8VEC;
-
r8mat_add.m,
computes C = alpha * A + beta * B for R8MAT's.
-
r8mat_amax.m,
returns the maximum absolute value element in a rectangular R8MAT;
-
r8mat_border_add.m,
adds a "border" of zeros to an R8MAT.
-
r8mat_border_cut.m,
cuts the "border" of an R8MAT.
-
r8mat_cholesky_factor.m,
computes the Cholesky factor L*L' of a symmetric positive definite R8MAT;
-
r8mat_cholesky_factor_upper.m,
computes the upper Cholesky factor R'*R of a symmetric positive definite R8MAT;
-
r8mat_cholesky_inverse.m,
computes the inverse of a symmetric positive definite matrix
using the Cholesky factor;
-
r8mat_cholesky_solve.m,
solves a Cholesky factored linear system A * x = b;
r8
-
r8mat_cholesky_solve_upper.m,
solves an upper-Cholesky factored linear system A * x = b;
-
r8mat_covariance.m,
computes the sample covariance of a set of vector data.
-
r8mat_det_2d.m,
computes the determinant of a 2 by 2 R8MAT;
-
r8mat_det_3d.m,
computes the determinant of a 3 by 3 R8MAT;
-
r8mat_det_4d.m,
computes the determinant of a 4 by 4 R8MAT;
-
r8mat_det_5d.m,
computes the determinant of a 5 by 5 R8MAT;
-
r8mat_diag_add_scalar.m,
adds a scalar to the diagonal of an R8MAT;
-
r8mat_diag_add_vector.m,
adds a vector to the diagonal of an R8MAT;
-
r8mat_diag_get_vector.m,
gets the diagonal of an R8MAT;
-
r8mat_diag_set_scalar.m,
sets the diagonal of an R8MAT to a scalar;
-
r8mat_diag_set_vector.m,
sets the diagonal of an R8MAT to a vector;
-
r8mat_diagonal.m,
returns a diagonal matrix as an R8MAT.
-
r8mat_diff_frobenius.m,
returns the Frobenius norm of the difference of two R8MAT's.
-
r8mat_expand_linear.m,
linearly interpolates new data into an R8MAT;
-
r8mat_expand_linear2.m,
linearly interpolates new data into an R8MAT;
-
r8mat_flip_cols.m,
reverses the order of the columns of an R8MAT.
-
r8mat_flip_rows.m,
reverses the order of the rows of an R8MAT.
-
r8mat_fs.m,
factors and solves a system with one hand side.
-
r8mat_fss.m,
factors and solves a system with multiple right hand sides.
-
r8mat_givens_post.m,
returns a Givens post-multiplier matrix;
-
r8mat_givens_post.m
-
r8mat_givens_pre.m,
returns a Givens pre-multiplier matrix;
-
r8mat_givens_pre.m
-
r8mat_hess.m,
approximates a Hessian matrix via finite differences.
-
r8mat_house_axh.m,
computes A*H, where H is a compact Householder matrix;
-
r8mat_house_form.m,
constructs a Householder matrix from its compact form;
-
r8mat_house_hxa.m,
computes H*A, where H is a compact Householder matrix;
-
r8mat_house_post.m,
returns a Householder post-multiplier matrix;
-
r8mat_house_pre.m,
returns a Householder pre-multiplier matrix;
-
r8mat_identity.m,
sets an R8MAT to the MxN identity matrix;
-
r8mat_indicator.m,
returns the indicator matrix as an R8MAT.
-
r8mat_inverse_2d.m,
computes the inverse of a 2 by 2 R8MAT;
-
r8mat_inverse_3d.m,
computes the inverse of a 3 by 3 R8MAT;
-
r8mat_inverse_4d.m,
computes the inverse of a 4 by 4 R8MAT;
-
r8mat_is_identity.m,
determines if an R8MAT is the identity matrix.
-
r8mat_is_in_01.m,
is true if every entry of an R8MAT is in [0,1];
-
r8mat_is_insignificant.m,
is true if an R8MAT is insignificant relative to another;
-
r8mat_is_integer.m,
is true if all entries of an R8MAT are integers;
-
r8mat_is_significant.m,
is true if an R8MAT is significant relative to another;
-
r8mat_is_symmetric.m,
determines if an R8MAT is symmetric.
-
r8mat_jac.m,
approximates the Jacobian matrix of a function via finite differences.
-
r8mat_kronecker.m,
computes the Kronecker product of two R8MAT's.
-
r8mat_l_inverse.m,
computes the inverse of a lower triangular matrix;
-
r8mat_l_print.m,
prints a compact lower triangular matrix;
-
r8mat_l_solve.m,
solves a lower triangular linear system;
-
r8mat_l1_inverse.m,
computes the inverse of a unit lower triangular R8MAT;
-
r8mat_l1_solve.m,
solves a unit lower triangular linear system;
-
r8mat_l1t_solve.m,
solves a transposed unit lower triangular linear system;
-
r8mat_ldlt_factor.m,
computes the LDLT factors (unit lower triangular L and
diagonal D) for a symmetric matrix.
-
r8mat_ldlt_solve.m,
solves a linear system involving a symmetric matrix that
has been LDLT factored.
-
r8mat_lt_solve.m,
solves a transposed lower triangular linear system;
-
r8mat_lu.m,
computes the LU factors of a rectangular R8MAT;
-
r8mat_max.m,
returns the maximum element in a rectangular R8MAT;
-
r8mat_max_index.m,
returns the index of the maximum element in an R8MAT;
-
r8mat_maxcol_minrow.m,
returns the maximum column minimum row in a rectangular R8MAT;
-
r8mat_maxrow_mincol.m,
returns the maximum row minimum column in a rectangular R8MAT;
-
r8mat_mean.m,
returns the mean of an R8MAT;
-
r8mat_min.m,
returns the minimum element of an R8MAT;
-
r8mat_min_index.m,
returns the index of the minimum element in an R8MAT;
-
r8mat_mincol_maxrow.m,
returns the minimum column maximum row in an R8MAT;
-
r8mat_minrow_maxcol.m,
returns the minimum row maximum column in an R8MAT;
-
r8mat_minvm.m,
computes inverse(A) * B for R8MAT's.
-
r8mat_mm.m,
computes the product of a matrix times a matrix;
-
r8mat_mmt.m,
computes the product of a matrix times a transposed matrix;
-
r8mat_mtm.m,
computes the product of a transposed matrix times a matrix;
-
r8mat_mtv.m,
computes the product of a transposed matrix times a vector;
-
r8mat_mv.m,
computes the product of an R8MAT times a vector;
-
r8mat_nint.m,
rounds the entries of an R8MAT to the nearest integer;
-
r8mat_nonzeros.m,
counts the nonzeros in an R8MAT.
-
r8mat_norm_eis.m,
computes the EISPACK norm of an R8MAT;
-
r8mat_norm_fro.m,
computes the Frobenius norm of an R8MAT;
-
r8mat_norm_fro_affine.m,
computes the Frobenius norm of an R8MAT difference;
-
r8mat_norm_l1.m,
computes the L1 norm of an R8MAT;
-
r8mat_norm_l2.m,
computes the L2 norm of an R8MAT;
-
r8mat_norm_li.m,
computes the L-oo norm of an R8MAT;
-
r8mat_norm_rms.m,
returns the RMS norm of an R8MAT.
-
r8mat_normal_01.m,
returns an R8MAT containing normal random numbers;
-
r8mat_nullspace.m,
computes the nullspace of an R8MAT;
-
r8mat_nullspace_size.m,
sizes the nullspace of an R8MAT;
-
r8mat_orth_uniform.m,
returns a random orthogonal matrix;
-
r8mat_plot.m,
plots an R8MAT, with an optional title;
-
r8mat_plot_symbol.m,
returns a symbol for a double precision number;
-
r8mat_poly_char.m,
computes the characteristic polynomial of an R8MAT;
-
r8mat_power.m,
computes a positive integer power of a square R8MAT;
-
r8mat_power_method.m,
applies the power method to seek the dominant eigenvalue and
eigenvector;
-
r8mat_print.m,
prints an R8MAT;
-
r8mat_print_some.m,
prints some of an R8MAT;
-
r8mat_product_elementwise.m,
computes the elementwise product of two R8MAT's;
-
r8mat_ref.m,
returns the row echelon form of an R8MAT.
-
r8mat_row_copy.m,
copies a vector into a row of an R8MAT.
-
r8mat_rref.m,
returns the reduced row echelon form of an R8MAT.
-
r8mat_rref_solve_binary.m,
seeks binary solutions (if any) of a row reduced echelon form
linear system.
-
r8mat_rref_solve_binary_nz.m,
seeks binary solutions (if any) of a row reduced echelon form
linear system, but only consider solutions with exactly NZ nonzeros.
-
r8mat_scale_01.m,
shifts and scales an R8MAT to have min 0 and max 1;
-
r8mat_scale_ab.m,
shifts and scales an R8MAT to have min A and max B;
-
r8mat_solve.m,
solves an N by N linear system with multiple right hand sides.
-
r8mat_solve_2d.m,
solves a 2 by 2 linear system using Cramer's rule.
-
r8mat_solve_3d.m,
solves a 3 by 3 linear system using Cramer's rule.
-
r8mat_solve2.m,
computes the solution of an N by N linear system.
-
r8mat_standardize.m,
shifts and scales an R8MAT to have zero mean and unit variance.
-
r8mat_sum.m,
sums an R8MAT.
-
r8mat_symm_eigen.m,
returns a random symmetric matrix with given eigensystem.
-
r8mat_symm_jacobi.m,
applies Jacobi eigenvalue iteration to a symmetric matrix.
-
r8mat_to_plu.m,
factors a general R8MAT to separate P, L, U factors;
-
r8mat_to_r8cmat.m,
copies data from an R8MAT to an R8CMAT.
-
r8mat_to_r8plu.m,
factors a general R8MAT to a condensed PLU factor;
-
r8mat_trace.m,
returns the trace of an R8MAT;
-
r8mat_transpose.m,
transposes 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;
-
r8mat_u_inverse.m,
returns the inverse of an upper triangular R8MAT;
-
r8mat_u_solve.m,
solves an upper triangular linear system;
-
r8mat_u1_inverse.m,
returns the inverse of a unit upper triangular R8MAT;
-
r8mat_uniform_01.m,
returns a unit pseudorandom R8MAT;
-
r8mat_uniform_ab.m,
returns an R8MAT of scaled pseudorandom numbers;
-
r8mat_uniform_abvec.m,
returns an R8MAT of scaled pseudorandom numbers;
-
r8mat_ut_solve.m,
solves a transposed upper triangular linear system;
-
r8mat_vand2.m,
returns the M by N row Vandermonde matrix;
-
r8plu_det.m,
returns the determinant of an R8LPU matrix.
-
r8plu_inverse.m,
returns the inverse of an R8LPU matrix.
-
r8plu_mul.m,
computes A * x, after A has been factored by R8MAT_TO_R8PLU.
-
r8plu_sol.m,
solves A * x = b, after A has been factored by R8MAT_TO_R8PLU.
-
r8plu_to_r8mat.m,
recovers the matrix A that was factored by R8MAT_TO_R8PLU.
-
r8rows_to_r8mat.m,
copies rowwise data from a vector to a doubly dimensioned array.
-
r8slmat_print.m,
prints a strict lower triangular R8MAT.
-
r8vec_01_to_ab.m,
shifts and rescales data from [0,1] to [A,B];
-
r8vec_amax.m,
returns the maximum absolute value in an R8VEC.
-
r8vec_amax_index.m,
returns the index of the maximum absolute value in an R8VEC.
-
r8vec_amin.m,
returns the minimum absolute value in an R8VEC.
-
r8vec_amin_index.m,
returns the index of the minimum absolute value in an R8VEC.
-
r8vec_any_normal.m,
returns a unit normal vector to a given vector;
-
r8vec_asum.m,
returns the sum of the absolute values of the entries of an R8VEC;
-
r8vec_bin.m,
bins an R8VEC;
-
r8vec_binary_next.m,
returns the next binary R8VEC.
-
r8vec_blend.m,
interpolates an R8VEC given two vectors and weight factors;
-
r8vec_bracket.m,
searches a sorted R8VEC for successive brackets of a value;
-
r8vec_bracket2.m,
searches a sorted R8VEC for successive brackets of a value.
-
r8vec_bracket3.m,
finds the interval containing or nearest a given value;
-
r8vec_bracket4.m,
finds the interval containing or nearest each of a vector of values;
-
r8vec_bracket5.m,
searches a sorted R8VEC for successive brackets of a value.
-
r8vec_bracket6.m,
searches a sorted R8VEC for successive brackets of a vector of values.
-
r8vec_cheby_extreme.m,
creates a vector of Chebyshev Extreme values in [A,B].
-
r8vec_cheby_zero.m,
creates a vector of Chebyshev Zero values in [A,B].
-
r8vec_cheby1space.m,
creates a vector of Type 1 Chebyshev-spaced values in [A,B].
-
r8vec_cheby2space.m,
creates a vector of Type 2 Chebyshev-spaced values in [A,B].
-
r8vec_compare.m,
compares the order of two R8VEC's;
-
r8vec_concatenate.m,
concatenates two R8VEC's;
-
r8vec_convolution.m,
returns the discrete convolution of two R8VEC's;
-
r8vec_convolution_circ.m,
returns the discrete circular convolution of two R8VEC's;
-
r8vec_copy.m,
copies one R8VEC into another;
-
r8vec_correlation.m,
returns the correlation of two R8VEC's;
-
r8vec_covariance.m,
computes the sample covariance of two R8VEC's.
-
r8vec_cross_product_2d.m,
computes the cross product of two R8VEC's in 2D;
-
r8vec_cross_product_affine_2d.m,
computes the affine cross product of two R8VEC's in 2D;
-
r8vec_cross_product_3d.m,
computes the cross product of two R8VEC's in 3D;
-
r8vec_cross_product_affine_3d.m,
computes the affine cross product of two R8VEC's in 3D;
-
r8vec_cum.m,
returns the cumulative sums of an R8VEC;
-
r8vec_cum0.m,
returns the zero-based cumulative sums of an R8VEC;
-
r8vec_dif.m,
computes coefficients for estimating the N-th derivative;
-
r8vec_diff_norm.m,
returns the L2 norm of the difference of two R8VEC's.
-
r8vec_diff_norm_l1.m,
returns the L1 norm of the difference of two R8VEC's.
-
r8vec_diff_norm_l2.m,
returns the L2 norm of the difference of two R8VEC's.
-
r8vec_diff_norm_li.m,
returns the L-oo norm of the difference of two R8VEC's.
-
r8vec_direct_product.m,
forms the elements of the direct product of R8VEC's.
-
r8vec_direct_product2.m,
forms the elements of the direct product of R8VEC's.
-
r8vec_distance.m,
determines the distance between two R8VEC's;
-
r8vec_dot_product.m,
computes the dot product of two R8VEC's;
-
r8vec_dot_product_affine.m,
computes the affine dot product of two R8VEC's;
-
r8vec_entropy.m,
returns the entropy of an R8VEC.
-
r8vec_eq.m,
is true if two R8VEC's are equal;
-
r8vec_even.m,
returns an R8VEC of N values evenly spaced between given limits;
-
r8vec_even_select.m,
returns the I-th of N evenly spaced values;
-
r8vec_even2.m,
linearly interpolates new numbers into an R8VEC;
-
r8vec_even2_select.m,
returns the I-th of N evenly spaced midpoint values;
-
r8vec_even3.m,
evenly interpolates new data into an R8VEC.
-
r8vec_expand_linear.m,
linearly interpolates new data into an R8VEC.
-
r8vec_expand_linear2.m,
linearly interpolates new data into an R8VEC.
-
r8vec_fill.m,
sets all entries of an R8VEC to a given value.
-
r8vec_first_index.m,
indexes the first occurrence of values in an R8VEC.
-
r8vec_frac.m,
finds the K-th smallest entry of an R8VEC;
-
r8vec_fraction.m,
returns the fraction part of an R8VEC;
-
r8vec_gt.m,
is true if one R8VEC is greater than another;
-
r8vec_heap_a.m,
sets an R8VEC to a ascending heap;
-
r8vec_heap_d.m,
sets an R8VEC to a descending heap;
-
r8vec_histogram.m,
returns a histogram of the entries of an R8VEC;
-
r8vec_house_column.m,
defines a Householder premultiplier that "packs" a column;
-
r8vec_identity_row.m,
returns a row of the identity matrix as an R8VEC.
-
r8vec_i4vec_dot_product.m,
the dot product of an R8VEC and an I4VEC;
-
r8vec_index_delete_all.m,
deletes all occurrences of a value from an indexed sorted list;
-
r8vec_index_delete_dupes.m,
deletes duplicates from an indexed sorted list.
-
r8vec_index_delete_one.m,
deletes one copy of a value from an indexed sorted list.
-
r8vec_index_insert.m,
inserts a value in an indexed sorted list.
-
r8vec_index_insert_unique.m,
inserts a unique value in an indexed sorted list.
-
r8vec_index_order.m,
sorts an integer vector using an index vector.
-
r8vec_index_search.m,
searches for a value in an indexed sorted list.
-
r8vec_index_sort_unique.m,
creates a sort index for an R8VEC.
-
r8vec_index_sorted_range.m,
search index sorted vector for elements in a range.
-
r8vec_indexed_heap_d.m,
creates a descending heap from an indexed R8VEC.
-
r8vec_indexed_heap_d_extract.m,
extract from heap descending indexed R8VEC.
-
r8vec_indexed_heap_d_insert.m,
insert value into heap descending indexed R8VEC.
-
r8vec_indexed_heap_d_max.m,
maximum value in heap descending indexed R8VEC.
-
r8vec_indicator0.m,
sets an R8VEC to the indicator vector;
-
r8vec_indicator1.m,
sets an R8VEC to the indicator vector;
-
r8vec_insert.m,
inserts a new value into an R8VEC;
-
r8vec_is_ascending.m,
is true if all entries of an R8VEC are weakly ascending;
-
r8vec_is_ascending_strictly.m,
is true if all entries of an R8VEC are strictly ascending;
-
r8vec_is_binary.m,
is true if all entries of an R8VEC are 0 or 1.
-
r8vec_is_distinct.m,
is true if all entries of an R8VEC are distinct;
-
r8vec_is_in_01.m,
is true if all enries of an R8VEC are in [0,1];
-
r8vec_is_in_ab.m,
is true if all entries of an R8VEC are in [A,B];
-
r8vec_is_integer.m,
is true if all entries of an R8VEC are integers;
-
r8vec_is_insignificant.m,
is true if an R8VEC is insignificant;
-
r8vec_is_negative.m,
is true if all entries of an R8VEC are strictly negative;
-
r8vec_is_negative_any.m,
is true if any entry of an R8VEC is negative;
-
r8vec_is_nonnegative.m,
is true if all entries of an R8VEC are nonnegative;
-
r8vec_is_nonpositive.m,
is true if all entries of an R8VEC are nonpositive;
-
r8vec_is_nonzero_any.m,
is true if any entry of an R8VEC is nonzero;
-
r8vec_is_one.m,
is true if all entries of an R8VEC are one;
-
r8vec_is_positive.m,
is true if all entries of an R8VEC are strictly positive;
-
r8vec_is_zero.m,
is true if all entries of an R8VEC are zero;
-
r8vec_legendre.m,
creates a vector of Legendre-spaced values.
-
r8vec_linspace.m,
returns an R8VEC of values evenly spaced between given limits.
-
r8vec_linspace2.m,
returns an R8VEC of values evenly spaced between given limits.
-
r8vec_lt.m,
is true if one R8VEC is less than another;
-
r8vec_max.m,
returns the maximum entry in an R8VEC;
-
r8vec_max_abs_index.m,
returns the index of the maximum absolute value entry in an R8VEC;
-
r8vec_max_index.m,
returns the index of the maximum entry in an R8VEC;
-
r8vec_mean.m,
returns the mean of an R8VEC;
-
r8vec_mean_geometric.m,
returns the geometric mean of an R8VEC;
-
r8vec_mean_running.m,
computes the running averages of an R8VEC;
-
r8vec_mean_update.m,
updates the mean of an R8VEC with one new entry.
-
r8vec_median.m,
returns the median of an R8VEC;
-
r8vec_mesh_2d.m,
creates a 2D mesh from 2 R8VEC's.
-
r8vec_midspace.m,
returns an R8VEC of midpoint values evenly spaced between given limits.
-
r8vec_min.m,
returns the minimum entry in an R8VEC;
-
r8vec_min_index.m,
returns the index of the minimum entry in an R8VEC;
-
r8vec_min_pos.m,
returns the minimum positive entry in an R8VEC;
-
r8vec_mirror_next.m,
steps through all sign variations of an R8VEC;
-
r8vec_mirror_ab_next.m,
steps through all 3^M mirror variations of an R8VEC X in a box
defined by A and B;
-
r8vec_multispace.m,
returns a scaled list of values;
-
r8vec_nint.m,
rounds an R8VEC to the nearest integer.
-
r8vec_norm.m,
returns the L2 norm of an R8VEC.
-
r8vec_norm_affine.m,
returns the affine L2 norm of an R8VEC.
-
r8vec_norm_l0.m,
returns the L0 "norm" of an R8VEC.
-
r8vec_norm_l1.m,
returns the L1 norm of an R8VEC.
-
r8vec_norm_l2.m,
returns the L2 norm of an R8VEC.
-
r8vec_norm_li.m,
returns the L-oo norm of an R8VEC.
-
r8vec_norm_lp.m,
returns the Lp norm of an R8VEC.
-
r8vec_norm_rms.m,
returns the RMS norm of an R8VEC.
-
r8vec_normal_01.m,
returns unit pseudonormal R8VEC.
-
r8vec_normal_ab.m,
returns an R8VEC of random normal values with mean A and variance B.
-
r8vec_normalize.m,
scales an R8VEC to have unit Euclidean norm;
-
r8vec_normalize_l1.m,
scales an R8VEC to have unit l1 norm;
-
r8vec_normsq.m,
returns the squared L2 norm of an R8VEC.
-
r8vec_normsq_affine.m,
returns the squared affine L2 norm of an R8VEC.
-
r8vec_order_type.m,
finds if an R8VEC is (non)strictly
ascending/descending.
-
r8vec_pair_sums.m,
finds all sums formed by a pair of vectors.;
-
r8vec_part_quick_a.m,
reorders an R8VEC as part of a quicksort;
-
r8vec_permute.m,
permutes an R8VEC;
-
r8vec_permute_cyclic.m,
cyclically permutes an R8VEC;
-
r8vec_permute_uniform.m,
randomly permutes an R8VEC;
-
r8vec_polarize.m,
decomnposes an R8VEC into parts parallel
and perpendicular to a given direction;
-
r8vec_print.m,
prints an R8VEC;
-
r8vec_print_16.m,
prints an R8VEC to 16 decimal places;
-
r8vec_print_mask.m,
prints a masked R8VEC;
-
r8vec_print_part.m,
prints "part" of an R8VEC.
-
r8vec_print_some.m,
prints some of an R8VEC;
-
r8vec_product.m,
computes the product of the entries of an R8VEC;
-
r8vec_range.m,
finds the range of Y's within a restricted X range;
-
r8vec_range_2.m,
updates a range to include values in a new array;
-
r8vec_reverse.m,
reverses the entries of an R8VEC;
-
r8vec_rotate.m,
"rotates" the entries of an R8VEC;
-
r8vec_rsquared.m,
returns the R^2 "goodness of fit" statistic;
-
r8vec_rsquared_adjusted.m,
returns the adjusted R^2 "goodness of fit" statistic;
-
r8vec_scalar_triple_product.m,
computes the scalar triple product;
-
r8vec_scale.m,
scales an R8VEC by a factor.
-
r8vec_scale_01.m,
shifts and scales an R8VEC to have min 0 and max 1;
-
r8vec_scale_ab.m,
shifts and scales an R8VEC to have min A and max B;
-
r8vec_search_binary_a.m,
uses binary search on an R8VEC to find the location
of a given value;
-
r8vec_shift.m,
performs a right shift on an R8VEC.
-
r8vec_shift_circular.m,
performs a circular shift on an R8VEC.
-
r8vec_sign3_running.m,
computes the running sign3 of an R8VEC;
-
r8vec_smooth.m,
smooths an R8VEC using averaging;
-
r8vec_softmax.m,
evaluates the softmax function of an R8VEC.
-
r8vec_sort_bubble_a.m,
ascending sorts an R8VEC using bubble sort;
-
r8vec_sort_bubble_d.m,
descending sorts an R8VEC using bubble sort;
-
r8vec_sort_heap_a.m,
ascending sorts an R8VEC using heap sort;
-
r8vec_sort_heap_d.m,
descending sorts an R8VEC using heap sort;
-
r8vec_sort_heap_index_a.m,
computes an index vector to ascending sort an R8VEC;
-
r8vec_sort_heap_index_d.m,
computes an index vector to descending sort an R8VEC;
-
r8vec_sort_heap_mask_a.m,
indexed heap ascending sort of a masked R8VEC;
-
r8vec_sort_insert_a.m,
ascending sorts an R8VEC using insertion sort;
-
r8vec_sort_insert_index_a.m,
ascending index sorts an R8VEC using insertion sort;
-
r8vec_sort_insert_index_d.m,
descending index sorts an R8VEC using insertion sort;
-
r8vec_sort_quick_a.m,
ascending quick sorts an R8VEC;
-
r8vec_sort_shell_a.m,
ascending sorts an R8VEC using Shell's sort;
-
r8vec_sorted_merge_a.m,
merges two ascending sorted R8VEC's;
-
r8vec_sorted_nearest.m,
returns the nearest element in a sorted R8VEC;
-
r8vec_sorted_range.m,
searches a sorted vector for elements in a range.
-
r8vec_sorted_split.m,
"splits" a sorted R8VEC, given a splitting value;
-
r8vec_sorted_undex.m,
returns unique sorted indexes for a sorted R8VEC.
-
r8vec_sorted_unique.m,
returns the unique elements in a sorted R8VEC;
-
r8vec_sorted_unique_count.m,
counts the unique elements in a sorted R8VEC;
-
r8vec_sorted_unique_hist.m,
creates a histogram of the unique elements in a sorted R8VEC;
-
r8vec_split.m,
splits an unsorted R8VEC based on a splitting value;
-
r8vec_standardize.m,
shifts and scales an R8VEC to have zero mean and unit variance.
-
r8vec_std.m,
returns the standard deviation of an R8VEC;
-
r8vec_std_sample.m,
returns the sample standard deviation of an R8VEC;
-
r8vec_std_update.m,
updates the standard deviation of an R8VEC when one more element
has been added.
-
r8vec_step.m,
evaluates a unit step function.
-
r8vec_stutter.m,
makes a "stuttering" copy of an R8VEC;
-
r8vec_sum.m,
returns the sum of the entries of an R8VEC;
-
r8vec_sum_running.m,
computes the running averages of an R8VEC;
-
r8vec_swap.m,
swaps the contents of two R8VEC's;
-
r8vec_transpose_print.m,
prints the "transpose" of an R8VEC.
-
r8vec_undex.m,
returns unique sorted indexes for an R8VEC.
-
r8vec_uniform_01.m,
returns a unit pseudorandom R8VEC.
-
r8vec_uniform_ab.m,
returns a scaled pseudorandom R8VEC;
-
r8vec_uniform_abvec.m,
returns a scaled pseudorandom R8VEC;
-
r8vec_uniform_unit.m,
returns a random unit R8VEC.
-
r8vec_unique_count.m,
counts the number of unique elements in an unsorted R8VEC;
-
r8vec_unique_index.m,
indexes the unique elements in an unsorted R8VEC;
-
r8vec_variance.m,
returns the variance of an R8VEC;
-
r8vec_variance_circular.m,
returns the circular variance of an R8VEC;
-
r8vec_variance_sample.m,
returns the sample variance of an R8VEC;
-
r8vec_variance_update.m,
updates the variance of an R8VEC for the addition of one new entry;
-
r8vec_vector_triple_product.m,
computes the vector triple product of three R8VEC's;
-
r8vec_wrap.m,
wraps the entries of an R8VEC to lie between given bounds.
-
r8vec_write.m,
writes an R8VEC to a file.
-
r8vec2_compare.m,
compares two entries in an R8VEC2;
-
r8vec2_print.m,
prints an R8VEC2;
-
r8vec2_print_some.m,
prints some of an R8VEC2;
-
r8vec2_sort_a.m,
ascending sorts an R8VEC2;
-
r8vec2_sort_d.m,
descending sorts an R8VEC2;
-
r8vec2_sort_heap_index_a.m,
does an indexed heap ascending sort of an R8VEC2;
-
r8vec2_sorted_unique.m,
keeps unique elements in a sorted R8VEC2;
-
r8vec2_sorted_unique_index.m,
indexes unique elements in a sorted R8VEC2.
-
r8vec2_sum_max_index.m,
returns the index of the maximum sum of two R8VEC's.
-
r8vec3_print.m,
prints an R8VEC3;
-
rms.m,
returns the RMS norm of a vector or matrix;
-
sort_heap_external.m,
externally sorts a list of values into ascending order;
-
timestamp.m,
prints the current YMDHMS date as a timestamp;
Last revised on 27 May 2020.