magic: create and investigate magic squares

Share:

a collection of efficient, vectorized algorithms for the creation and investigation of magic squares and hypercubes, including a variety of functions for the manipulation and analysis of arbitrarily dimensioned arrays. The package includes methods for creating normal magic squares of any order greater than 2. The ultimate intention is for the package to be a computerized embodiment all magic square knowledge, including direct numerical verification of properties of magic squares (such as recent results on the determinant of odd-ordered semimagic squares). Some antimagic functionality is included. The package also serves as a rebuttal to the often-heard comment "I thought R was just for statistics".

Author
Robin K. S. Hankin
Date of publication
2013-11-20 00:55:43
Maintainer
"Robin K. S. Hankin" <hankin.robin@gmail.com>
License
GPL-2
Version
1.5-6

View on CRAN

Man pages

adiag
Binds arrays corner-to-corner
allsubhypercubes
Subhypercubes of magic hypercubes
allsums
Row, column, and two diagonal sums of arrays
apad
Pad arrays
apl
Replacements for APL functions take and drop
aplus
Generalized array addition
arev
Reverses some dimensions; a generalization of rev
arot
Rotates an array about two specified dimensions
arow
Generalized row and col
as.standard
Standard form for magic squares
cilleruelo
A class of multiplicative magic squares due to Cilleruelo and...
circulant
Circulant matrices of any order
cube2
A pantriagonal magic cube
diag.off
Extracts broken diagonals
do.index
Apply a function to array element indices
eq
Comparison of two magic squares
fnsd
First non-singleton dimension
force.integer
Integerize array elements
Frankenstein
A perfect magic cube due to Frankenstein
hadamard
Hadamard matrices
hendricks
A perfect magic cube due to Hendricks
hudson
Pandiagonal magic squares due to Hudson
is.magic
Various tests for the magicness of a square
is.magichypercube
magic hypercubes
is.ok
does a vector have the sum required to be a row or column of...
is.square.palindromic
Is a square matrix square palindromic?
latin
Random latin squares
lozenge
Conway's lozenge algorithm for magic squares
magic
Creates magic squares
magic.2np1
Magic squares of odd order
magic.4n
Magic squares of order 4n
magic.4np2
Magic squares of order 4n+2
magic.8
Regular magic squares of order 8
magic.constant
Magic constant of a magic square or hypercube
magiccube.2np1
Magic cubes of order 2n+1
magiccubes
Magic cubes of order 3
magichypercube.4n
Magic hypercubes of order 4n
magic.package
Magic squares and hypercubes; arbitrary dimensioned array...
magicplot
Joins consecutive numbers of a magic square.
magic.prime
Magic squares prime order
magic.product
Product of two magic squares
minmax
are all elements of a vector identical?
notmagic.2n
An unmagic square
nqueens
N queens problem
Ollerenshaw
A most perfect square due to Ollerenshaw
panmagic.4
Panmagic squares of order 4
panmagic.6npm1
Panmagic squares of order 4n, 6n+1 and 6n-1
panmagic.8
Panmagic squares of order 8
perfectcube5
A perfect magic cube of order 5
perfectcube6
A perfect cube of order 6
process
Force index arrays into range
recurse
Recursively apply a permutation
sam
Sparse antimagic squares
shift
Shift origin of arrays and vectors
strachey
Strachey's algorithm for magic squares
subsums
Sums of submatrices
transf
Frenicle's equivalent magic squares

Files in this package

magic
magic/inst
magic/inst/CITATION
magic/inst/doc
magic/inst/doc/magicpaper.Rnw
magic/inst/doc/magicpaper.R
magic/inst/doc/magicpaper.pdf
magic/tests
magic/tests/aaa.R
magic/NAMESPACE
magic/data
magic/data/perfectcube6.rda
magic/data/magiccubes.rda
magic/data/Ollerenshaw.rda
magic/data/hendricks.rda
magic/data/Frankenstein.rda
magic/data/perfectcube5.rda
magic/data/cube2.rda
magic/R
magic/R/magic.R
magic/vignettes
magic/vignettes/magicpaper.Rnw
magic/vignettes/magic.bib
magic/MD5
magic/build
magic/build/vignette.rds
magic/DESCRIPTION
magic/man
magic/man/recurse.Rd
magic/man/latin.Rd
magic/man/arot.Rd
magic/man/panmagic.8.Rd
magic/man/transf.Rd
magic/man/hendricks.Rd
magic/man/magicplot.Rd
magic/man/shift.Rd
magic/man/is.magic.Rd
magic/man/perfectcube5.Rd
magic/man/diag.off.Rd
magic/man/magic.4np2.Rd
magic/man/do.index.Rd
magic/man/magic.2np1.Rd
magic/man/cilleruelo.Rd
magic/man/sam.Rd
magic/man/hudson.Rd
magic/man/lozenge.Rd
magic/man/magic.Rd
magic/man/is.magichypercube.Rd
magic/man/is.ok.Rd
magic/man/magic.constant.Rd
magic/man/Frankenstein.Rd
magic/man/allsums.Rd
magic/man/perfectcube6.Rd
magic/man/nqueens.Rd
magic/man/notmagic.2n.Rd
magic/man/panmagic.6npm1.Rd
magic/man/apl.Rd
magic/man/magic.product.Rd
magic/man/strachey.Rd
magic/man/magic.4n.Rd
magic/man/cube2.Rd
magic/man/hadamard.Rd
magic/man/is.square.palindromic.Rd
magic/man/as.standard.Rd
magic/man/subsums.Rd
magic/man/minmax.Rd
magic/man/magichypercube.4n.Rd
magic/man/magiccubes.Rd
magic/man/magic.prime.Rd
magic/man/apad.Rd
magic/man/circulant.Rd
magic/man/magiccube.2np1.Rd
magic/man/force.integer.Rd
magic/man/allsubhypercubes.Rd
magic/man/magic.package.Rd
magic/man/fnsd.Rd
magic/man/process.Rd
magic/man/aplus.Rd
magic/man/arow.Rd
magic/man/panmagic.4.Rd
magic/man/eq.Rd
magic/man/adiag.Rd
magic/man/arev.Rd
magic/man/magic.8.Rd
magic/man/Ollerenshaw.Rd