{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Linear Elasticity in 2D\n", "\n", "## Introduction\n", "\n", "This example provides a demonstration of using PyMKS to compute the linear strain field for a two-phase composite material. The example introduces the governing equations of linear elasticity, along with the boundary conditions required for the MKS. It subsequently demonstrates how to generate data for delta microstructures and then use this data to calibrate the first order MKS influence coefficients for all strain fields. The calibrated influence coefficients are used to predict the strain response for a random microstructure and the results are compared with those from finite element. Finally, the influence coefficients are scaled up and the MKS results are again compared with the finite element data for a large problem.\n", "\n", "PyMKS uses the finite element tool [SfePy](http://sfepy.org) to generate both the strain fields to fit the MKS model and the verification data to evaluate the MKS model's accuracy." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Elastostatics Equations\n", "\n", "For the sake of completeness, a description of the equations of linear elasticity is included. The constitutive equation that describes the linear elastic phenomena is Hook's law.\n", "\n", "$$ \\sigma_{ij} = C_{ijkl}\\varepsilon_{kl} $$\n", "\n", "$\\sigma$ is the stress, $\\varepsilon$ is the strain, and $C$ is the stiffness tensor that relates the stress to the strain fields. For an isotropic material the stiffness tensor can be represented by lower dimension terms which can relate the stress and the strain as follows.\n", "\n", "$$ \\sigma_{ij} = \\lambda \\delta_{ij} \\varepsilon_{kk} + 2\\mu \\varepsilon_{ij} $$\n", "\n", "$\\lambda$ and $\\mu$ are the first and second Lame parameters and can be defined in terms of the Young's modulus $E$ and Poisson's ratio $\\nu$ in 2D.\n", "\n", "$$ \\lambda = \\frac{E\\nu}{(1-\\nu)(1-2\\nu)} $$\n", "\n", "$$ \\mu = \\frac{E}{3(1+\\nu)} $$\n", "\n", "\n", "Linear strain is related to displacement using the following equation.\n", "\n", "$$ \\varepsilon_{ij} = \\frac{u_{i,j}+u_{j,i}}{2} $$\n", "\n", "We can get an equation that relates displacement and stress by plugging the equation above back into our expression for stress.\n", "\n", "$$ \\sigma_{ij} = \\lambda u_{k,k} + \\mu( u_{i,j}+u_{j,i}) $$\n", "\n", "The equilibrium equation for elastostatics is defined as\n", "\n", "$$ \\sigma_{ij,j} = 0 $$\n", "\n", "and can be cast in terms of displacement.\n", "\n", "$$ \\mu u_{i,jj}+(\\mu + \\lambda)u_{j,ij}=0 $$\n", "\n", "In this example, a displacement controlled simulation is used to calculate the strain. The domain is a square box of side $L$ which has an macroscopic strain $\\bar{\\varepsilon}_{xx}$ imposed.\n", "\n", "In general, generating the calibration data for the MKS requires boundary conditions that are both periodic and displaced, which are quite unusual boundary conditions and are given by:\n", "\n", "$$ u(L, y) = u(0, y) + L\\bar{\\varepsilon}_{xx}$$\n", "$$ u(0, L) = u(0, 0) = 0 $$\n", "$$ u(x, 0) = u(x, L) $$" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Modeling with MKS\n", "\n", "### Calibration Data and Delta Microstructures\n", "\n", "The first order MKS influence coefficients are all that is needed to compute a strain field of a random microstructure, as long as the ratio between the elastic moduli (also known as the contrast) is less than 1.5. If this condition is met, we can expect a mean absolute error of 2% or less, when comparing the MKS results with those computed using finite element methods [[1]](#References). \n", "\n", "Because we are using distinct phases and the contrast is low enough to only need the first order coefficients, delta microstructures and their strain fields are all that we need to calibrate the first order influence coefficients [[2]](#References). " ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [], "source": [ "from sklearn.pipeline import Pipeline\n", "import dask.array as da\n", "import numpy as np\n", "\n", "from pymks import (\n", " generate_delta,\n", " plot_microstructures,\n", " solve_fe,\n", " PrimitiveTransformer,\n", " LocalizationRegressor,\n", " coeff_to_real\n", ")" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The autoreload extension is already loaded. To reload it, use:\n", " %reload_ext autoreload\n" ] } ], "source": [ "#PYTEST_VALIDATE_IGNORE_OUTPUT\n", "\n", "%matplotlib inline\n", "%load_ext autoreload\n", "%autoreload 2" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here we use the `generate_delta` function to create the two delta microstructures needed to calibrate the first order influence coefficients." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "x_delta = generate_delta(n_phases=2, shape=(21, 21)).persist()\n", "plot_microstructures(x_delta[0], x_delta[1], titles=(\"X[0]\", \"X[1]\"), cmap='gray');" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Using delta microstructures for the calibration of the first order influence coefficients is essentially the same as using a unit [impulse response](http://en.wikipedia.org/wiki/Impulse_response) to find the kernel of a system in signal processing. Any given delta microstructure is composed of only two phases with the center cell having an alternative phase from the remainder of the domain. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Generating Calibration Data\n", "\n", "The `solve_fe` function provides an interface to generate strain fields, which can then be used for calibration of the influence coefficients.\n", "\n", "This example uses a microstructure with elastic moduli values of 100 and 120 and Poisson's ratio values of 0.3 and 0.3, respectively. The macroscopic imposed strain equal to 0.02. These parameters must be passed into the `solve_fe` function." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [], "source": [ "strain_xx = lambda x: solve_fe(\n", " x,\n", " elastic_modulus=(100, 120),\n", " poissons_ratio=(0.3, 0.3),\n", " macro_strain=0.02\n", " )['strain'][...,0]\n", "\n", "y_delta = strain_xx(x_delta).persist()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Observe the strain fields." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_microstructures(\n", " y_delta[0],\n", " y_delta[1],\n", " titles=(r'$\\mathbf{\\varepsilon_{xx}}$ [0]', r'$\\mathbf{\\varepsilon_{xx}}$ [1]')\n", ");" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Calibrating First Order Influence Coefficients\n", "\n", "The following creates a model using an Scikit-learn pipeline using the `PrimitiveTransformer` to discretize and the `LocalizationRegressor` to perform regression in Fourier space. `n_state` is set to 2 as there are 2 states." ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "model = Pipeline(steps=[\n", " ('discretize', PrimitiveTransformer(n_state=2, min_=0.0, max_=1.0)),\n", " ('regressor', LocalizationRegressor())\n", "])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The delta microstructures are used to calibrate the influence coefficients." ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [], "source": [ "model.fit(x_delta, y_delta);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The influence coefficient have been calibrated. The influence coefficients need to be converted into real space to view. A helper function, `to_real`, is used to get the real space coefficients from the model." ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "to_real = lambda x: coeff_to_real(x.steps[1][1].coeff).real\n", "\n", "coeff = to_real(model)\n", "plot_microstructures(coeff[...,0], coeff[...,1], titles=['Influence coeff [0]', 'Influence coeff [1]']);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The influence coefficients have a Gaussian-like shape." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Predict the Strain Field for a Random Microstructure\n", "\n", "Let's use the calibrated `model` to compute the strain field for a random two phase microstructure and compare it with the results from a finite element simulation. The `strain_xx` helper function is used to generate the strain field." ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [], "source": [ "da.random.seed(99)\n", "\n", "x_data = da.random.randint(2, size=(1,) + x_delta.shape[1:]).persist()\n", "y_data = strain_xx(x_data).persist()" ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_microstructures(y_data[0], titles=[r'$\\mathbf{\\varepsilon_{xx}}$']);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Note that the calibrated influence coefficients can only be used to reproduce the simulation with the same boundary conditions that they were calibrated with.**\n", "\n", "Get the predicted strain field using `model.predict`." ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [], "source": [ "y_predict = model.predict(x_data)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Finally, compare the results from finite element simulation and the MKS model." ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_microstructures(y_data[0], y_predict[0], titles=['Actual', 'Predicted']);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Lastly, observe the difference between the two strain fields." ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXMAAAEoCAYAAACq8xGmAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjMsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+AADFEAAAgAElEQVR4nO3de7RcZX3/8fcn9ysJuUGC3CsE8IKYBK2KUBBMiorKTYkW1LJWZWl/tQKtl5a02v5+wk8L/VUtWI0VJAirtKZSQGNgKVSQmyXhFgJBQA7kCiQn13O+vz9mB4fhzMz5nrMzW+PntdZeZ+bZ32c/e8+Z853nPHvvZxQRmJnZb7chVe+AmZkNnpO5mdluwMnczGw34GRuZrYbcDI3M9sNOJmbme0GnMwHSdIqST2SdtQt10jav3i8fz+28XZJOxq2ecIg9mmhpN6GfdohaS9JB0gKScMGuv1dYbDHXLedY4vju7yh/N1F+ReK5694HSS9VdJaSW8pnr9K0lWSnpW0SdIKSd+UNGWw+2lWNifzcpwUEcPqljMi4oni8RPtKkfErRFRdnL9u4Z9GhYRz5bcxm+q9cB7JO1dV/YpYFWzCpIOB/4N+HBE3FYU/6CocygwETgT6AGml7/LZoPjZL6L7Oz51T2/RdI/Fz9flHSbpH2KdcdKWlU8/hdgf+Cmojf9xaL8TZJuL+r+QtLbS9rPCZL+peh9/krS30pSse4iSUskLZK0XtLK4r+Ir0p6WlKXpA8mt3VV0ftdKenYVsc8CN3AvwJ/Wmz/KGA8cGuT12Bf4L+AP4+IHxRlk4HXARdHxIaI2B4Rd0fEH0fE/YPcP7PSOZl31muBTwN7Ay8AFzYGRMRHgSf4dW//s0XS/wHw98BU4IvAdZLGl7BP3wZ6gUOAtwCnAR+oWz8TuBJ4FXADcBOwHDgM+HPgn3Ym7H5u63vAvsBC4LJmx1zCcV0KfLR4jf4cuLhJ3J7AjcBXIuI7deXrgMeAb0o6SdLUEvbJbJdxMi/HDZK21C1jm8R9MyLuiohN1JLzzH5ufz7wg4hYHBFbIuJ7wGrg6BZ1/qJhn7ZI2qs+oHg+F/hkRDwfEY8D3wTm1YUtjYj/LPb5JuCZiPiniHgB+A9qww9TE9v6j4joBq5PHH9aRDxV7O/fArOBa5uEfh/Yh9qHTH39AE4EtgLfBZ4rxvU/VffhZfYbw8m8HPMiYlTdsqkfdbYAI/q5/f2BD9YnZuDV1Hr4zfzvhn0a1ceY+f7FPqyv2+7fAnu9Ymu/3mc1PKfYxkC2NbzF/r9M3Qnlnctf9aPaJdSGWv5fRPQ0ibkaWAosbvwQjoiVEfGBiJgM7AcsAP4aeG9/99usU36jrmiwl/Tw8qT5NPDtYjiiTE9T63mOj4jtFW+r8ZhfpjiRnHq/RsQvJP0p8C8twr4KfAO4BfiupPdGRK+k4fXHERFPAt+S9IfAQZn9MOsE98x/Mz0JnCBpvKRp1HqP75V0uqTRxSWGp6oflz22EhFPUzsp+M+SphfbPrpIWJ3eVuMxlyIiLmv3n1Ix7PMu4PXUevMAR0i6Q9I8SWMljSyO5a3Uzh2Y/UZxMv/N9HlqJw9XU7tU7jHgPcAngC5gGbVx9K0ttvEZ9XGdeR9xH6TWK/550d4/kRj+KHFbLzvmAbY/YMUQ1DzgI5I+Tu2SxJ8AXwKeoXa54/nAaRHxQKf3z6wdeT5zM7Pffu6Zm5ntBnwC1Mw67qTjxsbadc0uMGrt7v/ZelNEvLPkXfqt52RuZh23dl0Pd96034DqDp2+wnPj9MHJ3Mw6LoBeeqvejd2Kk7mZVSDoCSfzMqWS+fAJY2LEXhNyDQzJ/cJ29OTPye7YmvtMGro53QQ943PHMWRz/jhGrM7v2NZpo1Px4yd2p9uYNuzFVPzKNc1u+mwuRiSvqurJ31GvEfnkoe7k73EAF4f1jspVGrEh34Z6cm1onx3tg+ps7nqBbRs29/uXUuuZ+0q6MqWy4Ii9JvCaf/yjVAOTR+eSx7Mb83NHrV05KRU/aVk+Eaw/Zkv7oDpj7s8lWYB9v74sXWfVx16Tin/bu+9Nt/G/pi1Jxb//ik+l29h84LZU/JAX8v9UDp2R/yAbcd+4VLwGcE5v46G5Y9//3/Lv3xHP527KHfHF3GzJt517TSoePMxSNg+zmFnHBUGP73EplZO5mVXCwyzlcjI3s44LoMfJvFRO5mZWCffMy+VkbmYdF+Ax85I5mZtZJXwtS7mczM2s44LwmHnJnMzNrPMCkvcxWRueAtfMOq52B+jAlnaKb4daJulhSZ/JxEiaLOlGSY8UPyfVrftsEb9M0tyG7R0g6emGstGSri62dbukA+vWfUTSg8VyTj8Oqy0nczOrgOgZ4NJyq7Uv5f4acAJwBDBX0lGJmIuB6yPiEOB64KKizjHAXOBw4B3ApZKGF+v+DLgTaJzr5HxgVbGtBcClRfwBwIXALGA2cEEZX5WYGmbZsXkYa+7PtfnsqNxpjuk/zd+qPObA3GfSxlelm2Dsfbnb80etzf8PqQl7pOsMyU2hwc335m7/B3ji67nvL97+gfyxT/7v3DfVjdiYb+P5g3K35gN0H56bxmHP20am25hye+7Yn3hXfs6AEZNyf4f7fX7vVHw8nRuxDaB31wyzzAHuiYguAEnXUfs6wHv6GXM8sHM+ikXA3cAni/JrI6IHeEbScuBo4KcR8RXgK5I2NuzL8UVdIuImSd+WJOA44Iad300r6UbgRODKwRy4x8zNrBLtetktTJF0V93zyyPi8uLxDOC5unWrgVc31G8VMzkiNgBExPN1wywzgIca6rT7xGts5wVgcpP2c5+efXAyN7OOq90BOuBkviYiZrVY3/hvyIhETOP/C/V1+7Pd/rYzkG215DFzM6tEb2hASxtdQP03EU0tyvobs17SOABJE4B1ie2225eJ1HrhA9lWW07mZtZxO3vmZZ8ABe4AZkuaJmkYcCqwRNIESfu1iinW/Rg4o3h8Zl35EuA0SUMlTQeOonbSs5UlxTaQdBKwPCK2A0uBkyWNKT445hZlg+JhFjPruED07IK+ZERslPQJaslxOHBlRNwq6WzgbODYZjHFJs4HrpJ0IbAKOKvY7i2SlgIPAD3AeRGxEUDSnwAfBUYXY/n/NyKuBr4ELJS0AlgDfKjY1mOSvkzt5KqASyLi8cEeu5O5mVWiH0MmAxIRi4HFDWULgYWtYory1dSuLOlruwuoXWLYWP41apc6NpZ3A6c32dYVwBXNjyLPydzMOm6QJ0CtD07mZlYB0RM+ZVcmJ3Mz67ja7fxO5mVyMjezSniYpVxO5mbWcREeZilbKpkPGdnDmEM2pBp48ancfCPrD83/grfN3JyKv+Com9JtPL1tz1T8VT98W7qNsWcNTdfRzbn4/Rbne0M9e+RuTttjZboJhm3JTdSxeWr+ffKZs69J1/nHlcel4nVKfsKRrl9Oah9UZ+i45IQ8wPbncnMLDe1unGakjQFMtNLrnnmp3DM3s46rXc3innmZnMzNrAIeZimbk7mZdZyvZimfk7mZVaJnF90B+rvKydzMOm5Xzc3yu8zJ3Mwq0esx81I5mZtZx/lqlvI5mZtZxwXymHnJnMzNrBK+mqVcTuZm1nER+DrzkjmZm1kF5Nv5S+ZkbmYdF7hnXrbcRFvrhzL62gmpBsb0psJ57uhkBSDW5yaCuvRfT0m3Mf6Xuf0afnD+jbpq5V7pOged9FQqfu3WV6XbGPFCbgKwaT/LTcYGsG3KmFT8s2/LT0r2uSXvT9cZviHZzkGb0m1oZO69NXRYT7qNDx3zk1T8eaf8PBV/4rw1qXjw1Sxlc8/czDou0C77DtDfVU7mZlYJ98zL5WRuZh0X+A7QsjmZm1kF5K+NK5k/Gs2s43b2zAeytCNpnqRlkh6W9JlMjKTJkm6U9Ejxc1Ldus8W8cskza0rnyXp3qLOZZKGFOVXSHqobtkg6dhi3SpJK+rWnTPgF7PgZG5mlegpeufZpRVJY4GvAScARwBzJR2ViLkYuD4iDgGuBy4q6hwDzAUOB94BXCppeFHnKmB+UWcqcApARPxxRMyMiJnAa4Eu4MG6XXnzzvUR8a3s69fIydzMOi5Cu6pnPge4JyK6ImIHcB0wLxFzPLDzy2IXNZRfGxE9EfEMsBw4WtKBQHdELO+jTr0PA0si4tn+vD4D4TFzM6vELrppaAbwXN3z1cCrEzGTI2IDQEQ8XzfMMgN4qKHO3tRGjBq3tXd9Y5KGAp8G3llX3AvcIWkbcFVEfKFfR9eCk7mZdVzta+MGfAJ0iqS76p5fHhGX1z1vvAurr7sKm8VEi7rN6rRr7yzgjoh4oq7s8IjYImlPYLGkeyLihj72s9+czM2sAoP6Quc1ETGrybouYErd86lFWX9j1ksaFxEbJU0A1rWp07K94mToXwDvq9+BiNhS/Fwv6WbgMGBQydxj5mbWcbWrWTSgpY07gNmSpkkaBpwKLJE0QdJ+rWKKdT8Gzigen1lXvgQ4TdJQSdOBo4A7I2IlMEHSzD7qAJwOLI+Il4ZoinbfUDweR22M/Y5+v3hNpHrmO0bD2tfl/jU67E2Pp+K7VubnDplwb25ulk2vavxPqr3N3bnPvVFvXNc+qMGDsxel67zhix9PxQ/pzR9791653/n4ybl5VgBGPJub02Tyz/dMtzHpge50nTO+eVMq/sqnjk63cc3M76bi79k6qX1Qg0//z6mp+IX//dZUfNeGS1PxsGvuAC161J8AlgLDgSsj4lZJZwNnA8c2iyk2cT5wlaQLgVXUhkiIiFskLQUeAHqA8yJiY1FnPrCouErmZuBKAEkCPkvt5Ge9kcDlkiYD24BvRMRPB3vsHmYxs47blXOzRMRiYHFD2UJgYauYonw1cGKT7S4AFvRRfidwZB/lQe2SxMbyJ4HZrY8iz8nczCrhbxoql5O5mXVc7ZuGfDt/mZzMzawSngK3XE7mZtZxtTFzD7OUycnczCrhWRPL5WRuZh238zpzK4+TuZlVwMMsZXMyN7NKDGJuFuuDk7mZdZwvTSyfk7mZVcLDLOVyMjezjtuVt/P/rkol8yE9MGJD7hfwyK0HpuJHb8//godvyk0e9eqLH0m38eIxv5eK33hzfjKkeX95errOltNy8X96xvfTbXzpRyen4jf+KjfxGcCadw9vH1Rnyt3pJljxRyPTdRadO7d9UJ31bxidbuOk/zg/Fb81P8cYPaOSE6xN2ZGLd16unHvmZlYJnwAtl5O5mXWcrzMvn5O5mVXCJ0DL5WRuZp3Xv28NsgQnczPruEF+obP1wcnczCrhnnm5nMzNrON8ArR8TuZmVgkn83I5mZtZx/kO0PI5mZtZJXwCtFxO5mbWeeFhlrKlknkMgd7k9BZ7rMzFj16bnBMC2HBw7jNJY8ek2xi6pTcVP3n59nQbW2aMT9cZtikXf/UFf5huY9TZuUaO+bPl6Tau//HRqfgRG3O/D4ADrs/XWfO63FwrLxzSk25j6h25m2c2vSrdBDvG5Y590j25v6nV3bnE7BOg5fMtWGZWid7ixqHs0o6keZKWSXpY0mcyMZImS7pR0iPFz0l16z5bxC+TNLeufJake4s6l0kaUpQfK2mjpIfqlonFuo9IerBYzhnEy/gSJ3Mz67idJ0DLTuaSxgJfA04AjgDmSjoqEXMxcH1EHAJcD1xU1DkGmAscDrwDuFTSzqk+rwLmF3WmAqfUNXdLRMysWzZIOgC4EJgFzAYukDQt+RK+gpO5mVUiQgNa2pgD3BMRXRGxA7gOmJeIOR64pni8qKH82ojoiYhngOXA0ZIOBLojYnkfdZo5DrghIjZFxEbgRuDEdgfWjpO5mVWiFw1oAaZIuqtuObduszOA5+qerwb2bmi6VczkiNgAEBHPA5Pa1GnX3tslPSrpNklvTexjmq9mMbOOi8FdzbImIma1WN94trevb0tpFtP4LR71dZvVaVZ+GzAhInolvQW4RtK+iX1Mcc/czCqxi4ZZuoApdc+nFmX9jVkvaRyApAnAujZ1mm4rIrZHRG/x+DZgG7Wefn/2Mc3J3MwqsGtOgAJ3ALMlTZM0DDgVWCJpgqT9WsUU634MnFE8PrOufAlwmqShkqYDRwF3RsRKYIKkmY11JB1dd/XKm4BtEbEWWAqcLGlM8cExtygbFA+zmFkl+tHLHsA2Y6OkT1BLjsOBKyPiVklnA2cDxzaLKTZxPnCVpAuBVcBZxXZvkbQUeADoAc4rTl4CzAcWFVfJ3AxcWZQfBnxXUg+1Hv7ObT0m6cvA3dS+PfWSiHh8sMfuZG5mHbcrbxqKiMXA4oayhcDCVjFF+WqaXFkSEQuABX2U3wkc2Uf5y9psWHcFcEWzYxgIJ3Mz67yonQS18jiZm1klPNFWuZzMzazjgl0zZv67LDfR1rBgy7TcRFjDunOfF8/P25KKB9DDY1Pxm64Ymm7jxetyxzHtjo3tgxpsPGiPdJ2eUbn4Z96aP/ZRt+f267oNb0y3wZ6599WQHfkLsbr3Gt4+qFEy30xclt+vNSfl3vOH7vNsuo0HH90nFb/u9bkxkJ4bsmMmns+8bO6Zm1klPGZeLidzM6uEh1nK5WRuZh0X4WReNidzM6uEx8zL5WRuZpXwmHm5nMzNrBIeZimXk7mZdVzQrxkQLcHJ3Mwq4VGWcjmZm1nn+WqW0jmZm1k13DUvlZO5mVXCPfNyOZmbWSV8aWK5Usl86GYxcVku/09+MDeJ0NYVo1PxAE/Ny03SNGrY9nQb//lXX0nFf/ixd6XbeOiB8ek6QzY3fi9sGwPoDMWwZKUBtPHXb/l+Kv5tJzyWbuOEH3wqXWfMU7n3e2/2tQJ6t+QmP1v3jf3aBzXYc4/cfvUOz8Wv3pKL96yJ5XPP3Mw6LwAn81I5mZtZJTzMUi4nczOrhpN5qZzMzawCvgO0bE7mZlYN98xL5WRuZp3nO0BLl//CQjOzMsQAlzYkzZO0TNLDkj6TiZE0WdKNkh4pfk6qW/fZIn6ZpLl15bMk3VvUuUzSkKJ8fhH/sKSfSPq9ujqrJK2Q9FCxnNPv160JJ3Mzq4gGuLTYojQW+BpwAnAEMFfSUYmYi4HrI+IQ4HrgoqLOMcBc4HDgHcClknZ+Q/hVwPyizlTglKJ8FfDmiDi0aO/iht19c0TMLJZvtTywfnAyN7Nq7Jqe+RzgnojoiogdwHXAvETM8cA1xeNFDeXXRkRPRDwDLAeOlnQg0B0RyxvrRMRPI2JdUX4/sHfbvR8EJ3Mzq8auSeYzgOfqnq/mlUm0VczkiNgAEBHPA5Pa1OlPewDzgSV1z3uBOyQ9KOlzbY6pX3wC1Mw6b3B3gE6RdFfd88sj4vK6541zXIzoYxvNYho/LurrNqvTsj1J7wJOAt5SV3x4RGyRtCewWNI9EXFDH/vZb6lkHkOgd2SugSf/IFdh0oP565XGPDa8fVCd1Xfl57aY1/XJVHzXB3Jz0gC88Yj8fCMrrjskFT/+qZ50G8+8JTf/y7Rbc78PgG9f+55U/IJT8ongDa95PF3nvnH7puIn3Zr8AwEmrsj1qSY89GK6jW1Tc3MePXdUX/mvuRjA//iDuAN0TUTMarKuC5hS93xqUdbfmPWSxkXERkkTgHVt6rRsT9IJwN8D74yITTvLI2JL8XO9pJuBw4BBJXMPs5hZNXbNMMsdwGxJ0yQNA04FlkiaIGm/VjHFuh8DZxSPz6wrXwKcJmmopOnAUcCdEbESmCBpZmMdSScDlwBzI+KpnTtYtPuG4vE4amPsd7R/wVrzMIuZVWMXXGde9Kg/ASwFhgNXRsStks4GzgaObRZTbOJ84CpJF1K7GuWsYru3SFoKPAD0AOdFxMaiznxgUXGVzM3AlUX5p6n11H8ovXSsx1PrRF8uaTKwDfhGRPx0sMfuZG5mldAuugM0IhYDixvKFgILW8UU5auBE5tsdwGwoI/yO4Ej+yg/tsVuzm6xbkCczM2s8/p5A5D1n5O5mVVAns+8ZE7mZlYN98xL5WRuZtVwMi+Vk7mZVcPJvFRO5mbWef4O0NI5mZtZJXbVpYm/q5zMzawaTual8u38Zma7gfREW9vG5xo47V25u1Q//OGf5RoAzlrw6VT8pAc2tQ9qsPL9Y1PxA/mUfOTfc5NmAQzbmuvebNp7aLqNCStybWzcJz8WumlGcnIubU+3sX7rmHSd97/m3lT8yNftSLfx/e+8LRU/9pn8ZF7Z4emeZBMDGf72MEu5PMxiZtXwCdBSOZmbWef5dv7SOZmbWTWczEvlZG5mlfCYebmczM2sGk7mpXIyN7NqOJmXysnczDpO4WGWsjmZm1k1fGliqZzMzawa7pmXysnczCrhYZZyOZmbWTWczEuVSubDNgdT/yc398RP73pTKv623lw8wPje3DwdvcPz85OM/VVufG/IqnHpNrr3zr+7jznznlT8Yx/cJ93Gtn0mpuLXHjEq3Ub3MRtT8WOH96TbWPXYtHSdX3ZNSsVPnfxiuo0xz/am4odsyx97DMm9f/e6K/c39avu5HvXJ0BL5565mVXDybxUTuZmVg0n81J5PnMzq8TOa82zS9vtSvMkLZP0sKTPZGIkTZZ0o6RHip+T6tZ9tohfJmluXfksSfcWdS6TNKQoHy3p6qL8dkkH1tX5iKQHi+Wcgb2CL+dkbma7DUljga8BJwBHAHMlHZWIuRi4PiIOAa4HLirqHAPMBQ4H3gFcKmnnJPxXAfOLOlOBU4ry84FVRfkC4NJiWwcAFwKzgNnABZLyJ3QaOJmbWTVigEtrc4B7IqIrInYA1wHzEjHHA9cUjxc1lF8bET0R8QywHDi66G13R8TyJnUWAUTETcAcSQKOA26IiE0RsRG4ETix7ZG14WRuZr9tpki6q245t27dDOC5uuergb0b6reKmRwRGwAi4nlgUps6rbbVuO4FYHI/9zHNJ0DNrPMGd2nimoiY1WJ947WeIxIxjXtVX7dZnVbtDaTOgLhnbmbV2DXDLF3AlLrnU4uy/saslzQOQNIEYF2bOq221bhuIrVeeH/2Mc3J3MyqsWuS+R3AbEnTJA0DTgWWSJogab9WMcW6HwNnFI/PrCtfApwmaaik6cBRwJ0RsRKYIGlmkzpnAkg6CVgeEduBpcDJksYUHxxzi7JB8TCLmXWc2DV3gEbERkmfoJYchwNXRsStks4GzgaObRZTbOJ84CpJFwKrgLOK7d4iaSnwANADnFecvASYDywqrpK5GbiyKP8SsFDSCmAN8KFiW49J+jJwd/FSXBIRjw/22J3Mzawau+imoYhYDCxuKFsILGwVU5SvpsmVJRGxgNolho3ldwJH9lHeDZzeZFtXAFc0P4o8J3Mz6zzPzVK6XDIfInaMyg2zb98zN8HPqOdzkw4BbB+da2PNkcPbBzUYuT4XP3QA8+7vc+u2dJ0Vn9+ain98UX4CMK0cmYqfPvtX6TZePSY3QdV9T+UnDNPW/CmiPX+emzRsyMbcawWw7vDs+3d0uo3Rz+WOXbn59Njx8wG84Z3MS+WeuZlVw8m8VE7mZlYJD7OUy8nczKrhZF4qJ3Mz67z+XTNuCU7mZlYJD7OUy8nczKrhZF4qJ3Mzq4R75uVyMjezajiZl8rJ3Mw6zydAS+dkbmYdp2Kx8jiZm1k13DMvVSqZbx8fPPMHPakG9rwn93mxbVx+/oy/++vLU/Fre/Lzk/zlHe9LxY+7Kz9/xoi1W9J1hk7PfdvUQZfk575Z+7pc/JNj8t+A9csRe6Xi9zpoTbqNzbfnf++j1+Xe7xunD023sc/vP5WKHzk0OXEK8PC9+7UPqjOmK/l3OIButk+Alss9czOrhpN5qZzMzawaTualcjI3s87zfOalczI3s2o4mZfKydzMKuGeebmczM2sGk7mpXIyN7NKuGdeLidzM+s8385fOidzM6uGk3mp8rdbmpkNkqgNswxkGVS70ixJ90p6RNJlkvrMgc3iJI2WdHVRfrukA+vqfETSg8VyTl35QUXsI0XdUUX5OyQtK8rvkjSnrs4tklZJeqhYPtfu2JzMzawaMcBlcK4C5kfEIcBU4JRk3PnAqqJ8AXApgKQDgAuBWcBs4AJJ04o63wAWFHVWAR8vytcCJxXlnwT+uWEfTo2ImcXyhXYH5mRuZpVQxICWAbdX60V3R8TyomgRMC8Zd3zxnIi4CZgjScBxwA0RsSkiNgI3AidKGg68Bri5cVsRcU9EPF2U3w/kJzWqkxozHz1qG68/9JepBn6h3AQ/o54cnooHuOD/nJuKf/6Q/Btiyi9yMwmN2JSboAlgzaw90nX2eCI3oZd25I992/jcse9za/7Yxz2yIRW/Y8/x6Ta6zspPUPXiQbn+zj6HPZNu44nnJqXijzt4RbqNC96Tm4zunCUfTcX3jky+r6o5AToDeK7u+Wr6TqCt4hrXvQBMblFnGrA+4qVPoWZtzgeW1D0P4DpJW4GbgE9FRMs3sE+AmlklBjH+PUXSXXXPL4+Ilz6tJP0ImNJHvfOAxmlDRzRpo1Vcs3XZcgAkzQb+DHh7XfHciNgiaQzwbeBc4KtN9hVwMjezqgw8ma+JiFlNNxtxQl/lkg7m5Ul+KtDVR2hXi7id654tnk+k1tvuAmY21Lm/WDexWZuSXg98B3h/RLz0b11EbCl+dktaTG0cviWPmZtZJTp9NUtErAQmSNqZdM+kGNqQNKZI9i3jip9nFnVOApZHxHZgKXBysZ1xwFxgaURsAx6WdHwfbc4BrgZOj4j7X3pdpFGSji0eDwfeC/ys3fE5mZtZNaq5mmU+sEjSCmAdcGVRPoeXj1k3i/sScGhRfhHwxwAR8RjwZeBu4C7gkoh4vKjzMeALRZ2DgIuL8o9T6+V/r+4SxDnUrtz8G0mPA8uAldSSfkseZjGzzqtoCtyIuBM4so/yW4AD+hHXDZzeZNtXAFf0Uf4o8OY+ys9usavHtFjXJydzM6uG7wAtlZO5mXXczjtArTxO5mZWjUHcAGSv5GRuZpVwz7xcTuZm1nmeArd0TuZmVgk13hdpg+JkbmbVcM+8VKlkvuPZkaz9hwNSDeg9ucmNhrz++VQ8wLq9x+YqDB3Au0i5z72hW/LdjhcOzt/DNefcZan43xv9XPugBt/613em4rdMHJpuY/xG3sMAAAnJSURBVOSkMan4GJZ/rUY/ne+77PsHuYnlHrt733QbPeNzE5P999MHpNuYOLw7FT/+4dyEd89tyU3GBh4zL5t75mbWeYGvZimZk7mZVcI983I5mZtZNZzMS+VkbmYd5ztAy+dkbmadF+Ex85I5mZtZJdwzL5eTuZlVw8m8VE7mZlYJ98zL5WRuZp0XQK+zeZmczM2sGs7lpXIyN7NKeJilXLm5WcbCs7Nzc2KMfGxkKn70MyNS8QBjt+fiJ/3ihXQbXW+bkIp//uDc3BYAEx7Ov7v/a/JrU/FjH83v14yfbErFv3Dw6HQbXb+fm5tl46Hb0m2MeTRdhSd+ul8qfuzafBvdM3Jz2ejx3HsR4M5vzk7FbzohN7dQb/7P1pcmlsw9czOrhHvm5XIyN7PO85dTlM7J3Mw6rnY7v7N5mfKTQpuZlaF3gMsgSJol6V5Jj0i6TFKfObBZnKTRkq4uym+XdGBdnY9IerBYzqkrP6iIfaSoO6ooP0DSVkkP1S1HFOvmSVom6WFJn+nPsTmZm1klFDGgZZCuAuZHxCHAVOCUZNz5wKqifAFwKdQSM3AhMAuYDVwgaVpR5xvAgqLOKuDjde2siIiZdctySWOBrwEnAEcAcyUd1e7AnMzNrPNiEMsAFb3o7ohYXhQtAuYl444vnhMRNwFzJAk4DrghIjZFxEbgRuBEScOB1wA3t2qzwRzgnojoiogdwHX9qONkbmZViF/PnJhdBm4GUP+9iauBvZNxjeteACa3qDMNWB/x0o43tnmwpBWS7pa0s/ff3/18GZ8ANbNKDOLSxCmS7qp7fnlEXP7SdqUfAVP6qHcerxx1b3aFfKu4Zuuy5U8Ce0TEdkmHAUsk3dqP9vvkZG5m1Rh4L3tNRMxqvtk4oa9ySQfz8iQ/FejqI7SrRdzOdc8WzydS6zl3ATMb6txfrJvY17YiogfoKR4/KOkh4KA27TflYRYz67wA9Q5sGXCTESuBCZJ2Jt0zgSUAksYUyb5lXPHzzKLOScDyiNgOLAVOLrYzDpgLLI2IbcDDko7vo83XSZpePD6YWiJ/GLgDmC1pmqRhwKl17TflnrmZVaOa68znA4uKK0ZuBq4syucAC4ED2sR9CVgoaQWwBvgQQEQ8JunLwN3ULqO/JCIeL+p8DPiOpK8D9wA7L1ucAXxP0lBgE3BucfIUSZ+g9gExHLgyInYOvzTlZG5m1aggl0fEncCRfZTfwq8Teau4buD0Jtu+Ariij/JHgTf3UX4jLx+aqV+3GFjc91H0LZXMh26BiY9kakDv8NxvbP1h+d/wHo/mRouGrstPtLVlyh6p+GHdSrfRk5uTDMhPnNU7gI/vH1z3zVT8Ybd+NN2GfpmbnGv6D/MHMnRrT7pO9vXaPjY/cjntru5UfO/I3MRcAMNX59qY/pPcZF6rN6bCAd8BWjb3zM2sGk7mpXIyN7POCwZ9a769nJO5mXWcKOXWfKvjZG5m1XAyL5WTuZlVw8m8VE7mZtZ5HjMvnZO5mVXCY+blcjI3s2o4mZfKydzMKjDo6WytgZO5mXVe4GReMs+aaGa2G0j1zIdsD8Y+sz3VwPZxuXkkhmzPf7688ObNqfjpp+Xn6BiyJDfXyua98qfqdxy1KV1nyC/Gp+KPnPdguo1Dvv8nqfj9D36ufVCDGfs/kYpfdd+h6TaGded/7yPWb03F6xfJyYsG4o19zs3U0guHT2wfVGfI9mSveSCdbF/NUioPs5hZJXw1S7mczM2sGk7mpXIyN7POC6DXybxMTuZmVgFfmlg2J3Mzq4aTeamczM2sGk7mpXIyN7PO85h56ZzMzawCAeELzcvkZG5m1fAwS6mczM2s8zzMUjonczOrhnvmpfJEW2ZWjYiBLYMgaZakeyU9IukySX3mwGZxkkZLuroov13SgXV1PiLpwWI5p678oCL2kaLuqKL8IkkP1S2rJZ1drLtF0qq6dZ9rd2ypnrl6Iz1Z0aa9h6fih3XnJrQCGHvrqFT8E1MPSLexNTlx1vuOuSPdxqaekek6//X8a1PxT15ySLqNSdNyn/lPxLR0G+tWzkjFx77pJhi2Jd93GfKTlbn46Xul2+iZnJssbce43N8UwLrDcsc+8U3PpuLj/h2p+ApvGroKeF9ELJd0NXAK8G+JuPOBVRHxAUknAZcC75Z0AHAhcBQg4OeSfhARzwHfABZExE2S/h74OPDliLgIuGhng5JuA+6r24dTI+Ku/h6Ye+Zm1nkB9PYObBmgohfdHRHLi6JFwLxk3PHFcyLiJmCOJAHHATdExKaI2AjcCJwoaTjwGuDmNm0eD2yIiPsa1/WXk7mZVaPzwywzgPr5mVcDeyfjGte9AExuUWcasD7ipR1v1ubngb+rex7AdZIeLoZ52o6i+ASomVVj4Il5iqT64YfLI+LynU8k/QiY0ke983jlLOojmrTRKq7Zumw5AJKOAYiI2+qK50bEFkljgG8D5wJfbbKvgJO5mVUiBnNp4pqImNV0yxEn9FUu6WBenuSnAl19hHa1iNu5budJhYnUettdwMyGOvcX6yY2lDe2+Xngiw3HsKX42S1pMTC7r2Oq52EWM+u8gIjeAS0DbjJiJTBB0s6keyawBEDSmCLZt4wrfp5Z1DkJWB4R24GlwMnFdsYBc4GlEbENeLgYE2/cFpLeBEyMiB/WlY2SdGzxeDjwXuBn7Y7PPXMzq0Y1Nw3NBxZJGkvtpOSVRfkcYCFwQJu4LwELJa0A1gAfAoiIxyR9Gbib2tUsl0TE40WdjwHfkfR14B7gpcsWeeVYOUX9v5G0L7ANWAxc3e7AnMzNrBoVXJoYEXcCR/ZRfgu/TuSt4rqB05ts+wrgij7KHwXe3KTOH/ZRthk4pskhNOVkbmadFzGoywztlZzMzawavp2/VE7mZlaJcM+8VE7mZlYBfwdo2VLJfPS+mzniH+5PNfCja+ek4sc8k/8Fv3hALn7IoS+m2xh1b27+jH+/+U3pNi567/fSdZbskZtr5dk5Y9Nt9Oy7JRU/7r7R6TayNk/Lv0/2+Yf8ndI9cw5PxXe9YUy6jZEbcj3UYZvzx/6qWzan4l98dGqugbXJfqGnwC2de+ZmVg1/01CpnMzNrOMCCPfMS+VkbmadF/4O0LI5mZtZJdwzL5eTuZl13Iusv+lHvd/ra2bD/lhT6s7sJpzMzazjIuKdVe/D7sazJpqZ7QaczM3MdgNO5mZmuwEnczOz3YCTuZnZbsDJ3MxsN6BIzFwmaTXwxK7bHTP7LbV/RCRn57IypZK5mZn9ZvIwi5nZbsDJ3MxsN+Bkbma2G3AyNzPbDTiZm5ntBpzMzcx2A07mZma7ASdzM7PdgJO5mdlu4P8D23czisL1ScAAAAAASUVORK5CYII=\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_microstructures(y_data[0] - y_predict[0], titles=['Finite Element - MKS']);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The MKS model is able to capture the strain field for the random microstructure after being calibrated with delta microstructures." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Resizing the Coefficients to use on Larger Microstructures \n", "\n", "The influence coefficients that were calibrated on a smaller microstructure can be used to predict the strain field on a larger microstructure though spectral interpolation [[3]](#References), but accuracy of the MKS model drops slightly. To demonstrate how this is done, generate a new random microstructure that is 3x larger" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [], "source": [ "new_shape = tuple(np.array(x_delta.shape[1:]) * 3)\n", "x_large = da.random.randint(2, size=(1,) + new_shape).persist()\n", "y_large = strain_xx(x_large).persist()" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_microstructures(y_large[0], titles=[r'$\\mathbf{\\varepsilon_{xx}}$']);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The influence coefficients that have already been calibrated need to be resized to match the shape of the new larger microstructure that we want to compute the strain field for. This can be done by passing the shape of the new larger microstructure into the `resize_coeff` method." ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [], "source": [ "model.steps[1][1].coeff_resize(x_large[0].shape);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Observe the resized influence coefficients." ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "coeff = to_real(model)\n", "plot_microstructures(coeff[...,0], coeff[...,1], titles=['Influence coeff [0]', 'Influence coeff [1]']);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The coefficients have been resized so will only work on the 63x63 microstructures. As before, pass the microstructure as the argument to the `predict` method to get the strain field." ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [], "source": [ "y_predict_large = model.predict(x_large).persist()" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_microstructures(y_large[0], y_predict_large[0], titles=['Actual', 'Predicted']);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Observe the difference between the two strain fields." ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "plot_microstructures(y_large[0] - y_predict_large[0], titles=['Finite Element - MKS']);" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The results from the strain field computed with the resized influence coefficients are not as accurate, but still acceptable for engineering purposes. This decrease in accuracy is expected when using spectral interpolation [[4]](#References)." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\n", "## References\n", "\n", "\n", "[1] Binci M., Fullwood D., Kalidindi S.R., A new spectral framework for establishing localization relationships for elastic behavior of composites and their calibration to finite-element models. Acta Materialia, 2008. 56 (10) p. 2272-2282 [doi:10.1016/j.actamat.2008.01.017](http://dx.doi.org/10.1016/j.actamat.2008.01.017).\n", "\n", "\n", "[2] Landi, G., S.R. Niezgoda, S.R. Kalidindi, Multi-scale modeling of elastic response of three-dimensional voxel-based microstructure datasets using novel DFT-based knowledge systems. Acta Materialia, 2009. 58 (7): p. 2716-2725 [doi:10.1016/j.actamat.2010.01.007](http://dx.doi.org/10.1016/j.actamat.2010.01.007).\n", "\n", "\n", "[3] Marko, K., Kalidindi S.R., Fullwood D., Computationally efficient database and spectral interpolation for fully plastic Taylor-type crystal plasticity calculations of face-centered cubic polycrystals. International Journal of Plasticity 24 (2008) 1264–1276 [doi:10.1016/j.ijplas.2007.12.002](http://dx.doi.org/10.1016/j.ijplas.2007.12.002).\n", "\n", "\n", "[4] Marko, K. Al-Harbi H. F. , Kalidindi S.R., Crystal plasticity simulations using discrete Fourier transforms. Acta Materialia 57 (2009) 1777–1784 [doi:10.1016/j.actamat.2008.12.017](http://dx.doi.org/10.1016/j.actamat.2008.12.017)." ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "anaconda-cloud": {}, "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.8.5" } }, "nbformat": 4, "nbformat_minor": 1 }