Permalink
Cannot retrieve contributors at this time
Name already in use
A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
compmech-project04/Linear_Algebra-project (W2)- Commit version.ipynb
Go to fileThis commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
1260 lines (1260 sloc)
214 KB
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"cells": [ | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# CompMech04-Linear Algebra Project\n", | |
"# Practical Linear Algebra for Finite Element Analysis\n", | |
"\n" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"In this project we will perform a linear-elastic finite element analysis (FEA) on a support structure made of 11 beams that are riveted in 7 locations to create a truss as shown in the image below. \n", | |
"\n", | |
"![Mesh image of truss](../images/mesh.png)\n", | |
"\n" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"The triangular truss shown above can be modeled using a [direct stiffness method [1]](https://en.wikipedia.org/wiki/Direct_stiffness_method), that is detailed in the [extra-FEA_material](./extra-FEA_material.ipynb) notebook. The end result of converting this structure to a FE model. Is that each joint, labeled $n~1-7$, short for _node 1-7_ can move in the x- and y-directions, but causes a force modeled with Hooke's law. Each beam labeled $el~1-11$, short for _element 1-11_, contributes to the stiffness of the structure. We have 14 equations where the sum of the components of forces = 0, represented by the equation\n", | |
"\n", | |
"$\\mathbf{F-Ku}=\\mathbf{0}$\n", | |
"\n", | |
"Where, $\\mathbf{F}$ are externally applied forces, $\\mathbf{u}$ are x- and y- displacements of nodes, and $\\mathbf{K}$ is the stiffness matrix given in `fea_arrays.npz` as `K`, shown below\n", | |
"\n", | |
"_note: the array shown is 1000x(`K`). You can use units of MPa (N/mm^2), N, and mm. The array `K` is in 1/mm_\n", | |
"\n", | |
"$\\mathbf{K}=EA*$\n", | |
"\n", | |
"$ \\left[ \\begin{array}{cccccccccccccc}\n", | |
" 4.2 & 1.4 & -0.8 & -1.4 & -3.3 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\\\\n", | |
" 1.4 & 2.5 & -1.4 & -2.5 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\\\\n", | |
" -0.8 & -1.4 & 5.0 & 0.0 & -0.8 & 1.4 & -3.3 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\\\\n", | |
" -1.4 & -2.5 & 0.0 & 5.0 & 1.4 & -2.5 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\\\\n", | |
" -3.3 & 0.0 & -0.8 & 1.4 & 8.3 & 0.0 & -0.8 & -1.4 & -3.3 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\\\\n", | |
" 0.0 & 0.0 & 1.4 & -2.5 & 0.0 & 5.0 & -1.4 & -2.5 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 \\\\\n", | |
" 0.0 & 0.0 & -3.3 & 0.0 & -0.8 & -1.4 & 8.3 & 0.0 & -0.8 & 1.4 & -3.3 & 0.0 & 0.0 & 0.0 \\\\\n", | |
" 0.0 & 0.0 & 0.0 & 0.0 & -1.4 & -2.5 & 0.0 & 5.0 & 1.4 & -2.5 & 0.0 & 0.0 & 0.0 & 0.0 \\\\\n", | |
" 0.0 & 0.0 & 0.0 & 0.0 & -3.3 & 0.0 & -0.8 & 1.4 & 8.3 & 0.0 & -0.8 & -1.4 & -3.3 & 0.0 \\\\\n", | |
" 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 1.4 & -2.5 & 0.0 & 5.0 & -1.4 & -2.5 & 0.0 & 0.0 \\\\\n", | |
" 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & -3.3 & 0.0 & -0.8 & -1.4 & 5.0 & 0.0 & -0.8 & 1.4 \\\\\n", | |
" 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & -1.4 & -2.5 & 0.0 & 5.0 & 1.4 & -2.5 \\\\\n", | |
" 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & -3.3 & 0.0 & -0.8 & 1.4 & 4.2 & -1.4 \\\\\n", | |
" 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 0.0 & 1.4 & -2.5 & -1.4 & 2.5 \\\\\n", | |
"\\end{array}\\right]~\\frac{1}{m}$" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 1, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
" [ 0.42 0.14 -0.08 -0.14 -0.33 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00] \n", | |
" [ 0.14 0.25 -0.14 -0.25 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00] \n", | |
" [ -0.08 -0.14 0.50 0.00 -0.08 0.14 -0.33 0.00 0.00 0.00 0.00 0.00 0.00 0.00] \n", | |
" [ -0.14 -0.25 0.00 0.50 0.14 -0.25 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00] \n", | |
" [ -0.33 0.00 -0.08 0.14 0.83 0.00 -0.08 -0.14 -0.33 0.00 0.00 0.00 0.00 0.00] \n", | |
" [ 0.00 0.00 0.14 -0.25 0.00 0.50 -0.14 -0.25 0.00 0.00 0.00 0.00 0.00 0.00] \n", | |
" [ 0.00 0.00 -0.33 0.00 -0.08 -0.14 0.83 0.00 -0.08 0.14 -0.33 0.00 0.00 0.00]\n", | |
" [ 0.00 0.00 0.00 0.00 -0.14 -0.25 0.00 0.50 0.14 -0.25 0.00 0.00 0.00 0.00] \n", | |
" [ 0.00 0.00 0.00 0.00 -0.33 0.00 -0.08 0.14 0.83 0.00 -0.08 -0.14 -0.33 0.00] \n", | |
" [ 0.00 0.00 0.00 0.00 0.00 0.00 0.14 -0.25 0.00 0.50 -0.14 -0.25 0.00 0.00] \n", | |
" [ 0.00 0.00 0.00 0.00 0.00 0.00 -0.33 0.00 -0.08 -0.14 0.50 0.00 -0.08 0.14] \n", | |
" [ 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 -0.14 -0.25 0.00 0.50 0.14 -0.25] \n", | |
" [ 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 -0.33 0.00 -0.08 0.14 0.42 -0.14] \n", | |
" [ 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.14 -0.25 -0.14 0.25] \n", | |
"\n" | |
] | |
} | |
], | |
"source": [ | |
"import numpy as np\n", | |
"import scipy.linalg as linalg\n", | |
"\n", | |
"from pretty_print import array_print as AP\n", | |
"fea_arrays = np.load('./fea_arrays.npz')\n", | |
"nodes = fea_arrays['nodes']\n", | |
"elems = fea_arrays['elems']\n", | |
"K=fea_arrays['K']\n", | |
"AP([K*100], ['[K]'])" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"In this project we are solving the problem, $\\mathbf{F}=\\mathbf{Ku}$, where $\\mathbf{F}$ is measured in Newtons, $\\mathbf{K}$ `=E*A*K` is the stiffness in N/mm, `E` is Young's modulus measured in MPa (N/mm^2), and `A` is the cross-sectional area of the beam measured in mm^2. \n", | |
"\n", | |
"There are three constraints on the motion of the joints:\n", | |
"\n", | |
"i. node 1 displacement in the x-direction is 0 = `u[0]`\n", | |
"\n", | |
"ii. node 1 displacement in the y-direction is 0 = `u[1]`\n", | |
"\n", | |
"iii. node 7 displacement in the y-direction is 0 = `u[13]`\n", | |
"\n", | |
"We can satisfy these constraints by leaving out the first, second, and last rows and columns from our linear algebra description. " | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"### 1. Calculate the condition of `K` and the condition of `K[2:13,2:13]`. \n", | |
"\n", | |
"a. What error would you expect when you solve for `u` in `K*u = F`? \n", | |
"\n", | |
"b. Why is the condition of `K` so large?\n", | |
"\n", | |
"c. What error would you expect when you solve for `u[2:13]` in `K[2:13,2:13]*u=F[2:13]`" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"#\n", | |
"Problem 1." | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"1a.\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 2, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"2.220446049250313e-16\n", | |
"1.4577532625238035e+17\n", | |
"The expected error is: 10 m\n" | |
] | |
} | |
], | |
"source": [ | |
"import numpy as np\n", | |
"print(np.finfo(float).eps)\n", | |
"print(np.linalg.cond(K))\n", | |
"print('The expected error is:',10**(17-16),' m')" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"1b." | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
" The condition of K so large because the lack of BC's in K" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"1c." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 3, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"1.4577532625238035e+17" | |
] | |
}, | |
"execution_count": 3, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"condition_k = np.linalg.cond(K)\n", | |
"condition_k" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 4, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"11" | |
] | |
}, | |
"execution_count": 4, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"\n", | |
"new_condition = np.linalg.cond(K[2:13,2:13])\n", | |
"np.linalg.matrix_rank(K)\n", | |
"K.shape\n", | |
"np.linalg.matrix_rank(K[2:13,2:13]) # shows the number of linearly independent columns/rows" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": null, | |
"metadata": {}, | |
"outputs": [], | |
"source": [] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 5, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"1e-15" | |
] | |
}, | |
"execution_count": 5, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"# Error after slicing is 10 to the power of the sum of exponents of condition and minimal eps in numpy.\n", | |
"10 ** (1-16)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"K is rank 11 with 14 columns. This means the columns are linearly dependent, and 3 of the 14 columns are in the span of the other 11 columns.\n", | |
"\n", | |
"K_sliced is rank 11 with 11 columns, so the columns are linearly independent." | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": null, | |
"metadata": {}, | |
"outputs": [], | |
"source": [] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"### 2. Apply a 100-N downward force to the central top node (n 4)\n", | |
"\n", | |
"a. Create the LU matrix for K[2:13,2:13]\n", | |
"\n", | |
"b. Use cross-sectional area of $0.1~mm^2$ and steel and almuminum moduli, $E=200~GPa~and~E=70~GPa,$ respectively. Solve the forward and backward substitution methods for \n", | |
"\n", | |
"* $\\mathbf{Ly}=\\mathbf{F}\\frac{1}{EA}$\n", | |
"\n", | |
"* $\\mathbf{Uu}=\\mathbf{y}$\n", | |
"\n", | |
"_your array `F` is zeros, except for `F[5]=-100`, to create a -100 N load at node 4._\n", | |
"\n", | |
"c. Plug in the values for $\\mathbf{u}$ into the full equation, $\\mathbf{Ku}=\\mathbf{F}$, to solve for the reaction forces\n", | |
"\n", | |
"d. Create a plot of the undeformed and deformed structure with the displacements and forces plotted as vectors (via `quiver`). Your result for aluminum should match the following result from [extra-FEA_material](./extra-FEA_material.ipynb). _note: The scale factor is applied to displacements $\\mathbf{u}$, not forces._\n", | |
"\n", | |
"![Deformed structure with loads applied](../images/deformed_truss.png)" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"#\n", | |
"Problem 2." | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"2a.\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 6, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
" [ 1.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00] \n", | |
" [ 0.00 1.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00] \n", | |
" [ -0.17 0.29 1.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00] \n", | |
" [ 0.29 -0.50 0.12 1.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00] \n", | |
" [ -0.67 0.00 -0.18 -0.10 1.00 0.00 0.00 0.00 0.00 0.00 0.00] \n", | |
" [ 0.00 0.00 -0.19 -0.72 -0.08 1.00 0.00 0.00 0.00 0.00 0.00]\n", | |
" [ 0.00 0.00 -0.43 0.13 -0.24 0.33 1.00 0.00 0.00 0.00 0.00] \n", | |
" [ 0.00 0.00 0.00 0.00 0.25 -0.79 0.18 1.00 0.00 0.00 0.00] \n", | |
" [ 0.00 0.00 0.00 0.00 -0.57 -0.09 -0.25 -0.22 1.00 0.00 0.00] \n", | |
" [ 0.00 0.00 0.00 0.00 0.00 0.00 -0.23 -0.88 -0.33 1.00 0.00] \n", | |
" [ 0.00 0.00 0.00 0.00 0.00 0.00 -0.54 0.24 -0.59 0.29 1.00] \n", | |
"\n" | |
] | |
} | |
], | |
"source": [ | |
"K2 = K[2:13,2:13].copy()\n", | |
"I,L,U = linalg.lu(K2)\n", | |
"AP([L], ['[L]'])" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 7, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
" [ 0.50 0.00 -0.08 0.14 -0.33 0.00 0.00 0.00 0.00 0.00 0.00] \n", | |
" [ 0.00 0.50 0.14 -0.25 0.00 0.00 0.00 0.00 0.00 0.00 0.00] \n", | |
" [ 0.00 0.00 0.78 0.10 -0.14 -0.14 -0.33 0.00 0.00 0.00 0.00] \n", | |
" [ 0.00 0.00 0.00 0.32 -0.03 -0.23 0.04 0.00 0.00 0.00 0.00] \n", | |
" [ 0.00 0.00 0.00 0.00 0.58 -0.05 -0.14 0.14 -0.33 0.00 0.00] \n", | |
" [ 0.00 0.00 0.00 0.00 0.00 0.30 0.10 -0.24 -0.03 0.00 0.00]\n", | |
" [ 0.00 0.00 0.00 0.00 0.00 0.00 0.62 0.11 -0.15 -0.14 -0.33] \n", | |
" [ 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.26 -0.06 -0.22 0.06] \n", | |
" [ 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.26 -0.08 -0.15] \n", | |
" [ 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.24 0.07] \n", | |
" [ 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.11] \n", | |
"\n" | |
] | |
} | |
], | |
"source": [ | |
"AP([U*100], ['[U]'])" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"2b.\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 8, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"F = np.array([0, 0, 0, 0, 0, -100,0,0,0,0,0])\n", | |
"b_steel = F * (1/((200*10**3)*0.1))\n", | |
"b_al = F * (1/((70*10**3)*0.1))" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 9, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"def solveLU(L,U,b):\n", | |
" '''solveLU: solve for x when LUx = b\n", | |
" x = solveLU(L,U,b): solves for x given the lower and upper \n", | |
" triangular matrix storage\n", | |
" uses forward substitution for \n", | |
" 1. Ly = b\n", | |
" then backward substitution for\n", | |
" 2. Ux = y\n", | |
" \n", | |
" Arguments:\n", | |
" ----------\n", | |
" L = Lower triangular matrix\n", | |
" U = Upper triangular matrix\n", | |
" b = output vector\n", | |
" \n", | |
" returns:\n", | |
" ---------\n", | |
" x = solution of LUx=b '''\n", | |
" n=len(b)\n", | |
" x=np.zeros(n)\n", | |
" y=np.zeros(n)\n", | |
" \n", | |
" # forward substitution\n", | |
" for k in range(0,n):\n", | |
" y[k] = b[k] - L[k,0:k]@y[0:k]\n", | |
" # backward substitution\n", | |
" for k in range(n-1,-1,-1):\n", | |
" x[k] = (y[k] - U[k,k+1:n]@x[k+1:n])/U[k,k]\n", | |
" return x" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 10, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
" [ 5.57] \n", | |
" [ -6.07] \n", | |
" [ 1.24] \n", | |
" [ -11.43] \n", | |
" [ 3.09] \n", | |
" [ -15.36]\n", | |
" [ 4.95] \n", | |
" [ -11.43] \n", | |
" [ 0.62] \n", | |
" [ -6.07] \n", | |
" [ 6.19] \n", | |
"\n" | |
] | |
} | |
], | |
"source": [ | |
"sol_al = solveLU(L,U,b_al)\n", | |
"AP([sol_al], [\"[sol_al]\"])" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 11, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
" [ 1.95] \n", | |
" [ -2.13] \n", | |
" [ 0.43] \n", | |
" [ -4.00] \n", | |
" [ 1.08] \n", | |
" [ -5.38]\n", | |
" [ 1.73] \n", | |
" [ -4.00] \n", | |
" [ 0.22] \n", | |
" [ -2.13] \n", | |
" [ 2.17] \n", | |
"\n" | |
] | |
} | |
], | |
"source": [ | |
"sol_steel = solveLU(L,U,b_steel)\n", | |
"\n", | |
"AP([sol_steel], [\"[sol_steel]\"])" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 12, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"(11,)" | |
] | |
}, | |
"execution_count": 12, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"sol_steel.shape" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"2c.\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 13, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"# Full displacement (full meaning includes fixed nodes)\n", | |
"full_st = np.zeros(14)\n", | |
"full_st[2:13] = sol_steel\n", | |
"\n", | |
"full_al = np.zeros(14)\n", | |
"full_al[2:13] = sol_al" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 14, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"text/plain": [ | |
"array([ 0. , 0. , 1.94855716, -2.125 , 0.4330127 ,\n", | |
" -4. , 1.08253175, -5.375 , 1.73205081, -4. ,\n", | |
" 0.21650635, -2.125 , 2.16506351, 0. ])" | |
] | |
}, | |
"execution_count": 14, | |
"metadata": {}, | |
"output_type": "execute_result" | |
} | |
], | |
"source": [ | |
"full_st" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 15, | |
"metadata": {}, | |
"outputs": [], | |
"source": [ | |
"# reaction forces\n", | |
"F_st = K @ full_st\n", | |
"F_al = K @ full_al" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 16, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
" [ -0.00] \n", | |
" [ 2.50] \n", | |
" [ 0.00] \n", | |
" [ 0.00] \n", | |
" [ 0.00] \n", | |
" [ -0.00] \n", | |
" [ -0.00]\n", | |
" [ -5.00] \n", | |
" [ -0.00] \n", | |
" [ -0.00] \n", | |
" [ 0.00] \n", | |
" [ 0.00] \n", | |
" [ 0.00] \n", | |
" [ 2.50] \n", | |
"\n" | |
] | |
} | |
], | |
"source": [ | |
"AP([F_st*1000], ['[F_st]'])" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"2d.\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 17, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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97J69eq189BDD60aS9WmTZvKk08+OcoO5XWzZMmS7F69eu045phjSkNlqampnHXWWYUrVqxoVVhYWCM3GT16dI3vy2uvvdZ6165dKWPHjt0U6zVefPHFnLS0NHfRRRdtDW/fGWecUeQ/RzZA7969d77xxhs5EyZM6LJw4cLWJSUlDTrmq7brRPeZWYGZXWZmtS7wY2Y/NrOZwCqgeYxKTSLOOR4eM4axYWWZM2dC6wa55JzcUlKqF/QEegI/ovYFSj/88ENeffXVqq8vPOcccqZMqa7QrZu3sW9ju+oq7/b662uvF7R582rsa/gs3pIEsRYovfrqq2suPPr44973L3xwdzOYUVibyZMnk5uby7+AGheym9EYtWQ0YcKELnfffXfnUaNGFT711FOfL168+NNZs2Z9AVBSUlLj/292dnZFRkZGjYFOHTt2LAdYs2ZNjU9snTt3rjHzoWvXruUA3333XZ0/2W3evDl17dq16enp6ceHHyeddNKRofMAGzduTGvfvv0eMy06dOiwz7Mvtm3b1iLa4zt27FjunKt67ZDu3bvXqLtp06ZUgIMOOijmIPpNmzallpeXW05OznHh7evSpUsvgC1btqQCTJ06df111123duHChTnDhg07vF27dj88++yz89etW1en4VR7U9uT/AC4Dvgd8Ccz+xQoADYBpUAu0APoA+QA/wQGO+feaYjApOH8/bnnGBP2iXf7wIFkh025b/YmTfJ6nnbswICH8QbBn3POOSyP3DMOrxcrJCMjg79UVtYcnB3Eyu51cdNN3hT/eOvYEcaO9faKxEtae/sLlN566601qhYVFXF/2Krxffv2pX/v3t7efCGDBjX7TY9DC5Rec801TARGmtHeOSgsjHdoUosFCxbknXXWWVvuuuuudaGy559/PupYn+3bt6eWlpZaeKK1fv36NNgzmVi7dm0aUPVH59tvv00D6NKlS51n7uXl5e3u0qVL2ezZs7+Idj7Uc9WhQ4fyTZs27bFR5saNG6Nsnlk3OTk5u6M9fv369WlmRvv27WvMPvKHZlTp0KFDBcDXX3+d3rdv36gL8uXl5VVkZGS4V155ZUW086HELSMjw02ZMmX9lClT1n/99depc+fObXvLLbd0u/TSS1NefPHFL/e1jVWxxzrhnNvlnPsd0AW4AFgKHA9cAlwNnIb3QfWPwNHOuYFKsBJPRUUFH48dW9W9WJqaSvZf/9o0N4DeVykp8JvfVH15JHAi0RcojVx49K7x42kRvunzwIENvz9hfXz0UfxeO9x991X1lBrwODB16tQ9FijdY+HRp5/21jALzfA0a/a9WCGhBUq/B65x2scwGZSUlKSkpqbW+GE9/PDD7aLV3b17N7NmzaqxuN3TTz+d26lTp7KDDz64Rk/Ok08+mRv+9aOPPpqbkpJC//79d1JHQ4YM2bZ+/fq07Ozsyp/85Ce7Io9OnTpVAPTt23dnQUFB1qpVq6qSoqKiopRXX301J/az165fv37bCwoKslauXFnV81ZRUcH8+fNzjzzyyF25ubm17ss1aNCgHa1ataqcOXNm+1h1hg8fXlRaWmpbt25tEa19+fn5e/Skde/eveKaa67Z3K9fv6KVK1e23Nf2hdtrd5jzttGZ4x+SZOY88ACXh63jVD5xIhkHHRTHiBLUddfBlClQVIQBfwGOwFto9PTTT6+qdmnYchd5eXlMeO216v0JW7SAuXMbNew9ZGbuvU5jSEmBGTNwF16IAR2BG8rK+NWvfsXf/vY3IMbCo+3agX8egMGDoWvXxo09QYUWKP35z3/O48CvzDgpPNnaz/0ipeENGDBg27x589rdeeedxYcddljp3Llz277//vtRx2lkZWVV3nrrrV03b96cevjhh5fOnj07b8mSJW2mT5++OiViBvjrr7+eM27cuK7Dhg0revfdd1vdc889nc8888wtxx57bGm0545m3LhxhY899tgBQ4cOPezyyy/fcNxxx+0qLS21VatWZbz44ottX3755S+ys7Mrb7755g2zZs1qP2TIkMMmTpy4NjS7MPLSZn1MnDhxw1NPPdUu9Jw5OTm7H3jggfZr1qzJnDNnzud7e3xubm7lpEmTvp00aVL3oUOHHnLeeedtadOmTeWyZctaZmZmukmTJm0cMWLE9hEjRhReeOGFh4wbN27DCSecsDMlJYUvv/wy/eWXX865++67vz322GNLTz755EN69uxZfPzxx+/Ky8ureP/991u9+eabbc4777zNe4ujLhrkmqMkpiIg9957Cb2jN3XoQPuwHhsJk5ICv/td1bimw4BBwGv+AqXXX389d911F5s2VY+zXPDLX2J3h+0uF+T+hMnogguw226Dzz4DvM2j82bPZu3vf0/nzp33XHj0kUdgzJia64ypF6uG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HX2kbr74QjvkiEjToiRLpI7OPNO77dcvvnE0ZRs3Vs84XLYsvrGIiOwvJVkidfTEE97tddfFN46mrHVrb+V3gGeeiW8sIiL7S0mWSB2lpsKIEdC3b7wjadp694YHH4SionhHIiKyf1LjHYBIMnn++XhH0DyMHRvvCERE9p96skREREQCoCRLREREJABKskREREQCoCRLREREJABKskREREQCoCRLREREJABKskREREQCoCRLREREJABKskREREQCoCRLREREJABKskREREQCoCRLREREJABKskREREQCoCRLREREJABKskREREQCoCRLREREJABKskREREQCoCRLREREJABKskREREQCoCRLREREJABKskREREQCoCRLREREJABKskREREQCoCRLREREJABKskREREQCoCRLREREJABKskREREQCoCRLREREJABKskREREQCoCRLREREJABKskREREQCkPBJlpkdZmZ/NLMPzWyHma0zs+fMrFeM+mPMbIWZlZrZSjO7LEa9n5nZB2ZWYmZrzGyymbUItjUiIiLSXCR8kgUMAQYCs4DTgMuB9sC/zOz48IpmNgZ4EHgGGAY8DdxvZuMj6g3167wHnAL8EZgMTA20JSIiItJsmHMu3jHUyswOALa4sEDNLAdYDTzvnLvIL0sF1gJ/d85dHFb3YeB0oJNzrtwv+wAocs4NCKt3C16i1d05t762mPr06eOWLl3aQC0UEWkezOx951yfeMch0lgSvifLObfZRWSCzrltwGdAl7Di/8br4Xo84ikeA9oB/QHMrBvwwxj10vB6tkRERET2S8InWdGYWR5wDPBpWPHR/u3HEdWX+7dH1VbPOfcVsCusnoiIiMg+S8okC/gTYMC0sLI8/3ZrRN3CiPOx6oXK8qKUY2ZjzWypmS3dtGlT/SMWERGRZqXRkywz+6mZuToci2M8fiJwHnCFc25V+Cn/dm+DzGqrZ1HKvMrOzXTO9XHO9Wnfvv1eXkJERESau9Q4vOY7wJF1qLcrssBfjmEqMNk593DE6fAeq3Vh5XkR5yN7tsK1DTsvIiIiss8aPclyzu0CVtT3cWZ2IXA/cLdzbkqUKqGxV0dTM8kKjbH6JEq9JWHPnw+0CqsnIiIiss+SYkyWmZ0J/BV4yDl3XYxqS4DNwPkR5Rfg9U69DeCc+xooiFGvHPh7A4UtIiIi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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"import matplotlib.pyplot as plt\n", | |
"from matplotlib import rcParams\n", | |
"rcParams['font.family'] = 'sans'\n", | |
"rcParams['font.size'] = 16\n", | |
"rcParams['lines.linewidth'] = 3\n", | |
"\n", | |
"scale = 5\n", | |
"l=300 # mm\n", | |
"# nodes = np.array([[1,0,0],[2,0.5,3**0.5/2],[3,1,0],[4,1.5,3**0.5/2],[5,2,0],[6,2.5,3**0.5/2],[7,3,0]])\n", | |
"# nodes[:,1:3]*=l\n", | |
"# elems = np.array([[1,1,2],[2,2,3],[3,1,3],[4,2,4],[5,3,4],[6,3,5],[7,4,5],[8,4,6],[9,5,6],[10,5,7],[11,6,7]])\n", | |
"\n", | |
"\n", | |
"ix = 2*np.block([[np.arange(0,5)],[np.arange(1,6)],[np.arange(2,7)],[np.arange(0,5)]])\n", | |
"iy = ix+1\n", | |
"\n", | |
"r = np.block([n[1:3] for n in nodes]) # Location of nodes (drops column 0, node index)\n", | |
"r_d = r + full_st*scale\n", | |
"\n", | |
"plt.plot(r[ix],r[iy],'-',color='k')\n", | |
"# plt.plot(r[ix],r[iy],'o',color='b')\n", | |
"# plt.plot(r[0],r[1],'^',color='r',markersize=20)\n", | |
"# plt.plot(r[0],r[1],'>',color='k',markersize=20)\n", | |
"# plt.plot(r[-2],r[-1],'^',color='r',markersize=20)\n", | |
"plt.quiver(r[ix],r[iy],(full_st*scale)[ix],(full_st*scale)[iy],color='b',label='displacements')\n", | |
"plt.quiver(r[ix],r[iy],F_al[ix],F_al[iy],color=(1,0,0,1),label='applied forces')\n", | |
"\n", | |
"plt.plot(r_d[ix],r_d[iy],'-',color='r')\n", | |
"# plt.plot(r_d[ix],r_d[iy],'o',color='b')\n", | |
"# # plt.plot(r_d[0],r_d[1],'^',color='r',markersize=20)\n", | |
"# plt.plot(r_d[0],r_d[1],'>',color='k',markersize=20)\n", | |
"# plt.plot(r_d[-2],r_d[-1],'^',color='r',markersize=20)\n", | |
"\n", | |
"# label the nodes\n", | |
"for n in nodes:\n", | |
" if n[2]>0.8*l: offset=0.1\n", | |
" else: offset=-l/5\n", | |
"# plt.text(n[1]-l/3,n[2]+offset,'n {}'.format(int(n[0])),color='b')\n", | |
"# label the elements\n", | |
"for e in elems:\n", | |
" n1=nodes[e[1]-1]\n", | |
" n2=nodes[e[2]-1]\n", | |
" x=np.mean([n2[1],n1[1]])\n", | |
" y=np.mean([n2[2],n1[2]])\n", | |
" # ----------------->need elem labels<-----------------\n", | |
"# plt.text(x-l/5,y-l/10,'el {}'.format(int(e[0])),color='r')\n", | |
"plt.title('Steel Deformation scale = 5.0x')\n", | |
"plt.xlabel('x (mm)')\n", | |
"plt.ylabel('y (mm)')\n", | |
"plt.legend(loc='center left', bbox_to_anchor=(1,0.5));\n", | |
"plt.axis(l*np.array([-0.5,3.5,-1,1.5]));" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 18, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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Tz311D1ZWVmFhw4dWuCcWzBu3Lh1gLvyyiu3BZe79957NyUkJLicnJxlzrkFK1euXAq4cePGrQt+jrZt2xYGHr/88strATdjxoyVoddKSkrybdq0aYlzbsFtt922OSkpyfftt98uDZTZs2fPohYtWhQTwWszfPjwHcHP65xbcOONN25JTEx0y5YtWxbYV1xcvKBjx44FPXr0OBDYN3r06FzAjR07dmPw+Tt27FjUpEmTQ+ecc86uyp7373//+0rAjR8/fl3w/gkTJqwF3BdffLHcObdg8ODBu6u6TiSb//c27O90pfcozOzimgZsZpZlZko3HIMCiUevA8plEJowoV7dYolY8JIrRUV8eMYZpWOpIklQOnLkyJonHr3++vKL+k6aVLvJXgPjy+66q/auGYm//c1ba9Ev6fLLeSwo+/qaNWuYPHlypafXOPEowO7d8MUXZY8Pc9JCPAiboLSoyMv4fuutZQU3b4af/7wssa3UuYKCArvvvvvadO7cuWejRo2yU1JSTh46dOjxAMuXLy83BTkxMZHrrrtud/C+yy67bNfmzZtT1q1bVy69/8iRI8sNxrv22mt3+Xw+5s6dmxZp3WbNmpXetm3borPPPnt/cXExgW3YsGF7S0pKbM6cOWkAX331VVqfPn0OdOvWrXQsVfPmzX1DhgwJs0J5ZObNm9esT58++0866aTCwL6kpCRGjBixc+XKlU127txZLjYZOXJkudfl008/bXrw4MGEm266aXtlz/HRRx+lJycnu2uvvXZXcPsuuuiivf5rNAPIzs4+8M9//jP99ttvbzdr1qymBQUFtTrmq6qBIL8zsxwzu9nMMqu6iJmdbmYTgdVA/K1lUc855yUePcE5yg2vvu66uE7aeETat/cypful/+EP5QKrqhKULl26lNmzZ5c+jijx6JIl8Je/lD0+5ZTaz0V2553e16CA5aho2rT8GLAdO7h77Vp+FFjcGC8lQWUJSkePHl2zxKMA99xTFkwkJtbLW4XBghOUrlmzhldeecU7EJrR/4MP6m8Kljh0++23t3vuuefaXnbZZTvffvvt7+bMmbPi9ddfXwNQUFBQ7vO3WbNmJampqeUi5DZt2hQDbNiwodytubZt25bLV9m+fftigB9++KHaW3gBeXl5Sbm5uSkpKSknB2+DBw/uETgOsG3btuRWrVpVyI/ZunXrw86ZuWfPnsRw57dp06bYOVf63AEdOnQoV3b79u1JAB07dqx0EP327duTiouLLT09vV9w+9q1a9cHYMeOHUkATz755JZ77rknd9asWelDhw49vmXLln0vvfTSTps3b45oOFV1qrrIccA9wFhgvJmtAHKA7UAhkAF0AfoD6cC/gHOcc1/WRsWk9syYMYN5n37Kf4DSf3N69ND072ef9XIPAWzbxh+uvppp06ZRWOj9c3XFFVewfPnyCqeNHDmy9PuIE49ecEHZ98nJEJSmoNbcd583264u/OIXXrLXQFqK117jzd/9jiH+BbgDCUofeeSRcqft3buXCRMmlD6uNvEoeKkLgse/nXtuuZ60+iiQoPQufy/l2LFjufbaa8kIV/jXv4bTToMf//io1lEqeu+99zJHjBix47e//e3mwL4PPvgg7Fifffv2JRUWFlpwoLVly5ZkqBhM5ObmJgOlA0I3bdqUDNCuXbuIZ+5lZmYeateuXdGbb765JtzxQM9V69ati7dv315hocxt27aFWTwzMunp6YfCnb9ly5ZkM6NVq1blZh/5h2aUat26dQnAxo0bUwYMGBA2IV9mZmZJamqq+/jjj8MmkwsEbqmpqe6JJ57Y8sQTT2zZuHFj0rRp01o8/PDDx95www0JH3300dpw59ZEpT1ZzrmDzrmxQDvgZ8AC4GTgemA0cCGQCIwDejrnzlSAFXsCiUfHA6WT+hs39vJhpUXcs1w/nXNOuTX/Uh94wJsm7xcuQWlo4tExY8ZUn3j0gQcgaKFjnnoKMqvsHD58y5ZF57qRmDGjLJWEc5z17LPlEpQ++eSTFRKU1jjxKMCrr0J+0Ez08eMrL1uPhCYofeKJJ8oXCCyIXVLi9ZIqvUOdKygoSEhKSioXIEyaNKlluLKHDh3i9ddfL5fcburUqRlZWVlFnTt3LteTM3ny5HLx9Z///OeMhIQEBg0adIAInXvuuXu2bNmS3KxZM99PfvKTg6FbVlZWCcCAAQMO5OTkpK1evbo0KNq7d2/C7Nmz0yu/etUGDhy4LycnJ23VqlWlPW8lJSW8++67GT169DiYkZFR5ZpRZ5111v4mTZr4Jk6c2KqyMsOGDdtbWFhou3btSgzXvk6dOlXoSevQoUPJXXfdlTdw4MC9q1atqpWEkdV2hzlvGZ0p/k3izB8mTyZ7xQrKpYUcPz76eZTixZ13wpgx3vdLlvDQBx/w0ksvsXPnTsBLNDp8+PDS4jfccEPp95mZmYwJnFuZjRvhmWfKHnfrBnffXWvVr6Aue3TatoWHHvIW4wZYt45PfvUrsvy9gUVFRfziF7/gjTfeAA4j8WhA8KzDE06Arl1rqwUxLZCgNJAmZPz48dzy9NOUzmd/7jm49FJv3N+GDd4YwHfeKVuKR466M844Y88777zT8umnn87v3r174bRp01osXLgwbGqAtLQ03yOPPNI+Ly8v6fjjjy988803M+fNm9f8pZdeWh+ae++zzz5LHzVqVPuhQ4funT9/fpPnn3++7cUXX7yjd+/eheGuHc6oUaN2/uUvfznmvPPO637LLbds7dev38HCwkJbvXp16kcffdRi5syZa5o1a+Z74IEHtr7++uutzj333O73339/bmB2YeitzZq4//77t7799tstA9dMT08/9Oqrr7basGFDoylTpnxX3fkZGRm+MWPGbBozZkyH8847r+tVV121o3nz5r5FixY1btSokRszZsy2Cy64YN8FF1yw85prruk6atSoraeccsqBhIQE1q5dmzJz5sz05557blPv3r0LhwwZ0rVXr175J5988sHMzMyShQsXNvn888+bX3XVVXnV1SMiVc300Bbfswv3gBvYooXbFzxL5uqrnfP56rqGsePQIedSUspen0svdZMnTy430+23v/2tc865Z555ptz+KVOmVH/9nj3Lrm3m3OrVUW5QDOjYsazNSUnu0jPOKH3NzMz98MMPzjnn+vbtW7o/OTnZ7du3r/prz5tXftbXO+9Ety0xxufzuVNPPbX0dbvilFPKXosVK7zXI/j1GTeurqtcDoc7uzBOt9zc3CXnn3/+zmbNmpU0a9as5MILL9wxZ86cbwgz869169ZFH3/88YqePXseSElJ8WVlZRU+9thj5WbVBWYXzpgxY+VZZ521q3HjxoeaN29e8rOf/Wzbvn37FgbKRTK70Dm34MCBAwtHjx6d26lTp/zk5GRf8+bNS3r27Hlg9OjRuUVFRaXlPv/882+ys7P3paSk+Fq1alV0zz33/HDnnXfmcpizC503I2/ZkCFDdjVt2rQkJSXF17t37/1Tp079NrhMYHZhcF2Ct0mTJq3p1avX/tTUVF9aWtqhXr167X/zzTe/CxwvKSlZMHbs2I3du3c/mJKS4mvatGlJ9+7dD44aNWpL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wIABdV2T+i07G157DfbureuaiIgcGY3JEqmBDz6o6xo0DDfdVNc1EBE5curJEhEREYkCBVkiIiIiUaAgS0RERCQKFGSJiIiIRIGCLBEREZEoUJAlIiIiEgUKskRERESiQEGWiIiISBQoyBIRERGJAgVZIiIiIlGgIEtEREQkChRkiYiIiESBgiwRERGRKFCQJSIiIhIFCrJEREREokBBloiIiEgUKMgSERERiQIFWSIiIiJRoCBLREREJAoUZImIiIhEgYIsERERkShQkCUiIiISBQqyRERERKJAQZaIiIhIFCjIEhEREYkCBVkiIiIiUaAgS0RERCQKFGSJiIiIRIGCLBEREZEoUJAlIiIiEgUKskRERESiIOaDLDPrbmbjzGypme03s81m9r6Z9amk/I1mttLMCs1slZndXEm5/zazxWZWYGYbzOxBM0uMbmtERESkoYj5IAs4FzgTeB24ELgFaAX828xODi5oZjcCrwHTgaHAVGCCmf0ypNx5/jJfAT8FxgEPAk9GtSUiIiLSYJhzrq7rUCUzOwbY4YIqambpwHrgA+fctf59SUAu8Hfn3HVBZScBw4Es51yxf99iYK9z7oygcg/jBVodnHNbqqpT//793YIFC2qphSIiDYOZLXTO9a/reogcLTHfk+Wcy3MhkaBzbg/wLdAuaPepeD1cfw25xF+AlsAgADM7FuhbSblkvJ4tERERkSMS80FWOGaWCZwErAja3dP/9euQ4sv9X0+sqpxzbh1wMKiciIiIyGGLyyALGA8Y8GLQvkz/110hZXeGHK+sXGBfZpj9mNlNZrbAzBZs37695jUWERGRBuWoB1lmdraZuQi2OZWcfz9wFXCbc2518CH/1+oGmVVVzsLs8wo7N9E51985179Vq1bVPIWIiIg0dEl18JxfAj0iKHcwdIc/HcOTwIPOuUkhh4N7rDYH7c8MOR7asxWsRdBxERERkcN21IMs59xBYGVNzzOza4AJwHPOuSfCFAmMvepJ+SArMMbqmzDl5gVdvxPQJKiciIiIyGGLizFZZnYx8Efg/5xz91RSbB6QB1wdsv9neL1TXwA45zYCOZWUKwb+XkvVFhERkQasLm4X1oiZ/QR4C1gK/MnMTgk6XOicWwzgnCs2s4fwko/+AHwCnAVcD9zunCsKOu8B4EMze81/7X54ObLGVZcjS0RERCQSMR9k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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"import matplotlib.pyplot as plt\n", | |
"from matplotlib import rcParams\n", | |
"rcParams['font.family'] = 'sans'\n", | |
"rcParams['font.size'] = 16\n", | |
"rcParams['lines.linewidth'] = 3\n", | |
"\n", | |
"scale = 5\n", | |
"l=300 # mm\n", | |
"# nodes = np.array([[1,0,0],[2,0.5,3**0.5/2],[3,1,0],[4,1.5,3**0.5/2],[5,2,0],[6,2.5,3**0.5/2],[7,3,0]])\n", | |
"# nodes[:,1:3]*=l\n", | |
"# elems = np.array([[1,1,2],[2,2,3],[3,1,3],[4,2,4],[5,3,4],[6,3,5],[7,4,5],[8,4,6],[9,5,6],[10,5,7],[11,6,7]])\n", | |
"\n", | |
"\n", | |
"ix = 2*np.block([[np.arange(0,5)],[np.arange(1,6)],[np.arange(2,7)],[np.arange(0,5)]])\n", | |
"iy = ix+1\n", | |
"\n", | |
"r = np.block([n[1:3] for n in nodes]) # Location of nodes (drops column 0, node index)\n", | |
"r_d = r + full_al*scale\n", | |
"\n", | |
"plt.plot(r[ix],r[iy],'-',color='k')\n", | |
"# plt.plot(r[ix],r[iy],'o',color='b')\n", | |
"# plt.plot(r[0],r[1],'^',color='r',markersize=20)\n", | |
"# plt.plot(r[0],r[1],'>',color='k',markersize=20)\n", | |
"# plt.plot(r[-2],r[-1],'^',color='r',markersize=20)\n", | |
"plt.quiver(r[ix],r[iy],(full_al*scale)[ix],(full_al*scale)[iy],color='b',label='displacements')\n", | |
"plt.quiver(r[ix],r[iy],F_al[ix],F_al[iy],color=(1,0,0,1),label='applied forces')\n", | |
"\n", | |
"plt.plot(r_d[ix],r_d[iy],'-',color='r')\n", | |
"# plt.plot(r_d[ix],r_d[iy],'o',color='b')\n", | |
"# # plt.plot(r_d[0],r_d[1],'^',color='r',markersize=20)\n", | |
"# plt.plot(r_d[0],r_d[1],'>',color='k',markersize=20)\n", | |
"# plt.plot(r_d[-2],r_d[-1],'^',color='r',markersize=20)\n", | |
"\n", | |
"# label the nodes\n", | |
"for n in nodes:\n", | |
" if n[2]>0.8*l: offset=0.1\n", | |
" else: offset=-l/5\n", | |
"# plt.text(n[1]-l/3,n[2]+offset,'n {}'.format(int(n[0])),color='b')\n", | |
"# label the elements\n", | |
"for e in elems:\n", | |
" n1=nodes[e[1]-1]\n", | |
" n2=nodes[e[2]-1]\n", | |
" x=np.mean([n2[1],n1[1]])\n", | |
" y=np.mean([n2[2],n1[2]])\n", | |
" # ----------------->need elem labels<-----------------\n", | |
"# plt.text(x-l/5,y-l/10,'el {}'.format(int(e[0])),color='r')\n", | |
"plt.title('Aluminum Deformation scale = 5.0x')\n", | |
"plt.xlabel('x (mm)')\n", | |
"plt.ylabel('y (mm)')\n", | |
"plt.legend(loc='center left', bbox_to_anchor=(1,0.5));\n", | |
"plt.axis(l*np.array([-0.5,3.5,-1,1.5]));" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"### 3. Determine cross-sectional area\n", | |
"\n", | |
"a. Using aluminum, what is the minimum cross-sectional area to keep total y-deflections $<0.2~mm$?\n", | |
"\n", | |
"b. Using steel, what is the minimum cross-sectional area to keep total y-deflections $<0.2~mm$?\n", | |
"\n", | |
"c. What are the weights of the aluminum and steel trusses with the chosed cross-sectional areas?\n", | |
"\n", | |
"d. The current price (2020/03) of [aluminum](https://tradingeconomics.com/commodity/aluminum) is 1545 dollars/Tonne and [steel](https://tradingeconomics.com/commodity/steel) is 476 dollars/Tonne [2]. Which material is cheaper to create the truss?" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"#\n", | |
"Problem 3." | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"3a.\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 33, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"The minimum steel cross-sectional area to have <0.2mm y-deflection is: 8.812500275317783\n", | |
"The y-deflection would be: 0.19999999375165334\n", | |
"The y-deflection for steel with cross-sectional area 8.8125 mm^2 is: 0.20000000000000004\n" | |
] | |
} | |
], | |
"source": [ | |
"cs_v = np.linspace(1,10,10000)\n", | |
"y_d_list = []\n", | |
"for cs in cs_v:\n", | |
" F = np.array([0, 0, 0, 0, 0, -100,0,0,0,0,0])\n", | |
" b_steel = F * (1/((200*10**3)*cs))\n", | |
" b_al = F * (1/((70*10**3)*cs))\n", | |
"\n", | |
" sol_st = solveLU(L,U,b_steel)\n", | |
" sol_al = solveLU(L,U,b_al)\n", | |
" if np.abs(sol_st[1::2].sum()) < 0.2:\n", | |
" #print(cs)\n", | |
" #print(np.abs(sol_st[1::2].sum()))\n", | |
" new_upper = cs + .1\n", | |
" new_lower = cs - .1\n", | |
" break\n", | |
" \n", | |
"cs_v = np.linspace(new_lower,new_upper,100000)\n", | |
"y_d_list = []\n", | |
"for cs in cs_v:\n", | |
" F = np.array([0, 0, 0, 0, 0, -100,0,0,0,0,0])\n", | |
" b_steel = F * (1/((200*10**3)*cs))\n", | |
" b_al = F * (1/((70*10**3)*cs))\n", | |
"\n", | |
" sol_st = solveLU(L,U,b_steel)\n", | |
" sol_al = solveLU(L,U,b_al)\n", | |
" if np.abs(sol_st[1::2].sum()) < 0.2:\n", | |
" print(f\"The minimum steel cross-sectional area to have <0.2mm y-deflection is: {cs}\")\n", | |
" print(f\"The y-deflection would be: {np.abs(sol_st[1::2].sum())}\")\n", | |
" new_upper = cs + .1\n", | |
" new_lower = cs - .1\n", | |
" break\n", | |
"\n", | |
"cs = 8.8125\n", | |
"F = np.array([0, 0, 0, 0, 0, -100,0,0,0,0,0])\n", | |
"b_steel = F * (1/((200*10**3)*cs))\n", | |
"b_al = F * (1/((70*10**3)*cs))\n", | |
"\n", | |
"sol_st = solveLU(L,U,b_steel)\n", | |
"sol_al = solveLU(L,U,b_al)\n", | |
"print(f\"The y-deflection for steel with cross-sectional area 8.8125 mm^2 is: {np.abs(sol_st[1::2].sum())}\")\n" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"3b.\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 31, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"The minimum aluminum cross-sectional area to have <0.2mm y-deflection is: 25.17858630031445\n", | |
"The y-deflection would be: 0.19999988186991244\n" | |
] | |
} | |
], | |
"source": [ | |
"cs_v = np.linspace(10,30,10000)\n", | |
"y_d_list = []\n", | |
"for cs in cs_v:\n", | |
" F = np.array([0, 0, 0, 0, 0, -100,0,0,0,0,0])\n", | |
" b_steel = F * (1/((200*10**3)*cs))\n", | |
" b_al = F * (1/((70*10**3)*cs))\n", | |
"\n", | |
" sol_st = solveLU(L,U,b_steel)\n", | |
" sol_al = solveLU(L,U,b_al)\n", | |
" if np.abs(sol_al[1::2].sum()) < 0.2:\n", | |
"# print(cs)\n", | |
"# print(np.abs(sol_al[1::2].sum()))\n", | |
" new_upper = cs * 1.1\n", | |
" new_lower = cs * .9\n", | |
" break\n", | |
" \n", | |
"cs_v = np.linspace(new_lower,new_upper,100000)\n", | |
"y_d_list = []\n", | |
"for cs in cs_v:\n", | |
" F = np.array([0, 0, 0, 0, 0, -100,0,0,0,0,0])\n", | |
" b_steel = F * (1/((200*10**3)*cs))\n", | |
" b_al = F * (1/((70*10**3)*cs))\n", | |
"\n", | |
" sol_st = solveLU(L,U,b_steel)\n", | |
" sol_al = solveLU(L,U,b_al)\n", | |
" if np.abs(sol_al[1::2].sum()) < 0.2:\n", | |
" print(f\"The minimum aluminum cross-sectional area to have <0.2mm y-deflection is: {cs}\")\n", | |
" print(f\"The y-deflection would be: {np.abs(sol_al[1::2].sum())}\")\n", | |
" new_upper = cs * 1.1\n", | |
" new_lower = cs * .9\n", | |
" break \n" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"3c.\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 22, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"Total weight of steel: 0.23265000726838944 kg\n", | |
"Total weight of aluminum: 0.22434120393580176 kg\n" | |
] | |
} | |
], | |
"source": [ | |
"# steel = 8000/cu m\n", | |
"# al = 2700/ cu m\n", | |
"cs_st = 8.812500275317783\n", | |
"cs_al = 25.17858630031445\n", | |
"total_len = 11 * 300\n", | |
"total_vol_st = total_len * cs_st\n", | |
"total_vol_al = total_len * cs_al\n", | |
"\n", | |
"d_st = 8000 / 1000000000\n", | |
"d_al = 2700 / 1000000000\n", | |
"\n", | |
"w_st = d_st * total_vol_st\n", | |
"w_al = d_al * total_vol_al\n", | |
"\n", | |
"print(f\"Total weight of steel: {w_st} kg\")\n", | |
"print(f\"Total weight of aluminum: {w_al} kg\")\n", | |
"\n", | |
"\n" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"3d.\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 23, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"The cost of steel is: $0.11074140345975338\n", | |
"The cost of aluminum is: $0.3466071600808137\n", | |
"Steel is a cheaper material to use for the truss.\n" | |
] | |
} | |
], | |
"source": [ | |
"c_st = w_st /1000 * 476\n", | |
"c_al = w_al /1000 * 1545\n", | |
"\n", | |
"print(f\"The cost of steel is: ${c_st}\")\n", | |
"print(f\"The cost of aluminum is: ${c_al}\")\n", | |
"\n", | |
"print(\"Steel is a cheaper material to use for the truss.\")" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"### 4. Future Predictions using past data\n", | |
"\n", | |
"The data from the price of aluminum and steel are in the data files `../data/al_prices.csv` and `../data/steel_price.csv`. If you're going to produce these supports for 5 years, how would you use the price history of steel and aluminum to compare how much manufacturing will cost?\n", | |
"\n", | |
"a. Separate the aluminum and steel data points into training and testing data (70-30%-split)\n", | |
"\n", | |
"b. Fit the training data to polynomial functions of order n. _Choose the highest order._\n", | |
"\n", | |
"c. Plot the error between your model and the training data and the error between your model and you testing data as a function of the polynomial function order, n. [Create the training-testing curves](../notebooks/03_Linear-regression-algebra.ipynb)\n", | |
"\n", | |
"d. Choose a polynomial function to predict the price of aluminum and steel in the year 2025. \n", | |
"\n", | |
"e. Based upon your price model would you change your answer in __3.b__?" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"#\n", | |
"Problem 4." | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"4a.\n" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"4b.\n" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"4c.\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 24, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
}, | |
{ | |
"data": { | |
"image/png": "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NGNmG51z49pSRlctFZG2UcugV1IYiEjbKAx6JYWBiLRN1AFkzSbyO4WBiLSNWga9ksJARNqmpTCI88ko0jqFgYi0TbQwqK+BWp1D6mcKAxFpm5bGB9RV5GsKAxFpm5Y+9DWI7GsKAxFpm7APfWthufiNwkBE2ia0ZRB632N1E/mawiDOLFu2jEWLFvVY+YbbTDbciaw3eeihh8LuktbZ3njjDebPn099fXtvGe4ToR/62UdEXy6+ozCIMz0dBr1Zd4TBggULFAbiSwoD6VbOOaqrq6Ouq6mpoaMXTvT9XcTiXW0V1AWPX0IyZAxoWqcw8DWFQRy59tprefrpp9m1axdmhpmFXW9/+/btXHzxxeTk5JCenk5hYSF/+ctfPJWvrKxkzpw5jBkzhszMTAYPHsyFF17Itm3b2l3fl156icLCQjIyMsjJyeGSSy5pdn/f/Px8rr76ap566ilGjRpFSkoKq1atoqioCDNj8eLF3HbbbRxxxBGkpqayb98+AN59912mTJlCZmYmffr0YfLkybz77rvN/l5Dhw5l3bp1nHHGGaSnp3PbbbdFrWt+fj6fffYZzz33XOPf5tprr21c/8EHHzBz5kxyc3NJT0/nzDPP5M033wzbx3vvvcd5551H//79ycjIYMSIEdx8880AzJ8/v/Em98nJyY2v0euEfuCnZkFayK1WNYDsa119p7OeMb9vT9egyfz9nje98847KS4u5r333mP58uVA4O5cALt37+ass84iKyuLRx55hL59+/Lb3/6WCy64gJUrVzJt2rRWy1dVVVFWVsYdd9zBkCFDKCkpYfHixRQWFrJt27YWb1jfkscee4ybbrqJ6667jnnz5lFWVsb8+fOZMGECmzdvDrv15erVq9m0aRN33XUXAwcODAu4e+65h9NOO40lS5ZQV1dHWloamzdvZsKECRQUFDSOYdx///1MmDCB9evXh93TYP/+/Vx++eXceuut3HvvvaSnp0et78svv8z06dM5+eSTmT9/PgB5eXkAvP/++5x99tmMHTuWJ554goyMDB577DGmTJnC3/72N0499VTKy8uZOnUq3/zmN1m6dClZWVkUFRXxt7/9DQjcR+LLL7/kySef5K233uq0+zLHndAP/NSswE/jOrUM/Kx3hoFPHXPMMeTl5ZGSkkJhYWHYukWLFlFaWsq6desYOXIkANOnT6egoIDbb7+dadOmtVq+b9++/O53v2v8va6ujqlTpzJo0CCef/555syZ47me5eXlzJ07l+uuu46nnnqqcfn48eM57rjjePLJJ/nJT37SuLy0tJSNGzeGBU7DAPWgQYN4+eWXw75F33333aSmpvLaa6813ontvPPOIz8/nwULFoT1+5eXl/Pss88ya9asVus8duxYUlNTGTBgQLO/zU9/+lOGDRvG66+/TkpKCgBTp05lzJgxLFy4kGXLlrFt2zZKS0v55S9/yUknndRYtqF1MXToUIYOHdr4d4i8xWivEdYyyA78RFsnvqNuIp9Yu3YthYWFjUEAkJiYyBVXXMGmTZs4cCB2E/0Pf/gD48ePJycnh6SkJPr06UN5eTnbt29vU13WrVvHgQMHuOqqq6itrW38GTp0KKNGjWLt2rVh2xcWFrbY8rjooouadaesXbuWGTNmhN2SMzs7m5kzZ7JmzZqwbZOSkpgxY0ab6h+qoqKCNWvWcMkll5CQkND4XpxzTJkypfG9HHvsseTk5HDjjTfy7LPP8sUXX7T7NX0tsptILYNeo3d+fWlD14xflJSUMHbs2GbLBw8ejHOO0tJSsrOzo5QMWLFiBZdddhmzZ8/mrrvuYsCAASQkJDB9+nQqKyvbVJevv/4agClTpkRdn5ubG/b7kCFDWtxXtHUlJSVRlw8ePJjS0tKwZQMHDuxQl0xJSQl1dXUsXLiQhQsXRt2mvr6evn37snr1ahYuXMjNN99MWVkZo0ePZsGCBXzrW99q9+v7TugHfppaBr1J7wyDXqhfv37s2bOn2fI9e/ZgZvTr16/V8i+88AIjR44Mu+dvTU0NJSUlba5L//79gcA5CaNHj262PnS8AGh1IDXautbea+T77OggbU5ODgkJCdxyyy18+9vfjrpNQkKgAX3KKafwpz/9idraWjZs2MB9993HpZdeygcffMCYMWM6VA/fqNSYQW+lMIgzqampVFRUNFs+YcIEHnroIYqKihoHYOvq6njxxRcZO3Zs4wdwS+UPHTrUrB/7mWeeoa6urs11POOMM8jKymLHjh3Mnj27zeVjmTBhAqtWraKsrKzxfZWVlbFixQomTpzY7v1G+9v06dOHs88+mw8++IBvfOMbjR/8rUlKSqKwsJCFCxeyfPlytm7dypgxYxoH6ysqKpoFYq/R6gCyZhP5mcIgzhQUFFBSUsKjjz7KuHHjSEtL48QTT2TOnDksXbqU8847jwULFpCdnc3ixYv5+OOPWbVqVczy559/PsuWLWPOnDnMmDGDjRs38vDDD4f1y3uVnZ3Ngw8+yC233EJxcTHTpk2jb9++7Nq1izVr1jBx4kSuvPLKdv8N7rzzTlauXMnkyZOZO3cuZsYDDzzAoUOHmDdvXrv3W1BQwJtvvsnKlSsZPHgwAwYMID8/n0WLFnHOOecwdepUvvvd7zJkyBD27t3L+++/T11dHffffz8rV65kyZIlXHTRRRx99NEcPHiQhx9+mKysLE4//fTG/QP8+te/Ztq0aSQmJjJuXJvuSR7/mo0ZhHQTVSoMfM05F9c/p556qmvNRx991Op6vykvL3eXX365y8nJcYAbPnx447pt27a5WbNmuezsbJeamurGjx/v/vznP3sqX1dX526//XY3ZMgQl56e7s455xz3/vvvu+HDh7vZs2c3lv/973/vALdz586YdV21apWbOHGiy8rKcmlpae6YY45x1113nduyZUvjNsOHD3dXXXVVs7I7d+50gHviiSei7nv9+vVu8uTJrk+fPi4jI8NNmjTJvfPOO2HbzJ492x155JEx69lg69at7qyzznLp6ekOCHvfH330kbvssstcXl6eS0lJcUceeaS78MIL3apVq5xzgb/9pZde6vLz811qaqobMGCAmzZtmlu/fn3jPmpra93NN9/s8vLynJm5wH+v9onbf9f/Pd+5u7IDP2t+6dyBPU2/PzCip2snQcAG18bPWnNxfneicePGuQ0bNrS4fuvWrZxwwgndWCORrhe3/65X3QrvPRF4Pu2XMPYauDc42J+YCnd+3XN1k0ZmttE516ZmqaaWioh3kd1EyelgwdlcdVW625mPeQoDMzvKzP5oZvvN7ICZvWRmwzyWHWZmT5vZ52Z2yMw+NrNfmFmfjlVdRLpdZBiYRQwil3d/naRTxBxANrMM4HWgCpgNOOAXwGozO8k5d7CVsn2AvwLJwJ3A58BpwALgWOCyjr4BEelGkbOJIDCIXLmvaX2f/t1fL+kwL7OJrgdGAMc753YAmNlm4BPgRqC16yWfSeBDf6pz7tXgstVm1g+41cwynHOH2l17EelekS2D0MfI9eIrXrqJZgLrG4IAwDm3E3gbaP2CMJASfIycc7Yv+NqdclnHeB8EF2mLuP73HHltIlAY9BJe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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"max_order = 30\n", | |
"al = np.loadtxt('../data/al_price.csv',delimiter=',',skiprows=1)\n", | |
"xal=al[1:,0];\n", | |
"xal = (xal - 2016)/4\n", | |
"yal=al[1:,1];\n", | |
"index = np.array(range(len(xal)))\n", | |
"train_index = np.random.choice(index, size=int(len(xal)*.7), replace=False)\n", | |
"train_index.sort()\n", | |
"xtrain = xal[train_index] \n", | |
"ytrain = yal[train_index]\n", | |
"xtest = np.delete(xal, train_index)\n", | |
"ytest = np.delete(yal, train_index)\n", | |
"Z_train=np.block([[xtrain**n] for n in range(max_order)]).T\n", | |
"Z_test = np.block([[xtest**n] for n in range(max_order)]).T\n", | |
"total_error_train = []\n", | |
"total_error_test = []\n", | |
"for n in range(1,max_order):\n", | |
" Ztrain = Z_train[:,:n]\n", | |
" Ztest = Z_test[:,:n]\n", | |
" \n", | |
" a = np.linalg.solve(Ztrain.T@Ztrain,Ztrain.T@ytrain)\n", | |
" \n", | |
" total_error_train.append(np.sum((ytrain-Ztrain@a)**2)/len(xtrain))\n", | |
" total_error_test.append(np.sum((ytest - Ztest@a)**2)/len(xtest))\n", | |
" if n==10:\n", | |
" x_fcn=np.linspace(0,18);\n", | |
" plt.plot(xal,yal,label='data')\n", | |
" plt.plot(xtrain,Ztrain@a,label='order 10 fit')\n", | |
"\n", | |
"plt.xlabel('x')\n", | |
"plt.ylabel('y')\n", | |
"plt.legend()\n", | |
"plt.show()\n", | |
"\n", | |
"plt.plot(list(range(1,max_order)),total_error_train, label=\"total error train\")\n", | |
"plt.plot(list(range(1,max_order)),total_error_test, label=\"total error test\")\n", | |
"plt.legend();" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 25, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"data": { | |
"image/png": "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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
}, | |
{ | |
"data": { | |
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYgAAAD9CAYAAACm2+DgAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjIsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8li6FKAAAgAElEQVR4nO29d5xU5b34//7M9l7YhaUIi6DiggWlxaCoYBCkaOwV0STGeOMN+UZNYgONJTEx/rwJeu3e6LXkRghIYg2CRpAmokixUKQv7sLusn3m+f1xZnbKzu5OL7uf9+t1XnPOc55zzjNzds/nfOojxhgURVEUxRdbvAegKIqiJCYqIBRFURS/qIBQFEVR/KICQlEURfGLCghFURTFL6nxHkAolJSUmPLy8ngPQ1EUJWlYu3btQWNMaTDHJKWAKC8vZ82aNfEehqIoStIgIjuCPUZNTIqiKIpfVEAoiqIoflEBoSiKovhFBYSiKIriFxUQiqIoil9UQCiKoih+Scow10A4fPgwBw8epLm5Od5DUZSQSUlJIS8vj+LiYjIyMuI9HCXStDRCzW7oNSTeI/FLtxQQjY2N7N+/nwEDBpCVlYWIxHtIihI0xhhaWlqoqalh586dDBw4UIVEd6K1GeaPhertMGkejP9ZvEfUjm5pYqqsrKS0tJTs7GwVDkrSIiKkp6dTUlJCUVERVVVV8R6SEkn2rLOEA8Cnf43rUDqiWwqIxsZGcnNz4z0MRYkY+fn51NbWxnsYSiRpOORer90bv3F0QrcUEK2traSmdkvrmdJDSUtLw263x3sYSiRpPOxer//WMjklGN1SQABqWlK6Ffr33A1pqvHertsfn3F0QrcVEIqiKAlN4yHvbRUQiqIoCuBtYoKE9EOogEgCFi5cyMMPPxy345977jlEhO3bt4d8jkTlkUce4bXXXovKucvLy7n22mujcm4lAhzYDAtuhA1xiiBq9DEx1e6Lzzg6QQVEEhBvAdGdiaaAWLBgAXfeeWdUzq1EgDd/DZ/8Lyz8MdQdiP3122kQiScgNNRHiTuuhLD09PR2+1paWkhNTQ3LSdvU1BSRBLNgzzNy5Miwr6lEkW+/sD4drVC9A3J7x/b6vgKiLvEEhGoQCc61117L888/z+7duxERRATP6Va3bNnCBRdcQGFhIVlZWYwbN4433ngjoOMbGxuZM2cOI0aMIDc3l7KyMqZPn87mzZtDHu9rr73GuHHjyM7OprCwkIsvvpidO3d69SkvL+eqq67imWeeYdiwYaSnp7NkyRK2b9+OiDB//nxuvfVW+vXrR0ZGBocOWc68VatWMWnSJHJzc8nJyWHixImsWrWq3e81YMAAVqxYwWmnnUZWVha33nqr37GWl5ezY8cOXnzxxbbfxmUSmjt3LiLCZ599xuTJk8nNzeWSSy4B4K233mLq1Kn07duX7OxsRowYwR/+8Id2Yai+JiaXqW7lypVceeWV5Ofn069fP26++WYaGxtD/s2VEPE08TQd7rhftPCNYlINIn6U/3JJvIfQxvYHzwu475133kllZSWrV69m0aJFAG1vsXv27GH8+PHk5eXxpz/9iYKCAv785z9z3nnn8frrrzNlypROj29qaqK2tpY77riDvn37UlVVxfz58xk3bhybN2+mrKwsqO/1+OOPc+ONNzJ79mzuuusuamtrmTt3LhMmTGDDhg3k5eW19V26dCnr16/n7rvvpnfv3l5C77777mP06NE88cQT2O12MjMz2bBhAxMmTKCioqLtQfvggw8yYcIEVq5cyUknndR2/OHDh7nsssv4xS9+wf33309WVpbf8S5YsICpU6dy0kknMXfuXABKS72n7J05cybXX389t912Gzab9T719ddfM3HiRH7605+SmZnJmjVrmDt3LpWVlTz44INd/k5XX301l19+Oa+99horVqxg7ty5FBUVMW/evEB/aiVcjIEmj8RD37f5WKAmJiVchgwZQmlpKenp6YwbN85r38MPP0x1dTUrVqxg6NChAEydOpWKigpuv/12pkyZ0unxBQUFPPXUU23bdrudyZMn06dPH1566SXmzJkT8Djr6uq47bbbmD17Ns8880xb+9ixYzn22GN5+umn+dnP3LVmqqurWbt2rZcQcjnB+/Tpw4IFC7zMSvfccw8ZGRm8++67FBYWAnDOOedQXl7OvHnzvPwIdXV1vPDCC8ycObPTMY8cOZKMjAxKSkra/TYubr75Zv7zP//Tq+3HP/5x27oxhtNPP53m5mZ+//vfc//997cJko644oor2oTBpEmT+Oijj3jppZdUQMSS5iNgPDQ+X4dxLEgCAaEmpiRm+fLljBs3rk04gFX98/LLL2f9+vXU1HT9R//qq68yduxYCgsLSU1NJScnh7q6OrZs2RLUWFasWEFNTQ1XXnklra2tbcuAAQMYNmwYy5cv9+o/bty4DjWU888/v53PYfny5UybNq1NOIBVfmLGjBksW7bMq29qairTpk0LavwdccEFF7Rr27t3LzfccAODBg0iPT2dtLQ07rjjDg4dOsSBA107O887z1uDPOGEE9qZ4ZQo42ve8d2OBb4Cov5gwmVTd6lBiMiZwFI/uw4bYwo9+hUBDwHnA1nACmCOMeZTn/NlAvcCVwGFwHrgNmOM9xMkwgRj1kkWqqqq/DpCy8rKMMZQXV1Nfn5+h8cvXryYSy+9lFmzZnH33XdTUlKCzWZj6tSpQdvEXQ/GSZMm+d1fVFTktd23b98Oz+VvX1VVld/2srIyqqurvdp69+5NSkpKl2MOBN9rOhwOZsyYwZ49e5g7dy7Dhg0jKyuLhQsXct999wX0uxUXF3ttZ2Rk0NTUFJHxKgHS5FPXKtYaREsj2P0IgyMHoGBAbMfSCcGYmG4GVntst7pWxHrdWwQMBn4KVAO/ApaKyMnGmF0exz0NnAfcAnwN3AS8KSLfMcasD+lb9FCKi4vZt6+9Wrpv3z5EpN2DyJeXX36ZoUOH8txzz7W1tbS0hFQ1tFevXoDliB0+fHi7/Z7+B+i8dIS/fZ19V9/vGcmyFL7n+uqrr1izZg1/+ctfuOqqq9raFy9eHLFrKjHAVyDEWoPoyOdRuy9pBcQmY8zKDvbNAMYDZxtjlgKIyApgG3ArlnBBRE4CrgCuM8Y862xbBmwE7nGeR/EhIyODhoaGdu0TJkzgkUceYfv27W1OXrvdziuvvMLIkSPbHsodHV9fX9+uqOFf/vKXkIrCnXbaaeTl5fHll18ya9asoI/vigkTJrBkyRJqa2vbvldtbS2LFy/mzDPPDPm8Hf02HVFfXw9YxfNctLS08OKLL4Y8BiUO+EYtxVqD6ExAJBCRclLPAPa4hAOAMeawiCwGZuIUEM5+LcArHv1aReRl4JcikmGMUV3bh4qKCqqqqnjssccYNWoUmZmZnHDCCcyZM4fnnnuOc845h3nz5pGfn8/8+fPZunUrS5Ys6fL4c889l4ULFzJnzhymTZvG2rVrefTRR73s/IGSn5/PQw89xE033URlZSVTpkyhoKCA3bt3s2zZMs4880yuuOKKkH+DO++8k9dff52JEydy2223ISL89re/pb6+nrvuuivk81ZUVPD+++/z+uuvU1ZWRklJiVdElS/HH388gwYN4vbbbyclJYW0tDT++Mc/hnx9JU7EW4Po6HoJVm4jGCf1iyJiF5FvReR/RWSgx77hwGd+jtkIDBSRXI9+24wx9X76pQNDUdrxgx/8gMsuu4xf//rXjBkzhunTpwPQr18/PvjgA4YPH86NN97IRRddRFVVFUuWLOHcc8/t8vgf/vCH3H777bzyyitMnz6dJUuWsHjxYgoKCkIa5w033MCiRYvYsmULV199NVOmTOHuu++mtbWVk08+Oazf4MQTT+S9994jPz+fWbNmcfXVV5Obm8uyZcu8QlyD5YEHHuC4447jkksuYfTo0W3hrh2Rnp7OwoULKSsr45prruGmm27ijDPO4Je//GXIY1DigO8DOtZhrr6F+lwkWME+McZ03kFkJHAlsAyoAUYCv8bSBEYaYw6IyFZgnTHmMp9jfwA8CQw0xnwjIm8B+caYcT79JgFvA2cYY97vYBw/An4EMHDgwFN37NjR4Zg3bdrE8ccf3+n3UpRkQ/+uI8i/H4W3Pcqg9DkBbvwgdtf/7G/wf9e1bx95Fcz8c1QuKSJrjTGjgjmmSxOTMeZj4GOPpmUishxYhWU6ugMQwJ+k8fUWBtrP3zieAJ4AGDVqVOdSTVEUpTPahbnGWoPwuH5OKRyptNZrE0uDCCkPwhizDtgKjHY2VQH+QmZcsY3VAfbTSXcVRYk+8Q5z9TRplRznXk8wJ3U4iXKe2sBGLP+CLxXATmNMnUe/wSKS7adfM/BlGONRFEUJjHZO6lqr/EbMru8hIEo9BUTyOqnbEJFRwLHAR86mRUB/EZng0ScfmO7ch0e/NOBij36pwKXAWxrBpChKTPA1MRm7VX4jVngKiF5DQZyP4vqDYG+J3Ti6IJBM6hex8hnWAYewnNS/AnYD/+Xstggrc/oFEbkFd6KcAL9zncsYs15EXgEeEZE053lvxEqwuzJC30lRFKVz/EUtNR6GjNz27dHAU0BlF1t+CFcEU93+hEmWC0SD+Awrf+FZ4E3gZ8BrwFhjzEEAY4wDmIYViTQfWADYgbOMMd/4nG+281y/AZYARwHnOv0aiqIo0cdfHkIscyE8BVRmAeR51CVLIEd1IFFMDwAPBNCvCrjOuXTWrwH4uXNRFEWJPf6c0rF0VPsKiNwy4BNrO4H8EFrNVVGUnkfcNQiPa2Xke2sQCTSznAoIRVF6Hr5hrhDbbOpOTUwqIBRFUeJDR6W2E8YHoQJCCYKFCxfy8MMPx+141xSfrhnfuhOPPPKI12x0kea9995j7ty5OByOqF1DCZKOBEGsfBD2VmhxhdQKpOc6fRBOVEAowRBvAdGdiYWAmDdvngqIRKIjQRArE5OngMrMB5tNfRCK0hHGGJqb/U+12NLSQlcFJbtCZ2tTvOio7lKsTEyelVwznZWT1cSkhMK1117L888/z+7duxERRMRrvoItW7ZwwQUXUFhYSFZWFuPGjeONN94I6PjGxkbmzJnDiBEjyM3NpaysjOnTp7N58+aQx/vaa68xbtw4srOzKSws5OKLL24333J5eTlXXXUVzzzzDMOGDSM9PZ0lS5awfft2RIT58+dz66230q9fPzIyMjh0yPqHWrVqFZMmTSI3N5ecnBwmTpzIqlWr2v1eAwYMYMWKFZx22mlkZWVx6623+h1reXk5O3bs4MUXX2z7ba699tq2/Z988gkzZsygqKiIrKwsvvvd7/L++97FhlevXs0555xDr169yM7O5uijj+YnP/kJAHPnzmXevHmANcGQ6xpKnOlQg4iVgPDxPwDk9KatZumRyoTJpo7UhEGJz9zQ5jiICnMDV2XvvPNOKisrWb16NYsWWVVLMjIyANizZw/jx48nLy+PP/3pTxQUFPDnP/+Z8847j9dff50pU6Z0enxTUxO1tbXccccd9O3bl6qqKubPn8+4cePYvHkzZWVl/gfVAY8//jg33ngjs2fP5q677qK2tpa5c+cyYcIENmzY4DXt6NKlS1m/fj133303vXv39hJ69913H6NHj+aJJ57AbreTmZnJhg0bmDBhAhUVFW0+kQcffJAJEyawcuVKrzkhDh8+zGWXXcYvfvEL7r//frKysvyOd8GCBUydOpWTTjqpbR6I0tJSANatW8fpp5/OyJEjefLJJ8nOzubxxx9n0qRJfPjhh5x66qnU1dUxefJkxowZw3PPPUdeXh7bt2/nww8/BKx5OHbt2sXTTz/NBx98ELF5spUw8dQUJMUqs+HbHk28Qlydz6WUVGdVV2tud+oOQEH/2IynE3qOgEhShgwZQmlpKenp6Ywb5zWNBg8//DDV1dWsWLGCoUOtuZamTp1KRUUFt99+O1OmTOn0+IKCAp566qm2bbvdzuTJk+nTpw8vvfQSc+bMCXicdXV13HbbbcyePZtnnnmmrX3s2LEce+yxPP300/zsZz9ra6+urmbt2rVeQsjlBO/Tpw8LFizwetu+5557yMjI4N13322b8e6cc86hvLycefPmefkR6urqeOGFF5g5c2anYx45ciQZGRmUlJS0+21uueUWBg4cyL/+9S/S09MBmDx5MiNGjODee+9l4cKFbN68merqan73u99x4oknth3r0kIGDBjAgAED2n4H3+ldlTjhGeKa3x8OOzXceGoQYJmZXAKidl9CCAg1MSUxy5cvZ9y4cW3CASAlJYXLL7+c9evXU1PT9R/8q6++ytixYyksLCQ1NZWcnBzq6urYsmVLUGNZsWIFNTU1XHnllbS2trYtAwYMYNiwYSxfvtyr/7hx4zrUUM4///x2ppjly5czbdo0r+lQ8/PzmTFjBsuWLfPqm5qayrRp04IavycNDQ0sW7aMiy++GJvN1vZdjDFMmjSp7bscc8wxFBYWcsMNN/DCCy/wzTe+VWWUhMRTEBQe5V6PmQbRkYDo615PEEd1z3mlCcKskyxUVVUxcuTIdu1lZWUYY6iuriY/P7/D4xcvXsyll17KrFmzuPvuuykpKcFmszF16lQaGxuDGsuBA9abz6RJk/zuLyoq8tru27ev334d7auqqvLbXlZWRnV1tVdb7969wzLnVFVVYbfbuffee7n33nv99nE4HBQUFLB06VLuvfdefvKTn1BbW8vw4cOZN28eF154YcjXV6KMpyDwLIoXKw3CN4rJRV4f93qClNvoOQKiG1JcXMy+fe3fNPbt24eIUFzsb24mNy+//DJDhw7lueeea2traWmhqir4eZt69eoFWDkTw4e3nxrE0/8AdOqs9bevs+/q+z3DdQQXFhZis9m46aabuOaaa/z2sdks5fvkk0/mb3/7G62traxZs4YHHniASy65hE8++YQRI0aENQ4lSjR2JCBi9BIZiAaRIAX7VEAkARkZGTQ0NLRrnzBhAo888gjbt29vc/La7XZeeeUVRo4c2fZQ7uj4+vr6dnbxv/zlL9jt9qDHeNppp5GXl8eXX37JrFmzgj6+KyZMmMCSJUuora1t+161tbUsXryYM888M+Tz+vttcnJyOP300/nkk0845ZRT2oRBZ6SmpjJu3DjuvfdeFi1axKZNmxgxYkRbQEBDQ0M7IanECc8w13wP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\n", | |
"text/plain": [ | |
"<Figure size 432x288 with 1 Axes>" | |
] | |
}, | |
"metadata": { | |
"needs_background": "light" | |
}, | |
"output_type": "display_data" | |
} | |
], | |
"source": [ | |
"max_order = 30\n", | |
"st = np.loadtxt('../data/steel_price.csv',delimiter=',',skiprows=1)\n", | |
"xst=st[1:,0];\n", | |
"xst = (xst - 2016)/4\n", | |
"yst=st[1:,1];\n", | |
"index = np.array(range(len(xst)))\n", | |
"train_index = np.random.choice(index, size=int(len(xst)*.7), replace=False)\n", | |
"train_index.sort()\n", | |
"xtrain = xst[train_index] \n", | |
"ytrain = yst[train_index]\n", | |
"xtest = np.delete(xst, train_index)\n", | |
"ytest = np.delete(yst, train_index)\n", | |
"Z_train=np.block([[xtrain**n] for n in range(max_order)]).T\n", | |
"Z_test = np.block([[xtest**n] for n in range(max_order)]).T\n", | |
"total_error_train = []\n", | |
"total_error_test = []\n", | |
"for n in range(1,max_order):\n", | |
" Ztrain = Z_train[:,:n]\n", | |
" Ztest = Z_test[:,:n]\n", | |
" \n", | |
" a = np.linalg.solve(Ztrain.T@Ztrain,Ztrain.T@ytrain)\n", | |
" \n", | |
" total_error_train.append(np.sum((ytrain-Ztrain@a)**2)/len(xtrain))\n", | |
" total_error_test.append(np.sum((ytest - Ztest@a)**2)/len(xtest))\n", | |
" if n==4:\n", | |
" x_fcn=np.linspace(0,18);\n", | |
" plt.plot(xst,yst,label='data')\n", | |
" plt.plot(xtrain,Ztrain@a,label='order 4 fit')\n", | |
"\n", | |
"plt.xlabel('x')\n", | |
"plt.ylabel('y')\n", | |
"plt.legend()\n", | |
"plt.show()\n", | |
"\n", | |
"plt.plot(list(range(1,max_order)),total_error_train, label=\"total error train\")\n", | |
"plt.plot(list(range(1,max_order)),total_error_test, label=\"total error test\")\n", | |
"plt.legend();" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"4d.\n" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 26, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"The price of steel in 2025: $1396.2137239568676\n" | |
] | |
} | |
], | |
"source": [ | |
"Z=np.block([[xst**n] for n in range(5)]).T\n", | |
"Z_st = Z[:,:]\n", | |
"a_st = np.linalg.solve(Z_st.T@Z_st, Z_st.T@yst)\n", | |
"\n", | |
"func = lambda x: a_st[0] + a_st[1]*x**1 + a_st[2]*x**2 + a_st[3]*x**3 + a_st[4]*x**4\n", | |
"print(f\"The price of steel in 2025: ${func((2025-2016)/4)}\")" | |
] | |
}, | |
{ | |
"cell_type": "code", | |
"execution_count": 27, | |
"metadata": {}, | |
"outputs": [ | |
{ | |
"name": "stdout", | |
"output_type": "stream", | |
"text": [ | |
"The price of aluminum in 2025: $-30471.390021362182\n" | |
] | |
} | |
], | |
"source": [ | |
"Z=np.block([[xal**n] for n in range(4)]).T\n", | |
"Z_al = Z[:,:]\n", | |
"a_al = np.linalg.solve(Z_al.T@Z_al, Z_al.T@yal)\n", | |
"\n", | |
"func = lambda x: a_al[0] + a_al[1]*x**1 + a_al[2]*x**2 + a_al[3]*x**3 #+ a_al[4]*x**4 + a_al[5]*x**5 + a_al[6]*x**6 + a_al[7]*x**7 + a_al[8]*x**8 + a_al[9]*x**9 + a_al[10]*x**10\n", | |
"print(f\"The price of aluminum in 2025: ${func((2025-2016)/4)}\")" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"##\n", | |
"4e.\n" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"Based on the results of the price model, I would change my answer to 3b using aluminum. However, this model is unrealistic for aluminum it show aluminum as 30 grand in the negative. This model, regardless to which polynomial is used, is inherently flawed because it is based off of only the past 4 years and it is predicting 5 years in advance of the end of its data" | |
] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [] | |
}, | |
{ | |
"cell_type": "markdown", | |
"metadata": {}, | |
"source": [ | |
"# References\n", | |
"\n", | |
"1. <https://en.wikipedia.org/wiki/Direct_stiffness_method>\n", | |
"\n", | |
"2. Aluminum and steel price history on <https://tradingeconomics.com>" | |
] | |
} | |
], | |
"metadata": { | |
"kernelspec": { | |
"display_name": "Python 3", | |
"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.7.3" | |
} | |
}, | |
"nbformat": 4, | |
"nbformat_minor": 4 | |
} |