Hamburg, Germany - CarpetR32 ~ def ~ Maximilian Abel (GER) ~ 6-4 7-5
R16 ~ def ~ Irakli Labadze (GEO) ~ 6-2 6-3
QF ~ def ~ Fernando Verdasco (ESP) ~ 6-2 7-5
SF ~ def ~ Andrei Stoliarov (RUS) ~ 6-4 7-6(10)
F ~ lost to ~ Mario Ancic (CRO) ~ 2-6 3-6
ATP Ranking: 203 Points: 35 / 50 Belgrade, Yugoslavia - CarpetR32 ~ def ~ Dmitry Vlasov (RUS) ~ 7-5 6-3
R16 ~ def ~ Amir Hadad (ISR) ~ 7-6(10) 6-4
QF ~ lost to ~ Markus Hantschk (GER) ~ 4-6 2-6
ATP Ranking: 183 Points: 12 / 50 Cherbourg, France - HardR32 ~ def ~ Rik De Voest (RSA) ~ 4-6 6-1 7-5
R16 ~ def ~ Julien Varlet (FRA) ~ 6-3 RET
QF ~ def ~ Slimane Saoudi (ALG) ~ 6-4 6-4
SF ~ def ~ Gilles Elseneer (BEL) ~ 6-7(4) 7-5 6-3
F ~ lost to ~ Sergio Roitman (ARG) ~ 3-6 7-5 4-6
ATP Ranking: 177 Points: 42 / 50 Besancon, France - R32 ~ lost to ~ Kristof Vliegen (BEL) ~ 5-7 4-6
ATP Ranking: 149 Points: 1 / 55 Cagliari, Italy - ClayR32 ~ def ~ Alex Calatrava (ESP) ~ 7-5 6-2
R16 ~ def ~ Kristian Pless (DEN) ~ 6-2 2-6 6-2
QF ~ def ~ Juan Antonio Marin (CRC) ~ 6-2 7-6(3)
SF ~ def ~ Julien Boutter (FRA) ~ 6-3 3-6 7-5
F ~ lost to ~ Filippo Volandri (ITA) ~ 6-2 2-6 1-6
ATP Ranking: 152 Points: 35 / 50 Barletta, Italy - ClayR32 ~ def ~ Ruben Ramirez Hidalgo (ESP) ~ 7-6(4) 6-3
R16 ~ def ~ Martin Vassallo Arguello (ARG) ~ 6-7(3) 7-5 6-3
QF ~ def ~ Albert Montanes (ESP) ~ 6-3 7-6(4)
SF ~ def ~ Tomas Behrend (GER) ~ 6-1 3-6 6-4
W ~ def ~ Albert Portas (ESP) ~ 6-2 7-6(2)
ATP Ranking: 152 Points: 50 / 50 ATP Masters Series Monte Carlo, Monaco - ClayR64 ~ def ~ Karol Kucera (SVK) ~ 6-1 6-2
R32 ~ def ~ Albert Costa (ESP) ~ 7-5 6-3
R16 ~ lost to ~ Guillermo Coria (ARG) ~ 6-7(3) 2-6
ATP Ranking: 109 Points: 90 / 500 Barcelona, Spain - ClayR64 ~ def ~ Juan Antonio Marin (CRC) ~ 6-0 RET
R32 ~ lost to ~ Alex Corretja (ESP) ~ 6-3 2-6 1-6
ATP Ranking: 96 Points: 15 / 300 Aix en Provence, France - ClayR32 ~ def ~ Michael Llodra (FRA) ~ 7-6(3) 6-4
R16 ~ def ~ Julien Varlet (FRA) ~ 5-7 6-1 6-4
QF ~ def ~ Scott Draper (AUS) ~ 6-2 7-5
SF ~ def ~ Ruben Ramirez Hidalgo (ESP) ~ 7-5 6-2
F ~ lost to ~ Mariano Puerta (ARG) ~ 6-3 6-7(6) 4-6
ATP Ranking: 93 Points: 63 / 80 ATP Masters Series Hamburg - ClayR64 ~ def ~ Paul-Henri Mathieu (FRA) ~ 7-5 6-4
R32 ~ def ~ Carlos Moya (ESP) ~ 7-5 6-4
R16 ~ lost to ~ Gaston Gaudio (ARG) ~ 2-6 2-6
ATP Ranking: 87 Points: 90 / 500 Wimbledon, England - GrassR128 ~ def ~ Mario Ancic (CRO) ~ 6-3 6-4 4-6 6-4
R64 ~ def ~ Lee Childs (GBR) ~ 6-2 6-4 6-3
R32 ~ lost to ~ Paradorn Srichaphan (THA) ~ 4-6 4-6 2-6
ATP Ranking: 76 Points: 75 / 1000 Bastad, Sweden - ClayR32 ~ def ~ Younes El Aynaoui (MAR) ~ 6-3 4-6 6-3
R16 ~ def ~ Albert Portas (ESP) ~ 6-0 6-4
QF ~ lost to ~ Nicolas Lapentti (ECU) ~ 6-3 3-6 6-7(6)
ATP Ranking: 61 Points: 40 / 175 Stuttgart, Germany - ClayR64 ~ def ~ Philipp Petzschner (GER) ~ 7-5 6-1
R32 ~ lost to ~ Fernando Gonzalez (CHI) ~ 2-6 6-3 2-6
ATP Ranking: 56 Points: 15 / 250 Umag, Croatia - ClayR32 ~ def ~ Adrian Voinea (ROU) ~ 6-3 1-0 RET
R16 ~ def ~ Mariano Puerta (ARG) ~ 6-2 6-4
QF ~ def ~ Magnus Norman (SWE) ~ 6-3 6-4
SF ~ lost to ~ Carlos Moya (ESP) ~ 4-6 4-6
ATP Ranking: 58 Points: 75 / 175 Segovia, Spain - HardR32 ~ def ~ Robin Vik (CZE) ~ 6-3 4-6 6-2
R16 ~ def ~ Massimo Dell'Acqua (ITA) ~ 7-5 6-3
QF ~ def ~ Gilles Muller (LUX) ~ 2-6 7-5 6-3
SF ~ def ~ Paul Baccanello (AUS) ~ 7-6(2) 6-4
W ~ def ~ Tomas Zib (CZE) ~ 6-2 7-6(1)
ATP Ranking: 51 Points: 80 / 70 US Open, New York, USA - HardR128 ~ def ~ Fernando Vicente (ESP) ~ 6-4 6-3 6-3
R64 ~ lost to ~ Younes El Aynaoui (MAR) ~ 6-7(6) 3-6 6-7(6)
ATP Ranking: 45 Points: 35 / 1000 St. Jean de Luz, France - HardR32 ~ def ~ Rodolphe Cadart (FRA) ~ 6-2 6-1
R16 ~ lost to ~ Richard Gasquet (FRA) ~ 2-6 RET
ATP Ranking: 46 Points: 9 / 80 Lyon, France - CarpetR32 ~ lost to ~ Dominik Hrbaty (SLO) ~ 3-6 5-7
ATP Ranking: 47 Points: 5 / 225 ATP Masters Series Madrid, Spain - Indoor HardR64 ~ lost to ~ Alex Corretja (ESP) ~ 2-6 6-3 4-6
ATP Ranking: 49 Points: 5 / 500 Basel, Switzerland - Indoor HardR32 ~ lost to ~ Feliciano Lopez (ESP) ~ 6-3 3-6 6-7(4)
ATP Ranking: 48 Points: 5 / 250