@@ -87,10 +87,12 @@ static void Main(string[] args)
8787 AirTemperature = 20.5f ,
8888 TrackTemperature = 28.3f
8989 } ;
90- PrintPredictions ( predictionEngine , bahrain2021 ) ;
90+ //PrintAllPredictions(predictionEngine, bahrain2021);
91+
92+ PrintTop10ImolaPortimao ( predictionEngine ) ;
9193 }
9294
93- private static void PrintPredictions ( PredictionEngine < TyreStint , TyreStintPrediction > predictionEngine , Race race )
95+ private static void PrintAllPredictions ( PredictionEngine < TyreStint , TyreStintPrediction > predictionEngine , Race race )
9496 {
9597 foreach ( var d in race . Drivers )
9698 {
@@ -113,5 +115,83 @@ private static void PrintPredictions(PredictionEngine<TyreStint, TyreStintPredic
113115 }
114116
115117 }
118+
119+ private static void PrintTop10ImolaPortimao ( PredictionEngine < TyreStint , TyreStintPrediction > predictionEngine )
120+ {
121+ var ImolaTop10 = new List < Top10Driver > ( )
122+ {
123+ new Top10Driver ( ) { Team = "Mercedes" , Car = "W12" , Name = "Lewis Hamilton" , StartingCompound = "C3" } ,
124+ new Top10Driver ( ) { Team = "Red Bull" , Car = "RB16B" , Name = "Sergio Pérez" , StartingCompound = "C4" } ,
125+ new Top10Driver ( ) { Team = "Red Bull" , Car = "RB16B" , Name = "Max Verstappen" , StartingCompound = "C3" } ,
126+ new Top10Driver ( ) { Team = "Ferrari" , Car = "SF21" , Name = "Charles Leclerc" , StartingCompound = "C4" } ,
127+ new Top10Driver ( ) { Team = "Toro Rosso / AlphaTauri" , Car = "AT02" , Name = "Pierre Gasly" , StartingCompound = "C4" } ,
128+ new Top10Driver ( ) { Team = "McLaren" , Car = "MCL35M" , Name = "Daniel Ricciardo" , StartingCompound = "C4" } ,
129+ new Top10Driver ( ) { Team = "McLaren" , Car = "MCL35M" , Name = "Lando Norris" , StartingCompound = "C4" } ,
130+ new Top10Driver ( ) { Team = "Mercedes" , Car = "W12" , Name = "Valtteri Bottas" , StartingCompound = "C3" } ,
131+ new Top10Driver ( ) { Team = "Renault / Alpine" , Car = "A521" , Name = "Esteban Ocon" , StartingCompound = "C4" } ,
132+ new Top10Driver ( ) { Team = "Force India / Racing Point / Aston Martin" , Car = "AMR21" , Name = "Lance Stroll" , StartingCompound = "C4" } ,
133+ } ;
134+
135+ var PortimaoTop10 = new List < Top10Driver > ( )
136+ {
137+ new Top10Driver ( ) { Team = "Mercedes" , Car = "W12" , Name = "Valtteri Bottas" , StartingCompound = "C2" } ,
138+ new Top10Driver ( ) { Team = "Mercedes" , Car = "W12" , Name = "Lewis Hamilton" , StartingCompound = "C2" } ,
139+ new Top10Driver ( ) { Team = "Red Bull" , Car = "RB16B" , Name = "Max Verstappen" , StartingCompound = "C2" } ,
140+ new Top10Driver ( ) { Team = "Red Bull" , Car = "RB16B" , Name = "Sergio Pérez" , StartingCompound = "C2" } ,
141+ new Top10Driver ( ) { Team = "Ferrari" , Car = "SF21" , Name = "Carlos Sainz" , StartingCompound = "C3" } ,
142+ new Top10Driver ( ) { Team = "Renault / Alpine" , Car = "A521" , Name = "Esteban Ocon" , StartingCompound = "C3" } ,
143+ new Top10Driver ( ) { Team = "McLaren" , Car = "MCL35M" , Name = "Lando Norris" , StartingCompound = "C3" } ,
144+ new Top10Driver ( ) { Team = "Ferrari" , Car = "SF21" , Name = "Charles Leclerc" , StartingCompound = "C2" } ,
145+ new Top10Driver ( ) { Team = "Toro Rosso / AlphaTauri" , Car = "AT02" , Name = "Pierre Gasly" , StartingCompound = "C3" } ,
146+ new Top10Driver ( ) { Team = "Force India / Racing Point / Aston Martin" , Car = "AMR21" , Name = "Sebastian Vettel" , StartingCompound = "C3" } ,
147+ } ;
148+
149+
150+ Console . WriteLine ( "Imola" ) ;
151+ Console . WriteLine ( "==========" ) ;
152+ foreach ( var d in ImolaTop10 )
153+ {
154+ var prediction = predictionEngine . Predict ( new TyreStint ( )
155+ {
156+ Track = Season2021 . Tracks [ "Imola" ] . Name ,
157+ TrackLength = Season2021 . Tracks [ "Imola" ] . Distance ,
158+ Team = d . Team ,
159+ Car = d . Car ,
160+ Driver = d . Name ,
161+ Compound = d . StartingCompound ,
162+ AirTemperature = 9.3f ,
163+ TrackTemperature = 17.5f ,
164+ Reason = "Pit Stop"
165+ } ) ;
166+ Console . WriteLine ( $ "| { d . Name } | { d . StartingCompound } | { prediction . Distance / Season2021 . Tracks [ "Imola" ] . Distance } | | |") ;
167+ }
168+ Console . WriteLine ( "" ) ;
169+
170+ Console . WriteLine ( "Portimão" ) ;
171+ Console . WriteLine ( "==========" ) ;
172+ foreach ( var d in PortimaoTop10 )
173+ {
174+ var prediction = predictionEngine . Predict ( new TyreStint ( )
175+ {
176+ Track = Season2021 . Tracks [ "Portimão" ] . Name ,
177+ TrackLength = Season2021 . Tracks [ "Portimão" ] . Distance ,
178+ Team = d . Team ,
179+ Car = d . Car ,
180+ Driver = d . Name ,
181+ Compound = d . StartingCompound ,
182+ AirTemperature = 19.8f ,
183+ TrackTemperature = 40.3f ,
184+ Reason = "Pit Stop"
185+ } ) ;
186+ Console . WriteLine ( $ "| { d . Name } | { d . StartingCompound } | { prediction . Distance / Season2021 . Tracks [ "Portimão" ] . Distance } | | |") ;
187+ }
188+ }
189+
190+
191+ }
192+
193+ public class Top10Driver : Driver
194+ {
195+ public string StartingCompound { get ; set ; }
116196 }
117197}
0 commit comments