Package: insitu 0.1.3.9019

insitu: By-Reference Routines for Numeric Vectors

Using by-reference semantics, functions in this package are crafted to modify the input objects in-place and avoid allocating new memory. By avoiding memory allocations (and the associated garbage colection these require), operations performed by-reference can be faster than those performed with R's default copy-on-modify semantics.

Authors:Mike Cheng [aut, cre, cph]

insitu_0.1.3.9019.tar.gz
insitu_0.1.3.9019.zip(r-4.5)insitu_0.1.3.9019.zip(r-4.4)insitu_0.1.3.9019.zip(r-4.3)
insitu_0.1.3.9019.tgz(r-4.4-x86_64)insitu_0.1.3.9019.tgz(r-4.4-arm64)insitu_0.1.3.9019.tgz(r-4.3-x86_64)insitu_0.1.3.9019.tgz(r-4.3-arm64)
insitu_0.1.3.9019.tar.gz(r-4.5-noble)insitu_0.1.3.9019.tar.gz(r-4.4-noble)
insitu_0.1.3.9019.tgz(r-4.4-emscripten)insitu_0.1.3.9019.tgz(r-4.3-emscripten)
insitu.pdf |insitu.html
insitu/json (API)
NEWS

# Install 'insitu' in R:
install.packages('insitu', repos = c('https://coolbutuseless.r-universe.dev', 'https://cloud.r-project.org'))

Peer review:

Bug tracker:https://github.com/coolbutuseless/insitu/issues

On CRAN:

5.20 score 32 stars 10 scripts 106 exports 0 dependencies

Last updated 16 hours agofrom:c978c15cc1. Checks:OK: 9. Indexed: yes.

TargetResultDate
Doc / VignettesOKDec 24 2024
R-4.5-win-x86_64OKDec 24 2024
R-4.5-linux-x86_64OKDec 24 2024
R-4.4-win-x86_64OKDec 24 2024
R-4.4-mac-x86_64OKDec 24 2024
R-4.4-mac-aarch64OKDec 24 2024
R-4.3-win-x86_64OKDec 24 2024
R-4.3-mac-x86_64OKDec 24 2024
R-4.3-mac-aarch64OKDec 24 2024

Exports:alloc_alongalloc_mat_mat_mulalloc_mat_vec_mulalloc_matrixalloc_nbr_absbr_acosbr_acoshbr_addbr_andbr_asinbr_asinhbr_assignbr_atanbr_atanhbr_ceilbr_copybr_cosbr_coshbr_cospibr_cummaxbr_cumminbr_cumprodbr_cumsumbr_diffsqbr_divbr_eqbr_expbr_expm1br_floorbr_fmaddbr_fmsubbr_fnmaddbr_fnmsubbr_gebr_gtbr_idivbr_is_nabr_lebr_logbr_log10br_log1pbr_log2br_ltbr_mat_col_getbr_mat_col_setbr_mat_dist2br_mat_dist3br_mat_hypot2br_mat_hypot3br_mat_mat_mulbr_mat_mat_mul_bsqbr_mat_normalise2br_mat_normalise3br_mat_rollbr_mat_row_getbr_mat_row_setbr_mat_transposebr_mat_vec_mulbr_mat_vec_mul_asqbr_maxbr_minbr_modbr_mulbr_nebr_notbr_orbr_powbr_pow2br_rembr_revbr_rollbr_roundbr_runifbr_seqbr_shufflebr_signbr_sinbr_sinhbr_sinpibr_sortbr_sqrtbr_subbr_sumsqbr_tanbr_tanhbr_tanpibr_truncbr_zeroby_referenceduplicateset_seed_lehmertf2_add_rotatetf2_add_scaletf2_add_translatetf2_applytf2_newtf2_resettf3_add_rotate_xtf3_add_rotate_ytf3_add_rotate_ztf3_add_scaletf3_add_translatetf3_applytf3_newtf3_reset

Dependencies:

Example: fast convolution

Rendered fromconvolution.Rmdusingknitr::rmarkdownon Dec 24 2024.

Last update: 2024-11-30
Started: 2024-11-26

References

Rendered fromreferences.Rmdusingknitr::rmarkdownon Dec 24 2024.

Last update: 2024-11-30
Started: 2020-09-03

Readme and manuals

Help Manual

Help pageTopics
Allocate empty matrix for the result of the matrix multiplication 'A * B'alloc_mat_mat_mul
Allocate empty vector for the result of the matrix-vector multiplication 'A * x'alloc_mat_vec_mul
Allocate empty matrix of the given dimensions.alloc_matrix
Allocate a new numeric vectoralloc_along alloc_n
Math operations taking only a single input vectorbr_abs br_acos br_acosh br_asin br_asinh br_atan br_atanh br_ceil br_cos br_cosh br_cospi br_exp br_expm1 br_floor br_is_na br_log br_log10 br_log1p br_log2 br_not br_pow2 br_sign br_sin br_sinh br_sinpi br_sqrt br_tan br_tanh br_tanpi br_trunc br_zero
Math operations taking two argumentsbr_add br_and br_assign br_diffsq br_div br_eq br_ge br_gt br_idiv br_le br_lt br_max br_min br_mod br_mul br_ne br_or br_pow br_rem br_sub br_sumsq
Copy all or part of one vector into anotherbr_copy
Math operations taking only a single input vectorbr_cummax br_cummin br_cumprod br_cumsum
Fused multiply addbr_fmadd br_fmsub br_fnmadd br_fnmsub
Get/set a column or row of a matrixbr_mat_col_get br_mat_col_set br_mat_row_get br_mat_row_set
Distance calculationbr_mat_dist2 br_mat_dist3
Hypotenuse length calculation (distance from origin)br_mat_hypot2 br_mat_hypot3
Matrix-matrix multiplicationbr_mat_mat_mul
Matrix-matrix multiplication when B is a square matrixbr_mat_mat_mul_bsq
Normalise matrix of (x,y) coordinates to length 1br_mat_normalise2 br_mat_normalise3
Roll elements of a matrixbr_mat_roll
Transpose matrixbr_mat_transpose
Matrix-vector multiplicationbr_mat_vec_mul
Matrix-vector multiplication when A is squarebr_mat_vec_mul_asq
Reverse a vector in placebr_rev
Roll a vectorbr_roll
Roundbr_round
Fill a vector with uniform random valuesbr_runif
Fill vector with a numeric sequencebr_seq
Shuffle a vector in placebr_shuffle
Sort a numeric vector by-referencebr_sort
List of all functionsby_reference
Duplicate an R objectduplicate
Initialise the state of this package's Lehmer RNGset_seed_lehmer
Add rotation to a transformation matrixtf2_add_rotate
Add scaling to a transformation matrixtf2_add_scale
Add translation to a transformation matrixtf2_add_translate
Apply a 2-D affine transform to a matrix or data.frame of coordinatestf2_apply
Create identity transform for 2-Dtf2_new
Reset a 2-D transformation matrix back to the identity matrixtf2_reset
Add rotation to a transformation matrixtf3_add_rotate_x tf3_add_rotate_y tf3_add_rotate_z
Add scaling to a transformation matrixtf3_add_scale
Add translation to a transformation matrixtf3_add_translate
Apply a 3D affine transform to a matrix or data.frame of coordinatestf3_apply
Create identity transformtf3_new
Reset a transformation matrix back to the identity matrixtf3_reset