Commit 2f2ec880 authored by florez's avatar florez
Browse files

wall with rips

parent 973adb6c
......@@ -3,7 +3,7 @@
{
"cell_type": "code",
"execution_count": 1,
"id": "59a9f2d7-aadb-4d96-9b19-0cfcf7c950dc",
"id": "3a4b7e63-10d0-4af2-bc97-5360ea402ff5",
"metadata": {},
"outputs": [],
"source": [
......@@ -14,6 +14,30 @@
{
"cell_type": "code",
"execution_count": 2,
"id": "91261137-56d5-49b9-b386-dfb54d40da2a",
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Mesh generated\n"
]
}
],
"source": [
"import subprocess\n",
"\n",
"ret = subprocess.run(\"gmsh -3 -order 1 -o cyl_03_mohit.msh cyl_03_mohit.geo\", shell=True)\n",
"if ret.returncode:\n",
" print(\"Beware, gmsh could not run: mesh is not regenerated\")\n",
"else:\n",
" print(\"Mesh generated\")"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "c1339e28-e6b1-4155-b25e-f3b848025838",
"metadata": {},
"outputs": [],
......@@ -21,8 +45,8 @@
"material_file = \"\"\"\n",
"material elastic [\n",
" name = steel\n",
" rho = 1 # density\n",
" E = 1 # young's modulus\n",
" rho = 7800 # density\n",
" E = 210e6 # young's modulus\n",
" nu = 0.3 # poisson's ratio\n",
"]\"\"\"\n",
"# writing the material file\n",
......@@ -33,13 +57,16 @@
},
{
"cell_type": "code",
"execution_count": 3,
"execution_count": 4,
"id": "30c1bb68-80b2-41ea-9aa6-a08daf741c9b",
"metadata": {},
"outputs": [],
"source": [
"mesh = aka.Mesh(3)\n",
"mesh.read('cyl_02.msh')\n",
"aka.parseInput(material_file)\n",
"\n",
"spatial_dimension = 3\n",
"mesh = aka.Mesh(spatial_dimension)\n",
"mesh.read('cyl_03_mohit.msh')\n",
"\n",
"model = aka.SolidMechanicsModel(mesh)\n",
"model.initFull(_analysis_method=aka._static)"
......@@ -47,75 +74,136 @@
},
{
"cell_type": "code",
"execution_count": 4,
"id": "23cdc1b2-692e-4457-a454-89d49722e94a",
"execution_count": 5,
"id": "9bb306b5-2e9c-4b3e-aaeb-347e7a1ee5f8",
"metadata": {},
"outputs": [],
"source": [
"mesh.createBoundaryGroupFromGeometry()\n",
"aka.parseInput(material_file)"
"for dir in [aka._x, aka._y, aka._z]:\n",
" model.applyBC(aka.FixedValue(0.0, dir), \"bottom\")\n",
"\n",
"# trac = np.eye(3)\n",
"trac = [0, 0, 1e6]\n",
"model.applyBC(aka.FromTraction(trac), \"top\")\n",
"np.set_printoptions(threshold=10)\n"
]
},
{
"cell_type": "code",
"execution_count": 12,
"id": "a1d797dd-c63c-4b8b-9aaa-5d00947a414a",
"execution_count": 6,
"id": "4d56ac9e-37db-48d3-8366-f8f8cb000bb6",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"array([[0.00000000e+00, 0.00000000e+00, 0.00000000e+00],\n",
" [0.00000000e+00, 0.00000000e+00, 1.00506689e-05],\n",
" [0.00000000e+00, 0.00000000e+00, 0.00000000e+00],\n",
" ...,\n",
" [0.00000000e+00, 0.00000000e+00, 2.04378535e-03],\n",
" [0.00000000e+00, 0.00000000e+00, 2.01312308e-03],\n",
" [0.00000000e+00, 0.00000000e+00, 2.40760514e-03]])"
"<py11_akantu.Material at 0x7f9c53837030>"
]
},
"execution_count": 5,
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"for dir in [aka._x, aka._y, aka._z]:\n",
" model.applyBC(aka.FixedValue(0, dir), \"bottom\")\n",
"steel = model.getMaterial('steel')\n",
"steel"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "845b08f6-cda8-4a72-8fa0-f1ba47fb432f",
"metadata": {},
"outputs": [],
"source": [
"solver = model.getNonLinearSolver()\n",
"solver.set(\"max_iterations\", 6)\n",
"solver.set(\"threshold\", 1e-8)\n",
"solver.set(\"convergence_type\", aka.SolveConvergenceCriteria.residual)\n",
"\n",
"# trac = np.eye(3)\n",
"trac = [0, 0, 1]\n",
"model.applyBC(aka.FromTraction(trac), \"top\")\n",
"np.set_printoptions(threshold=10)\n",
"model.getExternalForce()"
"model.solveStep()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "e26678ea-2a60-44fb-8956-6ce84db4174f",
"execution_count": 8,
"id": "5a37bde3-b92c-401b-9429-c76b9beddb05",
"metadata": {},
"outputs": [],
"source": [
"conn = mesh.getConnectivity(aka._tetrahedron_4)\n",
"stress_field = model.getMaterial(0).getStress(aka._tetrahedron_4)"
]
},
{
"cell_type": "code",
"execution_count": 9,
"id": "60a70c37-31bf-48bf-a4ac-8333abd62e93",
"metadata": {},
"outputs": [],
"source": [
"# specify what field to output into paraview files\n",
"model.setBaseName(\"cylinder\")\n",
"model.addDumpFieldVector(\"displacement\")\n",
"model.addDumpFieldVector(\"external_force\")\n",
"model.addDumpField(\"strain\")\n",
"model.addDumpField(\"stress\")\n",
"model.addDumpField(\"blocked_dofs\")\n",
"\n",
"model.dump()"
]
},
{
"cell_type": "code",
"execution_count": 10,
"id": "ac9c3e33-7117-4809-a433-3e7fef3a3344",
"metadata": {},
"outputs": [
{
"ename": "Exception",
"evalue": "akantu::debug::CriticalError : Error in mumps during solve process, check mumps user guide INFO(1) = -3 [/tmp/app/spack-stage/spack-stage-akantu-master-t5tv2fws2j5an4dr4sqytng27g7b3fyr/spack-src/src/solver/sparse_solver_mumps.cc:445]",
"output_type": "error",
"traceback": [
"\u001b[0;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[0;31mException\u001b[0m Traceback (most recent call last)",
"\u001b[0;32m<ipython-input-6-68da59902414>\u001b[0m in \u001b[0;36m<module>\u001b[0;34m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0msolver\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mset\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m\"convergence_type\"\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0maka\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mSolveConvergenceCriteria\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mresidual\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 6\u001b[0;31m \u001b[0mmodel\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0msolveStep\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[0;31mException\u001b[0m: akantu::debug::CriticalError : Error in mumps during solve process, check mumps user guide INFO(1) = -3 [/tmp/app/spack-stage/spack-stage-akantu-master-t5tv2fws2j5an4dr4sqytng27g7b3fyr/spack-src/src/solver/sparse_solver_mumps.cc:445]"
"data": {
"image/png": "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lrcM+G8MwFxIAAAAp7XHPOYxP/MzP3Ps2LGrrrrqH/7hH84+++xHPOIRr3nNa9785jcnxxtjfumXfmnv3r3vfve7d+/e/UM/9EPT6fRP/uRPRKQMo3/iJ37i3/7bf/uhD33owx/+cFEUF1100U//9E8//vGP/83f/M0777wzec5LL730BS94QXkP73vf++53v/t967d+66te9ao//uM/DkY+6lGPeuELX2it/dCHPnTFFVds27bt277t237913/9Pe95z+tf//oyDxGRxz3ucS94wQu+9rWvXXnlle95z3vOOuus7/zO73z84x//xje+8T3veU9ztvPPP/83fuM3PvrRj771rW8966yznvjEJ/7Wb/3Wb//2b7/sZS+788473/Wud339619/5CMf+dKXvvQtb3nL2972tubAgec/66yzfvu3f/uee+754Ac/eOTIkW/5lm95/vOf/9CHPvRVr3qVtfbyyy9fW1t7+MMf/qQnPen3fu/3vv71r998880z/XcIYBwSAADA6Wvfvn0vfvGLP/7xj//O7/zOwYMHyzeLoviBH/iBn/7pn04ecu655z7wgQ98wxve8O53v1tEtm7d2kxji8hDHvKQc8455z//5//8xS9+sXnzgQ984C//8i+/+MUv/uVf/uX4OcD+/ftf9KIXlfdw7733lm++5S1vefrTn/6c5zzHHXneeef93M/93Kc+9anXvva1zcg///M///Ef//Ef/MEfvPfee//3//7fInLhhRe+8IUvfP/73/+GN7xhfX29HPbWt771J37iJ37mZ37my1/+cvO44H73u1/zRUTkHe94x+te97rf/M3f/MxnPvNf/+t/PXz4sIj81V/91fOf//xnPvOZV1xxxVe+8pVR5z/vvPPe8Y53/OEf/mH5rd/2trc96UlPuuyyyz760Y++//3v/+QnPyki27dvf9KTnnTVVVc13wjARqMLEADg9PWTP/mTd99992te85om+hcRa+1f/MVf/L//9/86DtyzZ0/54lWvelVZF9R49atf7Ub/IvKFL3zhda973UMf+tDHPvaxyXu46667Xv3qV7sRsKr++Z//+ZVXXumO/Kmf+ql77703GCkib3nLW8qJ9slkUp7wlltu+Z//83820bmIrK+v//7v//4XvvCFH/3RH23e/NrXvtYU5IjIXXfd9fd///fGmP/zf/5PGf2X3vGOdywtLV1yySXNDQ88/7333vuWt7zFzXne8573XH/99U960pPivwOATcMTAADAacoY883f/M3vfOc7Dx06FH/6rne964lPfGL8/i233PKhD33oGc94xr59+971rnd9+tOfdgPcG2+88XOf+1x81Mc+9rF77rnnwQ9+8BVXXBHcw4Me9KDcPfz93//9Yx7zmGbkgx/84LIsJx75/ve/v3xRFMUDH/jAj3zkI49+9KPjYTfeeOP3fu/37ty5s0whbrnlluCJxG233db8Z+OOO+5Q1fvd735jz3/bbbcdO3YsGHPDDTc87GEPi48FsGlIAAAAp6n73e9+q6urt956a/LTjnr0V77yld/7vd/7lKc85RWveMUXvvCFV73qVXfccUf5Ue5s5Qn37dsXvHnWWWd13MMtt9wS3O2XvvSl3PmbYSsrK5deeumll16aG7Nnz54yQD9y5Ejw0dGjR5v/bKyvr1trl5aWxp4/mdXcc889Kysr3d8CwIYiAQAAnKYOHDhw+PDh888/P/lpHKw3ptPpu9/97ne/+92XXHLJi1/84l/7tV9rFgzkziYi5557btxL58477zxy5EjuWu7Z7rzzzsOHD5933nm585e+8pWvHD58+PLLL/+rv/qr7pGzGXX+ZOOj7m5IADYBawAAAKcpa+3nPve5Sy+9dPv27fGnT3nKU5JHPfCBD/yO7/iO8vWnP/3pt771reeee+4555xTvrNv375v/uZvjo/61m/91jPOOOOzn/1sfA9XX3117h7cWnlV/cxnPnPppZdu27YtHvmQhzzkcY973GQyUdXPfvaz5et42POe97xnPetZye810EafH8AmIAEAAJy+/uAP/mBtbe0lL3nJzp07mzeNMd/3fd/3hCc8IXnIwx72sJe+9KXNnP2uXbtE5L777msGvOQlL7nwwgvdQ77xG7/xhS984ac+9algAUBzD7t3747v4Qd/8AebTKP0+7//+2traz/3cz/njhSRJzzhCf/9v//3Sy65pGwD+gd/8Af79u277LLLtmzZ4p7w2c9+9pOf/OSy9848Nvr8ADYaJUAAgNPXzTff/JrXvOayyy574xvfeOWVV95444179ux5xCMecdFFF73hDW94wQteEB/yvve97wd+4Ad+/ud//u/+7u927dr1/d///VdccUXTludTn/rUjTfe+NrXvvaDH/zgtddea4x5wAMe8JjHPObaa699zWtek6x+uf7663/3d3/3+c9//hve8IYrr7zypptu2rNnzyMf+chv+qZv+oM/+IOf+qmfakbeeuutv/Vbv/XCF76wuduzzjrrkksuedCDHnTllVe+6U1vKod96Utfes1rXvOzP/uzD33oQ6+88spbb7119+7dl156admVf/4AfaPPD2CjkQAAAE5rH/rQhz7zmc/84A/+4IMe9KDv+q7vstZ+4Qtf+C//5b9cd911l156abx115133vnSl7702c9+9jOf+cxDhw793d/9nbtdl7X293//96+77rp/82/+zbd/+7cfOXLki1/84pve9Ka//du/7ah9/4d/+IdPfepTT3/60y+66KInPOEJx44d+/znP//zP//zN99883d8x3fcfffdzciPfexjz3ve837wB3/wm7/5mx/3uMcdOnToxhtv/NVf/dWPf/zj7gmvuuqqz3/+809/+tMvueSSpzzlKV/+8pc///nPv+xlLysb+c9vo88PYEOZpz3tacf7Hk4mV1/9+Kuv/q6nPe1lx/tGAAAnnFe84hXT6TTYFgAATjSsAQAAAABOIyQAAAAAwGmENQAAxtm/f/8znvGMb/qmb1pbW7vmmmv++Z//+a//+q87ipt7x489IYb4hm/4hmc84xkPfvCDl5eXb7jhhne+850f/OAHO8Zv37792c9+9r/6V/9qZWXls5/97Jvf/GZ3C6ohAyAib3/722f+/7qPfOQjX/7yl//zP//zy1/+8t7BL3/5y88///wXvOAF8U5eAwdgBgP/qnv37v3RH/3Riy++eG1t7frrr/+Hf/iH97znPe7/x+gdgLHG/kl7/4U29l+hJx2eAAAY4dGPfvRrX/vas8466//+3//7hje84YYbbvixH/uxX/zFX3S7AY4aP/aEGOKSSy551ateddZZZ/3lX/7l61//+i996Uu/8Au/8JznPKfjkF/6pV96xCMe8ad/+qdvetObdu/e/cpXvnJtbW3UAIjIRz/60Y997GMzHLhjx46f/dmfHTj40ksvfeQjH/l7v/d7uTC0dwBmMPCv+vCHP/x//I//cf/73//tb3/761//+uuvv/4//af/9Ku/+qvGmIEDMNYMf9Luf6HN8K/Qkw5PAAAMtWXLluc973kf/ehHX/3qV5ftxq+44or3ve99r3nNa572tKf95V/+5djxY0+IIYwxz3/+86+99tpf/dVfPXr0qIhcccUVn/vc5174whd+4AMfuOaaa+JDHvSgBz3kIQ958YtffO2114rIP/3TP/3RH/3RE5/4xOa/gt4BmNPznve86XQadPJJ2rlz50/91E+9973v/cQnPjHbAMxg4F91dXX1hS984Uc+8pFXv/rV5fTzFVdc8Y//+I+vfOUrv//7v/+v/uqvegdsztc5lczwJ+3+F9oM/wo9GfEEYJzL9l/3bx7zj/dcyNwkTkcPetCDzjjjjMsvv7wM1ks33HDDBz/4wcc97nEzjB97Qgxx/vnn79u370//9E/L/+kqvfe97z148ODDHvaw5CHLy8vvfe97r7vuuvLX++6778tf/vL973//4QMwj8c85jGPfexjf+d3fufrX/967+DnPve5qvqHf/iHMw/ADAb+VR/60Ife7373+6M/+iO3+OQLX/jC+973vsc//vFDBmCsGf6k3f9Cm+FfoScjEoChfmSHfef9j/3MBdc97Tv/8Z4Llm963PYjuxO7oAOnsLPOOktEbr311uD9W2+99cwzz5xh/NgTYoiiKD72sY/dfPPNwfuHDh3as2dP8pBPfepTv/M7v9P8z+d55513/vnnl3NjAwdgZnv27Hn+85//N3/zN//yL//SO/jhD3/4d3/3d//RH/3ROeecE2wGPHAAZjD8r3rBBRfce++9Bw4cCN6/9tpr9+/fb4zpHbDgWz8NzPAn7f4X2gz/Cj0ZUQLU70d22EuW7UO2qIj8yX2Tvzwiq0vTw7sndzxsdfWr0103Hlv56rT3JMApYPv27YcPH3Zn60sHDx7cunXrDOPHnhBD3Hjjjb/2a78WvPmN3/iNZ599dm/I/rSnPW3fvn2Pe9zj/vmf//n973//DAMw1mWXXXbvvfe+5S1v6R25urr6Mz/zM6p62WWXLS8vi8inP/3p3/3d37399tsHDsAMRv1V77777h07dqysrATrBM4888w777xTVXsHbOh3OSXN8ydN/gttnn+FnkR4AtDjR3bYH94+baL/yw8WK1+dnv3Jw/f/5OHVr1ZpwJcftsrTAJzOxv6PVu94/ldwsVZXV1/0ohddf/31H/jAB7pHnn/++fv3719dXd25c+cZZ5wxwwCM8j3f8z2PfOQjX/va1w5ZrfusZz3rrLPO+qu/+qvLLrvsGc94xq/8yq9s27btt3/7t3fv3j1wAGYw6q/6mc98xlr71Kc+1X1zx44dT3ziEz/1qU8NGYCx5vmTDvwX2vB/hZ5ETrsE4PGPf/w73/nOsoprdXX1937v9172spclnxCVNT8/vH0qIn9y3+Tf3rF8+cH2z1WmAbtuPCYiZRow/8KAf//v/325LFJELrzwwre//e3f9m3fNuc5AZzmtm3b9vKXv3zXrl2/8Ru/sb6+3j34jW984y/+4i8+97nPXV1d/W//7b/FvZh6B2C4s88++yd/8iff9ra3ff7zn+8dfNZZZz31qU+9/PLLy36F99133yc+8YmXvvSlR48effaznz1kAGYw9q962223ve1tb3vWs571Iz/yI+ecc8727dsf8YhH/OZv/ub27dv/7M/+bMgAjDXPn3TIv9BG/Sv0JHLalQBdccUVP/ZjP/bv/t2/++QnP/miF71oaWmpWTbeKGf9y9flrH/ubLtuOLrrhqP3XLjlnguW77lg+ciuYp6KoI985CPPec5zLrnkko9//OMveMELrrzyytnayQEbJ5ktd9St9o4fe0KMsra29mu/9mu7du166Utfettttw086s477/yt3/qtN77xjd/5nd+ZrPPpHYBexpgXvehFd9xxx+WXXz5k/CWXXFIUxTve8Q73zfvuu++9733vd3/3dw8ZgBnM8Ff94z/+43vvvfeZz3zmD//wD4vI+vr60tLS//pf/6spGeodgLHm/JN2/Atttn+FnhROuwRgOp2+/e1vf+5zn3vZZZc94hGPeMlLXnLfffc1nz5kiz5kizaz/p86aj51tD8Q2XXD0dWvTu+5YPnw7snh3ZOZFwbceuutN99888Mf/vCzzjpr7969v/7rvz72DMCGuu+++1ZWVpaXl48dO+a+v2PHjoMHD84wfuwJMcqZZ57567/+65PJ5Bd+4Re+/OUv54bt27fvO77jO972tre5izFuueWWu+666/zzzx8yADP4vu/7vm/+5m9+yUteMnBO8ayzzjp48ODhw4eD9w8cOLB7925jTO8AKutmMMNfVVXf/va3/83f/M3+/fuPHTv2cz/3c8eOHfvrv/7r4QMw1qg/6fB/oQ38V+hJ6rQrARKR97znPQcPHvye7/meV7/61V/60pea939kh33FnvUm+r/8YDEk+i8lFwbMcG8f+chHHv3oR//4j//4m970pq997WsznAHYOOW/Afft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\n",
"text/plain": [
"<PIL.Image.Image image mode=RGB size=1024x768 at 0x7F9C205C1E50>"
]
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"text/plain": [
"[(11.76918721474053, 11.773988933099506, 16.8785422055756),\n",
" (-0.002860101117820313, 0.0019416172411571564, 5.106494889717247),\n",
" (0.0, 0.0, 1.0)]"
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"solver = model.getNonLinearSolver()\n",
"solver.set(\"max_iterations\", 2)\n",
"solver.set(\"threshold\", 1e-10)\n",
"solver.set(\"convergence_type\", aka.SolveConvergenceCriteria.residual)\n",
"import pyvista as pv\n",
"\n",
"model.solveStep()"
"p = pv.Plotter(off_screen=False, notebook=False)\n",
"p.background_color = 'white'\n",
"\n",
"cyl_msh = pv.read(f'paraview/cylinder_{1:04d}.pvtu')\n",
"cyl_msh.set_active_scalars('displacement')\n",
"cyl_warped = cyl_msh.warp_by_vector('displacement')\n",
"cyl_warped.set_active_scalars('displacement')\n",
"\n",
"cyl_warped.plot()\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "738e4f52-bea5-4ae3-9454-2456af57c208",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
......
%% Cell type:code id:59a9f2d7-aadb-4d96-9b19-0cfcf7c950dc tags:
%% Cell type:code id:3a4b7e63-10d0-4af2-bc97-5360ea402ff5 tags:
``` python
import numpy as np
import akantu as aka
```
%% Cell type:code id:91261137-56d5-49b9-b386-dfb54d40da2a tags:
``` python
import subprocess
ret = subprocess.run("gmsh -3 -order 1 -o cyl_03_mohit.msh cyl_03_mohit.geo", shell=True)
if ret.returncode:
print("Beware, gmsh could not run: mesh is not regenerated")
else:
print("Mesh generated")
```
%%%% Output: stream
Mesh generated
%% Cell type:code id:c1339e28-e6b1-4155-b25e-f3b848025838 tags:
``` python
material_file = """
material elastic [
name = steel
rho = 1 # density
E = 1 # young's modulus
rho = 7800 # density
E = 210e6 # young's modulus
nu = 0.3 # poisson's ratio
]"""
# writing the material file
open('material.dat', 'w').write(material_file)
#reading the material file
material_file = 'material.dat'
```
%% Cell type:code id:30c1bb68-80b2-41ea-9aa6-a08daf741c9b tags:
``` python
mesh = aka.Mesh(3)
mesh.read('cyl_02.msh')
aka.parseInput(material_file)
spatial_dimension = 3
mesh = aka.Mesh(spatial_dimension)
mesh.read('cyl_03_mohit.msh')
model = aka.SolidMechanicsModel(mesh)
model.initFull(_analysis_method=aka._static)
```
%% Cell type:code id:23cdc1b2-692e-4457-a454-89d49722e94a tags:
``` python
mesh.createBoundaryGroupFromGeometry()
aka.parseInput(material_file)
```
%% Cell type:code id:a1d797dd-c63c-4b8b-9aaa-5d00947a414a tags:
%% Cell type:code id:9bb306b5-2e9c-4b3e-aaeb-347e7a1ee5f8 tags:
``` python
for dir in [aka._x, aka._y, aka._z]:
model.applyBC(aka.FixedValue(0, dir), "bottom")
model.applyBC(aka.FixedValue(0.0, dir), "bottom")
# trac = np.eye(3)
trac = [0, 0, 1]
trac = [0, 0, 1e6]
model.applyBC(aka.FromTraction(trac), "top")
np.set_printoptions(threshold=10)
model.getExternalForce()
```
%% Cell type:code id:4d56ac9e-37db-48d3-8366-f8f8cb000bb6 tags:
``` python
steel = model.getMaterial('steel')
steel
```
%%%% Output: execute_result
array([[0.00000000e+00, 0.00000000e+00, 0.00000000e+00],
[0.00000000e+00, 0.00000000e+00, 1.00506689e-05],
[0.00000000e+00, 0.00000000e+00, 0.00000000e+00],
...,
[0.00000000e+00, 0.00000000e+00, 2.04378535e-03],
[0.00000000e+00, 0.00000000e+00, 2.01312308e-03],
[0.00000000e+00, 0.00000000e+00, 2.40760514e-03]])
<py11_akantu.Material at 0x7f9c53837030>
%% Cell type:code id:e26678ea-2a60-44fb-8956-6ce84db4174f tags:
%% Cell type:code id:845b08f6-cda8-4a72-8fa0-f1ba47fb432f tags:
``` python
solver = model.getNonLinearSolver()
solver.set("max_iterations", 2)
solver.set("threshold", 1e-10)
solver.set("max_iterations", 6)
solver.set("threshold", 1e-8)
solver.set("convergence_type", aka.SolveConvergenceCriteria.residual)
model.solveStep()
```
%%%% Output: error
%% Cell type:code id:5a37bde3-b92c-401b-9429-c76b9beddb05 tags:
``` python
conn = mesh.getConnectivity(aka._tetrahedron_4)
stress_field = model.getMaterial(0).getStress(aka._tetrahedron_4)
```
%% Cell type:code id:60a70c37-31bf-48bf-a4ac-8333abd62e93 tags:
``` python
# specify what field to output into paraview files
model.setBaseName("cylinder")
model.addDumpFieldVector("displacement")
model.addDumpFieldVector("external_force")
model.addDumpField("strain")
model.addDumpField("stress")
model.addDumpField("blocked_dofs")
model.dump()
```
%% Cell type:code id:ac9c3e33-7117-4809-a433-3e7fef3a3344 tags:
``` python
import pyvista as pv
p = pv.Plotter(off_screen=False, notebook=False)
p.background_color = 'white'
cyl_msh = pv.read(f'paraview/cylinder_{1:04d}.pvtu')
cyl_msh.set_active_scalars('displacement')
cyl_warped = cyl_msh.warp_by_vector('displacement')
cyl_warped.set_active_scalars('displacement')
cyl_warped.plot()
```
%%%% Output: display_data
---------------------------------------------------------------------------
Exception Traceback (most recent call last)
<ipython-input-6-68da59902414> in <module>
4 solver.set("convergence_type", aka.SolveConvergenceCriteria.residual)
5
----> 6 model.solveStep()
%%%% Output: execute_result
[(11.76918721474053, 11.773988933099506, 16.8785422055756),
(-0.002860101117820313, 0.0019416172411571564, 5.106494889717247),
(0.0, 0.0, 1.0)]
%% Cell type:code id:738e4f52-bea5-4ae3-9454-2456af57c208 tags:
Exception: akantu::debug::CriticalError : Error in mumps during solve process, check mumps user guide INFO(1) = -3 [/tmp/app/spack-stage/spack-stage-akantu-master-t5tv2fws2j5an4dr4sqytng27g7b3fyr/spack-src/src/solver/sparse_solver_mumps.cc:445]
``` python
```
......
......@@ -3,9 +3,10 @@ SetFactory("OpenCASCADE");
//+
Cylinder(1) = {0, 0, 0, 0, 0, 1, 0.5, 2*Pi};
//+
Surface Loop(2) = {1, 2, 3};
//Surface Loop(2) = {1, 2, 3};
//+
Volume(2) = {2};
//Volume(2) = {2};
Physical Surface("bottom") = {3};
Physical Surface("top") = {2};
Physical Volume("steel") = {1};
\ No newline at end of file
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"id": "3a4b7e63-10d0-4af2-bc97-5360ea402ff5",
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import akantu as aka"
]
},
{
"cell_type": "code",
"execution_count": 2,
"id": "91261137-56d5-49b9-b386-dfb54d40da2a",
"metadata": {},
"outputs": [],
"source": [
"# import subprocess\n",
"\n",
"# ret = subprocess.run(\"gmsh -3 -order 1 -o out.msh in.geo\", shell=True)\n",
"# if ret.returncode:\n",
"# print(\"Beware, gmsh could not run: mesh is not regenerated\")\n",
"# else:\n",
"# print(\"Mesh generated\")"
]
},
{
"cell_type": "code",
"execution_count": 3,
"id": "c1339e28-e6b1-4155-b25e-f3b848025838",
"metadata": {},
"outputs": [],
"source": [
"material_file = \"\"\"\n",
"material elastic [\n",
" name = steel\n",
" rho = 7800 # density\n",
" E = 210e6 # young's modulus\n",
" nu = 0.3 # poisson's ratio\n",
"]\"\"\"\n",
"# writing the material file\n",
"open('material.dat', 'w').write(material_file)\n",
"#reading the material file\n",
"material_file = 'material.dat'"
]
},
{
"cell_type": "code",
"execution_count": 4,
"id": "30c1bb68-80b2-41ea-9aa6-a08daf741c9b",
"metadata": {},
"outputs": [],
"source": [
"aka.parseInput(material_file)\n",
"\n",
"spatial_dimension = 3\n",
"mesh = aka.Mesh(spatial_dimension)\n",
"mesh.read('cube.msh')\n",
"\n",
"model = aka.SolidMechanicsModel(mesh)\n",
"model.initFull(_analysis_method=aka._static)"
]
},
{
"cell_type": "code",
"execution_count": 5,
"id": "9bb306b5-2e9c-4b3e-aaeb-347e7a1ee5f8",
"metadata": {},
"outputs": [],
"source": [
"for dir in [aka._x, aka._y, aka._z]:\n",
" model.applyBC(aka.FixedValue(0.0, dir), \"bottom\")\n",
"\n",
"# trac = np.eye(3)\n",
"trac = [0, 0, 1e8]\n",
"model.applyBC(aka.FromTraction(trac), \"top\")\n",
"np.set_printoptions(threshold=10)\n"
]
},
{
"cell_type": "code",
"execution_count": 6,
"id": "4d56ac9e-37db-48d3-8366-f8f8cb000bb6",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"<py11_akantu.Material at 0x7f6b84a29670>"
]
},
"execution_count": 6,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"steel = model.getMaterial('steel')\n",
"steel"
]
},
{
"cell_type": "code",
"execution_count": 7,
"id": "845b08f6-cda8-4a72-8fa0-f1ba47fb432f",
"metadata": {},
"outputs": [],
"source": [
"solver = model.getNonLinearSolver()\n",
"solver.set(\"max_iterations\", 6)\n",
"solver.set(\"threshold\", 1e-8)\n",
"solver.set(\"convergence_type\", aka.SolveConvergenceCriteria.residual)\n",
"\n",
"model.solveStep()"
]
},
{
"cell_type": "code",
"execution_count": 25,
"id": "2a96374a-1ade-42cf-8024-69c1dd27f02e",
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"14"
]
},
"execution_count": 25,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"mesh.getConnectivity(aka._tetrahedron_4)\n",
"stress_field = model.getMaterial(0).getStress(aka._tetrahedron_4)\n",
"np.set_printoptions(threshold=100)\n",
"stress_field\n",
"mesh.getNbNodes()"
]
},
{
"cell_type": "code",
"execution_count": 36,
"id": "23e23201-534c-4b3b-8121-6f8504b57243",
"metadata": {},
"outputs": [