Class PSIQS_U
- java.lang.Object
-
- de.tilman_neumann.jml.factor.FactorAlgorithm
-
- de.tilman_neumann.jml.factor.psiqs.PSIQSBase
-
- de.tilman_neumann.jml.factor.psiqs.PSIQS_U
-
public class PSIQS_U extends PSIQSBase
Multi-threaded SIQS using Sieve03gU.- Author:
- Tilman Neumann
-
-
Field Summary
-
Fields inherited from class de.tilman_neumann.jml.factor.psiqs.PSIQSBase
apg, Cmult, matrixSolver, maxQRestExponent, Mmult, multiplierFinder, numberOfThreads, powerFinder
-
Fields inherited from class de.tilman_neumann.jml.factor.FactorAlgorithm
DEFAULT, NUM_PRIMES_FOR_31_BIT_TDIV, tdivLimit
-
-
Constructor Summary
Constructors Constructor Description PSIQS_U(float Cmult, float Mmult, Integer wantedQCount, Float maxQRestExponent, int numberOfThreads, PowerFinder powerFinder, MatrixSolver matrixSolver)
Standard constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected PSIQSThreadBase
createThread(int k, BigInteger N, BigInteger kN, int d, SieveParams sieveParams, BaseArrays baseArrays, AParamGenerator apg, CongruenceCollectorParallel cc, int threadIndex)
String
getName()
static void
main(String[] args)
Stand-alone test.-
Methods inherited from class de.tilman_neumann.jml.factor.psiqs.PSIQSBase
findSingleFactor, searchFactors
-
Methods inherited from class de.tilman_neumann.jml.factor.FactorAlgorithm
factor, factor
-
-
-
-
Constructor Detail
-
PSIQS_U
public PSIQS_U(float Cmult, float Mmult, Integer wantedQCount, Float maxQRestExponent, int numberOfThreads, PowerFinder powerFinder, MatrixSolver matrixSolver)
Standard constructor.- Parameters:
Cmult
- multiplier for prime base sizeMmult
- multiplier for sieve array sizewantedQCount
- hypercube dimension (null for automatic selection)maxQRestExponent
- A Q with unfactored rest QRest is considered smooth if QRest <= N^maxQRestExponent. Good values are 0.16..0.19; null means that it is determined automatically.numberOfThreads
-powerFinder
- algorithm to add powers to the primes used for sievingmatrixSolver
- solver for smooth congruences matrix
-
-
Method Detail
-
getName
public String getName()
-
createThread
protected PSIQSThreadBase createThread(int k, BigInteger N, BigInteger kN, int d, SieveParams sieveParams, BaseArrays baseArrays, AParamGenerator apg, CongruenceCollectorParallel cc, int threadIndex)
- Specified by:
createThread
in classPSIQSBase
-
main
public static void main(String[] args)
Stand-alone test. Should only be called with semiprime arguments. For general arguments, use CombinedFactorAlgorithm with searchSmallFactors==true.- Parameters:
args
- ignored
-
-