diff --git a/notebooks/2015-09-15-2d-segmentation.ipynb b/notebooks/2015-09-15-2d-segmentation.ipynb index 541fe12..8bfe810 100644 --- a/notebooks/2015-09-15-2d-segmentation.ipynb +++ b/notebooks/2015-09-15-2d-segmentation.ipynb @@ -90,7 +90,7 @@ }, { "cell_type": "code", - "execution_count": 7, + "execution_count": 3, "metadata": { "collapsed": false }, @@ -99,16 +99,16 @@ "name": "stdout", "output_type": "stream", "text": [ - "Converged. p = [4.2905787641613236,5.624156522861784,0.04706336239279979,6.561746550428803]" + "Converged. p = [4.2905787641613236,5.624156522861784,0.04706336239279979,6.561746550428803]\n" ] }, { "data": { "image/png": [ - "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" ], "text/plain": [ - "PyPlot.Figure(PyObject )" + "PyPlot.Figure(PyObject )" ] }, "metadata": {}, @@ -117,10 +117,10 @@ { "data": { "text/plain": [ - "(-3.0,5.0,-0.1,3.6)" + "(-0.1,3.6)" ] }, - "execution_count": 7, + "execution_count": 3, "metadata": {}, "output_type": "execute_result" }, @@ -128,7 +128,6 @@ "name": "stdout", "output_type": "stream", "text": [ - "\n", "Converged. p = [2.110067133637596,1.2802355090457196,1.5675520985912952,-3.7904167887303712]\n" ] } @@ -136,7 +135,7 @@ "source": [ "srand(42)\n", "\n", - "nsl = 5\n", + "nsl = 6\n", "nm = 5\n", "\n", "ϕ11 = 5.4\n", @@ -198,7 +197,7 @@ " if plot_with_normal\n", " for i=1:2\n", " p0 = ncoords[i]\n", - " p1 = ncoords[i]+0.1*normals[i]\n", + " p1 = ncoords[i]+0.3*normals[i]\n", " plot([p0[1], p1[1]], [p0[2], p1[2]], \"-k\")\n", " end\n", " end\n", @@ -214,12 +213,68 @@ "end\n", "axis(\"equal\")\n", "ylim(-0.1, 3.6)\n", - "axis(\"off\")" + "#axis(\"off\")" ] }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 4, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "6x2 Array{Float64,2}:\n", + " 4.0 3.5 \n", + " 3.05326 2.5664 \n", + " 1.89394 1.91534\n", + " 0.60401 1.59286\n", + " -0.725305 1.62176\n", + " -2.0 2.0 " + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "[x1 y1]" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "6x2 Array{Float64,2}:\n", + " 3.0 1.0 \n", + " 2.18891 1.17082\n", + " 1.36075 1.2053 \n", + " 0.538273 1.10249\n", + " -0.255919 0.86522\n", + " -1.0 0.5 " + ] + }, + "execution_count": 5, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "[x2 y2]" + ] + }, + { + "cell_type": "code", + "execution_count": 6, "metadata": { "collapsed": false }, @@ -230,70 +285,104 @@ "calc_projection (generic function with 1 method)" ] }, - "execution_count": 8, + "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "\"\"\" Find projection from slave nodes to master element. \"\"\"\n", - "function calc_projection_slave_nodes_to_master_element(sel, mel)\n", - " X1 = get_field(sel, :Geometry)\n", - " N1 = get_field(sel, :Normals)\n", - " X2(xi) = interpolate(mel, :Geometry, xi)\n", - " dX2(xi) = dinterpolate(mel, :Geometry, xi)\n", - " R(xi, k) = det([X2(xi) - X1[k] N1[k]]')\n", - " dR(xi, k) = det([dX2(xi) N1[k]]')\n", - " xi2 = Vector[[0.0], [0.0]]\n", - " for k=1:2\n", - " xi = xi2[k]\n", - " for i=1:3\n", - " dxi = -R(xi, k)/dR(xi, k)\n", - " xi += dxi\n", - " if abs(dxi) < 1.0e-9\n", - " break\n", - " end\n", + "function newton(R, dR, x0=0.0; max_iterations=10, tol=1.0e-9)\n", + " x = x0\n", + " for i=1:max_iterations\n", + " dx = -R(x)/dR(x)\n", + " x += dx\n", + " if abs(dx) < tol\n", + " break\n", " end\n", - " xi2[k] = xi\n", " end\n", - " clamp!(xi2, -1, 1)\n", - " return xi2\n", + " x\n", "end\n", "\n", - "\"\"\" Find projection from master nodes to slave element. \"\"\"\n", - "function calc_projection_master_nodes_to_slave_element(sel, mel)\n", + "\"\"\"\n", + "Find projection from slave nodes to master element.\n", + "\n", + "Parameters\n", + "----------\n", + "sel :: Element\n", + " slave element\n", + "mel :: Element\n", + " master element\n", + "sxi :: Vector\n", + " projection point in slave side (typically [-1.0] or [1.0])\n", + "\n", + "Returns\n", + "-------\n", + "mxi :: Vector\n", + " point in master element corresponding to xi in slave\n", + "\n", + "\"\"\"\n", + "function calc_projection_from_slave_to_master(sel, mel, sxi; solver_options...)\n", + " # slave side point\n", + " X1 = interpolate(sel, :Geometry, sxi)\n", + " N1 = interpolate(sel, :Normals, sxi)\n", + " # master element function and their derivatives\n", + " X2(xi) = interpolate(mel, :Geometry, xi)\n", + " dX2(xi) = dinterpolate(mel, :Geometry, xi)\n", + " # residual & solution\n", + " R(xi) = det([X2(xi)-X1 N1])\n", + " dR(xi) = det([dX2(xi) N1])\n", + " mxi = newton(R, dR; solver_options...)\n", + " return [mxi]\n", + "end\n", + "\n", + "\"\"\"\n", + "Find projection from master to slave element.\n", + "\n", + "Parameters\n", + "----------\n", + "sel :: Element\n", + " slave element\n", + "mel :: Element\n", + " master element\n", + "mxi :: Vector\n", + " projection point in master side (typically [-1.0] or [1.0])\n", + "\n", + "Returns\n", + "-------\n", + "sxi :: Vector\n", + " point in slave element corresponding to xi in master\n", + "\"\"\"\n", + "function calc_projection_from_master_to_slave(sel, mel, mxi; solver_options...)\n", + " # slave element functions and their derivatives\n", " X1(xi) = interpolate(sel, :Geometry, xi)\n", " dX1(xi) = dinterpolate(sel, :Geometry, xi)\n", " N1(xi) = interpolate(sel, :Normals, xi)\n", " dN1(xi) = dinterpolate(sel, :Normals, xi)\n", - " X2 = get_field(mel, :Geometry)\n", - " R(xi, k) = det([X1(xi) - X2[k] N1(xi)]')\n", - " dR(xi, k) = det([dX1(xi) N1(xi)]') + det([X1(xi) - X2[k] dN1(xi)]')\n", - " xi1 = Vector[[0.0], [0.0]]\n", - " for k=1:2\n", - " xi = xi1[k]\n", - " for i=1:3\n", - " dxi = -R(xi, k)/dR(xi, k)\n", - " xi += dxi\n", - " if abs(dxi) < 1.0e-9\n", - " break\n", - " end\n", - " end\n", - " xi1[k] = xi\n", - " end\n", - " clamp!(xi1, -1, 1)\n", - " return xi1\n", + " # master side point\n", + " X2 = interpolate(mel, :Geometry, mxi)\n", + " # residual & solution\n", + " R(xi) = det([X1(xi)-X2 N1(xi)])\n", + " dR(xi) = det([dX1(xi) N1(xi)]) + det([X1(xi)-X2 dN1(xi)])\n", + " sxi = newton(R, dR; solver_options...)\n", + " return [sxi]\n", "end\n", "\n", - "function has_projection(sel, mel)\n", - " xi1 = calc_projection_master_nodes_to_slave_element(sel, mel)\n", + "function has_projection(xi1, xi2)\n", " l = abs(xi1[2]-xi1[1])[1]\n", " return l > 1.0e-9\n", "end\n", "\n", - "function calc_projection(sel, mel)\n", - " xi1 = calc_projection_master_nodes_to_slave_element(sel, mel)\n", - " xi2 = calc_projection_slave_nodes_to_master_element(sel, mel)\n", + "function calc_projection(sel, mel; clamp=true)\n", + " xi1a = calc_projection_from_master_to_slave(sel, mel, [-1.0])\n", + " xi1b = calc_projection_from_master_to_slave(sel, mel, [ 1.0])\n", + " xi2a = calc_projection_from_slave_to_master(sel, mel, [-1.0])\n", + " xi2b = calc_projection_from_slave_to_master(sel, mel, [ 1.0])\n", + " xi1 = Vector[xi1a, xi1b]\n", + " xi2 = Vector[xi2a, xi2b]\n", + " if clamp\n", + " clamp!(xi1, -1, 1)\n", + " clamp!(xi2, -1, 1)\n", + " end\n", " return xi1, xi2\n", "end" ] @@ -307,7 +396,35 @@ }, { "cell_type": "code", - "execution_count": 9, + "execution_count": 7, + "metadata": { + "collapsed": false + }, + "outputs": [ + { + "data": { + "text/plain": [ + "integrate_segment (generic function with 1 method)" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "function integrate_segment(sel, mel, xi1, xi2)\n", + " nsel = get_number_of_basis_functions(sel)\n", + " nmel = get_number_of_basis_functions(mel)\n", + " De = zeros(nsel, nsel)\n", + " Me = zeros(nsel, nmel)\n", + " return De, Me\n", + "end" + ] + }, + { + "cell_type": "code", + "execution_count": 8, "metadata": { "collapsed": false }, @@ -315,10 +432,10 @@ { "data": { "image/png": [ - "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bXTFFVd4fXmlWZ577jllZmbqn//8p9mlAAgiBBwAAa10aY+vZnAyMjI0efLkMx632+2aPHmyMjIyLmncmTNnlu21KS4uPmXPQmJiomnntfhK7dq1tW/fPp/cq3379vr555+Vf45ueL509913Kzs725KzdG3atNGAAQM0ceJE5eXlmV0OgCBBwAEQ0Fwul2w22xkHenrLzJkzNXr0aLVp00aSZ1mVYRgqKirS6NGjKySInDyDEyyaNWum3NzcUw7k9BZ/24czceLEUz5bzcSJE3Xo0CFNmzbN7FIABAkCDoCAlpmZqbp16/q8I9bBgwclSddcc02Fj336DE4w6NChgyRp5cqVXr+Xv+3DqVGjhho3bqxly5bJfbaW4gGuSZMmeuSRRzRlyhQdOXLE7HIABIHg+gkKwHJcLpfPlqedLDw8XNKlNxU4l2AMOL7spOZv+3Ak6fe//70KCws1d+5cs0vxitJGA1Y77weAfwqun6AALMflcvmswcDJHA6HIiMjvTJ2MAaczp07S5LPQoe/7cP585//rJCQEL388stml+IVNWvW1KhRozRt2jTLnfkDwP8E109QAJbjqzNwTpeVleW1gFNSUqLQCzhQ1EpCQkIUGRmpn376ySf387d9OBEREWrbtq02bNjgN6Groj322GOqVKmSnn32WbNLAWBxBBwAAevo0aM6dOiQKQEnNzdXMTExXhk7GGdwJN92UvO3fTiS9Kc//UmGYeill14yuxSviI6O1pNPPqmZM2dq69atZpcDwMKC7ycoAMvIzMyUJFOWqOXn56t69epeGTsYZ3AkTye1vLw8n3RS88d9OPfdd58cDofefPNNs0vxmmHDhqlWrVp6+umnzS4FgIURcAAELF+fgVPK7XarpKRENWvW9Mr4wRpwrrvuOkm+6aQm+d8+nJCQEN18883asWOHZfepVKpUSRMmTNC7776rdevWmV0OAIsi4AAIWC6XS1WrVlVsbKxP77t//35JUr169bwyfrAGnO7du0vyTSc1yf/24Ugqm9l45plnTK7Eex566CE1bdpUTz75pNmlALAoAg6AgFXaYMDXh2Kmp6dLktcOF3W73V5pP+3vOnbsKMlzeKov+OM+nISEBEVHR+uDDz4wuxSvsdvteu655/T5559r6dKlZpcDwIIIOAACllln4GzZskWS95bGud3uoJzB8XUnNX/c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" ], "text/plain": [ - "PyPlot.Figure(PyObject )" + "PyPlot.Figure(PyObject )" ] }, "metadata": {}, @@ -330,7 +447,7 @@ "(-3.0,5.0,-0.1,3.6)" ] }, - "execution_count": 9, + "execution_count": 8, "metadata": {}, "output_type": "execute_result" } @@ -346,14 +463,16 @@ " end\n", " for sel in Γ₁\n", " for mel in Γ₂\n", - " if has_projection(sel, mel)\n", - " xi1, xi2 = calc_projection(sel, mel)\n", + " xi1, xi2 = calc_projection(sel, mel)\n", + " if has_projection(xi1, xi2)\n", " X1 = interpolate(sel, :Geometry, xi1)\n", " X2 = interpolate(mel, :Geometry, xi2)\n", - " #println(\"$X1\\n\\n$X2\")\n", " for s=1:2\n", - " plot([X1[s][1], X2[s][1]], [X1[s][2], X2[s][2]], \"-kx\")\n", + " x = [X1[s][1], X2[s][1]]\n", + " y = [X1[s][2], X2[s][2]]\n", + " plot(x, y, \"-kx\")\n", " end\n", + " De, Me = integrate_segment(sel, mel, xi1, xi2)\n", " end\n", " end\n", " end\n", @@ -374,32 +493,24 @@ }, { "cell_type": "code", - "execution_count": 10, + "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { - "data": { - "image/png": [ - "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" - ], - "text/plain": [ - "PyPlot.Figure(PyObject )" - ] - }, - "metadata": {}, - "output_type": "display_data" - }, - { - "data": { - "text/plain": [ - "(-3.0,5.0,-0.1,3.6)" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" + "ename": "LoadError", + "evalue": "LoadError: BoundsError: attempt to access (2,)\n at index [2]\nwhile loading In[9], in expression starting on line 13", + "output_type": "error", + "traceback": [ + "LoadError: BoundsError: attempt to access (2,)\n at index [2]\nwhile loading In[9], in expression starting on line 13", + "", + " in getindex at tuple.jl:8", + " in get_detJ at /home/jukka/.julia/v0.5/JuliaFEM/src/equations.jl:50", + " in fit_derivative_field! at /home/jukka/.julia/v0.5/JuliaFEM/src/elements.jl:434", + " [inlined code] from In[9]:14", + " in anonymous at no file:0" + ] } ], "source": [ @@ -420,28 +531,17 @@ "end\n", "plot_all()" ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": { - "collapsed": true - }, - "outputs": [], - "source": [] } ], "metadata": { "kernelspec": { - "display_name": "Julia 0.4.0-dev", + "display_name": "Julia 0.5.0-dev", "language": "julia", - "name": "julia-0.4" + "name": "julia-0.5" }, "language_info": { - "file_extension": ".jl", - "mimetype": "application/julia", "name": "julia", - "version": "0.4.0" + "version": "0.5.0" } }, "nbformat": 4,