Package: onion 1.5-4

onion: Octonions and Quaternions

Quaternions and Octonions are four- and eight- dimensional extensions of the complex numbers. They are normed division algebras over the real numbers and find applications in spatial rotations (quaternions), and string theory and relativity (octonions). The quaternions are noncommutative and the octonions nonassociative. See the package vignette for more details.

Authors:Robin K. S. Hankin [aut, cre]

onion_1.5-4.tar.gz
onion_1.5-4.zip(r-4.5)onion_1.5-4.zip(r-4.4)onion_1.5-4.zip(r-4.3)
onion_1.5-4.tgz(r-4.4-x86_64)onion_1.5-4.tgz(r-4.4-arm64)onion_1.5-4.tgz(r-4.3-x86_64)onion_1.5-4.tgz(r-4.3-arm64)
onion_1.5-4.tar.gz(r-4.5-noble)onion_1.5-4.tar.gz(r-4.4-noble)
onion_1.5-4.tgz(r-4.4-emscripten)onion_1.5-4.tgz(r-4.3-emscripten)
onion.pdf |onion.html
onion/json (API)

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

Peer review:

Bug tracker:https://github.com/robinhankin/onion/issues

Datasets:
  • . - Class "dot"
  • bunny - The Stanford Bunny

On CRAN:

7.21 score 6 stars 3 packages 43 scripts 435 downloads 195 exports 14 dependencies

Last updated 3 months agofrom:6098f09abb. Checks:OK: 9. Indexed: yes.

TargetResultDate
Doc / VignettesOKOct 26 2024
R-4.5-win-x86_64OKOct 26 2024
R-4.5-linux-x86_64OKOct 26 2024
R-4.4-win-x86_64OKOct 26 2024
R-4.4-mac-x86_64OKOct 26 2024
R-4.4-mac-aarch64OKOct 26 2024
R-4.3-win-x86_64OKOct 26 2024
R-4.3-mac-x86_64OKOct 26 2024
R-4.3-mac-aarch64OKOct 26 2024

Exports:%.%%<.>%%<*>%%>.<%%>*<%adas.matrixas.octonionas.onionas.onionmatas.orthogonalas.quaternionassociatorbiggestbind_onionbind_onion_onionbind_onion_onionmatbind_onionmat_onionbind_onionmat_onionmatc_onionpaircolnamescolnames<-commutatorcomp_namescondensecproddiagdiag<-dotproddropgetdgetMH0H1Hallharmonize_onharmonize_ooherm_onion_matHiHimHjHkhtii<-ilil<-Im<-is.octonionis.onionis.onionmatis.quaternionjj<-jljl<-kk<-klkl<-ll<-matrixmatrix_arith_onionmatrix_arith_onionmatmatrix_plus_onionmatrix_prod_onionmatrix2quaternionncolnewonionmatNormnrownumeric_arith_onionnumeric_matrixprod_onionmatO0O1Oalloctonionoctonion_prod_octonionoctonion_to_quaternionOiOilOimOjOjlOkOklOlom_cprodom_htom_tcprodonion_absonion_acosonion_acoshonion_allsumonion_arith_matrixonion_arith_numericonion_arith_oniononion_asinonion_asinhonion_atanonion_atanhonion_compareonion_complexonion_conjugateonion_cosonion_coshonion_cumprodonion_cumsumonion_e_evenonion_e_oddonion_exponion_g_evenonion_g_oddonion_imagonion_inverseonion_logonion_logiconion_matrixprod_onionmatonion_modonion_negativeonion_plus_numericonion_plus_oniononion_power_matrixonion_power_numericonion_power_singleintegeronion_prod_numericonion_prod_oniononion_reonion_showonion_signonion_sinonion_sinhonion_sqrtonion_tanonion_tanhonion_to_stringonion_to_string_lowlevelonionmatonionmat_allsumonionmat_arith_matrixonionmat_arith_onionmatonionmat_arith_singleonionmat_compare_onionmatonionmat_compare_singleonionmat_complexonionmat_conjugateonionmat_equal_onionmatonionmat_equal_singleonionmat_imagonionmat_inverseonionmat_matrixprod_numericonionmat_matrixprod_oniononionmat_matrixprod_onionmatonionmat_modonionmat_negativeonionmat_plus_matrixonionmat_plus_onionmatonionmat_plus_singleonionmat_power_matrixonionmat_power_onionmatonionmat_power_singleonionmat_prod_matrixonionmat_prod_onionmatonionmat_prod_singleonionmat_reonionmat_showp3dplotquaternionquaternion_allprodquaternion_prod_quaternionquaternion_to_octonionRe<-roctromatrotaterownamesrownames<-rquatrsoctrsomatrsquatseqseq_onionsingle_arith_onionmatsingle_compare_onionmatsingle_power_onionmatsingle_prod_onionmatstrstr_onionttcprodthreeformzapsmall

Dependencies:digestdisordRfreealggmplatticemathjaxrMatrixpartitionspolynomquadformrbibutilsRcppRdpacksets

Matrices with quaternion or octonion entries: class onionmat in the onion package

Rendered fromonionmat.Rmdusingknitr::rmarkdownon Oct 26 2024.

Last update: 2023-10-03
Started: 2020-12-10

The onion package

Rendered fromonionpaper.Rnwusingutils::Sweaveon Oct 26 2024.

Last update: 2024-06-03
Started: 2018-05-17

Readme and manuals

Help Manual

Help pageTopics
Octonions and Quaternionsonion-package
The adjoint mapad adjoint
Methods for Function Arith in package OnionArith Arith,ANY,onion-method Arith,onion,ANY-method Arith,onion,missing-method Arith,onion,numeric-method Arith,onion,onion-method Arith-methods harmonize_on harmonize_oo numeric_arith_onion octonion_prod_octonion onion_arith_numeric onion_arith_onion onion_inverse onion_negative onion_plus_numeric onion_plus_onion onion_power_numeric onion_power_singleinteger onion_prod_numeric onion_prod_onion quaternion_prod_quaternion
Returns the biggest type of a set of onionsbiggest
Binding of onionmatsbind bind_onion bind_onionmat_onion bind_onionmat_onionmat bind_onion_matrix bind_onion_onion bind_onion_onionmat cbind cbind2,matrix,onion-method cbind2,matrix,onionmat-method cbind2,numeric,onion-method cbind2,numeric,onionmat-method cbind2,onion,matrix-method cbind2,onion,numeric-method cbind2,onion,onion-method cbind2,onion,onionmat-method cbind2,onionmat,matrix-method cbind2,onionmat,numeric-method cbind2,onionmat,onion-method cbind2,onionmat,onionmat-method rbind rbind2,matrix,onion-method rbind2,matrix,onionmat-method rbind2,numeric,onion-method rbind2,numeric,onionmat-method rbind2,onion,matrix-method rbind2,onion,numeric-method rbind2,onion,onion-method rbind2,onion,onionmat-method rbind2,onionmat,matrix-method rbind2,onionmat,numeric-method rbind2,onionmat,onion-method rbind2,onionmat,onionmat-method
The Stanford Bunnybunny
Concatenationc c,onion-method c.onion concatenate.onion c_onionpair
Methods for compare S4 groupCompare,ANY,onionmat-method Compare,numeric,onion-method Compare,onion,numeric-method Compare,onion,onion-method Compare,onionmat,ANY-method Compare,onionmat,onionmat-method Compare-methods onionmat_compare_onionmat onionmat_compare_single onionmat_equal_onionmat onionmat_equal_single onion_compare single_compare_onionmat
Complex functionality for onionsConj Conj,onion-method Conj,onionmat-method Im Im,onion-method Im,onionmat-method Im<- Im<-,onion-method Im<-,onionmat-method Mod Mod,onion-method Mod,onionmat-method Norm Norm,onion-method Norm,onionmat-method Norm.onion onion_abs onion_complex onion_conjugate onion_imag onion_mod onion_re Re Re,onion-method Re,onionmat-method Re<- Re<-,onion-method Re<-,onionmat-method sign,onion-method
Condense an onionic vector into a short formcondense condense.onion
Cumulative sums and products of onionscumsum onion_cumprod onion_cumsum
Class "dot". dot dot-class dot_error extract jacobi [,dot,ANY,ANY,ANY-method [,dot,ANY,ANY-method [,dot,ANY,missing,ANY-method [,dot,ANY,missing-method [,dot,function,function,ANY-method [,dot,function,function-method [,dot,matrix,matrix,ANY-method [,dot,matrix,matrix-method [,dot,missing,ANY,ANY-method [,dot,missing,ANY-method [,dot,missing,missing,ANY-method [,dot,missing,missing-method [,dot-method [.dot
Drop zero imaginary parts of an onionic vectordrop drop,onion-method drop,onionmat-method drop.onion
Extract or Replace Parts of onions or glubsi i,onion-method i,onionmat-method i.octonion i.quaternion i<- i<-,onion-method i<-,onionmat-method i<-.octonion i<-.quaternion il il,octonion-method il,onionmat-method il.octonion il<- il<-,octonion-method il<-,onionmat-method il<-.octonion Im<-.quaternion j j,onion-method j,onionmat-method j.octonion j.quaternion j<- j<-,onion-method j<-,onionmat-method j<-.octonion j<-.quaternion jl jl,octonion-method jl,onionmat-method jl.octonion jl<- jl<-,octonion-method jl<-,onionmat-method jl<-.octonion k k,onion-method k,onionmat-method k.octonion k.quaternion k<- k<-,onion-method k<-,onionmat-method k<-.octonion k<-.quaternion kl kl,octonion-method kl,onionmat-method kl.octonion kl<- kl<-,octonion-method kl<-,onionmat-method kl<-.octonion l l,octonion-method l,onion-method l,onionmat-method l.octonion l<- l<-,octonion-method l<-,onionmat-method l<-.octonion Re<-.quaternion [ [,onion,ANY,ANY-method [,onion,index,ANY,ANY-method [,onion,index,ANY-method [,onion,index,missing,ANY-method [,onion,index,missing-method [,onion-method [,onionmat,ANY,ANY,ANY-method [,onionmat,ANY,ANY-method [,onionmat,index,index,ANY-method [,onionmat,index,index-method [,onionmat,index,missing,ANY-method [,onionmat,index,missing,missing-method [,onionmat,index,missing-method [,onionmat,matrix,missing,ANY-method [,onionmat,matrix,missing-method [,onionmat,missing,index,ANY-method [,onionmat,missing,index-method [,onionmat,missing,missing,ANY-method [,onionmat,missing,missing-method [.onion [<- [<-,onion,ANY,ANY-method [<-,onion,index,ANY,ANY-method [<-,onion,index,missing,ANY-method [<-,onion,index,missing,numeric-method [<-,onion,index,missing,onion-method [<-,onion,missing,missing,numeric-method [<-,onion,missing,missing,onion-method [<-,onion-method [<-,onionmat,ANY,missing,numeric-method [<-,onionmat,ANY,missing,onion-method [<-,onionmat,index,index,numeric-method [<-,onionmat,index,index,onion-method [<-,onionmat,index,missing,numeric-method [<-,onionmat,index,missing,onion-method [<-,onionmat,missing,index,numeric-method [<-,onionmat,missing,index,onion-method [<-.onion
Length of an octonionic vectorlength length,onion-method length.onion length<- length<-,onion-method length<-.onion
Logical operations on onionsLogic,ANY,onion-method Logic,onion,ANY-method Logic,onion,missing-method Logic,onion-method logic.onion onion_logic
Various logarithmic and circular functions for onionsabs,onion-method acos acos,onion-method acosh acosh,onion-method asin asin,onion-method asinh asinh,onion-method atan atan,onion-method atanh atanh,onion-method cos cos,onion-method cosh cosh,onion-method exp exp,onion-method log log,onion-method onion_acos onion_acosh onion_asin onion_asinh onion_atan onion_atanh onion_cos onion_cosh onion_exp onion_log onion_sign onion_sin onion_sinh onion_sqrt onion_tan onion_tanh sin sin,onion-method sinh sinh,onion-method sqrt tan tan,onion-method tanh tanh,onion-method
Names of an onionic vectorcolnames colnames,onion-method colnames,onionmat-method colnames<-,onionmat-method dim dim,onionmat-method dim<- dim<-,onionmat-method dimnames,onionmat-method dimnames<-,onionmat,ANY-method dimnames<-,onionmat-method names,onion-method names,onionmat-method names.onion names.onion<- names<- names<-,onion-method names<-,onionmat-method names<-.onion ncol,onionmat-method nrow,onionmat-method rownames rownames,onionmat-method rownames<-,onionmat-method
Unit onionsH0 H1 Hall Hi Him Hj Hk O0 O1 Oall Oi Oil Oim Oj Ojl Ok Okl Ol
Basic onion functionsas.matrix as.matrix,onion-method as.numeric,onion-method as.octonion as.onion as.quaternion is.octonion is.onion is.quaternion Octonion octonion octonion_to_quaternion onion Quaternion quaternion quaternion_to_octonion type
Class "onion"index-class octonion-class onion-class onionmat-class quaternion-class
Onionic matrices%*% %*%,numeric,onion-method %*%,numeric,onionmat-method %*%,onion,onionmat-method %*%,onionmat,numeric-method %*%,onionmat,onion-method %*%,onionmat,onionmat-method +,onion,missing-method +,onionmat,missing-method -,onion,missing-method -,onionmat,missing-method as.octonionmat as.onionmat as.quaternionmat colnames<- cprod cprod,ANY,ANY-method cprod,ANY,missing-method cprod,ANY,onionmat-method cprod,onion,missing-method cprod,onion,onion-method cprod,onion,onionmat-method cprod,onionmat,ANY-method cprod,onionmat,missing-method cprod,onionmat,onion-method cprod,onionmat,onionmat-method diag diag,onion-method diag,onionmat-method diag.onion diag.onionmat diag<-,onionmat-method diag<-.onionmat getd getM herm_onion_mat ht ht,onion-method ht,onionmat-method is.onionmat matrix,onion-method matrix_arith_onion matrix_arith_onionmat matrix_plus_onion matrix_plus_onionmat matrix_prod_onion ncol ncol,ANY-method ncol-methods ncol.onionmat newonionmat nrow nrow,ANY-method nrow-methods nrow.onionmat numeric_arith_onionmat numeric_matrixprod_onionmat om_cprod om_ht om_prod om_tcprod onionmat onionmatprod onionmat_arith_matrix onionmat_arith_onion onionmat_arith_onionmat onionmat_arith_single onionmat_complex onionmat_conjugate onionmat_imag onionmat_inv onionmat_inverse onionmat_matrixprod_numeric onionmat_matrixprod_onion onionmat_matrixprod_onionmat onionmat_mod onionmat_neg onionmat_negative onionmat_plus_matrix onionmat_plus_onionmat onionmat_plus_single onionmat_power_matrix onionmat_power_onionmat onionmat_power_single onionmat_prod_matrix onionmat_prod_onionmat onionmat_prod_single onionmat_re onionmat_unary onion_arith_matrix onion_arith_onionmat onion_arith_single onion_matrixprod_onionmat onion_power_matrix Ops.onionmat rownames,ANY-method rownames-methods rownames.onionmat rownames<- rownames<-,ANY-method rownames<--methods rownames<-.onionmat single_arith_onionmat single_power_onionmat single_prod_onionmat t,onion-method t,onionmat-method t.onion t.onionmat tcprod tcprod,ANY,ANY-method tcprod,ANY,missing-method tcprod,ANY,onionmat-method tcprod,onion,missing-method tcprod,onion,onion-method tcprod,onion,onionmat-method tcprod,onionmat,ANY-method tcprod,onionmat,missing-method tcprod,onionmat,onion-method tcprod,onionmat,onionmat-method [.onionmat [<-.onionmat
Orthogonal matrix equivalentsas.orthogonal is_orthogonal matrix2quaternion orthogonal
Three dimensional plottingp3d
Plot onionsplot plot,onion-method plot.onion
Various products of two onions%.% %<*>% %<*>%.onion %<.>% %<.>%.onion %>*<% %>*<%.onion %>.<% %>.<%.onion dotprod e_even.onion e_odd.onion g_even.onion g_odd.onion onion_e_even onion_e_odd onion_g_even onion_g_odd prods
Replicate elements of onionic vectorsrep rep,onion-method rep.onion
Random onionic vectorsroct romat ronionmat rquat rsoct rsomat rsquat
Rotates 3D vectors using quaternionsrotate
Rounding of onionsround round,onion-method round,onionmat-method
seq method for onionsseq seq,onion-method seq.onion seq_onion SLERP slerp
Print method for onionscomp_names onionmat_show onion_show onion_to_string onion_to_string_lowlevel print print,onion-method print.octonion print.onion print.onionmat print.quaternion show show,onion-method
Various summary statistics for onionsmax min onionmat_allsum onion_allsum prod prod,octonion-method prod,quaternion-method quaternion_allprod range str,onion-method str_onion sum sum,octonion-method sum,onion-method sum,onionmat-method sum,quaternion-method Summary,onion-method
Various non-field diagnosticsassociator commutator threeform
Concatenationzap zapsmall zapsmall,onion-method zapsmall,onionmat-method