brim.bicycle.tires.TireBase#

class brim.bicycle.tires.TireBase(name: str)#

Bases: ConnectionBase

Base class for the tire model connectors.

Attributes

auxiliary_handler

Auxiliary data handler of the model.

contact_point

Point representing the contact point of the wheel with the ground.

descriptions

Descriptions of the attributes of the object.

ground

Submodel of the ground.

lateral_axis

Lateral axis of the wheel.

load_groups

Load groups of the connection.

longitudinal_axis

Longitudinal axis of the wheel.

name

Name of the object.

on_ground

Boolean whether the wheel is already defined as touching the ground.

required_models

submodels

Submodels of the connection.

system

System object used to store the information of the model itself.

upward_radial_axis

Wheel radial axis pointing upward from the contact point to the wheel center.

wheel

Submodel of the wheel.

Methods

__init__

Create a new instance of the connection.

add_load_groups

Add load groups to the connection.

define_constraints

Define the constraints on the connection.

define_kinematics

Define the kinematics of the connection.

define_loads

Define the loads on the connection.

define_objects

Define the objects in the connection.

get_all_symbols

Get all declared symbols of a model.

get_description

Get description of a given object.

get_param_values

Get a parameters mapping of a model based on a bicycle parameters object.

set_plot_objects

Set the symmeplot plot objects.

__init__(name: str) None#

Create a new instance of the connection.

Parameters:

name (str) – Name of the connection.

__repr__() str#

Return repr(self).

__str__() str#

Return str(self).

__weakref__#

list of weak references to the object (if defined)

add_load_groups(*load_groups: LoadGroupBase) None#

Add load groups to the connection.

property auxiliary_handler: AuxiliaryDataHandler | None#

Auxiliary data handler of the model.

property contact_point: Point#

Point representing the contact point of the wheel with the ground.

define_constraints() None#

Define the constraints on the connection.

define_kinematics() None#

Define the kinematics of the connection.

define_loads() None#

Define the loads on the connection.

define_objects() None#

Define the objects in the connection.

property descriptions: dict[Any, str]#

Descriptions of the attributes of the object.

get_all_symbols() set[sympy.core.basic.Basic]#

Get all declared symbols of a model.

get_description(obj: Any) str#

Get description of a given object.

get_param_values(bicycle_parameters: Bicycle) dict[sympy.core.symbol.Symbol, float]#

Get a parameters mapping of a model based on a bicycle parameters object.

property ground: GroundBase#

Submodel of the ground.

property lateral_axis: Vector#

Lateral axis of the wheel.

property load_groups: tuple[brim.core.base_classes.LoadGroupBase]#

Load groups of the connection.

property longitudinal_axis: Vector#

Longitudinal axis of the wheel.

property name: str#

Name of the object.

property on_ground: bool#

Boolean whether the wheel is already defined as touching the ground.

set_plot_objects(plot_object: MplPlotBase) None#

Set the symmeplot plot objects.

property submodels: tuple[brim.core.base_classes.ModelBase]#

Submodels of the connection.

property system: System | None#

System object used to store the information of the model itself.

Notes

This system object is used to store the information of the model itself. It does not by definition contain any information about the submodels or connections. Therefore, one cannot use this system object to form the equations of motion. Instead, one should use the to_system() method to get the system object representing the entire model.

property upward_radial_axis: Vector#

Wheel radial axis pointing upward from the contact point to the wheel center.

Explanation

To possibly simplify the equations of motion, one can overwrite the axis used to compute the location of the contact point with respect to the wheel center. This axis should be normalized. For a knife-edge wheel, one could express the vector from the wheel center to the contact point of the ground as wheel.radius * upward_radial_axis.

property wheel: WheelBase#

Submodel of the wheel.