test_class.declarator: queryMotif
test_class.modifier: private static
test_class.original_string: private static StructuralMotif queryMotif;
test_class.type: StructuralMotif
test_class.var_name: queryMotif
test_class.declarator: structureParserOptions
test_class.modifier: private static
test_class.original_string: private static StructureParserOptions structureParserOptions;
test_class.type: StructureParserOptions
test_class.var_name: structureParserOptions
test_class.file: singa-structure/src/test/java/bio/singa/structure/algorithms/superimposition/fit3d/statistics/FofanovEstimationTest.java
test_class.identifier: FofanovEstimationTest
test_case.body: @Test
      void shouldCalculatePvaluesWithCorrectnessCutoff() {
          double modelCorrectnessCutoff = 3.0;
          double epsilon = FofanovEstimation.determineEpsilon(queryMotif, modelCorrectnessCutoff);
          FofanovEstimation fofanovEstimation = new FofanovEstimation(epsilon, FofanovEstimation.DEFAULT_REFERENCE_SIZE, modelCorrectnessCutoff);
          StructureIterator multiParser = StructureParser.mmtf()
                  .chainList(Paths.get(Resources.getResourceAsFileLocation("nrpdb_BLAST_10e80_100.txt")), "_")
                  .everything();
          multiParser.getReducer().setOptions(structureParserOptions);
          Fit3D fit3dBatch = Fit3DBuilder.create()
                  .query(queryMotif)
                  .targets(multiParser)
                  .maximalParallelism()
                  .atomFilter(StructuralEntityFilter.AtomFilter.isArbitrary())
                  .statisticalModel(fofanovEstimation)
                  .rmsdCutoff(epsilon)
                  .run();
          assertTrue(fit3dBatch.getMatches().stream()
                  .noneMatch(match -> match.getPvalue() == 0.0));
          assertTrue(fit3dBatch.getMatches().stream()
                  .noneMatch(match -> Double.isNaN(match.getPvalue()) && match.getRmsd() < modelCorrectnessCutoff));
      }
test_case.class_method_signature: FofanovEstimationTest.shouldCalculatePvaluesWithCorrectnessCutoff()
test_case.full_signature: @Test void shouldCalculatePvaluesWithCorrectnessCutoff()
test_case.identifier: shouldCalculatePvaluesWithCorrectnessCutoff
test_case.invocations: determineEpsilon everything chainList mmtf get getResourceAsFileLocation setOptions getReducer run rmsdCutoff statisticalModel atomFilter maximalParallelism targets query create isArbitrary assertTrue noneMatch stream getMatches getPvalue assertTrue noneMatch stream getMatches isNaN getPvalue getRmsd
test_case.modifiers: @Test
test_case.parameters: ()
test_case.return: void
test_case.signature: void shouldCalculatePvaluesWithCorrectnessCutoff()
focal_class.declarator: DEFAULT_REFERENCE_SIZE = 39592
focal_class.modifier: public static final
focal_class.original_string: public static final int DEFAULT_REFERENCE_SIZE = 39592;
focal_class.type: int
focal_class.var_name: DEFAULT_REFERENCE_SIZE
focal_class.declarator: logger = LoggerFactory.getLogger(FofanovEstimation.class)
focal_class.modifier: private static final
focal_class.original_string: private static final Logger logger = LoggerFactory.getLogger(FofanovEstimation.class);
focal_class.type: Logger
focal_class.var_name: logger
focal_class.declarator: BINARY_NAME = "Rscript"
focal_class.modifier: private static final
focal_class.original_string: private static final String BINARY_NAME = "Rscript";
focal_class.type: String
focal_class.var_name: BINARY_NAME
focal_class.declarator: START_RMSD = 0.0
focal_class.modifier: private static final
focal_class.original_string: private static final double START_RMSD = 0.0;
focal_class.type: double
focal_class.var_name: START_RMSD
focal_class.declarator: SAMPLE_SIZE = 100000
focal_class.modifier: private static final
focal_class.original_string: private static final double SAMPLE_SIZE = 100000;
focal_class.type: double
focal_class.var_name: SAMPLE_SIZE
focal_class.declarator: rmsdCutoff
focal_class.modifier: private final
focal_class.original_string: private final double rmsdCutoff;
focal_class.type: double
focal_class.var_name: rmsdCutoff
focal_class.declarator: gs
focal_class.modifier: private final
focal_class.original_string: private final AtomicInteger gs;
focal_class.type: AtomicInteger
focal_class.var_name: gs
focal_class.declarator: ns
focal_class.modifier: private final
focal_class.original_string: private final AtomicInteger ns;
focal_class.type: AtomicInteger
focal_class.var_name: ns
focal_class.declarator: modelCorrectnessCutoff
focal_class.modifier: private final
focal_class.original_string: private final double modelCorrectnessCutoff;
focal_class.type: double
focal_class.var_name: modelCorrectnessCutoff
focal_class.declarator: referenceSize = DEFAULT_REFERENCE_SIZE
focal_class.modifier: private
focal_class.original_string: private int referenceSize = DEFAULT_REFERENCE_SIZE;
focal_class.type: int
focal_class.var_name: referenceSize
focal_class.declarator: temporaryDirectoryPath
focal_class.modifier: private
focal_class.original_string: private Path temporaryDirectoryPath;
focal_class.type: Path
focal_class.var_name: temporaryDirectoryPath
focal_class.declarator: scriptPath
focal_class.modifier: private
focal_class.original_string: private Path scriptPath;
focal_class.type: Path
focal_class.var_name: scriptPath
focal_class.declarator: rmsdValuesPath
focal_class.modifier: private
focal_class.original_string: private Path rmsdValuesPath;
focal_class.type: Path
focal_class.var_name: rmsdValuesPath
focal_class.declarator: pvaluesPath
focal_class.modifier: private
focal_class.original_string: private Path pvaluesPath;
focal_class.type: Path
focal_class.var_name: pvaluesPath
focal_class.declarator: pvalues
focal_class.modifier: private
focal_class.original_string: private Vector pvalues;
focal_class.type: Vector
focal_class.var_name: pvalues
focal_class.declarator: matches
focal_class.modifier: private
focal_class.original_string: private List<Fit3DMatch> matches;
focal_class.type: List<Fit3DMatch>
focal_class.var_name: matches
focal_class.file: singa-structure/src/main/java/bio/singa/structure/algorithms/superimposition/fit3d/statistics/FofanovEstimation.java
focal_class.identifier: FofanovEstimation
focal_class.interfaces: implements StatisticalModel
focal_class.class_method_signature: FofanovEstimation.FofanovEstimation(double rmsdCutoff)
focal_class.full_signature: public  FofanovEstimation(double rmsdCutoff)
focal_class.identifier: FofanovEstimation
focal_class.modifiers: public
focal_class.parameters: (double rmsdCutoff)
focal_class.signature:  FofanovEstimation(double rmsdCutoff)
focal_class.class_method_signature: FofanovEstimation.FofanovEstimation(double rmsdCutoff, int referenceSize, double modelCorrectnessCutoff)
focal_class.full_signature: public  FofanovEstimation(double rmsdCutoff, int referenceSize, double modelCorrectnessCutoff)
focal_class.identifier: FofanovEstimation
focal_class.modifiers: public
focal_class.parameters: (double rmsdCutoff, int referenceSize, double modelCorrectnessCutoff)
focal_class.signature:  FofanovEstimation(double rmsdCutoff, int referenceSize, double modelCorrectnessCutoff)
focal_class.class_method_signature: FofanovEstimation.determineEpsilon(StructuralMotif queryMotif, double modelCorrectnessCutoff)
focal_class.full_signature: public static double determineEpsilon(StructuralMotif queryMotif, double modelCorrectnessCutoff)
focal_class.identifier: determineEpsilon
focal_class.modifiers: public static
focal_class.parameters: (StructuralMotif queryMotif, double modelCorrectnessCutoff)
focal_class.return: double
focal_class.signature: double determineEpsilon(StructuralMotif queryMotif, double modelCorrectnessCutoff)
focal_class.class_method_signature: FofanovEstimation.determineEpsilon(int numberOfAtoms, double modelCorrectnessCutoff)
focal_class.full_signature: public static double determineEpsilon(int numberOfAtoms, double modelCorrectnessCutoff)
focal_class.identifier: determineEpsilon
focal_class.modifiers: public static
focal_class.parameters: (int numberOfAtoms, double modelCorrectnessCutoff)
focal_class.return: double
focal_class.signature: double determineEpsilon(int numberOfAtoms, double modelCorrectnessCutoff)
focal_class.class_method_signature: FofanovEstimation.getModelCorrectnessCutoff()
focal_class.full_signature: public double getModelCorrectnessCutoff()
focal_class.identifier: getModelCorrectnessCutoff
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: double
focal_class.signature: double getModelCorrectnessCutoff()
focal_class.class_method_signature: FofanovEstimation.checkRequirements()
focal_class.full_signature: private void checkRequirements()
focal_class.identifier: checkRequirements
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void checkRequirements()
focal_class.class_method_signature: FofanovEstimation.incrementNs()
focal_class.full_signature: public void incrementNs()
focal_class.identifier: incrementNs
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void incrementNs()
focal_class.class_method_signature: FofanovEstimation.incrementGs()
focal_class.full_signature: public void incrementGs()
focal_class.identifier: incrementGs
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void incrementGs()
focal_class.class_method_signature: FofanovEstimation.calculatePvalues(List<Fit3DMatch> matches)
focal_class.full_signature: @Override public void calculatePvalues(List<Fit3DMatch> matches)
focal_class.identifier: calculatePvalues
focal_class.modifiers: @Override public
focal_class.parameters: (List<Fit3DMatch> matches)
focal_class.return: void
focal_class.signature: void calculatePvalues(List<Fit3DMatch> matches)
focal_class.class_method_signature: FofanovEstimation.writeRmsdValues()
focal_class.full_signature: private void writeRmsdValues()
focal_class.identifier: writeRmsdValues
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void writeRmsdValues()
focal_class.class_method_signature: FofanovEstimation.runScript()
focal_class.full_signature: private void runScript()
focal_class.identifier: runScript
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void runScript()
focal_class.class_method_signature: FofanovEstimation.createTemporaryDirectory()
focal_class.full_signature: private void createTemporaryDirectory()
focal_class.identifier: createTemporaryDirectory
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void createTemporaryDirectory()
focal_method.body: public static double determineEpsilon(StructuralMotif queryMotif, double modelCorrectnessCutoff) {
          int numberOfAtoms = queryMotif.getAllAtoms().size();
          return determineEpsilon(numberOfAtoms, modelCorrectnessCutoff);
      }
focal_method.class_method_signature: FofanovEstimation.determineEpsilon(StructuralMotif queryMotif, double modelCorrectnessCutoff)
focal_method.full_signature: public static double determineEpsilon(StructuralMotif queryMotif, double modelCorrectnessCutoff)
focal_method.identifier: determineEpsilon
focal_method.invocations: size getAllAtoms determineEpsilon
focal_method.modifiers: public static
focal_method.parameters: (StructuralMotif queryMotif, double modelCorrectnessCutoff)
focal_method.return: double
focal_method.signature: double determineEpsilon(StructuralMotif queryMotif, double modelCorrectnessCutoff)