
An algorithm that counts the number of fixed polyiamonds that have the same area, perimeter and number of unique internal billiard cycles. The billiard cycles that are counted are billiards that start on a midpoint of an edge of a polyiamond P, are angled 60° from that edge towards the interior of P and, after bouncing off a finite number of edge midpoints of P, returns to the original edge. How to use: Call the function main(n) with n being the maximum area that a polyiamond can occupy How to interpret the output: The output is a dictionary containing objects of the structure: "(area, perimeter, cycles): number of fixed polyiamonds with such properties"
