Find specified number of seed blocks by cycling through persistent joint sets, searching for joints that divide input volume into approximately equal volumes.
Find specified number of seed blocks by cycling through persistent joint sets, searching for joints that divide input volume into approximately equal volumes.
Seq of Seq's of Joints representing input joint sets
Block representing input rock volume
Number of partitions desired
Number of joint sets to search at a time for partition generation
Blocks that will serve as partitions
Seq of joints that were not used in seed block generation
Returns a tuple containing a Seq of blocks and a Seq of joints. The Seq of blocks are the the desired partitions. The Seq of joints are the remaining joints that were not used to generate the partitions.
Cycles through persistent joint set to find joints that approximately balances load across processes
Cycles through persistent joint set to find joints that approximately balances load across processes
Seq of Joints representing a persistent joint set
Block representing input rock volume that should be divided into approximately equal pieces for each process to operate on
Total volume of rock volume in analysis
Ideal volume per partition for load balance
Seq of joints that have been identified as seed joints
Seq of joints that were not selected as seed joints
Tuple containing two Seq's of joints. The first Seq contains joints that divide initial block into approximately equal volumes. The second Seq is the joints remaining from the input joint set.
Generate specified number of partitions using input joint sets
Generate specified number of partitions using input joint sets
Seq of Seq's of Joints representing input joint sets
Block representing input rock volume
Number of partitions desired
Number of joint sets to search at a time for partition generation
Returns a tuple containing a Seq of blocks and a Seq of joints. The Seq of blocks are the the desired partitions. The Seq of joints are the remaining joints that were not used to generate the partitions.
Search input joint sets for joints that divide input volume into approximately equal volumes based on desired number of partitions.
Search input joint sets for joints that divide input volume into approximately equal volumes based on desired number of partitions.
Seq of Seq's of Joints representing input joint sets
Block representing input rock volume
Number of partitions desired
Number of joint sets to search at a time for partition generation
Number or joint sets to search for seed joints
Seq of joints that were not used in seed block generation
Seq of joints that were not selected seed joints
Returns a tuple containing two Seq's of Joints. The first Seq contains the seed joints that best divide the input volume. The second Seq contains the joints that remain from the joint sets that have been checked.
Test whether input joint divides initial volume into blocks of approximately the desired volume
Test whether input joint divides initial volume into blocks of approximately the desired volume
Joint to test
Volume that is to be subdivided
Desired volume of subdivision
If joint satisfactorily subdivides initial volume, returns remaining volume that is to be further subdivided. Otherwise, returns None.
Selects joints from the input joint set that will be used to seed the RDD in order to maintain approximately balanced loads among processors.