Skip to main content

Table 8 Appendix 1 E-Predict Algorithm

From: A fast SCOP fold classification system using content-based E-Predict algorithm

Require: t, R, b, nt, λ

1: ∏ =

2: for each protein p R do

3:    if p·fold then

4: ∏ = ∏ {p·fold}

5:       Count[p·fold] ← 1

6:    else

7:       Count[p·fold] ← Count[p·fold] + 1

8:    end if

9: end for

10: for i ← 0 to |∏| - 1 do

11:    if Count[i] <n t then

12:       ∏ ← ∏ - {i}

13:    end if

14:     E s u m t MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaqabeGadaaakeaacqWGfbqrdaqhaaWcbaGaem4CamNaemyDauNaemyBa0gabaGaemiDaqhaaaaa@33A2@ [i] ← 0

15:    Count[i] ← 0

16: end for

17: for each candidate SCOP fold Fdo

18:    for each p R starting from the top ranked protein do

19:       if p·fold = F then

20:          Count[F] ← Count[F] + 1

21:          if Count[F] <n t then

22:              E s u m t MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaqabeGadaaakeaacqWGfbqrdaqhaaWcbaGaem4CamNaemyDauNaemyBa0gabaGaemiDaqhaaaaa@33A2@ [F] ← E s u m t MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaqabeGadaaakeaacqWGfbqrdaqhaaWcbaGaem4CamNaemyDauNaemyBa0gabaGaemiDaqhaaaaa@33A2@ [F] + E _Measure(p, b)

23:          end if

24:       end if

25:    end for

26: end for

27: F* ← arg min f E s u m t MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaqabeGadaaakeaacqWGfbqrdaqhaaWcbaGaem4CamNaemyDauNaemyBa0gabaGaemiDaqhaaaaa@33A2@ [f]

28: if (λ = on) AND (S(t,P0) < S(t, P N N F * MathType@MTEF@5@5@+=feaafiart1ev1aaatCvAUfKttLearuWrP9MDH5MBPbIqV92AaeXatLxBI9gBaebbnrfifHhDYfgasaacH8akY=wiFfYdH8Gipec8Eeeu0xXdbba9frFj0=OqFfea0dXdd9vqai=hGuQ8kuc9pgc9s8qqaq=dirpe0xb9q8qiLsFr0=vr0=vr0dc8meaabaqaciaacaGaaeqabaqabeGadaaakeaacqWGqbaudaqhaaWcbaGaemOta4KaemOta4eabaGaemOrayKaeiOkaOcaaaaa@323D@ )) then

29:    F* ← P0.fold

30: end if

31: return F*