inertia Module

combine_bike_rider(bicyclePar, riderPar)

Combines the inertia of the bicycle frame with the inertia of a rider.

Parameters:
bicyclePardictionary

The benchmark parameter set of a bicycle.

riderPardictionary

The rider’s mass, center of mass, and inertia expressed in the benchmark bicycle reference frame.

Returns:
bicyclePardictionary

The benchmark bicycle parameters with a rigid rider added to the bicycle frame.

compound_pendulum_inertia(m, g, l, T)

Returns the moment of inertia for an object hung as a compound pendulum.

Parameters:
mfloat

Mass of the pendulum.

gfloat

Acceration due to gravity.

lfloat

Length of the pendulum.

Tfloat

The period of oscillation.

Returns:
Ifloat

Moment of interia of the pendulum.

inertia_components(jay, beta)

Returns the 2D orthogonal inertia tensor.

When at least three moments of inertia and their axes orientations are known relative to a common inertial frame of a planar object, the orthoganl moments of inertia relative the frame are computed.

Parameters:
jayndarray, shape(n,)

An array of at least three moments of inertia. (n >= 3)

betandarray, shape(n,)

An array of orientation angles corresponding to the moments of inertia in jay.

Returns:
eyendarray, shape(3,)

Ixx, Ixz, Izz

parallel_axis(Ic, m, d)

Returns the moment of inertia of a body about a different point.

Parameters:
Icndarray, shape(3,3)

The moment of inertia about the center of mass of the body with respect to an orthogonal coordinate system.

mfloat

The mass of the body.

dndarray, shape(3,)

The distances along the three ordinates that located the new point relative to the center of mass of the body.

Returns:
Indarray, shape(3,3)

The moment of inertia about of the body about a point located by d.

part_inertia_tensor(par, part)

Returns an inertia tensor for a particular part for the benchmark parameter set.

Parameters:
pardictionary

Complete Benchmark parameter set.

partstring

Either ‘B’, ‘H’, ‘F’, ‘R’, ‘G’, ‘S’, ‘D’

Returns:
Indarray, shape(3,3)

Inertia tensor for the part.

Notes

Parts G, S, and D are additional parts not included in the published paper on the benchmark bicycle, they are only relavant if used. See the documentation.

principal_axes(I)

Returns the principal moments of inertia and the orientation.

Parameters:
Indarray, shape(3,3)

An inertia tensor.

Returns:
Ipndarray, shape(3,)

The principal moments of inertia. This is sorted smallest to largest.

Cndarray, shape(3,3)

The rotation matrix.

rotate_inertia_tensor(I, angle)

Returns inertia tensor rotated through angle. Only for 2D

tor_inertia(k, T)

Calculate the moment of inertia for an ideal torsional pendulm

Parameters:
k: torsional stiffness
T: period
Returns:
I: moment of inertia
torsional_pendulum_stiffness(I, T)

Calculate the stiffness of a torsional pendulum with a known moment of inertia.

Parameters:
Imoment of inertia
Tperiod
Returns:
kstiffness
tube_inertia(l, m, ro, ri)

Calculate the moment of inertia for a tube (or rod) where the x axis is aligned with the tube’s axis.

Parameters:
lfloat

The length of the tube.

mfloat

The mass of the tube.

rofloat

The outer radius of the tube.

rifloat

The inner radius of the tube. Set this to zero if it is a rod instead of a tube.

Returns:
Ixfloat

Moment of inertia about tube axis.

Iy, Izfloat

Moment of inertia about normal axis.