I'm looking to generate mostly closed lattice paths that don't self intersect. I'm a beginner at GH. Any suggestions if this makes sense in GH?
Here my thoughts:
GH module to create all possible paths points in a number of lattice structures. Output only the paths that meet the path requirements.
Path requirement GH Inputs:
1. Number of path points: 1..N (N could and up being up to 100? (Massive calculations, realistic numbers in the up to 30 range)
2. Symmetry requirement: 0 (none), 2,3,4,5,6 fold (path sections repeat)
3. Closed path boolean: default true (output only paths where first point is last point)
4. Lattice selection: cubic body centered, cubic face centered
5. Straight path section boolean: default false. Booking the path from going straight or allowing it. Going backwards should always be blocked.
1. List of unique points in sequence for path in the lattice. grouped by individual path
1. generate all paths and eliminate paths with duplicate points (self intersecting lines)
2. eliminate paths that don't meet closed boolean (first point not equal to last point)
3. eliminate paths that don't meet symmetry variable
for symmetry paths (symmetry not equal to 0) only number of points divided by symmetry has to be calculated. each section can be repeated the number of times of the symmetry.
For closed paths, a distance from the staring point could be maintained that could stop the generating of paths that can't make it home.
Any thoughts would be greatly appreciated!