cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A159842 Number of symmetrically-distinct supercells (sublattices) of the fcc and bcc lattices (n is the "volume factor" of the supercell).

Original entry on oeis.org

1, 2, 3, 7, 5, 10, 7, 20, 14, 18, 11, 41, 15, 28, 31, 58, 21, 60, 25, 77, 49, 54, 33, 144, 50, 72, 75, 123, 49, 158, 55, 177, 97, 112, 99, 268, 75, 136, 129, 286, 89, 268, 97, 249, 218, 190, 113, 496, 146, 280, 203, 333, 141, 421, 207, 476, 247, 290, 171, 735
Offset: 1

Views

Author

Gus Hart (gus_hart(AT)byu.edu), Apr 23 2009

Keywords

Comments

The number of fcc/bcc supercells (sublattices) as a function of n (volume factor) is equivalent to the sequence A001001. But many of these sublattices are symmetrically equivalent. The current sequence lists those that are symmetrically distinct.
Is this the same as A045790? - R. J. Mathar, Apr 28 2009
This sequence also gives number of sublattices of index n for the diamond structure - see Hanany, Orlando & Reffert, sec. 6.3 (they call it the tetrahedral lattice). Indeed: the diamond structure consists of two interpenetrating fcc lattices, and all sites of any sublattice should belong to the same fcc lattice because every sublattice is inversion-symmetric. - Andrey Zabolotskiy, Mar 18 2018

Crossrefs

Programs

  • Python
    def dc(f, *r): # Dirichlet convolution of multiple sequences
        if not r:
            return f
        return lambda n: sum(f(d)*dc(*r)(n//d) for d in range(1, n+1) if n%d == 0)
    def fin(*a): # finite sequence
        return lambda n: 0 if n > len(a) else a[n-1]
    def per(*a): # periodic sequences
        return lambda n: a[n%len(a)]
    u, N, N2 = lambda n: 1, lambda n: n, lambda n: n**2
    def a(n): # Hanany, Orlando & Reffert, sec. 6.3
        return (dc(u, N, N2)(n) + 9*dc(fin(1, -1, 0, 4), u, u, N)(n)
                + 8*dc(fin(1, 0, -1, 0, 0, 0, 0, 0, 3), u, u, per(0, 1, -1))(n)
                + 6*dc(fin(1, -1, 0, 2), u, u, per(0, 1, 0, -1))(n))//24
    print([a(n) for n in range(1, 300)])
    # Andrey Zabolotskiy, Mar 18 2018

Extensions

Terms a(20) and beyond from Andrey Zabolotskiy, Mar 18 2018