| 1 Rotate around by , and obtain a new pointing vector . | 
| 2 Calculate the cross product of and , which is denoted by . | 
| 3 Rotate by around , and obtain a new pointing vector, . | 
| 4 At , obtain based on Eq.(13). | 
| 5 If | 
| Then, let and | 
| Turn to step 10 | 
| 6 Else | 
| Rotate around by , and obtain a pointing vector . | 
| Calculate the cross product of and , denoted by . | 
| Rotate by around and obtain a new pointing vector, . | 
| At , obtain based on Eq.(13). | 
| 7    If | 
| Then, let and . | 
| Turn to step 10. | 
| 8    Else | 
| Rotate around by , and obtain a pointing vector . | 
| Calculate the cross product of and , denoted by . | 
| Rotate by , and obtain a new pointing vector, . | 
| At , obtain based on Eq.(13). | 
| 9      If | 
| Then, let and . | 
| Turn to step 10 | 
| Else | 
| Rotate around by , and obtain a pointing vector . | 
| Calculate the cross product of and , denoted by . | 
| Rotate by , and obtain a new pointing vector, . | 
| At , obtain based on Eq.(13). | 
| Let and . | 
| Turn to step 10 | 
| 10 If and | 
| Then, end the search. | 
| Else | 
| , and . | 
| Turn to step 1. |