{ "cells": [ { "cell_type": "markdown", "source": [ "# Cantilever with a Uniform Load\n", "\n", "This example shows how to predict the behavior of a cantilever beam which is partially\n", "subjected to a uniform distributed load.\n", "\n", "![](../assets/cantilever-drawing.svg)" ], "metadata": {} }, { "outputs": [], "cell_type": "code", "source": [ "using GXBeam, LinearAlgebra\n", "\n", "nelem = 12\n", "\n", "# create points\n", "a = 0.3\n", "b = 0.7\n", "L = 1.0\n", "n1 = n3 = div(nelem, 3)\n", "n2 = nelem - n1 - n3\n", "x1 = range(0, 0.3, length=n1+1)\n", "x2 = range(0.3, 0.7, length=n2+1)\n", "x3 = range(0.7, 1.0, length=n3+1)\n", "x = vcat(x1, x2[2:end], x3[2:end])\n", "y = zero(x)\n", "z = zero(x)\n", "points = [[x[i],y[i],z[i]] for i = 1:length(x)]\n", "\n", "# index of endpoints for each beam element\n", "start = 1:nelem\n", "stop = 2:nelem+1\n", "\n", "# create compliance matrix for each beam element\n", "EI = 1e9\n", "compliance = fill(Diagonal([0, 0, 0, 0, 1/EI, 0]), nelem)\n", "\n", "# create assembly\n", "assembly = Assembly(points, start, stop, compliance=compliance)\n", "\n", "# set prescribed conditions (fixed right endpoint)\n", "prescribed_conditions = Dict(\n", " nelem+1 => PrescribedConditions(ux=0, uy=0, uz=0, theta_x=0, theta_y=0,\n", " theta_z=0)\n", ")\n", "\n", "# create distributed load\n", "q = 1000\n", "distributed_loads = Dict(\n", " ielem => DistributedLoads(assembly, ielem; fz = (s) -> q) for ielem in\n", " n1+1:n1+n2\n", ")\n", "\n", "# perform static analysis\n", "system, state, converged = static_analysis(assembly;\n", " prescribed_conditions = prescribed_conditions,\n", " distributed_loads = distributed_loads,\n", " linear = true)\n", "\n", "nothing" ], "metadata": {}, "execution_count": 1 }, { "cell_type": "markdown", "source": [ "## Comparison with Analytical Results" ], "metadata": {} }, { "cell_type": "markdown", "source": [ "We can construct the analytical solution for this problem by integrating from the free\n", "end of the beam and applying the appropriate boundary conditions." ], "metadata": {} }, { "outputs": [], "cell_type": "code", "source": [ "# construct analytical solution\n", "dx = 1e-6\n", "x_a = 0.0:dx:L\n", "q_a = (x) -> a <= x <= b ? -q : 0 # define distributed load\n", "V_a = cumsum(-q_a.(x_a) .* dx) # integrate to get shear\n", "M_a = cumsum(V_a .* dx) # integrate to get moment\n", "slope_a = cumsum(M_a./EI .* dx) # integrate to get slope\n", "slope_a .-= slope_a[end] # apply boundary condition\n", "deflection_a = cumsum(slope_a .* dx) # integrate to get deflection\n", "deflection_a .-= deflection_a[end] # apply boundary condition\n", "\n", "# get elastic twist angle\n", "theta_a = -atan.(slope_a)\n", "\n", "# switch analytical system frame of reference\n", "M_a = -M_a\n", "\n", "nothing" ], "metadata": {}, "execution_count": 2 }, { "cell_type": "markdown", "source": [ "Plotting the results reveals that the analytical and computational solutions show\n", "excellent agreement." ], "metadata": {} }, { "outputs": [], "cell_type": "code", "source": [ "using Plots\n", "pyplot()\n", "nothing #hide" ], "metadata": {}, "execution_count": 3 }, { "outputs": [ { "output_type": "execute_result", "data": { "text/plain": "Plot{Plots.PyPlotBackend() n=2}", "image/png": "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ldaltOfkj4AVGxsrpZTy119/la6urvL33383dclW43GvRWV9v+ElwjLIyMiAq6srtNqCFYaEEHB3d0d6evoTbUdP70me688++wwDBw40VYlWpSznY+7cuRg1ahQaNWpk6jKtSmnPyfnz5+Hs7Iz58+cjODgYXbp0we7du81RcqVX2nMihMD69esRHh4ODw8PdO7cGStXroSNjY05yrZ6ZX2/YcAqIyFEkZ9lMfO0lnY7enplea4XLFiA5ORkvPfee+VdltUqzfk4dOgQjh49iilTppiqLKtWmnPy4MEDXLhwAS1atEBcXBz+9a9/Yfjw4bh+/bqpyrQqpTkner0e77//PqKiopCWlobdu3dj7NixuHHjhqnKpL8oy/sNA1YZNGzYEBcvXoRerwdQ8MRmZGTA3d39ibajp1eW5/qjjz6CTqfDtm3byrTcAZVeac9HbGwsEhMT0ahRI3h6euLixYvo06cPtm3bZo6yK7XSnhMPDw9oNBqMHDkSAODn54dGjRrh9OnTJq+5sivtOTl+/DguX76MTp06AQDatGkDV1dX/Prrryavmcr+3s6AVQZ16tRBQEAAVq9eDQCIjIyEp6cnPD09n2g7enqlfa4//vhjrFu3Djt37oSjo6PpC7USpT0fs2bNwuXLl5GamorU1FS4ubkhOjoa/fr1M0PVlVtpz4mLiwt69uyJ6OhoAEBaWhpSUlLg7e1t6pIrvdKekz/e0JOSkgAAv/32G86fPw8vLy9Tl0x4gvd247WGWYfExETZvn172axZMxkUFCRPnTpVeF+/fv3k0aNHS9yOjKukc7Jv3z4JQDZu3Fj6+flJPz8/2bZtWzNWXLmV9t/In7HJvXyV9pycP39eduvWTbZs2VL6+flJnU5nrpIrvdKek7Vr18qWLVvK1q1by1atWsl169aZq+RKbcqUKbJBgwZSURRZt27dIh+EetL3di72TERERGRkvERIREREZGQMWERERERGxoBFREREZGQMWERERERGxoBFREREZGQMWERERERGxoBFREREZGQMWEREpZCfn4+GDRti8+bNT30sg8EAb29vrFmzxgiVEZElYsAiIiqFL774Ao6Ojhg4cOBTH0uj0WDGjBmYO3cuHjx4YITqiMjSMGAREZVASonPPvsMEyZMgBDCKMccPnw4rl69iq1btxrleERkWRiwiMgq3L59Gx4eHhg6dGiR26dOnYpatWrh4sWLxe4bExODtLQ0DBkypMjtnp6eeOmll7Bo0SK4ubmhWrVqGDNmDPLz83H8+HF06tQJDg4OaNOmDU6ePFlkXwcHB/Tr1w8rV6403i9JRBaDAYuIrEKNGjWwYsUKREZG4ttvvwUAREdH44svvsAXX3wBNze3YvfdtWsX3N3dH7lNVFQUfv75ZyxfvhwLFy7Ed999h5dffhmjR4/GCy+8gA0bNiA/Px9Dhw6FwWAosm+nTp3w888/Q1VV4/6yRGR2WnMXQERkKt27d8f06dPx8ssvo1WrVhg/fjyee+45jBgx4rH7xcXFoVWrVo+8TwiBjRs3wsbGBkDBaNeXX36Jbdu2oW/fvgAKmtoHDhyIkydPws/Pr3Bff39/3LlzB2fPnkXLli2N9FsSkSXgCBYRWZUFCxagQYMGaN++PQBg6dKlJe5z5coV1K5d+5H3de3atTBcAYCXlxc0Gg169OhR5DYAyMjIKLKvi4sLAODq1atl+yWIyOIxYBGRVbG1tUV4eDh+//13jBw5ErVq1Spxn/z8fFStWvWR9zk6Ohb52cbGBnZ2dkVC1x/f5+fnP1QLAOTl5ZXlVyCiCoABi4isyqlTp/Dhhx8iICAAn3/+Oc6cOVPiPk5OTrh586bRa8nJyQEAODs7G/3YRGReDFhEZDXu37+P0aNHIzg4GIcPH0arVq0wevToEuei8vb2RkpKitHr+eOYf1xCJKLKgwGLiKzGW2+9heTkZKxcuRI2Njb49ttvcfbsWbzzzjuP3a9Tp044ceKE0ScFPXr0KJo3b17Yi0VElQcDFhFZhYMHD+KDDz7AokWL0KRJEwAFI1MffPAB3n//fRw5cqTYfcPCwqDX6xETE2PUmrZt2/bQ3FpEVDkIKaU0dxFERJYuIiICNWvWxNdff22U4504cQKBgYFITk5Go0aNjHJMIrIcDFhERKVw/PhxdOzYERcuXEC9evWe+nh/+9vfIIQwWmAjIsvCiUaJiErB398fn376KdLT0586YBkMBjRr1gxjxowxUnVEZGk4gkVERERkZGxyJyIiIjIyBiwiIiIiI/v/zle6UdVkwDQAAAAASUVORK5CYII=", "text/html": [ "" ], "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", " \n", " 2023-06-12T19:40:07.030010\n", " image/svg+xml\n", " \n", " \n", " Matplotlib v3.7.1, https://matplotlib.org/\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n" ] }, "metadata": {}, "execution_count": 4 } ], "cell_type": "code", "source": [ "# deflection plot\n", "plot(\n", " xlim = (0.0, 1.0),\n", " xticks = 0.0:0.2:1.0,\n", " xlabel = \"x (m)\",\n", " ylabel = \"Deflection (m)\",\n", " grid = false,\n", " overwrite_figure=false\n", " )\n", "\n", "x = [assembly.points[ipoint][1] + state.points[ipoint].u[1] for ipoint =\n", " 1:length(assembly.points)]\n", "deflection = [state.points[ipoint].u[3] for ipoint = 1:length(assembly.points)]\n", "plot!(x_a, deflection_a, label=\"Analytical\")\n", "scatter!(x, deflection, label=\"GXBeam\")" ], "metadata": {}, "execution_count": 4 }, { "outputs": [ { "output_type": "execute_result", "data": { "text/plain": "Plot{Plots.PyPlotBackend() n=2}", "image/png": "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", "text/html": [ "" ], "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", " \n", " 2023-06-12T19:40:13.026386\n", " image/svg+xml\n", " \n", " \n", " Matplotlib v3.7.1, https://matplotlib.org/\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n" ] }, "metadata": {}, "execution_count": 5 } ], "cell_type": "code", "source": [ "# elastic twist plot (euler angle)\n", "plot(\n", " xlim = (0.0, 1.0),\n", " xticks = 0.0:0.2:1.0,\n", " xlabel = \"x (m)\",\n", " ylabel = \"Rotation Angle (rad)\",\n", " grid = false,\n", " overwrite_figure=false\n", " )\n", "\n", "x = [assembly.points[ipoint][1] + state.points[ipoint].u[1]\n", " for ipoint = 1:length(assembly.points)]\n", "theta = [4*atan.(state.points[ipoint].theta[2]/4) for ipoint =\n", " 1:length(assembly.points)]\n", "plot!(x_a, theta_a, label=\"Analytical\")\n", "scatter!(x, theta, label=\"GXBeam\")" ], "metadata": {}, "execution_count": 5 }, { "outputs": [ { "output_type": "execute_result", "data": { "text/plain": "Plot{Plots.PyPlotBackend() n=2}", "image/png": "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3apWrdopb6I634ygmz2LiIiIeFlQTBGKiIiI+JICloiIiIiXKWCJiIiIeJkCloiIiIiXKWCJiIiIeJkCloiIiIiXKWCJiIiIeJkClogEvdzcXOrUqcMXX3xxwedyu93ExcUxYcIEL1QmIsWVApaIBL133nmHihUr0q1btws+l81m4/7772fkyJGcPHnSC9WJSHGkgCUiQc2yLN544w0GDRqEMcYr5+zbty/79+/nq6++8sr5RKT4UcASkWLvyJEjREdHc80115zy+J133kmlSpXYvXv3GY+dN28eu3btonfv3qc8HhMTw1133cXLL79M7dq1KVeuHP379yc3N5fVq1fTtm1bwsLCuOSSS1i3bt0px4aFhXHVVVcxduxY771IESlWFLBEpNgLDw9nzJgxpKWl8cknnwAwa9Ys3nnnHd555x1q1659xmNnz55NVFRUgftMnz6duXPn8t577/Hcc8/x6aefcvfdd3PjjTdyyy238Pnnn5Obm8s111yD2+0+5di2bdsyd+5cXC6Xd1+siBQLDn8XICLiDZ06dWLYsGHcfffdxMfHc/PNN9OnTx+uu+66sx63YsUK4uPjC9xmjGHq1KmEhIQAeaNdH3zwATNnzqRr165A3qL2bt26sW7dOpo1a5Z/bEJCAkePHmXTpk00adLES69SRIoLjWCJSInxzDPPUKtWLVq1agXAu+++6/GYffv2ERkZWeC2Dh065IcrgNjYWGw2G5dddtkpjwFkZWWdcmyVKlUA2L9//7m9CBEpERSwRKTEKFOmDCkpKfzxxx/069ePSpUqeTwmNzeX0qVLF7itYsWKp3weEhJC2bJlTwldf/87Nzf3tFoATpw4cS4vQURKCAUsESkx1q9fz4svvkhiYiJvvvkmGzdu9HhM5cqVOXz4sNdrOXToEAARERFeP7eIBD4FLBEpEf78809uvPFGmjdvztKlS4mPj+fGG2/02IsqLi6OHTt2eL2ev8/59xSiiAQXBSwRKREee+wxtm7dytixYwkJCeGTTz5h06ZNPPnkk2c9rm3btqxdu9brTUGXL19Ow4YN89diiUhwUcASkWJv8eLFvPDCC7z88stcdNFFQN7I1AsvvMCzzz7LsmXLznhsjx49cDqdzJs3z6s1zZw587TeWiISPIxlWZa/ixAR8afU1FQqVKjARx995JXzrV27lqSkJLZu3UrdunW9ck4RKV4UsEQk6K1evZo2bdqwfft2qlevfsHnu+mmmzDGeC2wiUjxo0ajIhL0EhISeP3118nMzLzggOV2u6lfvz79+/f3UnUiUhxpBEtERETEy7TIXURERMTLFLBEREREvOz/AaIetP7/ZB7nAAAAAElFTkSuQmCC", "text/html": [ "" ], "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", " \n", " 2023-06-12T19:40:15.514161\n", " image/svg+xml\n", " \n", " \n", " Matplotlib v3.7.1, https://matplotlib.org/\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "\n" ] }, "metadata": {}, "execution_count": 6 } ], "cell_type": "code", "source": [ "# bending moment plot\n", "plot(\n", " xlim = (0.0, 1.0),\n", " xticks = 0.0:0.2:1.0,\n", " xlabel = \"x (m)\",\n", " ylabel = \"Bending Moment (\\$Nm\\$)\",\n", " grid = false,\n", " overwrite_figure=false\n", " )\n", "\n", "x = [assembly.elements[ielem].x[1] + state.elements[ielem].u[1] for\n", " ielem = 1:length(assembly.elements)]\n", "M = [state.elements[ielem].Mi[2] for ielem = 1:length(assembly.elements)]\n", "plot!(x_a, M_a, label=\"Analytical\")\n", "scatter!(x, M, label=\"GXBeam\")" ], "metadata": {}, "execution_count": 6 }, { "cell_type": "markdown", "source": [ "Note that we could have easily performed a nonlinear analysis for this problem by setting\n", "`linear=false`." ], "metadata": {} }, { "cell_type": "markdown", "source": [ "---\n", "\n", "*This notebook was generated using [Literate.jl](https://github.com/fredrikekre/Literate.jl).*" ], "metadata": {} } ], "nbformat_minor": 3, "metadata": { "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", "version": "1.9.1" }, "kernelspec": { "name": "julia-1.9", "display_name": "Julia 1.9.1", "language": "julia" } }, "nbformat": 4 }