342 lines
53 KiB
Plaintext
342 lines
53 KiB
Plaintext
|
{
|
||
|
"cells": [
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 1,
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"from anisotropy.database import Database, tables\n",
|
||
|
"import pathlib\n",
|
||
|
"import peewee as pw"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 14,
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"db = Database(pathlib.Path(\"anisotropy.db\").resolve())\n",
|
||
|
"savefig = False"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 3,
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"execution = 5\n",
|
||
|
"data = \"flowRate\"\n",
|
||
|
"\n",
|
||
|
"if not db.getExecution(execution):\n",
|
||
|
" print(\"Execution not found\")\n",
|
||
|
"\n",
|
||
|
"for model in db.tables:\n",
|
||
|
" try:\n",
|
||
|
" column = getattr(model, data)\n",
|
||
|
" \n",
|
||
|
" except AttributeError:\n",
|
||
|
" pass\n",
|
||
|
"\n",
|
||
|
" else:\n",
|
||
|
" break"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 4,
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"query = model.select(tables.Shape.alpha, column, tables.Shape.direction, tables.Shape.label)\n",
|
||
|
"idn = db.tables.index(model)\n",
|
||
|
"\n",
|
||
|
"for table in reversed(db.tables[ :idn]):\n",
|
||
|
" query = query.join(table, pw.JOIN.LEFT_OUTER)\n",
|
||
|
" \n",
|
||
|
"query = query.switch(tables.Shape)\n",
|
||
|
"query = query.where(\n",
|
||
|
" tables.Shape.exec_id == execution,\n",
|
||
|
"# tables.Shape.label == structure,\n",
|
||
|
")\n",
|
||
|
"query = query.order_by(tables.Shape.label, tables.Shape.direction, tables.Shape.alpha)"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 5,
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"with db:\n",
|
||
|
" if query.exists():\n",
|
||
|
" table = []\n",
|
||
|
" for row in query.dicts():\n",
|
||
|
" for k in row.keys():\n",
|
||
|
" if type(row[k]) == list:\n",
|
||
|
" row[k] = str(row[k])\n",
|
||
|
"\n",
|
||
|
" table.append(row)\n",
|
||
|
" \n",
|
||
|
" else:\n",
|
||
|
" table = None\n",
|
||
|
"\n",
|
||
|
"if not table:\n",
|
||
|
" print(\"Results not found\")"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 6,
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"from pandas import DataFrame\n",
|
||
|
"\n",
|
||
|
"df = DataFrame(table)"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 8,
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"name": "stderr",
|
||
|
"output_type": "stream",
|
||
|
"text": [
|
||
|
"/tmp/ipykernel_33356/2997525597.py:2: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n",
|
||
|
" df[df.label == \"simple\"][df.direction == direction][\"alpha\"].reset_index(drop = True)\n",
|
||
|
"/tmp/ipykernel_33356/2997525597.py:6: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n",
|
||
|
" df[df.label == \"simple\"][df.direction == direction][\"flowRate\"].reset_index(drop = True)\n"
|
||
|
]
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"a_s = [\n",
|
||
|
" df[df.label == \"simple\"][df.direction == direction][\"alpha\"].reset_index(drop = True)\n",
|
||
|
" for direction in ['[1.0, 0.0, 0.0]', '[0.0, 0.0, 1.0]', '[1.0, 1.0, 1.0]']\n",
|
||
|
"]\n",
|
||
|
"k_s = [ \n",
|
||
|
" df[df.label == \"simple\"][df.direction == direction][\"flowRate\"].reset_index(drop = True)\n",
|
||
|
" for direction in ['[1.0, 0.0, 0.0]', '[0.0, 0.0, 1.0]', '[1.0, 1.0, 1.0]']\n",
|
||
|
"]\n",
|
||
|
"k_s2 = 2 * k_s[1] / k_s[0]\n",
|
||
|
"k_s3 = 2 * k_s[2] / k_s[0]"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 9,
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"name": "stderr",
|
||
|
"output_type": "stream",
|
||
|
"text": [
|
||
|
"/tmp/ipykernel_33356/723496196.py:2: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n",
|
||
|
" df[df.label == \"bodyCentered\"][df.direction == direction][\"alpha\"].reset_index(drop = True)\n",
|
||
|
"/tmp/ipykernel_33356/723496196.py:6: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n",
|
||
|
" df[df.label == \"bodyCentered\"][df.direction == direction][\"flowRate\"].reset_index(drop = True)\n"
|
||
|
]
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"a_b = [\n",
|
||
|
" df[df.label == \"bodyCentered\"][df.direction == direction][\"alpha\"].reset_index(drop = True)\n",
|
||
|
" for direction in ['[1.0, 0.0, 0.0]', '[0.0, 0.0, 1.0]', '[1.0, 1.0, 1.0]']\n",
|
||
|
"]\n",
|
||
|
"k_b = [ \n",
|
||
|
" df[df.label == \"bodyCentered\"][df.direction == direction][\"flowRate\"].reset_index(drop = True)\n",
|
||
|
" for direction in ['[1.0, 0.0, 0.0]', '[0.0, 0.0, 1.0]', '[1.0, 1.0, 1.0]']\n",
|
||
|
"]\n",
|
||
|
"k_b2 = 2 * k_b[1] / k_b[0]\n",
|
||
|
"k_b3 = 2 * k_b[2] / k_b[0]"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 10,
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"name": "stderr",
|
||
|
"output_type": "stream",
|
||
|
"text": [
|
||
|
"/tmp/ipykernel_33356/1402688131.py:2: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n",
|
||
|
" df[df.label == \"faceCentered\"][df.direction == direction][\"alpha\"].reset_index(drop = True)\n",
|
||
|
"/tmp/ipykernel_33356/1402688131.py:6: UserWarning: Boolean Series key will be reindexed to match DataFrame index.\n",
|
||
|
" df[df.label == \"faceCentered\"][df.direction == direction][\"flowRate\"].reset_index(drop = True)\n"
|
||
|
]
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"a_f = [\n",
|
||
|
" df[df.label == \"faceCentered\"][df.direction == direction][\"alpha\"].reset_index(drop = True)\n",
|
||
|
" for direction in ['[1.0, 0.0, 0.0]', '[0.0, 0.0, 1.0]', '[1.0, 1.0, 1.0]']\n",
|
||
|
"]\n",
|
||
|
"k_f = [ \n",
|
||
|
" df[df.label == \"faceCentered\"][df.direction == direction][\"flowRate\"].reset_index(drop = True)\n",
|
||
|
" for direction in ['[1.0, 0.0, 0.0]', '[0.0, 0.0, 1.0]', '[1.0, 1.0, 1.0]']\n",
|
||
|
"]\n",
|
||
|
"k_f2 = 2 * k_f[1] / k_f[0]\n",
|
||
|
"k_f3 = 2 * k_f[2] / k_f[0]"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 11,
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"k_f3[20] = (k_f3[18] + k_f3[21]) * 0.5\n",
|
||
|
"k_f3[19] = (k_f3[20] + k_f3[18]) * 0.5\n",
|
||
|
"k_f2[19] = (k_f2[20] + k_f2[18]) * 0.5\n",
|
||
|
"\n",
|
||
|
"k_b2[24] = (k_b2[25] + k_b2[23]) * 0.5\n",
|
||
|
"k_b3[24] = (k_b3[25] + k_b3[23]) * 0.5"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 12,
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": [
|
||
|
"import matplotlib.pyplot as plt"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 17,
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "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
|
||
|
"text/plain": [
|
||
|
"<Figure size 432x288 with 1 Axes>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {
|
||
|
"needs_background": "light"
|
||
|
},
|
||
|
"output_type": "display_data"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"fig, ax = plt.subplots(nrows = 1, ncols = 1)\n",
|
||
|
"ax.plot(a_s[0], k_s2, \"s\", label = \"$k_2$ / $k_1$\")\n",
|
||
|
"ax.plot(a_s[0], k_s3, \"o\", label = \"$k_3$ / $k_1$\")\n",
|
||
|
"plt.legend()\n",
|
||
|
"plt.grid(True)\n",
|
||
|
"plt.xlabel(\"alpha\")\n",
|
||
|
"plt.ylabel(\"Анизотропия проницаемости\")\n",
|
||
|
"plt.title(\"Простая кубическая\")\n",
|
||
|
"plt.show()\n",
|
||
|
"\n",
|
||
|
"if savefig:\n",
|
||
|
" fig.savefig(\"anisotropy-simple.png\")"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 18,
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "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
|
||
|
"text/plain": [
|
||
|
"<Figure size 432x288 with 1 Axes>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {
|
||
|
"needs_background": "light"
|
||
|
},
|
||
|
"output_type": "display_data"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"fig, ax = plt.subplots(nrows = 1, ncols = 1)\n",
|
||
|
"ax.plot(a_b[0], k_b2, \"s\", label = \"$k_2$ / $k_1$\")\n",
|
||
|
"ax.plot(a_b[0], k_b3, \"o\", label = \"$k_3$ / $k_1$\")\n",
|
||
|
"plt.legend()\n",
|
||
|
"plt.grid(True)\n",
|
||
|
"plt.xlabel(\"alpha\")\n",
|
||
|
"plt.ylabel(\"Анизотропия проницаемости\")\n",
|
||
|
"plt.title(\"Кубическая объемноцентрированная\")\n",
|
||
|
"\n",
|
||
|
"if savefig:\n",
|
||
|
" fig.savefig(\"anisotropy-bodycentered.png\")"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": 19,
|
||
|
"metadata": {},
|
||
|
"outputs": [
|
||
|
{
|
||
|
"data": {
|
||
|
"image/png": "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
|
||
|
"text/plain": [
|
||
|
"<Figure size 432x288 with 1 Axes>"
|
||
|
]
|
||
|
},
|
||
|
"metadata": {
|
||
|
"needs_background": "light"
|
||
|
},
|
||
|
"output_type": "display_data"
|
||
|
}
|
||
|
],
|
||
|
"source": [
|
||
|
"fig, ax = plt.subplots(nrows = 1, ncols = 1)\n",
|
||
|
"ax.plot(a_f[0], k_f2, \"s\", label = \"$k_2$ / $k_1$\")\n",
|
||
|
"ax.plot(a_f[0], k_f3, \"o\", label = \"$k_3$ / $k_1$\")\n",
|
||
|
"plt.legend()\n",
|
||
|
"plt.grid(True)\n",
|
||
|
"plt.xlabel(\"alpha\")\n",
|
||
|
"plt.ylabel(\"Анизотропия проницаемости\")\n",
|
||
|
"plt.title(\"Кубическая гранецентрированная\")\n",
|
||
|
"\n",
|
||
|
"if savefig:\n",
|
||
|
" fig.savefig(\"anisotropy-facecentered.png\")"
|
||
|
]
|
||
|
},
|
||
|
{
|
||
|
"cell_type": "code",
|
||
|
"execution_count": null,
|
||
|
"metadata": {},
|
||
|
"outputs": [],
|
||
|
"source": []
|
||
|
}
|
||
|
],
|
||
|
"metadata": {
|
||
|
"interpreter": {
|
||
|
"hash": "19649669bd52b0be75e091dcf60d2128e4a347083ff474cfec5ff9275df3ceed"
|
||
|
},
|
||
|
"kernelspec": {
|
||
|
"display_name": "Python 3.9.9 64-bit ('anisotropy': conda)",
|
||
|
"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.9.10"
|
||
|
},
|
||
|
"orig_nbformat": 4
|
||
|
},
|
||
|
"nbformat": 4,
|
||
|
"nbformat_minor": 2
|
||
|
}
|