Skip to content

Releases: juanmanzanero/fastest-lap

Release v0.5

10 Jan 23:53
Compare
Choose a tag to compare

New features

  • Extended circuit preprocessor for tracks with elevation (3D). The example of Catalunya 2022 is provided, where the elevation data was extracted from https://www.gpsvisualizer.com/
  • Added 3D optimal laptime simulations. Simply provide the optimal laptime routine with a 3D track.
  • Added Kerbs calculation.
  • Extended minimum curvature path calculations to 3d tracks and track by polynomials
  • Enhanced the aerodynamic model by including the side force and wind

Changes to the API

  • Renamed force names: Fz_fl by force_z_fl_g
  • Flipped Y in circuit files. Z always faces "to the center of the earth".
  • Renamed angles theta mu phi as yaw pitch roll. Kappa is now yaw_dot

Bug fixes

  • Nothing to highlight

Usage

Download and unzip. The contents of the zip folder are:

  • bin: the dynamic libraries. Fastest-lap C++ core is there. If fastest-lap is used from MATLAB, point loadlibrary() to this directory.
  • include: fastestlapc.h and fastest_lap.py. To use python scripts, make sure this folder is on the PYTHONPATH
  • examples: python notebook examples.
  • database: car and track data
  • lib: the static library, needed to link with visual studio

Full Changelog: v0.4...v0.5

Release v0.4

22 Sep 22:02
Compare
Choose a tag to compare

New features

  • Added the posibility to have <inertia> 0.0 </inertia> for the wheel angular momentum equation. This might be desired if one wants to neglect the rotational dynamics of the wheel since they are very fast compared to the main motion of the car.
  • Implemented more realistic tire and track limits.

Changes to the API

  • None

Bug fixes

  • The wheel angular momentum equation was incorrect all this time. It was solved on kappa instead of omega, but some acceleration terms where missing. Now the proper equation is implemented, and the possibility of having wheel inertia = 0.
  • Tires were not being exploited to the maximum, their 92% lateral capability was being used instead of the full 100%.
  • The maximum track heading angle was limiting some very tight corners. This limit has been extended so that the car is free to take corners the fastest way possible.

Usage

Download and unzip. The contents of the zip folder are:

  • bin: the dynamic libraries. Fastest-lap C++ core is there. If fastest-lap is used from MATLAB, point loadlibrary() to this directory.
  • include: fastestlapc.h and fastest_lap.py. To use python scripts, make sure this folder is on the PYTHONPATH
  • examples: python notebook examples.
  • database: car and track data
  • lib: the static library, needed to link with visual studio

Full Changelog: v0.3...v0.4

Release v0.3

10 Aug 17:13
Compare
Choose a tag to compare

New features

  • Implementation of a limited electric boost for f1-3dof vehicles. See the example examples/python/f1/optimal-laptime/3-boost. This requires an extra XML element:

    <rear_axle> 
        <boost> 
            <maximum_power> value </maximum_power> 
        </boost> 
    </rear_axle>
  • New tracks are available thanks to our contributors! Check the full list here

Changes to the API

  • As usual, take a fresh look at the examples

  • delete_variables(), delete_variable(), delete_variables_by_prefix() unified into a single delete_variable() that can take regular expressions

  • In python: new function dict = download_variables(prefix, variables) that downloads all variables given by name in the list variables and with prefix prefix into a dictionary. This can be used to download all optimal laptime variables in one go using

    run = fastest_lap.download_variables(*fastest_lap.optimal_laptime(vehicle,track,s,options));

    this will load all possible outputs into a python dictionary whose variables can be extracted using run["variable_name"]

  • Optimal laptime: all available variables can be exported if <variables/> is not present in the option list. To export all variables use:

    <output_variables>
        <prefix> run/ </prefix>
    </output_variables>

    If you only want to export some variables, you can still use <variables/> as in earlier releases:

    <output_variables>
        <prefix> run/ </prefix>
        <variables>
             <chassis.velocity.x/>
             <time/>
             <laptime/>
        </variables>
    </output_variables>

    I have not experienced any performance degradation when exporting all variables as compared to exporting some variables.

  • Variables have been renamed. Some changes are:

    old new old new
    u chassis.velocity.x ax chassis.acceleration.x
    v chassis.velocity.y ay chassis.acceleration.y
    x chassis.position.x psi chassis.attitude.psi
    y chassis.position.y delta front-axle.steering-angle
    throttle chassis.throttle

Bug fixes

  • Bug fix in steady-state (g-g diagram) computations: the yaw torque equation was not successfully solved.
  • Circuit preprocessor: error was not properly computed in some cases: #24

Usage

Download and unzip. The contents of the zip folder are:

  • bin: the dynamic libraries. Fastest-lap C++ core is there. If fastest-lap is used from MATLAB, point loadlibrary() to this directory.
  • include: fastestlapc.h and fastest_lap.py. To use python scripts, make sure this folder is on the PYTHONPATH
  • examples: python notebook examples.
  • database: car and track data
  • lib: the static library, needed to link with visual studio

Included pull requests

New Contributors

Full Changelog: v0.2...v0.3

Fastest-lap v0.2

07 Jul 22:07
Compare
Choose a tag to compare

Heavy changes to the Fastest-lap API!

  • The name of the functions and the arguments have heavily changed, so please take a fresh look at the examples
  • In the XML options, a variable that has systematically changed is <save_variables> by <output_variables>
  • delete_vehicle() and delete_track() have been merged to a single delete_variable() function
  • New functions such as copy_variable(), move_variable(), print_variable() are available
  • Track data can be downloaded using track_download_data()
  • Circuit length can be downloaded using track_download_length()
  • Error messages can now be read from Windows
  • Accelerations can be outputted from optimal laptime simulations using <ax/> and <ay/> (units: m/s2)

These libraries were compiled in Windows 10, with microsoft visual studio 2022, and intel compilers 2022.1.0

Usage:

Download and unzip. The contents of the zip folder are:

  • bin: the dynamic libraries. Fastest-lap C++ core is there. If fastest-lap is used from MATLAB, point loadlibrary() to this directory.
  • include: fastestlapc.h and fastest_lap.py. To use python scripts, make sure this folder is on the PYTHONPATH
  • examples: python notebook examples.
  • database: car and track data

Fastest-lap v0.1

23 Jun 22:38
Compare
Choose a tag to compare

First release of Fastest-lap. Version will be increased to v1.0 once proper documentation is provided.

This release is the first one that includes pre-compiled windows libraries.

These libraries were compiled in Windows 10, with microsoft visual studio 2022, and intel compilers 2022.1.0

Usage:

Download and unzip. The contents of the zip folder are:

  • bin: the dynamic libraries. Fastest-lap C++ core is there. If fastest-lap is used from MATLAB, point loadlibrary() to this directory.
  • include: fastestlapc.h and fastest_lap.py. To use python scripts, make sure this folder is on the PYTHONPATH
  • examples: python notebook examples.
  • database: car and track data