Skip to content

Instantly share code, notes, and snippets.

@x-or
x-or / brp_rows.py
Created June 29, 2014 21:41
Bit/Digit-Reversal Permutation (rows only)
import math
import numpy as np
from PIL import Image
np.set_printoptions(linewidth = 180, edgeitems=10, suppress = True)
def digital_reverse(n, length, base):
r = 0
for _ in range(length):
r = base*r + n % base
@x-or
x-or / mopdl_generator_modulo2.py
Created July 1, 2014 09:44
Manifestation of Permuted Diagonal Line generator (modulo 2)
#
# Manifestation of Permuted Diagonal Line generator (modulo 2)
#
import numpy as np
from PIL import Image
def digital_reverse(n, length, base):
r = 0
for _ in range(length):
@x-or
x-or / quadruple_brp_rows.py
Created July 1, 2014 09:46
Quadruple Bit/Digit-Reversal Permutation (rows only)
import math
import numpy as np
from PIL import Image
np.set_printoptions(linewidth = 180, edgeitems=10, suppress = True)
def digital_reverse(n, length, base):
r = 0
for _ in range(length):
r = base*r + n % base
import numpy as np
from PIL import Image
def digital_reverse(n, length, base):
r = 0
for _ in range(length):
r = base*r + n % base
n /= base
return r
@x-or
x-or / digital_reverse.py
Created July 2, 2014 08:57
Digital Reverse in Python
def digital_reverse(n, length, base):
r = 0
for _ in xrange(length):
r = base*r + n % base
n /= base
return r
assert digital_reverse(123, 3, 10) == 321
assert digital_reverse(54321, 5, 10) == 12345
assert digital_reverse(0x123, 3, 16) == 0x321
#
# Manifestation of Permuted Diagonal Line generator
#
import numpy as np
from PIL import Image
def digital_reverse(n, length, base):
r = 0
for _ in range(length):
r = base*r + n % base
import numpy as np
from PIL import Image
def digital_reverse(n, length, base):
r = 0
for _ in range(length):
r = base*r + n % base
n /= base
return r
@x-or
x-or / images2gif.py
Created July 3, 2014 09:51
reverse_rule15_0_sliding_color
# -*- coding: utf-8 -*-
# Copyright (C) 2012, Almar Klein, Ant1, Marius van Voorden
#
# This code is subject to the (new) BSD license:
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions are met:
# * Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# * Redistributions in binary form must reproduce the above copyright
import numpy as np
from PIL import Image
def digital_reverse(n, length, base):
r = 0
for _ in range(length):
r = base*r + n % base
n /= base
return r
import numpy as np
from PIL import Image
def digital_reverse(n, length, base):
r = 0
for _ in range(length):
r = base*r + n % base
n /= base
return r