Algorithm 2.
Turning point refinement (step 2)
| TPSet = Sort(PeakSet TroughSet); Indexing begins |
| from 1 |
| Initialize: CurrentPeakIndex = 2; Begin the peak ratio |
| refinement |
| While CurrentPeakIndex Length(TPSet) - 2 do |
| = CurrentPeakIndex, = TPSet(), = TPSet(); |
| if then |
| CurrentPeakIndex = ; |
| else if and = Length(TPSet) then |
| Remove from PeakSet; |
| TPSet=Sort(PeakSet TroughSet); |
| else if and Length(TPSet) then |
| = TPSet(), = TPSet(); |
| if then |
| Remove from TroughSet; |
| else |
| Remove from TroughSet; |
| Remove from PeakSet; |
| TPSet = Sort(PeakSet TroughSet); |
| Initialize: CurrentIndex = 1; Begin the log-grad refinement |
| while CurrentIndex Length(TPSet) do |
| = CurrentIndex, = TPSet(), = TPSet(); |
| if then See Equation (3) |
| Remove and from both TroughSet and PeakSet; |
| TPSet = Sort(PeakSet TroughSet); |
| else |
| CurrentIndex = ; |
| Output PeakSet and TroughSet. |