Skip to content

Commit

Permalink
Update documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
angadhn committed Oct 21, 2024
1 parent 0479a7c commit 6f10775
Show file tree
Hide file tree
Showing 51 changed files with 2,481 additions and 938 deletions.
2 changes: 1 addition & 1 deletion .buildinfo
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: 7d7a81d2405eefc85e429e9787de3be4
config: cee2f9647a55003c780a9addf5599de2
tags: 645f666f9bcd5a90fca523b33c5a78b7
6 changes: 3 additions & 3 deletions CONTRIBUTING.html
Original file line number Diff line number Diff line change
Expand Up @@ -56,12 +56,12 @@
<script src="_static/togglebutton.js"></script>
<script>var togglebuttonSelector = '.toggle, .admonition.dropdown';</script>
<script src="_static/design-tabs.js"></script>
<script async="async" src="https://www.googletagmanager.com/gtag/js?id=G-8NCYQHENVD"></script>
<script async="async" src="https://www.googletagmanager.com/gtag/js?id=G-PMEJXXDXF4"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){ dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'G-8NCYQHENVD');
gtag('config', 'G-PMEJXXDXF4');
</script>
<script>const THEBE_JS_URL = "https://unpkg.com/thebe@0.8.2/lib/index.js"
const thebe_selector = ".thebe,.cell"
Expand Down Expand Up @@ -183,7 +183,7 @@
<li class="toctree-l1"><a class="reference internal" href="orbital-mechanics/Lecture4/Lecture4.html">Circular and More Results on Elliptical Orbits</a></li>

<li class="toctree-l1"><a class="reference internal" href="orbital-mechanics/Lecture5/Lecture5.html">Orbital Elements (Part 1)</a></li>
<li class="toctree-l1"><a class="reference internal" href="orbital-mechanics/Lecture6/Lecture6.html">Determining Orbital Paths</a></li>
<li class="toctree-l1"><a class="reference internal" href="orbital-mechanics/Lecture6/Lecture6.html">Orbital Elements (Part 2)</a></li>

<li class="toctree-l1"><a class="reference internal" href="orbital-mechanics/Lecture7/Lecture7.html">Orbital Maneuvers</a></li>
<li class="toctree-l1"><a class="reference internal" href="orbital-mechanics/Lecture8/Lecture8.html">Hyperbolic Orbits and Interplanetary Trajectories</a></li>
Expand Down
6 changes: 3 additions & 3 deletions README.html
Original file line number Diff line number Diff line change
Expand Up @@ -56,12 +56,12 @@
<script src="_static/togglebutton.js"></script>
<script>var togglebuttonSelector = '.toggle, .admonition.dropdown';</script>
<script src="_static/design-tabs.js"></script>
<script async="async" src="https://www.googletagmanager.com/gtag/js?id=G-8NCYQHENVD"></script>
<script async="async" src="https://www.googletagmanager.com/gtag/js?id=G-PMEJXXDXF4"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){ dataLayer.push(arguments); }
gtag('js', new Date());
gtag('config', 'G-8NCYQHENVD');
gtag('config', 'G-PMEJXXDXF4');
</script>
<script>const THEBE_JS_URL = "https://unpkg.com/thebe@0.8.2/lib/index.js"
const thebe_selector = ".thebe,.cell"
Expand Down Expand Up @@ -183,7 +183,7 @@
<li class="toctree-l1"><a class="reference internal" href="orbital-mechanics/Lecture4/Lecture4.html">Circular and More Results on Elliptical Orbits</a></li>

<li class="toctree-l1"><a class="reference internal" href="orbital-mechanics/Lecture5/Lecture5.html">Orbital Elements (Part 1)</a></li>
<li class="toctree-l1"><a class="reference internal" href="orbital-mechanics/Lecture6/Lecture6.html">Determining Orbital Paths</a></li>
<li class="toctree-l1"><a class="reference internal" href="orbital-mechanics/Lecture6/Lecture6.html">Orbital Elements (Part 2)</a></li>

<li class="toctree-l1"><a class="reference internal" href="orbital-mechanics/Lecture7/Lecture7.html">Orbital Maneuvers</a></li>
<li class="toctree-l1"><a class="reference internal" href="orbital-mechanics/Lecture8/Lecture8.html">Hyperbolic Orbits and Interplanetary Trajectories</a></li>
Expand Down
Binary file added _images/earth-sat-1_cut.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/earth-sat-20_cut.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/earth-sat-24_cut.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/earth-sat-28_cut.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/earth-sat-3_cut.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/earth-sat-4_cut.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/earth-sat-6_cut.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added _images/earth-sat-8_cut.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
750 changes: 241 additions & 509 deletions _sources/attitude-dynamics/Lecture14/dynamics-1.ipynb

Large diffs are not rendered by default.

174 changes: 174 additions & 0 deletions _sources/attitude-dynamics/Lecture14/rotational_dynamics.ipynb
Original file line number Diff line number Diff line change
@@ -0,0 +1,174 @@
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Rotational dynamics\n",
"_Prepared by:_ [Joost Hubbard](https://github.com/Joosty), and [Angadh Nanjangud](https://www.angadhn.com/)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In this lecture we aim to cover the following topics:\n",
"1. [](content:rotational-dynamics-explaination-and-derivation)\n",
"2. [](content:kinetics-summary)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"(content:rotational-dynamics-explaination-and-derivation)=\n",
"## Rotational Dynamics Explaination and Derivation\n",
"\n",
"Much like how the translational dynamics inherently makes use of the concepts of linear momentum and forces, the rotational dynamics can be studied by making use of angular momentum (moment of linear momentum) and moments of forces.\n",
"\n",
"In this next section, we will derive the relevant equations by making use of the system of particles from before (also shown in figure below). We also introduce a point $O$ as we know that the concept of a moment of a vector is defined relative to some point in space.\n",
"```{figure} ./images/earth-sat-13.png\n",
"---\n",
"name: earth-sat-13\n",
"---\n",
"```\n",
"\n",
"We now begin by considering the equation of translational motion for $P_1$:\n",
"\n",
"$${\\mathbf{{F}}_1} + \\sum_{k=1}^n {\\mathbf{{f}}_{1k}} = {m_1}{{}^{N}{\\mathbf{{a}}}^{p_1}} \\tag{11.3}$$\n",
"\n",
"\n",
"We can cross multiply it on both the right and left sides by ${r}_1$, the position vector from $O$ to $P_1$:\n",
"\n",
"$${{r}_1} \\times ({\\mathbf{{F}}_1} + \\sum_{k=1}^n {\\mathbf{{f}}_{1k}}) = {{r}_1} \\times {m_1}{{}^{N}{\\mathbf{{a}}}^{p_1}} \\tag{11.8}$$\n",
"\n",
"\n",
"In essence, what we have done is taken the moment about point $O$ of vectors on the right and left hand sides.\n",
"\n",
"We can repeat this process for the other particles $P_2$, $P_i$, and $P_n$. In other words, we can take the moment about point $O$ for each particle’s translational equations, as given by equations $11.4$, $11.5$, and $11.6$.\n",
"\n",
"**For $\\mathbf{P_2}$**\n",
"\n",
"$${{r}_2} \\times {\\mathbf{{F}}_2} + \\sum_{k=1}^n {\\mathbf{{f}}_{2k}} = {{r}_2} {m_2}{{}^{N}{\\mathbf{{a}}}^{p_2}} \\tag{11.9}$$\n",
"\n",
"**For $\\mathbf{P_i}$**\n",
"\n",
"$${{r}_i}{\\mathbf{{F}}_i} + \\sum_{k=1}^n {\\mathbf{{f}}_{ik}} = {{r}_i}{m_i}{{}^{N}{\\mathbf{{a}}}^{p_i}} \\tag{11.10}$$\n",
"\n",
"**For $\\mathbf{P_n}$**\n",
"\n",
"$${{r}_n}{\\mathbf{{F}}_n} + \\sum_{k=1}^n {\\mathbf{{f}}_{nk}} = {{r}_n}{m_n}{{}^{N}{\\mathbf{{a}}}^{p_n}}\\tag{11.11}$$\n",
"\n",
"We can now add up equations $11.8$ and $11.11$ to get:\n",
"\n",
"$$\\sum_{j=1}^n {\\mathbf{{r}}_{j}} \\times {\\mathbf{{F}}_{j}} + \\sum_{j=1}^n \\sum_{k=1}^n {\\mathbf{{r}}_{j}} \\times {\\mathbf{{f}}_{jk}} = \\sum_{j=1}^n {\\mathbf{{r}}_{j}} \\times ({m_j}{{}^{N}\\mathbf{{a}}^{p_j}}) \\tag{11.12}$$\n",
"\n",
"Let’s examine each term of equation $11.12$:\n",
"\n",
"The first term, $\\sum_{j=1}^n {\\mathbf{{r}}_{j}} \\times {\\mathbf{{F}}_{j}}$, is the sum of moments of the external forces about the point $O$.\n",
"\n",
"The second term, $\\sum_{j=1}^n \\sum_{k=1}^n {\\mathbf{{r}}_{j}} \\times {\\mathbf{{f}}_{jk}}$, can be proven to be zero. Take time to do this independently to help with your understanding.\n",
"\n",
"<!-- do this proof ^^ put in dropdown -->\n",
"\n",
"The third term, $\\sum_{j=1}^n {\\mathbf{{r}}_{j}} \\times ({m_j}{{}^{N}\\mathbf{{a}}^{p_j}})$, is a more complex term. Examination starts by looking at the defination of angular of a syetm of particles, given below:\n",
"\n",
"$${}^{N}{\\mathbf{{H}}}^{S/O} = \\sum_{j=1}^n {{\\mathbf{{r}}}_j} \\times {m_j}{{}^{N}\\mathbf{{v}}^{p_j}}$$\n",
"\n",
"So, the time derivative of this system’s angular momentum vector taken from the inertial frame $N$ is given as:\n",
"\n",
"\n",
"$$ \\frac{{}^N d} {\\mathrm{d}t} {}^{N}{\\mathbf{{H}}}^{S/O} = \\left(\\sum_{j=1}^n \\frac{{}^N d} {\\mathrm{d}t} {{\\mathbf{{r}}}_j} \\times {m_j}{{}^{N}\\mathbf{{v}}^{p_j}}\\right) + \\left(\\sum_{j=1}^n {}^{N}{{\\mathbf{{r}}}_j} \\times {m_j}{{}^{N}\\mathbf{{a}}^{p_j}}\\right) $$\n",
"\n",
"$$\\left(\\sum_{j=1}^n {}^{N}{{\\mathbf{{r}}}_j} \\times {m_j}{{}^{N}\\mathbf{{a}}^{p_j}}\\right) = \\frac{{}^N d} {\\mathrm{d}t} {}^{N}{\\mathbf{{H}}}^{S/O} + \\left(\\sum_{j=1}^n {{\\mathbf{{r}}}_j} \\times {m_j}{{}^{N}\\mathbf{{a}}^{p_j}}\\right) \\tag{11.13}$$\n",
"\n",
"So, $11.12$ becomes:\n",
"\n",
"$$\\sum {\\mathbf{{M}}}^{{{\\mathbf{{F}}}_i}/O} = {\\frac d {\\mathrm{d}t}} {}^{N}{\\mathbf{{H}}}^{S/O} + \\left(\\sum_{j=1}^n {{\\mathbf{{r}}}_j} \\times {m_j}{{}^{N}\\mathbf{{a}}^{p_j}}\\right) \\tag{11.13}$$\n",
"\n",
"Where $\\sum {\\mathbf{{M}}}^{{{\\mathbf{{F}}}_i}/O}$ is the sum of moments of the external forces about the point $O$.\n",
"\n",
"By introdcuing a point, $Q$, fixed in inertial frame $N$ and defining two new position vectors as shown below, we can further synthesise the expression ${{}^{N}\\mathbf{{a}}^{p_j}}$ in terms of mass centres.\n",
"\n",
"```{figure} ./images/earth-sat-20_cut.png\n",
"---\n",
"name: earth-sat-20\n",
"---\n",
"``` \n",
"Hence we can see:\n",
"\n",
"$${\\mathbf{{r}}}_j = {\\mathbf{{R}}}_j - {\\mathbf{{r}}}$$\n",
"\n",
"and\n",
"\n",
"$${\\frac d {\\mathrm{d}t}} {\\mathbf{{r}}}_j = {}^{N}{\\mathbf{{v}}}^{p_j} - {}^{N}{\\mathbf{{v}}}^{O}$$ \n",
"\n",
"\n",
"\n",
"\n",
"So, $11.13$ can now be rewritten finally in a much simpler form as:\n",
"\n",
"$$\\sum{\\mathbf{{M}}}^{{{\\mathbf{{F}}}_i}/{O}} = \\frac{{}^N d} {\\mathrm{d}t} {}^{N}{\\mathbf{{H}}}^{S/O} - \\left(\\sum_{j=1}^n m_j {}^{N}{\\mathbf{{v}}}^{p_j}\\right) \\times {}^{N}{\\mathbf{{v}}}^{O}$$\n",
"\n",
"Or...\n",
"\n",
"$$\\sum{\\mathbf{{M}}}^{{{\\mathbf{{F}}}_i}/{O}} = {}^{N}{\\frac d {\\mathrm{d}t}} {}^{N}{\\mathbf{{H}}}^{S/O} - \\left(m {}^{N}{\\mathbf{{v}}}^{S^*}\\right) \\times {}^{N}{\\mathbf{{v}}}^{O}$$\n",
"\n",
"\n",
"It is important to note two special cases:\n",
"\n",
"1. $O$ is fixed in $N$:\n",
"\n",
"$$\\sum{\\mathbf{{M}}}^{{{\\mathbf{{F}}}_i}/{O}} = \\frac{{}^N d} {\\mathrm{d}t} {}^{N}{\\mathbf{{H}}}^{S/O}$$\n",
"\n",
"2. $O$ is the mass centre $S^*$:\n",
"\n",
"$$\\sum{\\mathbf{{M}}}^{{{{\\mathbf{{F}}}_i}/{S^*}}} = \\frac{{}^N d} {\\mathrm{d}t} {}^{N}{\\mathbf{{H}}}^{S/{S^*}}$$\n",
"\n",
"(content:kinetics-summary)=\n",
"## Kinetics Summary\n",
"\n",
"The topics covered up until this point are briefly summarised in this section as a refresher to help with understanding.\n",
"\n",
"We began by examining the equations of motion of a single particle $P$ by Newton’s second law:\n",
"\n",
"$$\n",
"\\mathbf{{F}} = m^N\\mathbf{{a}}^p\n",
"$$\n",
"\n",
"Then, we looked at a system of two particles and used that as a stepping stone towards deriving a generalised Newton’s second law for a system of any number of particles. This resulted in:\n",
"\n",
"$$\n",
"\\mathbf{{F}} = m{}^N\\mathbf{{a}}^{S^*}\n",
"$$\n",
"\n",
"Where:\n",
"- $\\mathbf{{F}}$ is the resultant force on the system,\n",
"- $m$ is the total mass,\n",
"- ${}^N\\mathbf{{a}}^{S^*}$ is the acceleration of the mass centre.\n",
"\n",
"We then used the generalized Newton’s second law to derive the rotational dynamics of the system relative to a frame $N$ by taking the moment of the translational motion about some arbitrary point $O$. The equations for rotational motion were then found to be:\n",
"\n",
"$$\\sum{\\mathbf{{M}}}^{{{\\mathbf{{F}}}_i}/{O}} = \\frac{{}^N d} {\\mathrm{d}t} {}^{N}{\\mathbf{{H}}}^{S/O} - \\left(m {}^{N}{\\mathbf{{v}}}^{S^*}\\right) \\times {}^{N}{\\mathbf{{v}}}^{O}$$\n",
"\n",
"Where:\n",
"- $\\sum{\\mathbf{{M}}}^{{{\\mathbf{{F}}}_i}/{O}}$ is the sum of moments from external forces,\n",
"- $\\frac{{}^N d} {\\mathrm{d}t} {}^{N}{\\mathbf{{H}}}^{S/O}$ is the rate of change of ${\\mathbf{{H}}}$ of $S$ about $O$. \n",
"As this rotational equation was derived from the generalized Newton’s law, this result is also general. By that, we mean that this applies to general 3D rotational motion of a system of particles, $S$, relative to an inertial frame, $N$. Therefore, it can be easily used to study more specific types of planar motion (e.g., rotation about a fixed axis and general plane motion) by starting from this general set of equations and applying appropriate analysis to the given problem.\n",
"\n",
"Lastly, we saw that the above equation simplifies when the point $O$ is either:\n",
"* **case 1**: a point that is fixed in an inertial frame; and/or\n",
"* **case 2**: the mass centre.\n",
"\n",
"In both cases, the last term involving cross products on the right-end side of the rotational equation drop out."
]
}
],
"metadata": {
"language_info": {
"name": "python"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Loading

0 comments on commit 6f10775

Please sign in to comment.