POLYOMINO_MULTIHEDRAL
Seek Solutions of Polyomino Multihedral Tiling
POLYOMINO_MULTIHEDRAL,
a MATLAB library which
is given matrices defining a region R and a set of polyominoes P; it
sets up the corresponding linear system, and solves for
binary solutions x that represent possible tilings of the region R
by the polyominoes of P.
A region R is a subset of an MRxNR grid of squares.
The kth polyomino P(k) is a subset of an MRxNR grid of squares.
Both objects are represented by an MRxNR binary matrices.
Licensing:
The computer code and data files described and made available on this web page
are distributed under
the GNU LGPL license.
Languages:
polyomino_multihedral is available in
a MATLAB version.
Related Data and Programs:
polyomino_multihedral_test
Source Code:

i4mat_is_binary.m,
is TRUE if an I4MAT contains only 0 and 1 entries.

ksub_next4.m,
returns, one at a time, all the Ksubsets of a set.

polyomino_condense.m,
cleans up a matrix that represents a polyomino by setting all nonzero
entries to 1, and removing initial and final rows and columns of zeros.

polyomino_embed_list.m,
for each possible embedding, lists the translation necessary to
to apply to the polyomino.

polyomino_embed_number.m,
reports the number of ways a polyomino can be embedded in a region.

polyomino_index.m,
computes an index for each nonzero polyomino entry.

polyomino_lp_write.m,
writes an LP file describing a particular problem.

polyomino_multihedral.m,
sets up and solves a polyomino multihedral tiling problem.

polyomino_multihedral_matrix.m,
determines the matrix and right hand side for a polyomino multihedral
problem.

polyomino_multihedral_tiling_print.m,
prints a tiling of a region R by a set of polyominoes P, based on a solution
computed by polyomino_multihedral.

polyomino_multihedral_variants.m,
carries out reflections and rotations of a set of polyominoes to
determine which transformations yield distinct variants.

polyomino_print.m,
prints a polyomino.

polyomino_transform.m,
carries out reflections and rotations of a polyomino.

r8mat_rref.m,
returns the reduced row echelon form of an R8MAT.

r8mat_rref_solve_binary_nz.m,
seeks binary solutions (if any) of a row reduced echelon form
linear system in which exactly NZ entries are nonzero.

r8mat_u_solve.m,
solves an upper triangular linear system.

r8vec_identity_row.m,
returns a row of the identity matrix as an R8VEC.

r8vec_is_binary.m,
is true if all entries of an R8VEC are 0 or 1.

timestamp.m,
prints the YMDHMS date as a timestamp.
Last revised on 01 March 2018.