This is the first in a series of posts on bikes and their dynamics. The topic often comes to mind while cruising around on my bike, so it’ll be fun to hash them out thoroughly on paper.
I know the topic has been studied to death, but even so beliefs about bikes based on misguided intuition are pervasive. Maybe adding one more source of facts will be the tipping point!
This first post will just setup terminology, notation, and other logistics. It will serve as a good accompanying browser tab for subsequent bike posts.
Normally you start with back of the envelope calculations when solving a problem like this  start simple and move to more complex only if the first order model doesn’t answer your questions. I know I’m going to go farther regardless (for fun!), so I’ll start with a general bike model and simplify things down later.
The redgreenblue triads each indicate a right handed coordinate system with directions \(1\), \(2\), and \(3\)) corresponding to red, green, and blue, respectively. The \( \hat e_i \) coordinate system is inertial, while the rest are attached at different points on the bike. The other coordinate systems are:

\( \hat l_i \)  Attached at the rear wheel’s contact point with the ground. \(\hat l_1\) is tangent to the rolling direction of the rear wheel, and \(\hat l_2\) is vertical.

\( \hat a_i \)  Attached at the rear axle. Both the \(\hat a_1\) and \(\hat a_2\) directions lie in the plane of the bike frame, and the \(\hat a_1\) lies in the line connecting the bike’s rear and front axles.

\( \hat m_i \)  Attached at the rear axle. The \(\hat m_1 \) direction lies in the plane of the bike frame and lies in the line connecting the bike’s rear and front axle (like \(\hat a_1\)). The direction \(\hat m_2\) lies in the plane that includes the rider’s center of mass (denoted by the circle with white and black quadrants). This accounts for the rider’s lean.

\( \hat b_i \)  Attached at the frame to headset joint, both \(\hat b_1\) and \(\hat b_2\) lie in the plane of the bike frame but \(\hat b_2\) is inclined to align with the headset tube.

\( \hat c_i \)  Attached at the front axle with \(\hat c_1\) and \(\hat c_2\) in the plane of the front wheel. \(\hat c_3\) is inclined so it aligns with the headset tube.
The coordinate systems are chosen so that a simple rotation (rotation about a single of the coordinate axes by an angle) is enough to walk through the whole chain of coordinate systems. In other words:

Rotating about \(\hat l_1\) by \(\theta_l\) brings you to the \(\hat a_i\) coordinate system

Rotating about \(\hat a_1\) by \(\theta_m\) brings you to the \(\hat m_i\) coordinate system.

Rotating about \(\hat a_3\) by angle \(\theta_h\) brings you to the \(\hat b_i\) coordinate system

Rotating about \(\hat b_2\) by angle \(\theta_s\) brings you to the \(\hat c_i\) coordinate system
The two additional angles, \(\theta_r\) and \(\theta_f\) indicate the rotation angle of each of the two tires in the \(\hat a_i\) and \(\hat c_i\) frames, respectively. We could attach another coordinate system to each of the tires that these angles rotate to, but it is unnecessary (other than if we wanted to preserve convention).
For now the human will just be represented as a point mass somewhere above the bike.
In the next post, the rest of the unknown dimensions in the bike diagram will be specified and I’ll write down the kinematic equations for the system.