code: def _load_data_alignment(self, chain1, chain2):
          
          parser = PDB.PDBParser(QUIET=True)
          ppb = PDB.PPBuilder()
  
          structure1 = parser.get_structure(chain1, self.pdb1)
          structure2 = parser.get_structure(chain2, self.pdb2)
  
          seq1 = str(ppb.build_peptides(structure1)[0].get_sequence())
          seq2 = str(ppb.build_peptides(structure2)[0].get_sequence())
  
          # Alignment parameters taken from PconsFold renumbering script.
          align = pairwise2.align.globalms(seq1, seq2, 2, -1, -0.5, -0.1)[0]
          indexes = set(i for i, (s1, s2) in enumerate(zip(align[0], align[1]))
                        if s1 != '-' and s2 != '-')
          coord1 = np.hstack([np.concatenate((r['CA'].get_coord(), (1,)))[:, None]
                              for i, r in enumerate(structure1.get_residues())
                              if i in indexes and 'CA' in r]).astype(DTYPE,
                                                                     copy=False)
          coord2 = np.hstack([np.concatenate((r['CA'].get_coord(), (1,)))[:, None]
                              for i, r in enumerate(structure2.get_residues())
                              if i in indexes and 'CA' in r]).astype(DTYPE,
                                                                     copy=False)
  
          self.coord1 = coord1
          self.coord2 = coord2
          self.N = len(seq1)
docs: Extract the sequences from the PDB file, perform the alignment,
          and load the coordinates of the CA of the common residues.