net.ctdp.rfdynhud.gamedata
Class VehiclePhysics.TireCompound.CompoundWheel

java.lang.Object
  extended by net.ctdp.rfdynhud.gamedata.VehiclePhysics.TireCompound.CompoundWheel
Enclosing class:
VehiclePhysics.TireCompound

public static class VehiclePhysics.TireCompound.CompoundWheel
extends java.lang.Object

Model of one wheel of a compound. There will always be one VehiclePhysics.TireCompound.CompoundWheel in a VehiclePhysics.TireCompound for each wheel of the vehicle.

Author:
Marvin Froehlich (CTDP)

Method Summary
 float getAboveTemperature(float grip)
          Gets the temperature in the selected units, that a tire will have at the given grip fraction value.
 float getAboveTemperatureC(float grip)
          Gets the temperature in Celsius, that a tire will have at the given grip fraction value.
 float getAboveTemperatureF(float grip)
          Gets the temperature in Fahrenheit, that a tire will have at the given grip fraction value.
 float getBelowTemperature(float grip)
          Gets the temperature in the selected units, that a tire will have at the given grip fraction value.
 float getBelowTemperatureC(float grip)
          Gets the temperature in Celsius, that a tire will have at the given grip fraction value.
 float getBelowTemperatureF(float grip)
          Gets the temperature in Fahrenheit, that a tire will have at the given grip fraction value.
 float getDryLateralGrip()
          Gets the lateral grip value for dry weather.
 float getDryLongitudinalGrip()
          Gets the longitudinal grip value for dry weather.
 float getGripFactorByPressure(float pressure, float load)
          Computes the grip fraction of the tire at the given pressure and load.
 float getGripFactorByTemperatureC(float avgTemperatureC)
          Gets the grip fraction value of the tire at the given average temperature.
 float getGripFraction(float wear, float avgTemperatureC, float pressure, float load)
          Computes the fraction of maximum grip at the given wear, average temperature, pressure and load.
 float getGripLossPerDegreeBelowOptimum()
          Gets the grip loss (fraction) per degree below getOptimumTemperature().
 float getGripLossPerDegreeCBelowOptimum()
          Gets the grip loss (fraction) per degree below getOptimumTemperature().
 float getGripLossPerDegreeFBelowOptimum()
          Gets the grip loss (fraction) per degree below getOptimumTemperature().
 float getMinGrip()
          Gets the grip level at maximum tire wear.
 float getOptimumPressure(float load)
          Gets the optimum tire pressure at the given tire load.
 float getOptimumTemperature()
          Gets the temperature value (in the selected units), at which the tire will operate optimally.
 float getOptimumTemperatureC()
          Gets the temperature value (in Celsius), at which the tire will operate optimally.
 float getOptimumTemperatureF()
          Gets the temperature value (in Fahrenheit), at which the tire will operate optimally.
 float getWearGripFactor(float wear)
          Selects the grip fraction at the given wear level.
 Wheel getWheel()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getWheel

public final Wheel getWheel()

getDryLateralGrip

public final float getDryLateralGrip()
Gets the lateral grip value for dry weather. Effective grip will always be a fraction of this value depending on tire wear, temperatures, pressure and load.

Returns:
the lateral grip value for dry weather.

getDryLongitudinalGrip

public final float getDryLongitudinalGrip()
Gets the longitudinal grip value for dry weather. Effective grip will always be a fraction of this value depending on tire wear, temperatures, pressure and load.

Returns:
the longitudinal grip value for dry weather.

getOptimumTemperatureC

public final float getOptimumTemperatureC()
Gets the temperature value (in Celsius), at which the tire will operate optimally.

Returns:
the temperature value (in Celsius), at which the tire will operate optimally.

getOptimumTemperatureF

public final float getOptimumTemperatureF()
Gets the temperature value (in Fahrenheit), at which the tire will operate optimally.

Returns:
the temperature value (in Fahrenheit), at which the tire will operate optimally.

getOptimumTemperature

public final float getOptimumTemperature()
Gets the temperature value (in the selected units), at which the tire will operate optimally.

Returns:
the temperature value (in the selected units), at which the tire will operate optimally.

getGripLossPerDegreeCBelowOptimum

public final float getGripLossPerDegreeCBelowOptimum()
Gets the grip loss (fraction) per degree below getOptimumTemperature().

Returns:
the grip loss (fraction) per degree below getOptimumTemperature().

getGripLossPerDegreeFBelowOptimum

public final float getGripLossPerDegreeFBelowOptimum()
Gets the grip loss (fraction) per degree below getOptimumTemperature().

Returns:
the grip loss (fraction) per degree below getOptimumTemperature().

getGripLossPerDegreeBelowOptimum

public final float getGripLossPerDegreeBelowOptimum()
Gets the grip loss (fraction) per degree below getOptimumTemperature().

Returns:
the grip loss (fraction) per degree below getOptimumTemperature().

getBelowTemperatureC

public final float getBelowTemperatureC(float grip)
Gets the temperature in Celsius, that a tire will have at the given grip fraction value. This function will always return a value below getOptimumTemperature().

Parameters:
grip - the actual grip fraction
Returns:
the temperature, that a tire will have at the given grip fraction value.

getBelowTemperatureF

public final float getBelowTemperatureF(float grip)
Gets the temperature in Fahrenheit, that a tire will have at the given grip fraction value. This function will always return a value below getOptimumTemperature().

Parameters:
grip - the actual grip fraction
Returns:
the temperature, that a tire will have at the given grip fraction value.

getBelowTemperature

public final float getBelowTemperature(float grip)
Gets the temperature in the selected units, that a tire will have at the given grip fraction value. This function will always return a value below getOptimumTemperature().

Parameters:
grip - the actual grip fraction
Returns:
the temperature, that a tire will have at the given grip fraction value.

getAboveTemperatureC

public final float getAboveTemperatureC(float grip)
Gets the temperature in Celsius, that a tire will have at the given grip fraction value. This function will always return a value above getOptimumTemperature().

Parameters:
grip - the actual grip fraction
Returns:
the temperature, that a tire will have at the given grip fraction value.

getAboveTemperatureF

public final float getAboveTemperatureF(float grip)
Gets the temperature in Fahrenheit, that a tire will have at the given grip fraction value. This function will always return a value above getOptimumTemperature().

Parameters:
grip - the actual grip fraction
Returns:
the temperature, that a tire will have at the given grip fraction value.

getAboveTemperature

public final float getAboveTemperature(float grip)
Gets the temperature in the selected units, that a tire will have at the given grip fraction value. This function will always return a value above getOptimumTemperature().

Parameters:
grip - the actual grip fraction
Returns:
the temperature, that a tire will have at the given grip fraction value.

getGripFactorByTemperatureC

public final float getGripFactorByTemperatureC(float avgTemperatureC)
Gets the grip fraction value of the tire at the given average temperature.

Parameters:
avgTemperatureC - average over outer, mittle and inner temperature
Returns:
the grip fraction value of the tire at the given average temperature.

getOptimumPressure

public final float getOptimumPressure(float load)
Gets the optimum tire pressure at the given tire load.

Parameters:
load - coming from TelemetryData.getTireLoad(Wheel)
Returns:
the optimum tire pressure at the given tire load.

getGripFactorByPressure

public final float getGripFactorByPressure(float pressure,
                                           float load)
Computes the grip fraction of the tire at the given pressure and load.

Parameters:
pressure - coming from TelemetryData.getTirePressureKPa(Wheel)
load - coming from TelemetryData.getTireLoadN(Wheel)
Returns:
the grip fraction of the tire at the given pressure and load.

getGripFraction

public final float getGripFraction(float wear,
                                   float avgTemperatureC,
                                   float pressure,
                                   float load)
Computes the fraction of maximum grip at the given wear, average temperature, pressure and load.

Parameters:
wear - see TelemetryData.getTireWear(Wheel) and getWearGripFactor(float)
avgTemperatureC - average over outer, mittle and inner temperature
pressure - coming from TelemetryData.getTirePressureKPa(Wheel)
load - coming from TelemetryData.getTireLoadN(Wheel)
Returns:
the fraction of maximum grip at the given wear, average temperature, pressure and load.

getWearGripFactor

public final float getWearGripFactor(float wear)
Selects the grip fraction at the given wear level.

Parameters:
wear - coming from TelemetryData.getTireWear(Wheel)
Returns:
the grip fraction at the given wear level.

getMinGrip

public final float getMinGrip()
Gets the grip level at maximum tire wear.

Returns:
the grip level at maximum tire wear.