test_class.declarator: input
test_class.modifier: private
test_class.original_string: private List<StructuralMotif> input;
test_class.type: List<StructuralMotif>
test_class.var_name: input
test_class.file: singa-structure/src/test/java/bio/singa/structure/algorithms/superimposition/affinity/AffinityAlignmentTest.java
test_class.identifier: AffinityAlignmentTest
test_case.body: @Test
      void shouldFailWithInputOfDifferentSize() {
          input.get(0).addLeafSubstructure(new OakAminoAcid(new LeafIdentifier(0), AminoAcidFamily.ALANINE));
          assertThrows(IllegalArgumentException.class,
                  () -> AffinityAlignment.create()
                          .inputStructuralMotifs(input)
                          .run());
      }
test_case.class_method_signature: AffinityAlignmentTest.shouldFailWithInputOfDifferentSize()
test_case.full_signature: @Test void shouldFailWithInputOfDifferentSize()
test_case.identifier: shouldFailWithInputOfDifferentSize
test_case.invocations: addLeafSubstructure get assertThrows run inputStructuralMotifs create
test_case.modifiers: @Test
test_case.parameters: ()
test_case.return: void
test_case.signature: void shouldFailWithInputOfDifferentSize()
focal_class.declarator: logger = LoggerFactory.getLogger(AffinityAlignment.class)
focal_class.modifier: private static final
focal_class.original_string: private static final Logger logger = LoggerFactory.getLogger(AffinityAlignment.class);
focal_class.type: Logger
focal_class.var_name: logger
focal_class.declarator: MAXIMAL_EPOCHS = 1000
focal_class.modifier: private static final
focal_class.original_string: private static final int MAXIMAL_EPOCHS = 1000;
focal_class.type: int
focal_class.var_name: MAXIMAL_EPOCHS
focal_class.declarator: LAMBDA = 0.5
focal_class.modifier: private static final
focal_class.original_string: private static final double LAMBDA = 0.5;
focal_class.type: double
focal_class.var_name: LAMBDA
focal_class.declarator: input
focal_class.modifier: private final
focal_class.original_string: private final List<StructuralMotif> input;
focal_class.type: List<StructuralMotif>
focal_class.var_name: input
focal_class.declarator: distanceMatrix
focal_class.modifier: private
focal_class.original_string: private LabeledSymmetricMatrix<StructuralMotif> distanceMatrix;
focal_class.type: LabeledSymmetricMatrix<StructuralMotif>
focal_class.var_name: distanceMatrix
focal_class.declarator: selfDissimilarity
focal_class.modifier: private
focal_class.original_string: private double selfDissimilarity;
focal_class.type: double
focal_class.var_name: selfDissimilarity
focal_class.declarator: clusters
focal_class.modifier: private
focal_class.original_string: private Map<StructuralMotif, List<StructuralMotif>> clusters;
focal_class.type: Map<StructuralMotif, List<StructuralMotif>>
focal_class.var_name: clusters
focal_class.declarator: silhouetteCoefficient
focal_class.modifier: private
focal_class.original_string: private double silhouetteCoefficient;
focal_class.type: double
focal_class.var_name: silhouetteCoefficient
focal_class.file: singa-structure/src/main/java/bio/singa/structure/algorithms/superimposition/affinity/AffinityAlignment.java
focal_class.identifier: AffinityAlignment
focal_class.class_method_signature: AffinityAlignment.AffinityAlignment(Builder builder)
focal_class.full_signature: private  AffinityAlignment(Builder builder)
focal_class.identifier: AffinityAlignment
focal_class.modifiers: private
focal_class.parameters: (Builder builder)
focal_class.signature:  AffinityAlignment(Builder builder)
focal_class.class_method_signature: AffinityAlignment.create()
focal_class.full_signature: public static InputStep create()
focal_class.identifier: create
focal_class.modifiers: public static
focal_class.parameters: ()
focal_class.return: InputStep
focal_class.signature: InputStep create()
focal_class.class_method_signature: AffinityAlignment.getDistanceMatrix()
focal_class.full_signature: public LabeledSymmetricMatrix<StructuralMotif> getDistanceMatrix()
focal_class.identifier: getDistanceMatrix
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: LabeledSymmetricMatrix<StructuralMotif>
focal_class.signature: LabeledSymmetricMatrix<StructuralMotif> getDistanceMatrix()
focal_class.class_method_signature: AffinityAlignment.getSelfDissimilarity()
focal_class.full_signature: public double getSelfDissimilarity()
focal_class.identifier: getSelfDissimilarity
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: double
focal_class.signature: double getSelfDissimilarity()
focal_class.class_method_signature: AffinityAlignment.getSilhouetteCoefficient()
focal_class.full_signature: public double getSilhouetteCoefficient()
focal_class.identifier: getSilhouetteCoefficient
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: double
focal_class.signature: double getSilhouetteCoefficient()
focal_class.class_method_signature: AffinityAlignment.getClusters()
focal_class.full_signature: public Map<StructuralMotif, List<StructuralMotif>> getClusters()
focal_class.identifier: getClusters
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: Map<StructuralMotif, List<StructuralMotif>>
focal_class.signature: Map<StructuralMotif, List<StructuralMotif>> getClusters()
focal_class.class_method_signature: AffinityAlignment.alignWithinClusters()
focal_class.full_signature: private void alignWithinClusters()
focal_class.identifier: alignWithinClusters
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void alignWithinClusters()
focal_class.class_method_signature: AffinityAlignment.computeClustering()
focal_class.full_signature: private void computeClustering()
focal_class.identifier: computeClustering
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void computeClustering()
focal_class.class_method_signature: AffinityAlignment.calculateInitialAlignments()
focal_class.full_signature: private void calculateInitialAlignments()
focal_class.identifier: calculateInitialAlignments
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void calculateInitialAlignments()
focal_class.class_method_signature: AffinityAlignment.writeClusters(Path outputPath)
focal_class.full_signature: public void writeClusters(Path outputPath)
focal_class.identifier: writeClusters
focal_class.modifiers: public
focal_class.parameters: (Path outputPath)
focal_class.return: void
focal_class.signature: void writeClusters(Path outputPath)
focal_class.superclass: extends AlignmentMethod
focal_method.body: public static InputStep create() {
          return new Builder();
      }
focal_method.class_method_signature: AffinityAlignment.create()
focal_method.full_signature: public static InputStep create()
focal_method.identifier: create
focal_method.modifiers: public static
focal_method.parameters: ()
focal_method.return: InputStep
focal_method.signature: InputStep create()