mirror of
https://github.com/TeachBooks/manual.git
synced 2026-11-12 22:35:51 +00:00
added gates
This commit is contained in:
parent
1ac94844a3
commit
e22ea50d6d
5 changed files with 3263 additions and 0 deletions
|
|
@ -57,6 +57,8 @@ sphinx:
|
|||
summaries: false
|
||||
individual: false
|
||||
nb_execution_includepatterns: "**/MANUAL.ipynb"
|
||||
sphinx_codex_name: "Voorbeeld"
|
||||
sphinx_codex_merge_with_proof: true # default value
|
||||
|
||||
teachbooks:
|
||||
attribution_location: margin
|
||||
|
|
|
|||
|
|
@ -2,6 +2,11 @@ format: jb-book
|
|||
root: intro
|
||||
|
||||
parts:
|
||||
- caption: test sphinx_gated_directives
|
||||
chapters:
|
||||
- file: instructie.ipynb
|
||||
- file: instructie_2.ipynb
|
||||
- file: lesoefeningen.ipynb
|
||||
- caption: Your First TeachBook!
|
||||
chapters:
|
||||
- file: intro/book.md
|
||||
|
|
|
|||
1470
book/instructie.ipynb
Normal file
1470
book/instructie.ipynb
Normal file
File diff suppressed because one or more lines are too long
1470
book/instructie_2.ipynb
Normal file
1470
book/instructie_2.ipynb
Normal file
File diff suppressed because one or more lines are too long
316
book/lesoefeningen.ipynb
Normal file
316
book/lesoefeningen.ipynb
Normal file
|
|
@ -0,0 +1,316 @@
|
|||
{
|
||||
"cells": [
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "44f13f99",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"````{margin}\n",
|
||||
"```{attributiongrey} Bronvermelding\n",
|
||||
":class: attribution\n",
|
||||
"\n",
|
||||
"Deze oefening is aangepast van https://oit.tudelft.nl/CT1000/2024/week_3/session_1/intro.html\n",
|
||||
"\n",
|
||||
"% Figures from https://github.com/TUDelft-books/CT1000/blob/2025/book/week_3/session_1/intro_data/Tekening1.vsdx\n",
|
||||
"\n",
|
||||
"```\n",
|
||||
"```` \n",
|
||||
"\n",
|
||||
"# Begeleide oefening 1_oud\n",
|
||||
"\n",
|
||||
"Gegeven is de volgende constructie:\n",
|
||||
"\n",
|
||||
"```{figure} lesoefeningen_data/figure2.svg\n",
|
||||
"---\n",
|
||||
"align: center\n",
|
||||
"---\n",
|
||||
"Constructie, $EI = 6400 \\ \\rm{kNm^2}$\n",
|
||||
"```\n",
|
||||
"\n",
|
||||
":::::{exercise}\n",
|
||||
":label: ODE_3_1\n",
|
||||
":nonumber: true\n",
|
||||
"\n",
|
||||
"Bepaal de segmenten en teken de vrijlichaamsschema's.\n",
|
||||
"\n",
|
||||
"```{h5p} https://tudelft.h5p.com/content/1292630673009985967/embed\n",
|
||||
"```\n",
|
||||
"\n",
|
||||
":::::\n",
|
||||
"\n",
|
||||
"% solution_start\n",
|
||||
"\n",
|
||||
"::::{admonition} Solution\n",
|
||||
":class: solution, dropdown\n",
|
||||
"\n",
|
||||
"$q_z = -12 \\cdot x + 0$\n",
|
||||
"\n",
|
||||
"::::\n",
|
||||
"\n",
|
||||
"% solution_end\n",
|
||||
"\n",
|
||||
":::::{exercise}\n",
|
||||
":label: ODE_3_2\n",
|
||||
":nonumber: true\n",
|
||||
"\n",
|
||||
"Bepaal de relaties van de krachtsgrootheden en verplaatsingen.\n",
|
||||
"\n",
|
||||
"```{h5p} https://tudelft.h5p.com/content/1292630677998825487/embed\n",
|
||||
"```\n",
|
||||
"\n",
|
||||
":::::\n",
|
||||
"\n",
|
||||
"% solution_start\n",
|
||||
"\n",
|
||||
"::::{admonition} Solution\n",
|
||||
":class: solution, dropdown\n",
|
||||
"\n",
|
||||
"- $ w \\left( 0\\right) = 0 $\n",
|
||||
"- $ M \\left( 0\\right) = 0$\n",
|
||||
"- $ w \\left( 8\\right) = 0$\n",
|
||||
"- $ \\varphi \\left( 8 \\right) = 0$\n",
|
||||
"\n",
|
||||
"::::\n",
|
||||
"\n",
|
||||
"% solution_end\n",
|
||||
"\n",
|
||||
":::::{exercise-start}\n",
|
||||
":label: ODE_3_3\n",
|
||||
":nonumber: true\n",
|
||||
"\n",
|
||||
"Los de integratieconstanten op. Je kan gebruik maken van de volgende code cellen. (Klik op {fa}`rocket` --> {guilabel}`Live Code` om live python code te activeren op deze pagina.)\n",
|
||||
"\n",
|
||||
"```{h5p} https://tudelft.h5p.com/content/1292630704310133517/embed\n",
|
||||
"```\n",
|
||||
"\n",
|
||||
":::::\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"id": "91dc34be",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import numpy as np\n",
|
||||
"\n",
|
||||
"A = np.array([\n",
|
||||
" [ , , , ],\n",
|
||||
" [ , , , ],\n",
|
||||
" [ , , , ],\n",
|
||||
" [ , , , ],\n",
|
||||
"])\n",
|
||||
"\n",
|
||||
"b = np.array([\n",
|
||||
" ,\n",
|
||||
" ,\n",
|
||||
" ,\n",
|
||||
" ,\n",
|
||||
"])\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"id": "ce6f1792",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"np.linalg.solve(A,b)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": null,
|
||||
"id": "9e466305",
|
||||
"metadata": {},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import sympy as sym\n",
|
||||
"sym.init_printing()\n",
|
||||
"\n",
|
||||
"x = sym.symbols('x')\n",
|
||||
"\n",
|
||||
"q = \n",
|
||||
"EI = 6400\n",
|
||||
"\n",
|
||||
"C_1, C_2, C_3, C_4 = sym.symbols('C_1 C_2 C_3 C_4')\n",
|
||||
"\n",
|
||||
"V = -sym.integrate(q, x) + C_1\n",
|
||||
"M = sym.integrate(V, x) + C_2\n",
|
||||
"kappa = M/EI\n",
|
||||
"phi = sym.integrate(kappa, x) + C_3\n",
|
||||
"w = -sym.integrate(phi, x) + C_4\n",
|
||||
"\n",
|
||||
"eq1 = sym.Eq(w.subs(x,0), )\n",
|
||||
"eq2 = sym.Eq( .subs(x,0), )\n",
|
||||
"eq3 = sym.Eq(w.subs(x,8), )\n",
|
||||
"eq4 = sym.Eq( .subs(x,8),0)\n",
|
||||
"\n",
|
||||
"sol = sym.solve([eq1,eq2,eq3,eq4],(C_1,C_2,C_3,C_4))\n",
|
||||
"for k, v in sol.items():\n",
|
||||
" print(f\"{k} = {v} ≈ {v.evalf()}\")"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "94270e4f",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
":::::{exercise-end}\n",
|
||||
":::::\n",
|
||||
"\n",
|
||||
"% solution_start\n",
|
||||
"\n",
|
||||
"::::{solution-start} ODE_3_3\n",
|
||||
":class: dropdown\n",
|
||||
"::::\n",
|
||||
"\n",
|
||||
"$ w = - \\cfrac{x^{5}}{10} + \\cfrac{64 x^{3}}{5} - \\cfrac{2048 x}{5} = - 0.1 x^{5} + 12.8 x^{3} - 409.6 x $\n",
|
||||
"% solution_end"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 22,
|
||||
"id": "f46e4efd",
|
||||
"metadata": {
|
||||
"tags": [
|
||||
"solution"
|
||||
]
|
||||
},
|
||||
"outputs": [],
|
||||
"source": [
|
||||
"import numpy as np\n",
|
||||
"\n",
|
||||
"A = np.array([\n",
|
||||
" [ 0 , 0 , 0,1],\n",
|
||||
" [ 0 , 1 , 0,0],\n",
|
||||
" [-1/75 ,-1/200,-8,1],\n",
|
||||
" [ 1/200, 1/800, 1,0],\n",
|
||||
"])\n",
|
||||
"\n",
|
||||
"b = np.array([\n",
|
||||
" 0,\n",
|
||||
" 0,\n",
|
||||
" 64/125,\n",
|
||||
" -8/25,\n",
|
||||
"])\n"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 25,
|
||||
"id": "300cd851",
|
||||
"metadata": {
|
||||
"tags": [
|
||||
"solution"
|
||||
]
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"text/plain": [
|
||||
"array([-7.68e+01, 0.00e+00, 6.40e-02, 0.00e+00])"
|
||||
]
|
||||
},
|
||||
"execution_count": 25,
|
||||
"metadata": {},
|
||||
"output_type": "execute_result"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"np.linalg.solve(A,b)"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "code",
|
||||
"execution_count": 28,
|
||||
"id": "96516034",
|
||||
"metadata": {
|
||||
"tags": [
|
||||
"solution"
|
||||
]
|
||||
},
|
||||
"outputs": [
|
||||
{
|
||||
"data": {
|
||||
"image/png": "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",
|
||||
"text/latex": [
|
||||
"$\\displaystyle - 0.1 x^{5} + 12.8 x^{3} - 409.6 x$"
|
||||
],
|
||||
"text/plain": [
|
||||
" 5 3 \n",
|
||||
"- 0.1⋅x + 12.8⋅x - 409.6⋅x"
|
||||
]
|
||||
},
|
||||
"metadata": {},
|
||||
"output_type": "display_data"
|
||||
}
|
||||
],
|
||||
"source": [
|
||||
"import sympy as sym\n",
|
||||
"sym.init_printing()\n",
|
||||
"\n",
|
||||
"x = sym.symbols('x')\n",
|
||||
"\n",
|
||||
"q = -12 * x\n",
|
||||
"EI = 6400\n",
|
||||
"\n",
|
||||
"C_1, C_2, C_3, C_4 = sym.symbols('C_1 C_2 C_3 C_4')\n",
|
||||
"\n",
|
||||
"V = -sym.integrate(q, x) + C_1\n",
|
||||
"M = sym.integrate(V, x) + C_2\n",
|
||||
"kappa = M/EI\n",
|
||||
"phi = sym.integrate(kappa, x) + C_3\n",
|
||||
"w = -sym.integrate(phi, x) + C_4\n",
|
||||
"\n",
|
||||
"eq1 = sym.Eq(w.subs(x,0),0)\n",
|
||||
"eq2 = sym.Eq(M.subs(x,0),0)\n",
|
||||
"eq3 = sym.Eq(w.subs(x,8),0)\n",
|
||||
"eq4 = sym.Eq(phi.subs(x,8),0)\n",
|
||||
"\n",
|
||||
"sol = sym.solve([eq1,eq2,eq3,eq4],(C_1,C_2,C_3,C_4))\n",
|
||||
"\n",
|
||||
"display((w.subs(sol)*EI).evalf())\n",
|
||||
"\n",
|
||||
"A,b = sym.linear_eq_to_matrix((eq1,eq2,eq3,eq4), (C_1,C_2,C_3,C_4))"
|
||||
]
|
||||
},
|
||||
{
|
||||
"cell_type": "markdown",
|
||||
"id": "b3a4c9d4",
|
||||
"metadata": {},
|
||||
"source": [
|
||||
"% solution_start\n",
|
||||
"\n",
|
||||
"::::{solution-end}\n",
|
||||
"::::\n",
|
||||
"\n",
|
||||
"% solution_end"
|
||||
]
|
||||
}
|
||||
],
|
||||
"metadata": {
|
||||
"kernelspec": {
|
||||
"display_name": "base",
|
||||
"language": "python",
|
||||
"name": "python3"
|
||||
},
|
||||
"language_info": {
|
||||
"codemirror_mode": {
|
||||
"name": "ipython",
|
||||
"version": 3
|
||||
},
|
||||
"file_extension": ".py",
|
||||
"mimetype": "text/x-python",
|
||||
"name": "python",
|
||||
"nbconvert_exporter": "python",
|
||||
"pygments_lexer": "ipython3",
|
||||
"version": "3.12.11"
|
||||
}
|
||||
},
|
||||
"nbformat": 4,
|
||||
"nbformat_minor": 5
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue