Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file modified public/dyn/multi_body_systems/GearsChains_edited.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
48 changes: 32 additions & 16 deletions src/pages/dyn/coordinate_systems.astro
Original file line number Diff line number Diff line change
Expand Up @@ -23,18 +23,28 @@ import InlineCanvas from "../../components/InlineCanvas.astro"
---
<Layout title = "Coordinate systems" description = "Learn the difference between the cartesian, polar, spherical, and cylindrical coordinate systems">

<div slot="navtree">
<div slot = "navtree">
<ul class='list-group list-group-flush py-0'>
<li class='list-group-item py-0'><a class='text-decoration-none subsection' href='#cartesian_coordinate_system'>Cartesian coordinate system</a></li>
<li class='list-group-item py-0'><a class='text-decoration-none subsection' href='#polar_coordinate_system'>Polar coordinate system</a></li>
<li class='list-group-item py-0'><a class='text-decoration-none subsection' href='#spherical_coordinates'>Spherical coordinates</a></li>
<li class='list-group-item py-0'><a class='text-decoration-none subsection' href='#cylindrical_coordinates'>Cylindrical coordinates</a></li>
</ul>
<li class = 'list-group-item py-0'><a class = 'text-decoration-none subsection' href = '#2D'>2D</a>
<ul class = 'list-group list-group-flush py-0'>
<li class = 'list-group-item py-0'><a class = 'text-decoration-none subsection' href = '#cartesian_coordinate_system'>Cartesian</a></li>
<li class = 'list-group-item py-0'><a class = 'text-decoration-none subsection' href = '#polar_coordinate_system'>Polar</a></li>
</ul>
</li>
<li class = 'list-group-item py-0'><a class = 'text-decoration-none subsection' href = '#3D'>3D</a>
<ul class = 'list-group list-group-flush py-0'>
<li class = 'list-group-item py-0'><a class = 'text-decoration-none subsection' href = '#spherical_coordinate_system'>Spherical</a></li>
<li class = 'list-group-item py-0'><a class = 'text-decoration-none subsection' href = '#cylindrical_coordinate_system'>Cylindrical</a></li>
</ul>
</li>
</ul>
</div>

<Section title = "Coordinate systems"/>

<SubSection title="Cartesian coordinate system" id="cartesian_coordinate_system">
<SubSection title = 2D id = "2D"/>

<SubSubSection title = "Cartesian coordinate system" id = "cartesian_coordinate_system">

<p>
Cartesian coordinates (also known as rectangular
Expand Down Expand Up @@ -79,7 +89,9 @@ import InlineCanvas from "../../components/InlineCanvas.astro"
</p>
</PrairieDrawCanvas>
</Center>

<DisplayEquation equation = `\\begin{align} \\vec{r} &= r_1 \\hat{\\imath} + r_2 \\hat{\\jmath} + r_3 \\hat{k} \\\\
\\vec{v} &= \\dot{r}_1 \\hat{\\imath} + \\dot{r}_2 \\hat{\\jmath} + \\dot{r}_3 \\hat{k} \\\\
\\vec{a} &= \\ddot{r}_1 \\hat{\\imath} + \\ddot{r}_2 \\hat{\\jmath} + \\ddot{r}_3 \\hat{k} \\end{align}` title = "Position, velocity, and acceleration in cartesian basis." background = "True" id = "cs-c"/>
<CalloutContainer slot="cards">
<CalloutCard title="Notation note">
<p>
Expand Down Expand Up @@ -114,9 +126,9 @@ import InlineCanvas from "../../components/InlineCanvas.astro"
</p>
</CalloutCard>
</CalloutContainer>
</SubSection>
</SubSubSection>

<SubSection title="Polar coordinate system" id="polar_coordinate_system">
<SubSubSection title = "Polar coordinate system" id = "polar_coordinate_system">

<p>
Polar coordinates are an alternative 2D coordinate system
Expand Down Expand Up @@ -171,7 +183,9 @@ import InlineCanvas from "../../components/InlineCanvas.astro"
</p>

<DisplayEquation title="Conversion between polar and Cartesian coordinates" id="rvp-ep" equation = "\\begin{aligned}x &amp;= r \\cos\\theta&amp; r &amp;= \\sqrt{x^2 + y^2} \\\\y &amp;= r \\sin\\theta&amp; \\theta &amp;= \\operatorname{atan2}(y, x)\\end{aligned}" background="True"/>

<DisplayEquation equation = `\\begin{align} \\vec{r} &= r \\hat{e}_r \\\\
\\vec{v} &= \\dot{r} \\hat{e}_r + r \\dot{\\theta} \\hat{e}_\\theta \\\\
\\vec{a} &= (\\ddot{r} - r \\dot{\\theta} ^ 2) \\hat{e}_r + (r \\ddot{\\theta} + 2 \\dot{r} \\dot{\\theta}) \\hat{e}_\\theta \\end{align}` title = "Position, velocity and acceleration in polar components." background = "True" id = "cs-p"/>
<CalloutContainer slot="cards">
<CalloutCard>
<p>
Expand Down Expand Up @@ -224,9 +238,11 @@ import InlineCanvas from "../../components/InlineCanvas.astro"
</p>
</CalloutCard>
</CalloutContainer>
</SubSection>
</SubSubSection>

<SubSection title = "3D" id = "3D"/>

<SubSection title="Spherical coordinates" id="spherical_coordinates">
<SubSubSection title = "Spherical coordinate system" id = "spherical_coordinate_system">

<p>
The spherical coordinate system extends polar coordinates
Expand Down Expand Up @@ -491,9 +507,9 @@ import InlineCanvas from "../../components/InlineCanvas.astro"
</p>
</CalloutCard>
</CalloutContainer>
</SubSection>
</SubSubSection>

<SubSection title="Cylindrical coordinates" id="cylindrical_coordinates">
<SubSubSection title = "Cylindrical coordinate system" id = "cylindrical_coordinate_system">

<p>
The cylindrical coordinate system extends polar coordinates into 3D by using the standard vertical coordinate \(z\) for the third.
Expand Down Expand Up @@ -698,7 +714,7 @@ import InlineCanvas from "../../components/InlineCanvas.astro"
vector derivatives</a>.
</p>
</DisplayEquation>
</SubSection>
</SubSubSection>


</Layout>
Expand Down
57 changes: 56 additions & 1 deletion src/pages/dyn/momentum.astro
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ import Col from "../../components/Col.astro"
<li class='list-group-item py-0'><a class='text-decoration-none subsection' href='#momentum'>Momentum</a></li>
<li class='list-group-item py-0'><a class='text-decoration-none subsection' href='#impulse'>Impulse</a></li>
<li class='list-group-item py-0'><a class='text-decoration-none subsection' href='#collisions'>Collisions</a></li>
<li class = 'list-group-item py-0'><a class = 'text-decoration-none subsection' href = '#rotation_about_arbitrary_reference_points'>Rotation about arbitrary reference points</a></li>
</ul>
</div>

Expand Down Expand Up @@ -675,7 +676,61 @@ import Col from "../../components/Col.astro"

</SubSection>


<SubSection title = "Rotation about arbitrary reference points" id = "rotation_about_arbitrary_reference_points">
<p>
In some cases, using the center of mass as a reference point is not ideal, and we might encounter situations in which we would need to consider the dynamics about another point.
We will begin by finding the angular momentum of a rigid body about any arbitrary point, and extend that from there.
</p>
<DisplayEquation equation = "\\vec{L}_P = \\vec{r}_{PC} \\times m \\vec{v}_C + I_C \\, \\vec{\\omega}" title = "Angular momentum of a rigid body about an arbitrary point \\(P\\)." background = "True" id = "reg-lp"/>
<p>
We can differentiate the above expression with respect to time and obtain the time derivative of the angular momentum of the rigid body about point \(P\).
This will yield two important special cases of rotations.
</p>
<DisplayEquation equation = "\\frac{d \\vec{L}_P}{dt} = \\vec{M}_P - \\vec{r}_{PC} \\times m \\vec{a}_P" title = "Rate of change of angular momentum about an arbitrary point \\(P\\)." background = "True" id = "reg-lt"/>
<p>
The important special cases are outlined below.
</p>
<DisplayTable id = "reg-lm">
<thead>
<tr class = "lineBelow">
<th>
case
</th>
<th>
result
</th>
<th>
consequence
</th>
</tr>
</thead>
<tbody>
<tr class = "lineBelow">
<th>
\(P = C\)
</th>
<td>
<InlineEquation equation = "\\vec{M}_P = \\vec{M}_C = \\frac{d \\vec{L}_C}{dt}"/>
</td>
<td>
This is Euler's 2nd law.
</td>
</tr>
<tr class = "lineBelow">
<th>
<InlineEquation equation = "\\vec{a}_P = \\vec{0}"/>
</th>
<td>
<InlineEquation equation = "\\vec{M}_P = \\frac{d \\vec{L}_P}{dt}"/>
</td>
<td>
The rigid body is rotating about a fixed point \(P\).
This is another form of Euler's 2nd law.
</td>
</tr>
</tbody>
</DisplayTable>
</SubSection>

</Layout>

Expand Down
15 changes: 10 additions & 5 deletions src/pages/dyn/multi_body_systems.astro
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@ import DisplayTable from "../../components/DisplayTable.astro"
<ul class='list-group list-group-flush py-0'>
<li class='list-group-item py-0'><a class='text-decoration-none subsection' href='#gears'>Gears</a>
<ul class='list-group list-group-flush py-0'>
<li class = 'list-group-item py-0'><a class = 'text-decoration-none subsubsection' href = '#chains'>Chains</a></li>
<li class='list-group-item py-0'><a class='text-decoration-none subsubsection' href='#sign_convention'>Standard sign convention</a></li>
<li class='list-group-item py-0'><a class='text-decoration-none subsubsection' href='#acce_contact_noslip_convention'>Acceleration in contact (no slip)</a></li>
<li class = 'list-group-item py-0'><a class = 'text-decoration-none subsubsection' href = '#gear_kinetics'>Gear kinetics</a></li>
Expand All @@ -55,11 +56,6 @@ import DisplayTable from "../../components/DisplayTable.astro"
<li>Accelerations - &gt; tangential are equal but centripetal are not</li>
<li>Opposite direction</li>
</ul>


<Image src="/dyn/multi_body_systems/GearsChains_edited.png" width="7"></Image>


<CalloutContainer slot = "cards">
<CalloutCard title = "Heads up!">
<p>
Expand All @@ -73,6 +69,12 @@ import DisplayTable from "../../components/DisplayTable.astro"
</CalloutContainer>

</SubSection>

<SubSubSection title = "Chains" id = "chains">
<Image src = "/dyn/multi_body_systems/GearsChains_edited.png" width = "7"></Image>
</SubSubSection>

<!--
<SubSubSection title="Standard sign convention" id="sign_convention">

<Image src="/dyn/multi_body_systems/GearsSignConvention.png" width="6"></Image>
Expand Down Expand Up @@ -103,12 +105,14 @@ import DisplayTable from "../../components/DisplayTable.astro"


</SubSubSection>
-->

<SubSubSection title="Acceleration in contact (no slip)" id="acce_contact_noslip_convention">

<Image src="/dyn/multi_body_systems/GearsContact.png" width="7"></Image>
</SubSubSection>

<!--
<SubSubSection title = "Gear kinetics" id = "gear_kinetics">
<Image src = "/dyn/multi_body_systems/gear_kinetics.png" width = "3"/>
<p>
Expand All @@ -122,6 +126,7 @@ import DisplayTable from "../../components/DisplayTable.astro"
</ul>
</p>
</SubSubSection>
-->

<SubSection title = "Four-bar linkages" id = "four_bar_linkages">
<Image src = "/dyn/multi_body_systems/Crank-Rocker_4-bar_Linkage.gif" width = "5">Image from <a target = "_blank" rel = "noopener noreferrer" href = "https://commons.wikimedia.org/wiki/File:Crank-Rocker_4-bar_Linkage.gif">Wikimedia.</a> CC BY 2.0</Image>
Expand Down
58 changes: 8 additions & 50 deletions src/pages/dyn/rigid_body_kinetics.astro
Original file line number Diff line number Diff line change
Expand Up @@ -29,8 +29,6 @@ import Row from "../../components/Row.astro"
<ul class='list-group list-group-flush py-0'>
<li class='list-group-item py-0'><a class='text-decoration-none subsection' href='#euler-motion'>Euler's laws of motion</a>
</li>
<li class='list-group-item py-0'><a class='text-decoration-none subsection' href='#rotation-arbitrary'>Rotation about arbitrary reference points</a>
</li>
</ul>
</div>

Expand Down Expand Up @@ -102,55 +100,15 @@ import Row from "../../components/Row.astro"
</CalloutContainer>

</SubSection>

<SubSection title="Rotation about arbitrary reference points" id="rotation-arbitrary">
<p>
In some cases, using the center of mass as a reference point is not ideal, and we might encounter
situations in which we would need to consider the dynamics about another point. We will begin by
finding the angular momentum of a rigid body about any arbitrary point, and extend that from there.
</p>

<DisplayEquation equation="\\vec{L}_P = \\vec{r}_{PC} \\times m\\vec{v}_C + I_C \\, \\vec\\omega" title="Angular momentum of a rigid body about an arbitrary point \\(P\\)." id="reg-lp" background="True"/>

<p>
We can differentiate the above expression with respect to time and obtain the time derivative of
the angular momentum of the rigid body about point \(P\). This will yield two important special cases of
rotations.
</p>

<DisplayEquation equation="\\frac{d\\vec{L}_P}{dt} = \\vec{M}_P - \\vec{r}_{PC} \\times m\\vec{a}_P" title="Rate of change of angular momentum about an arbitrary point \\(P\\)." id="reg-lt" background="True"/>

<p>
The important special cases are outlined below.
</p>

<DisplayTable id="reg-lm" >
<thead>
<tr class="lineBelow">
<th>case</th>
<th>result</th>
<th>consequence</th>
</tr>
</thead>
<tbody>
<tr class="lineBelow">
<th>\(P = C\)</th>
<td><InlineEquation equation="\\vec{M}_P = \\vec{M}_C = \\frac{d\\vec{L}_C}{dt}" /> </td>
<td>This is Euler's 2nd law.</td>
</tr>
<tr class="lineBelow">
<th><InlineEquation equation="\\vec{a}_P = \\vec{0}" />
</th>
<td><InlineEquation equation="\\vec{M}_P = \\frac{d\\vec{L}_P}{dt}" />
</td>
<td>The rigid body is rotating about a fixed point \(P\). This is another
form of Euler's 2nd law.</td>
</tr>
</tbody>
</DisplayTable>

</SubSection>

<SubSection title = "Solution steps" id = "solution_steps">
The steps involved in analyzing a rigid body mechanical system with Newton's equations are as follows.
<DisplayEquation equation = `\\begin{align} &1. \\ \\text{System diagram: draw a system diagram.} \\\\
&2. \\ \\text{FBD: draw a free body diagram.} \\\\
&3. \\ \\text{Kinematics: determine } \\vec{a}_c, \\vec{a}. \\\\
&4. \\ \\text{Kinetics: use} \\sum \\vec{F} = m \\vec{a}_c, \\sum M_{CZ} = I_{CZ} \\alpha_Z. \\\\
&5. \\ \\text{Algebra: rearrange and solve as needed.} \\end{align}` background = "True"/>
</SubSection>

</Layout>