{ "cells": [ { "cell_type": "markdown", "metadata": { "collapsed": true }, "source": [ "#Effective Stiffness of Composite Material\n", "\n", "##Introduction\n", "\n", "This example uses the `MKSHomogenizationModel` to create a homogenization linkage for the effective stiffness. This example starts with a brief background of the homogenization theory on the components of the effective elastic stiffness tensor for a composite material. Then the example generates random microstructures and their average stress values that will be used to show how to calibrate and use our model. We will also show how to use tools from [sklearn](http://scikit-learn.org/stable/) to optimize fit parameters for the `MKSHomogenizationModel`. Lastly, the data is used to evaluate the `MKSHomogenizationModel` for effective stiffness values for a new set of microstructures.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Linear Elasticity and Effective Elastic Modulus\n", "\n", "For this example we are looking to create a homogenization linkage that predicts the effective isotropic stiffness components for two-phase microstructures. The specific stiffness component we are looking to predict in this example is $C_{xxxx}$ which is easily accessed by applying an uniaxial macroscal strain tensor (the only non-zero component is $\\varepsilon_{xx}$). \n", "\n", "$$ u(L, y) = u(0, y) + L\\bar{\\varepsilon}_{xx}$$\n", "\n", "$$ u(0, L) = u(0, 0) = 0 $$\n", "\n", "$$ u(x, 0) = u(x, L) $$\n", "\n", "More details about these boundary conditions can be found in [1]. Using these boundary conditions, $C_{xxxx}$ can be estimated calculating the ratio of the averaged stress over the applied averaged strain.\n", "\n", "$$ C_{xxxx}^* \\cong \\bar{\\sigma}_{xx} / \\bar{\\varepsilon}_{xx}$$ \n", "\n", "In this example, $C_{xxxx}$ for 6 different types of microstructures will be estimated, using the `MKSHomogenizationModel` from `pymks`, and provides a method to compute $\\bar{\\sigma}_{xx}$ for a new microstructure with an applied strain of $\\bar{\\varepsilon}_{xx}$.\n" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": false }, "outputs": [], "source": [ "%matplotlib inline\n", "%load_ext autoreload\n", "%autoreload 2\n", "\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Data Generation\n", "\n", "A set of periodic microstructures and their volume averaged elastic stress values $\\bar{\\sigma}_{xx}$ can be generated by importing the `make_elastic_stress_random` function from `pymks.datasets`. This function has several arguments. `n_samples` is the number of samples that will be generated, `size` specifies the dimensions of the microstructures, `grain_size` controls the effective microstructure feature size, `elastic_modulus` and `poissons_ratio` are used to indicate the material property for each of the\n", "phases, `macro_strain` is the value of the applied uniaxial strain, and the `seed` can be used to change the the random number generator seed.\n", "\n", "Let's go ahead and create 6 different types of microstructures each with 200 samples with dimensions 21 x 21. Each of the 6 samples will have a different microstructure feature size. The function will return and the microstructures and their associated volume averaged stress values.\n" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from pymks.datasets import make_elastic_stress_random\n", "\n", "\n", "sample_size = 200\n", "grain_size = [(15, 2), (2, 15), (7, 7), (8, 3), (3, 9), (2, 2)]\n", "n_samples = [sample_size] * 6\n", "elastic_modulus = (310, 200)\n", "poissons_ratio = (0.28, 0.3)\n", "macro_strain = 0.001\n", "size = (21, 21)\n", "\n", "X, y = make_elastic_stress_random(n_samples=n_samples, size=size, grain_size=grain_size, \n", " elastic_modulus=elastic_modulus, poissons_ratio=poissons_ratio, \n", " macro_strain=macro_strain, seed=0)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The array `X` contains the microstructure information and has the dimensions \n", "of `(n_samples, Nx, Ny)`. The array `y` contains the average stress value for \n", "each of the microstructures and has dimensions of `(n_samples,)`.\n" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(1200, 21, 21)\n", "(1200,)\n" ] } ], "source": [ "print(X.shape)\n", "print(y.shape)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Lets take a look at the 6 types the microstructures to get an idea of what they \n", "look like. We can do this by importing `draw_microstructures`. \n" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nCP0AAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from pymks.tools import draw_microstructures\n", "\n", "\n", "X_examples = X[::sample_size]\n", "draw_microstructures(X_examples[:3])\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "In this dataset 4 of the 6 microstructure types have grains that are elongated in either\n", "the x or y directions. The remaining 2 types of samples have equiaxed grains with\n", "different average sizes.\n", "\n", "Let's look at the stress values for each of the microstructures shown above.\n" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Stress Values [ 0.25577371 0.24376877 0.2610072 0.25344437 0.24913381 0.2492148 ]\n" ] } ], "source": [ "print('Stress Values'), (y[::200])\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now that we have a dataset to work with, we can look at how to use the `MKSHomogenizationModel`to predict stress values for new microstructures.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## MKSHomogenizationModel Work Flow\n", "\n", "The default instance of the `MKSHomogenizationModel` takes in a dataset and \n", " - calculates the 2-point statistics \n", " - performs [dimensionality reduction](http://en.wikipedia.org/wiki/Dimensionality_reduction) using [Prinicple Component Analysis](https://en.wikipedia.org/wiki/Principal_component_analysis) (PCA) \n", " - and fits a [polynomial regression model](http://en.wikipedia.org/wiki/Polynomial_regression) model to the low-dimensional representation. \n", "\n", "This work flow has been shown to accurately predict effective properties in several examples [2][3], and requires that we specify the number of components used in dimensionality reduction and the order of the polynomial we will be using for the polynomial regression. In this example we will show how we can use tools from [sklearn](http://scikit-learn.org/stable/) to try and optimize our selection for these two parameters.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "##Modeling with MKSHomogenizationModel\n", "\n", "In order to make an instance of the `MKSHomogenizationModel`, we need to pass an instance of a basis (used to compute the 2-point statistics). For this particular example, there are only 2 discrete phases, so we will use the `PrimitiveBasis` from `pymks`. We only have two phases denoted by 0 and 1, therefore we have two local states and our domain is 0 to 1.\n", "\n", "Let's make an instance of the `MKSHomgenizationModel`.\n" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from pymks import MKSHomogenizationModel\n", "from pymks import PrimitiveBasis\n", "\n", "\n", "prim_basis = PrimitiveBasis(n_states=2, domain=[0, 1])\n", "model = MKSHomogenizationModel(basis=prim_basis, periodic_axes=[0, 1],\n", " correlations=[(0, 0), (1, 1)])\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's take a look at the default values for the number of components and the order of the polynomial." ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Default Number of Components 5\n", "Default Polynomail Order 1\n" ] } ], "source": [ "print('Default Number of Components'), (model.n_components)\n", "print('Default Polynomail Order'), (model.degree)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "These default parameters may not be the best model for a given problem; we will now show one method that can be used to optimize them.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Optimizing the Number of Components and Polynomial Order\n", "\n", "To start with, we can look at how the variance changes as a function of the number of components.\n", "In general for SVD as well as PCA, the amount of variance captured in each component decreases\n", "as the component number increases.\n", "This means that as the number of components used in the dimensionality reduction increases, the percentage of the variance will asymptotically approach 100%. Let's see if this is true for our dataset.\n", "\n", "In order to do this we will change the number of components to 40 and then\n", "fit the data we have using the `fit` function. This function performs the dimensionality reduction and \n", "also fits the regression model. Because our microstructures are periodic, we need to \n", "use the `periodic_axes` argument when we `fit` the data.\n" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "collapsed": false }, "outputs": [], "source": [ "model.n_components = 40\n", "model.fit(X, y)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now look at how the cumlative variance changes as a function of the number of components using `draw_component_variance` \n", "from `pymks.tools`.\n" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\noomUBALvAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from pymks.tools import draw_component_variance\n", "\n", "\n", "draw_component_variance(model.dimension_reducer.explained_variance_ratio_)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Roughly 93 percent of the variance is captured with the first 5 components. This means our model may only need a few components to predict the average stress.\n", "\n", "Next we need to optimize the number of components and the polynomial order. To do this we are going to split the data into test and training sets. This can be done using the [train_test_spilt](http://scikit-learn.org/stable/modules/generated/sklearn.cross_validation.train_test_split.html) function from `sklearn`.\n" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(960, 441)\n", "(240, 441)\n" ] } ], "source": [ "from sklearn.cross_validation import train_test_split\n", "\n", "\n", "flat_shape = (X.shape[0],) + (X[0].size,)\n", "X_train, X_test, y_train, y_test = train_test_split(X.reshape(flat_shape), y,\n", " test_size=0.2, random_state=3)\n", "print(X_train.shape)\n", "print(X_test.shape)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We will use cross validation with the testing data to fit a number \n", "of models, each with a different number \n", "of components and a different polynomial order.\n", "Then we will use the testing data to verify the best model. \n", "This can be done using [GridSeachCV](http://scikit-learn.org/stable/modules/generated/sklearn.grid_search.GridSearchCV.html) \n", "from sklearn.\n", "\n", "We will pass a dictionary `params_to_tune` with the range of\n", "polynomial order `degree` and components `n_components` we want to try.\n", "A dictionary `fit_params` can be used to pass the `periodic_axes` variable to \n", "calculate periodic 2-point statistics. The argument `cv` can be used to specify \n", "the number of folds used in cross validation and `n_jobs` can be used to specify \n", "the number of jobs that are ran in parallel.\n", "\n", "Let's vary `n_components` from 1 to 11 and `degree` from 1 to 3.\n" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "collapsed": false }, "outputs": [], "source": [ "from sklearn.grid_search import GridSearchCV\n", "\n", "\n", "params_to_tune = {'degree': np.arange(1, 4), 'n_components': np.arange(2, 12)}\n", "fit_params = {'size': X[0].shape}\n", "gs = GridSearchCV(model, params_to_tune, fit_params=fit_params).fit(X_train, y_train)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The default `score` method for the `MKSHomogenizationModel` is the [R-squared](http://en.wikipedia.org/wiki/Coefficient_of_determination) value. Let's look at the how the mean R-squared values and their \n", "standard deviations change, as we varied the number of `n_components` and `degree`, using\n", "`draw_gridscores_matrix` from `pymks.tools`.\n" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA20AAACqCAYAAAA+96dbAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XdUVNf3+P03MHSka+iiWMCKiorRoMbYo0k02KKxRI0l\nGks0n7g06jd2VDS2FEVjNFYSIUZTNAJ2FFQQwToIiBUEgjiUYZ4/eOb+HIcyGHSIntdarOXccu69\nA86ec+8++xioVCoVgiAIgiAIgiAIQrVkqO8TEARBEARBEARBEMomOm2CIAiCIAiCIAjVmOi0CYIg\nCIIgCIIgVGOi0yYIgiAIgiAIglCNiU6bIAiCIAiCIAhCNSY6bYIgCIIgCIIgCNWYTN8nIPx3TZw4\nkQcPHmgsk8lkWFtb06BBA7p3706jRo0q3W5BQQF//PEH0dHRpKWloVAosLKywtraGk9PT7y9vQkI\nCMDU1LSqLuWlN3DgQAB27dql5zMRBKG6u3XrFr/99hsJCQlkZGQAYG1tjb29PQ0aNMDX15dmzZrp\n+Sz/HXX8WrduHY6Ojvo+HdatW0dUVBTjx4+nU6dOOu2ze/duQkNDNZbJZDIsLCywt7fH09OTli1b\n4ufnh5GR0XM4a93du3ePSZMm4ejoyLp1617IMefNm0diYiJz5859pu8iglDdlNlpO336tM6NtG3b\ntkpORvhv8vX1xcbGBoBHjx4hl8s5deoUp06d4sMPP6R37946t/Xw4UP+7//+j/T0dIyNjalfvz52\ndnYUFBRw69Ytjh07xrFjx/Dx8cHNze15XZIgCNWQiEvP34kTJ1i7di1KpRJ7e3uaNGmCpaUlOTk5\n3Lhxg6tXr5KYmKjVaatunaD/KgMDg0rv4+TkRMOGDQEoLi7m0aNHpKWlERERQUREBPb29owfP75a\ndLSf5fpKExERwYYNG+jYsSMTJkx4rscShOqizE7bypUrdW5E3L1/tb3zzjsad7GUSiWbN2/mr7/+\n4qeffqJdu3bY29vr1NamTZtIT0+nSZMmTJkyhRo1amisf/DgAVFRUeIpmyC8gkRcer6ysrLYsGED\nSqWS4cOH07NnT40vviqViqSkJC5fvqzHsxSe1rBhw1I7Lunp6ezevZuTJ0+yaNEiPvvsM/z8/PRw\nhuDg4EBwcDAy2YtL8Jo4cSIFBQXiJoLw0ijzf48IeMKzMjIy4sMPP+To0aMoFAouXLhA586dK9yv\noKCAmJgYAMaMGaPVYQNwdHSkX79+VX7OgiBUfyIuPV8xMTEUFBTQoEEDevXqpbXewMAAHx8ffHx8\nymxDpVI9z1MUKsHFxYUpU6Zgb2/Pb7/9xrp161i3bh0WFhYv/FyMjIxwcXF5occUnTXhZSPGtAnP\nhYmJCc7OzsjlcrKzs3XaJzc3l+LiYqBk/ERlKRQKfvnlF06cOEFGRgY2Nja0atWKgQMHsnXr1lLH\nC1SU817WOIOcnByOHTvGuXPnSE9PJysrC2NjY1xdXQkICKBr164YGmrW+Xkyp3/NmjXs37+fo0eP\ncufOHWQyGZs3b5a2vXr1Kr/99htJSUlkZ2djaWlJgwYN6Nu3L97e3qVef0pKCrt27eLSpUsUFRXh\n4uJC9+7defPNNyv9XgqC8OpRf1ar0911oU5TU/vkk0801qvTJZVKJcePHyc2Nha5XM7Dhw8pLi6m\nZs2a+Pn58c4772BlZaXVvjrtcu3atdy+fZt9+/Zx/fp1lEoltWvX5r333ivz6dH9+/fZtWsXFy5c\n4PHjx9SqVYtOnTrx9ttvl3k9aWlpHD9+nPj4eO7fv09OTg4WFhbUq1ePnj174uvrW+Z70LFjR4YN\nG8aePXuIiYnh4cOHtGjRghkzZgDlx6jn6YMPPuDEiRM8fPiQw4cP06dPH431KpWKEydOcOTIEeRy\nOQqFAhsbG5o3b06/fv2oWbOmtO2ff/7Jpk2baN26NZ999lmpx0tJSWHGjBnY2tqyYcMGDA0Nyx3T\ndvXqVU6dOiWNoczNzcXa2pqGDRvSp08f6tevr7H9k+PpIyMjiYyMlNY9mS5ZXnwvKiri0KFDREVF\ncevWLZRKJTVr1qR169b07dtX62/x6fP/448/OHToELdv38bY2BgfHx8GDx6Mu7u7Lr8SQXgmOnfa\nioqKuHbtGhkZGRQVFWms69ixY5WfmPDfl5eXB4Ctra1O21tbW2NiYkJBQQEHDhzg/fff1/lYCoWC\n+fPnc+PGDSwsLGjZsiUGBgacOHGCuLg4afzbs+a4P73f+fPn+eGHH3BwcMDZ2ZmGDRvy8OFDrly5\nwrVr14iLi5MCdWmWL1/OhQsXaNSoEe7u7hoFXX799Ve2bduGgYEBderUoWHDhmRkZBAbG0tsbCxj\nxoyhS5cuGu1dunSJRYsWUVhYiIuLC3Xq1OHhw4d89913pKamPtM1C0J1J+JS1VJ/OY+Pjyc1NVWn\n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\n9ueeNGkS0dHRVZ6a1VfHjh2Vv7u6ula77e5xCj4+Pjg6OiqfO3fuTFlZGdevX0en01FaWsqyZctM\nnh7q9XratWtnUo6/v3+t55aTk4NKpTJ5StmiRQs6duxIdnZ2Pa7SPDk5Ofj4+JgMGv/Nb36DSqUi\nOzub9u3bA+Dl5WVyba6urkqgGLm5uVW5b3c/be3cuTMnTpy4r7pbt27Nzz//DEB2drbZ997Hx8ek\nDIDCwsIa742zszODBg1i2bJldOvWja5duxISEoK7u3uN3xFCNA2SS5JLkktC3B9ptD3AAgIC6Nev\nH9u2bTOZsQtQfjBWHrBb04Dqyk8Ajd+7u2uBwWAw+VzbQGDjvtdee63KD85mzZqZfK4csPVh7I5j\nrocffhioCA9fX997qrNyfdV1vbj72sC8AdPmXEdddRv/+9Tn3lf+XN2/l+rMmTOH8PBwTp48ybFj\nx9i+fTsLFiygR48edV6DEOLBJ7kkuWQkuSRE/Uj3yAfc888/T1paGidPnjTZbuyacfv2bWVbRkZG\ng9WbmZlJSUmJ8vnSpUvY29vj4eGBl5cX9vb25Ofn0759e5M/9X361aFDB8rLy7lw4YKyrbi4mKys\nLLy8vMwup1OnTnh5ebFnz54qQQ/w66+/AhVPCzMzM9Fqtcq+CxcuUF5ebtLd4l6nlr548aLJ50uX\nLinldujQ4b7rbqh7b/yFqbp75ePjw6hRo1i8eDGPPPIIKSkpZpcrhHjwSS6ZR3JJckmIyqTR9oDz\n8PBg8ODBSv/zytsfeughdu7cybVr1/jpp5/47LPPGqxeg8HAhx9+SHZ2NqdOneLTTz8lLCwMtVqN\nk5MTv//97/nkk0/49ttvuX79OhkZGezfv5+DBw/Wq56HH36Y3r17s3HjRs6fP09mZiZr1qyhRYsW\nDBgwoF5lzZ49m+vXr7No0SKOHz/O9evXyczMJDExkaVLlwIwcOBA1Go1a9euJTMzk3PnzrFx40b6\n9eundAMB86ccvvu4o0ePkpyczLVr1/j88885c+YM4eHhAISGht533Q1179u2bQvAsWPH0Gg0aLVa\nbty4wbZt27h48SL5+fmcOXOGq1ev1uuXFCHEg09yyXySS5JLQhhJ98gHTHULiD733HOkpKRQVlam\nbLO3t2f+/Pls3ryZBQsW0KlTJ55//nmWL19+33WqVCq6dOmCl5cXS5YsUaZWjoiIUI6ZMGECbm5u\n7Nmzh82bN+Pk5ESnTp0YOXJkveufM2cOf//731m+fDmlpaUEBQXxxhtv4ODgUK9yAgICWL58OZ99\n9hmbNm2isLCQ1q1b4+vry+TJkwFQq9X8+c9/5qOPPlLq6NOnj8kU1vVZxPXu48aOHcuRI0fYsmUL\nrq6uzJ07Fz8/v/uq++5tDXHv27Rpw7hx49i+fTsbNmxg0KBBTJo0iWvXrrF69Wr++9//4urqysCB\nA3nmmWfMLlcI8eCRXJJcklwS4v6pymUVQiFswvjx43nllVfo16+ftU9FCCGEkFwSwoZI90ghhBBC\nCCGEsGHSaBNCCCGEEEIIGybdI4UQQgghhBDChsmbNiGEEEIIIYSwYdJoE0IIIYQQQggbJo02IYQQ\nQgghhLBh0mgTQgghhBBCCBsmjTYhhBBCCCGEsGHSaBNCCCGEEEIIG/b/AduKzYnBtGNyAAAAAElF\nTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from pymks.tools import draw_gridscores_matrix\n", "\n", "\n", "draw_gridscores_matrix(gs, ['n_components', 'degree'], score_label='R-Squared',\n", " param_labels=['Number of Components', 'Order of Polynomial'])\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "It looks like we get a poor fit, when only the first and second component are used, and when we increase\n", "the polynomial order and the components together. The models have a high standard deviation and \n", "poor R-squared values for both of these cases.\n", "\n", "There seems to be several potential models that use 4 to 11 components, but it's difficult to see which model \n", "is the best. Let's use our test data `X_test` to see which model performs the best.\n" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Order of Polynomial 2\n", "Number of Components 11\n", "R-squared Value 0.999808062591\n" ] } ], "source": [ "print('Order of Polynomial'), (gs.best_estimator_.degree)\n", "print('Number of Components'), (gs.best_estimator_.n_components)\n", "print('R-squared Value'), (gs.score(X_test, y_test))\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For the parameter range that we searched, we have found that a model with 2nd order polynomial \n", "and 11 components had the best R-squared value. Let's look at the same values, using `draw_grid_scores`.\n" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAisAAAEWCAYAAACnotfGAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsnXl8FeW9/9/PzJw9Jztb2AIB2QOibLKURVRE0VqhIq6o\nte0t99brbV+91eJF23p/vfW2pWpbL7hXEXFFRXBlCZuiIgZkCTuyBEhIck7ONjO/P+asOScrCUlg\n3q9XXjPzzHOeeU6Sc+Yz3+0Ruq7rmJiYmJiYmJi0UaTWnoCJiYmJiYmJSV2YYsXExMTExMSkTWOK\nlTDFxcWtPYUGYc6zeTHn2Xy0hzmCOc/mpr3M06R9Y4qVMO3lA2fOs3kx59l8tIc5gjnP5qa9zNOk\nfWOKFRMTExMTE5M2jSlWTExMTExMTNo0wkxdNjExMTFpTUKhEKqqtvY0TFoZWZZRFCXludStFyjf\nffdda0+hXtxuN5WVla09jXox59m8tId5toc5gjnP5iYvL++sx1BVlVOnTjXDbEzaMzk5ObWKFdMN\nZGJiYmJiYtKmMcWKiYmJiYmJSZvGFCsmJiYmJiYmbRpTrJiYmJiYmJi0acwAWxMTExMTk7OktLSU\njz/+mP3793Ps2DEKCgr42c9+1qgxTpw4wZYtW5g4cSIOh6NBr9m0aRNFRUUcP34cIQRdu3Zl0qRJ\nDB48uClvAzAK/S1atIj58+eTlZXV5HGaE9OyYmJiYmJicpYcP36cHTt20KlTJzp27IgQotFjlJaW\nsmrVKnw+X4P6L126lFdeeYX8/Hzuuusubr/9drKzs1m8eDEfffRRo6/fljEtKyYmJiYmJmfJoEGD\notaMZ555Bq/X2+SxGlL+7Ouvv2bDhg3MnDmTyy67LNo+YMAA0tPTeffdd+nXrx/dunVL+XpVVRFC\nIEktZ7MIBAJYrdZmGcsUKyYmJiZtAV0HdNAxtqoKaqiBr6u5H3+z05N3E+6FKRqjTbWMk/K45fho\n7ac8/95SgqhYkLnt6llMGT+xTY3ZUEvKBx98wKZNmzhz5gx2u52uXbsyZ84cjh07xqJFiwB45JFH\nAMjOzuY3v/lNynHWrFlDbm4uY8aMSTo3depU1q9fz9q1a5k9ezYAf/3rX0lLS6Nfv3589NFHlJWV\nMX/+fDIzM1mxYgVFRUUEg0EKCwvp379/0pjBYJAVK1bwxRdfUFVVRceOHbnmmmsYOHBgtM+CBQsY\nNmwYdrud9evXU1VVxWOPPdag30t9mGLFxMTEpC5qiojIDVzXQdfCWz12nNCH2l8bvtmL6H6Nm50W\nQFRVJTUbiBpCIkWn2l7X4OZUY8baNhatY+07b/C/r7+fesxm4qO1n/L7V5+gYmpHIres37/6BECT\nxUVLjNkQNm/ezIcffsiMGTPo3LkzHo+H3bt34/f76d69OzNmzODtt99m7ty5pKen11ogTVVV9u/f\nz/jx41OKJLvdTt++fSkpKYm2CSHYt28fp06dYsaMGVitVux2O6tXr2bVqlVMnTqVgoICtm7dyttv\nv5005jPPPMPBgweZNm0aubm5fPnllyxatIj777+frl27Rq+xZcsWunTpwqxZs5q1KrEpVkxMTJqP\n2p7EUz7J1+xfoy3uhh674RO78RMnCJIsCvFjGGxct45177yGXYBPg3HX3MDosWNruV5YROh6wg06\nNraI0xcibtvAOAUhiIqBGi/ZWLSOte++acxTh/HTr2f02HENG/ccsbFoHeteWsQjAzNa/FrPv7c0\nLCpiVEztyE+fX0B6+atNGrPire2kXzcwsW1qR15Y8WqLipWDBw/Sv39/xo4dG20rLCyM7nfsaLzP\nbt261RnY6vF4UFW1zj6ZmZns2LEjeqzrOj6fj1/+8pekpaUBoGkaH330EWPHjuXqq68GoF+/fvzt\nb3+joqIi+tpdu3axY8cO5s2bR+/evaP9SktL+eCDD7jjjjui1xBCcM8999QqtJqKKVZMTExqR9dA\nC1sPNNVwTehqTCCELQtC1yBUHbYECGJiIe5OLCJCIM4qkHCjjrcWiITmlAciVVtqsbCxaB1FNW6u\n8//5FELXYkIgXkAkXTcF8RaVyO9Ij21FvLWlhhVGJFhkYvsbPvucorde5ZHC3OhlHnr+SaSThxkz\nbChCV0HTjb+BFrlO5G8U24rIceTvFplTtD1F38i44feTctzw/vq3V/Pw8C71/IKahyAqKW9VTQhg\njSKlfm1Ab4Db7Szo1q0br732GitWrGDgwIF07969RWNGUl0/IlQAysrKqKysTMocGjJkCLt27Yoe\n79y5E7fbTX5+foK1pG/fvnz22WfRYyEEffv2bXahAqZYMTG5sIjewDTjJqZpoIWSxAfoxk2MiPAI\nWw1EsvVg4/qic28J0DTw+xABHyIY3gZ8EIjtG8fViICP9UuW8/CwTglDPDwwgwWL/pfLSz6qQ1TU\n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\nR4402R4XF+f27p4uXbrw888/uz2XOz169CAuLo7vvvuOEydOMGjQIJKTk+nVq5fcdi4dmbsgAAAG\nlklEQVTERZDflg4uKSmJIUOGsHnzZjZt2uS26b61Gn7yrqfT6c67r37chMPhcHu+hi0DDc9nNpup\nqqpybav/+uuvv242n81ma7Kt4WDYlrBarcD57+yp315/3KUKCwvj6NGjnDx50uP5Tp48icViaVSs\nuHt94JfXr+Gx5+5zOp1N9rl77eCXn3d9zvr/P9/rcO7xDZ2vNUKn06Eoiuv7+n8fJSUlfPrpp24f\nA+7/fTT3c2l4jQvRarU89dRTZGZm8sMPP/Dhhx8CYDQaGTlyJNOnT8doNLb4fEJ0VlKsdALTp08n\nJyeHjz/+uNFgwobqP0W6ewOCur71hoN021JFRUWTbhCn00lVVZXbN9rnn3+enj17XtQ1LnZOjPpr\nlZeXu91f331zvje5lkpOTiYvL49du3Zxww03XHS+06dP061btzbLdyEVFRVut9f/3Oqvfzl+nvWP\nHTx4MHPmzLnk87SWyWTi3nvv5d5776WkpIT8/Hy++uorsrKysFqt/O53v/NaNiHaCxmz0glERUVx\n0003UVpaypo1a9weU1+IuBtzUVJSQnV1dZtmbCgvL6/Jtj179qCqKvHx8a5t9bep1o+DaEv113WX\nzel0usYENcx3KUaPHo1Op2Pz5s1ux9o01LBlqrl8JSUlnDx5ksjIyDYvVnbv3u12LEt+fn6jnDEx\nMRgMBgoLC922ntQ/j9b8PHv06EFgYCD79u07bxHuCfUthS1pcYmKiuKGG25g3rx5+Pv7k5OT02a5\nhOhIpFjpJCZPnkxgYCDLli2jpqamyf7u3bsTEBBATk4OlZWVru12u/2yr2Xz6aefNhp7YLfb+eij\njwAaTWc+evRoAgMDyczMdDuOQFEUt2/el2LQoEEEBQXx3XffsX///kb7Vq1axYkTJ+jXr99FD4w9\nV9euXZkyZQoOh4O//vWvHDx40O1x27ZtazQGqb4VZtmyZY1eP0VReO+99xod05ZKSkrIyspqtO3H\nH39k9+7dREVFuca06PV6rr/+eqqrq/nkk0+anOM///kPer3eNRj7Umi1WsaOHUt5eTnvvPMOdru9\nyTGnT5++YFF4IfWF/okTJ5rsKy0t5fjx4022nzlzhtra2vMOvBVCNCbdQJ1EUFAQEydOdPWZn0un\n0zFu3Dg+/fRT/vjHP7omBNu5cyfh4eGEhYVdthk6e/TowWOPPcbQoUPR6XT8+OOPlJaWMmDAgEZv\nXkFBQcyZM4fnn3+euXPn0rdvX9dA2pMnT7Jv3z4sFgsffPBBqzMZjUYefPBBXnrpJebNm8fQoUPp\n0qULhw4d4qeffiI0NLTR7betMXHiRJxOJ5mZmfzlL38hKSmJXr16YTQaqaioYPfu3ZSUlDQa2JyU\nlMT48eP5/PPPmTNnDkOHDsXf359t27Zx+PBhkpOTGT9+vEfyNeeqq67i/fffZ/v27fTs2ZOSkhK2\nbNmCwWDgwQcfbHTs9OnT2b17N1lZWRw4cIC0tDQqKyv5/vvvsdlszJo166Lu2HLnjjvuoKCggLVr\n17J161bS0tIIDw+noqKCkpIS9u7dy7Rp0847+V5L9O7dG4PBwOrVqzlz5oxr3M7YsWMpKCjgxRdf\nJDExkZiYGMLCwqisrCQnJwdFUbj99ttb9fyE6CykWOlExo0bx5dffun2EyDA1KlTMRgMfP3113z9\n9deEhYVx7bXXMmXKFGbPnt3ma5/Un3/27NlkZmby7bffcvr0acLDw5kyZYrbdY769OnDCy+8wMqV\nK9mxYwe7d+/Gz8+PsLAw+vbty9ChQ91e41IMHDiQZ555hs8++4wdO3ZgtVoJCwvjxhtvbDKDbWtN\nnjyZYcOGuRYyXL9+vWshw7i4OCZMmMD111/f6DEzZswgPj6eNWvWsHHjRhwOB1FRUdx1113cdttt\nroGxLdHcz6m5fVdeeSV33HEHixcvdrWw9O3b1+0MtkFBQTz77LN89tlnbNmyhVWrVmEwGEhKSuK2\n226jX79+Lc57Pjqdjj/+8Y9s3LiRDRs2kJubS01NDSEhIURGRnLXXXc1+Tk2x91zN5lMzJkzh8zM\nTNavX+8asDty5EgSExOZMGEC+fn57NixA4vF4pq9duzYsVx11VWtfo5CdAYaVRa0EEK0Uv1U+OdO\npCaEEJ4gY1aEEEII4dOkWBFCCCGET5NiRQghhBA+TcasCCGEEMKnScuKEEIIIXyaFCtCCCGE8GlS\nrAghhBDCp0mxIoQQQgifJsWKEEIIIXyaFCtCCCGE8Gn/H4PDe2SsNdBZAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from pymks.tools import draw_gridscores\n", "\n", "\n", "gs_deg_1 = [x for x in gs.grid_scores_ \\\n", " if x.parameters['degree'] == 1][1:]\n", "gs_deg_2 = [x for x in gs.grid_scores_ \\\n", " if x.parameters['degree'] == 2][1:]\n", "gs_deg_3 = [x for x in gs.grid_scores_ \\\n", " if x.parameters['degree'] == 3][1:]\n", "\n", "draw_gridscores([gs_deg_1, gs_deg_2, gs_deg_3], 'n_components', \n", " data_labels=['1st Order', '2nd Order', '3rd Order'],\n", " param_label='Number of Components', score_label='R-Squared')\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "As we said, a model with a 2rd order polynomial and 11 components will give us the best result. Let's use the\n", "best model from our grid scores.\n" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "collapsed": false }, "outputs": [], "source": [ "model = gs.best_estimator_\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "##Prediction using MKSHomogenizationModel\n", "\n", "Now that we have selected values for `n_components` and `degree`, lets fit the model with the data. Again, because\n", "our microstructures are periodic, we need to use the `periodic_axes` argument.\n" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "collapsed": false }, "outputs": [], "source": [ "model.fit(X, y)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's generate some more data that can be used to try and validate our model's prediction accuracy. We are going to\n", "generate 20 samples of all six different types of microstructures using the same \n", "`make_elastic_stress_random` function.\n" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "collapsed": false }, "outputs": [], "source": [ "test_sample_size = 20\n", "n_samples = [test_sample_size] * 6\n", "X_new, y_new = make_elastic_stress_random(n_samples=n_samples, size=size, grain_size=grain_size, \n", " elastic_modulus=elastic_modulus, poissons_ratio=poissons_ratio, \n", " macro_strain=macro_strain, seed=1)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now let's predict the stress values for the new microstructures. \n" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false }, "outputs": [], "source": [ "y_predict = model.predict(X_new)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can look to see, if the low-dimensional representation of the \n", "new data is similar to the low-dimensional representation of the data \n", "we used to fit the model using `draw_components_scatter` from `pymks.tools`.\n" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from pymks.tools import draw_components_scatter\n", "\n", "\n", "draw_components_scatter([model.reduced_fit_data[:, :2], \n", " model.reduced_predict_data[:, :2]],\n", " ['Training Data', 'Test Data'])\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The predicted data seems to be reasonably similar to the data we used to fit the model\n", "with. Now let's look at the score value for the predicted data.\n" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "R-squared 0.999731315593\n" ] } ], "source": [ "from sklearn.metrics import r2_score\n", "print('R-squared'), (model.score(X_new, y_new))\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Looks pretty good. Let's print out one actual and predicted stress value for each of the 6 microstructure types to see how they compare.\n" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Actual Stress [ 0.2494416 0.25038939 0.23247306 0.25266295 0.23964323 0.24461285]\n", "Predicted Stress [ 0.2494777 0.25035744 0.23256064 0.25261754 0.23954181 0.24463568]\n" ] } ], "source": [ "print('Actual Stress '), (y_new[::20])\n", "print('Predicted Stress'), (y_predict[::20])\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Lastly, we can also evaluate our prediction by looking at a goodness-of-fit plot. We\n", "can do this by importing `draw_goodness_of_fit` from `pymks.tools`.\n" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/png": "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\nP09F1FTMR8RvPk05dhDx14fg0BA++l8AeWNubZWQ81csll2dsXQvmzhbsaZSW2LtL0EQhAfA8p9W\nGCUUANtJXSg+W7YOne2eNJ59dOo9P0ckFUEQhPtYRkYG8+bNI/Z85YVLAVS5ZTWUxb5zGTFo6D0/\nT6z9JQiCcJ8JDg3hp50buJ5xg8S4C+RfTseihelN6Hp26MK6Zd/W2bMf6KRS3U5/jcGddiNs7ET8\nZRpb27pwfzPuO3HGbrwzpT8cpejcTUp+i0Ux/dZ22rZ70njWd26dPv+BTiog/g8v1K+mnFSFpmn5\nTyvIm2Dcd+I4px8ttt/kzWde4eddGynRa1FI5DxbR01eFT3wSUUQBOF+kJGRwXvvvUfs+TicaF7p\nvK2jPSMGDa3zJHI70VEvCILQxO3evZvhw4fz559/oi8uNVlGIWmYOoRIKoIgCE1U+ciu2bNnc+PG\nDQA013Mp+S3WqFxdDReuCdH8JQiC0AQFBgby9ttvG5IJQIsWLfjkk0+QqRT13ndSFZFUBEEQmoDy\nYcIF2mKSzydy5XQCVGjqmjJlCv7+/tjb2wM0WBK5nUgqTdibb755xzLz5s3Dzc3tru+dnp7ORx99\nxJw5c+jSpcudL/jb+fPnWbFiBf/6179wcXG58wV1wN/fn6ysLKBsGLCVlRWtW7emd+/e9OnT5673\nS09LS+PEiRMMHToUlUpVHyELQo0Fh4bw4ap/cyXvBlInNZZdnLEc3AXlD3kUnblOC3snPvnkE0aP\nHm3uUAGRVJq0N954w/BzSUkJK1asYPTo0UZJoEWLFrW6t52dHW+88YZhw7Saatu2LW+88QbNmjWr\n1XNrQyKR0KdPHwYNGoROpyMnJ4e4uDh+++03jh8/zpw5c5DJZDW+340bN9izZw8DBgwQSUUwm+DQ\nEPwDPiFVn4PdzF7Y8xBQtl4XlA0Tlq45y+61fxhqJ42BSCpN2EMPPWT4ubi4GIBmzZoZHa9Ip9Oh\n1+tr9AUrl8urvE91lEplra67V7a2tkbP7dGjBz179mTVqlUEBQUxduzYu77nfb7WqtCILV8ZwPfb\n11NSqqXZqwOMztlO6kLO1lgs3Z1w83RvVAkFRFKpVnkbpoZSLJAx8zHfe26nrI97VuWXX34hNTWV\nUaNGsXPnTm7cuMHcuXNxcnJi+/btJCQkkJOTg729Pb169WLMmDGGhGOq+cvf35+ePXtiZ2fH/v37\n0Wg0dOrUCV9fX8Nf9Kaav958800mTZpEbm4uERERAPTs2ZNJkyYhl9/6J3j+/Hn++OMPbt68ScuW\nLXnyySf5/vvvGTRoUK2SQqdOnejRoweHDx82XH/9+nUCAwNJSkqioKAAR0dHvL29GTx4MBKJhPPn\nz7N69WoAPvzwQwAcHR1ZsmQJ2dnZ7Nixo9r3Jgj3Kjg0hLWhm7F5qS85286aLvR3k25DDRO+G40v\nokYiODSEZRu/JWeUM+WvadnGsvVxapsE6uOe1ZFIJGRkZLBt2zbGjh2LjY0Njo6O5Ofno1armThx\nIlZWVqSlpREYGEheXl61G/NIJBIiIyNp1aoV06ZNIysri7/++osdO3YwZcqUamMJCQnB3d2dZ599\nlitXrrB9+3YcHR0ZPnw4AFlZWXz//fd06NCBxx9/nJycHNavX49Go7mnd9CpUyciIyPJzMzEwcGB\n7OxsnJ2d6dOnDyqVipSUFHbt2oVGo2HkyJG0bduWCRMmsHXrVmbPno2tra0h8RUUFNTqvQlCTQWH\nhvDWV/4on/t7s0FdFbVlvZ6i32N59mW/hguuhkRSqcJPOzf8/eV/S84oZ37etbHWCaA+7lkdvV5P\nQUEBc+fONdofwd7enkmTJhl+b9++PQqFgt9//50nn3yyyr+6y5vOXnjhBaTSsilOqampnDp16o5J\nxdHRkaeffhoo+6JPSkoiKirKkFQOHDiApaUlc+bMMXyJK5VKfvzxx9q/AMr6hqBsOR4HBwc8PDzw\n8PAwfJ727dtTUlJCeHg4I0eORKlUGvqR2rRpg4ODg+FeLVu2rNV7E4SaMKzZ5SjB9u9jll2cyfkr\nFttJt/pJM386iSxXy/OTZppthFd1RFKpgoZSTL2ee9kZrT7ueSd2dnYmN9wJCQkhPDycjIwMtNpb\nz8/MzMTJycnkvSQSCe7u7oaEAmUDAXJzc9HpdEbHb+fp6Wn0e4sWLbh8+bLh90uXLtGpUyej5rCa\n7ol9NzQaDXv37uXEiRNkZmai0+kM5+70GaB2700QasKwZteWDMOx8s2zcrbGUppRCEWltLJywu+d\nfzXKhAIiqVTJAtN/dd5LG2Z93PNOTC1oGBISwtatWxk5ciRubm6o1WqSk5PZvHmz0RelKbePhir/\n61yr1aJQKO7quopNW7m5ubRu3dqojIWFRbX3rIns7Gzg1nvYtm0bERERjB07ljZt2qBSqYiOjiYo\nKOiOn+Fe3psg3K7ivJNL55NIy0nHieaVaieW7k4URaTQWuHIe2+81WiTSTmRVKow8zHfCv0fZe51\nmej6uGdtREZG0rNnTx577DHDsWvXrjVoDLeztbUlLy/P6JhGo6GkpOSe7hsXF4etra2hGSsyMpLB\ngwcbmt0AYmJianSvxvjehKbJuH9VCYM7I/k2HDCunSCRYJ2h57vXlzb6ZFJOJJUqlP8PWJdLHdTH\nPe/E1MQ/rVZbqf3/xIkT9RZDTbRr144jR46g0WiwsLAA4MyZM/d0z3PnznH69GmjkWO3f3adTsfJ\nkyeNris/f/sggcb43oSmpbx2EhUfg8WsbkbnrEe7k/NTJLYze2Lp7oSluxO2e9JY/HrDLbFSF0RS\nqUZ9LBPdEEtPV2RqroWHhwehoaE89NBDNGvWjBMnTnDz5s1a3auuDBkyhLCwMH744QeGDBlCbm4u\nwcHBWFhY3LGfQ6/Xk52dzcWLF9HpdOTm5hIXF8fRo0fp1KkTI0eONJT18PAgLCyM5s2bo1KpCAsL\no7TUeFXX8o76Q4cO0atXLxQKBa1atar1exOE4NAQvvxxBRcL01BN60phugyL28pYujvRKrYUl3DM\nsmZXXRFJ5T4mkUhM1lTGjBlDXl4eO3fuBMomCk6ePNkwP6O6+9VXbHZ2dsyZM4c///yTtWvX4uLi\nwvTp0/nuu++wtLS8471OnjzJyZMnkUqlWFlZ0aZNG6ZPn07fvn2Nyj755JNs3LiRTZs2YWFhQb9+\n/ejevTsbNmwwlHF0dGTChAkcPHiQ0NBQHBwcWLJkSa3fm/BgCw4N4Z1VH3MjJwO5iw2aLbGU5hSZ\nLOvi3KJOt/Y1B4n+Pp82fPXq1SrP2djYiJ0fG7HExEQCAgKYO3cuHTt2NHc4tWKuf2NN/d/2/RT/\n+Bd9Oa+/YTQsOHtjNLpCDQ4zexuO2e5JY3EjqZmYGjFaU6KmIjQaW7dupU2bNtjY2JCWlsaePXto\n1apVk00owoNrd8heVm36kQJtMWcvXcBqrLvRebupXmT9FkXO1lisciV079C5STZ1mWLWpLJu3TqS\nkpJwdXVl1qxZhuMbN24kKioKgGnTptGtWzf++usvw7ELFy6wcuVKrKyszBG2UE9KS0vZunUrubm5\nKJVKPD09jSYbCkJTEBwawiebvyNrhBOgxHGwt2ERyPKRXQBSawVtLJuxeOb9kUzKma35KzExkaCg\nIF566SVWr17NsGHDDEu0p6Wl4ezsTEFBAZ9++in+/v6G63Jzc1m+fDl+fjVbnkA0fwnmJJq/aqcp\nxh8cGoL/t59yJSsNidoCiaUM1cNtjIYI20641QRW/N8ovlzwUaNMKE2y+evChQv06NEDAC8vL+Lj\n4w1JpXz0jVwur9Q5fOzYsUqdr4IgCOYSHBrCl7+sJC75AhI7Sxzn3lpVOHtjNPB3DaXCd5l8azKf\nNNKEcq/MllTy8/MNyUOtVhst2VFuw4YNjBo1yujYsWPHmD17tsl7xsTEGE1k8/X1NTmjvJxYq0mo\nbzKZrNp/g/VFoVCY5bl1panE/3HAv/luy09om1uit5Cg7tfG6LzdVC/DMvU2meB5RI+lxILZLy9h\nzNCRVdy1cag4IrJr1641XjbJbElFrVZTWFgIlK3+env/yNGjR8nPz2fgwIGGY4WFheTm5tK8eXOT\n9zT1waurQjeFf7RC01ZaWiqav2qhKcQ/f/ECAs8fxn72rRFcpvpOkEjKRna99p5RzaQxfz4bG5ta\nr7xd/ayyeuTh4UF0dFnVMDo62rByLEBycjK7d+/mhRdeMLrm1KlT9OrVq0HjFARBqCg4NITBvmPZ\nGXkA+wpDgqFsA63is2lGx/QpuY1mqHBDMFtScXV1RaFQ4Ofnh0wmw83NjTVr1gCwfv16cnJyWLp0\nKZ999pnhmmPHjtG/f39zhSwIwgNs/uIFdBvkxdfvvE7rtFS8tHrkcTcqF6zQd5LzcyQvT2icS9TX\nFzH5sRFXQYWmT4z+qp3GFr/vnGeIuXCakSol6wbf2sZh9olEIvq1Qut5q0k+/ZtwZBZyVFIFsx57\niv97eb45Qr4nTXL0l3Dv3nzzzTuWmTdvnmFUXW0cPnwYGxsbvLy87ioeuVyOtbU1bdu2pX///rXa\nGyU5OZmzZ8/WaithQagrwaEhnMpMoEcre9Z5tTc6t6ZPB0ZFJpP8d1LJ/PEk8554Hr+FixtVUmxI\nIqk0YW+88Ybh55KSElasWMHo0aMNe8pD2WZY9yI8PJyWLVvWKKkADBs2jB49elBaWkpmZiZnzpxh\n9erV9OvXj+nTp9/Vsy9dusTu3btFUhHMYv7iBew+dRCtvpRmc71R/2561WxFej45285SeiWHR3sM\naZI1k7okkkoT9tBDDxl+Li4uBqBZs2ZGxxuao6Oj0fP79OmDp6cnv//+O25ubvTr189ssQlCTSxf\nGcCKjWvQySVIFDIkkrKpBwWY7inIL9BgmVbCrMefe+ATCoikUq2IgyGE/fEbcl0pWqkMn8nTGTB4\naKO7Z3XCw8M5cOAAN2/exMbGhkGDBhltUHXt2jW2bNnCpUuX0Gq1ODg4MGjQIHx8fAgICCAlJYWU\nlBSOHTsGwPTp0+86MfTv35/Dhw9z6NAhw7VJSUns3buXy5cvU1RURPPmzRk+fDh9+vQB4MiRI/zx\nxx/ArWa1jh07MnfuXK5fv05gYCBJSUkUFBTg6OiIt7c3gwcPrtOVlIUHz/KVAazd+F88S3Q0Q45C\npyddo+Va3A2u9HRh9tFE1vTpYCg/MzgWh45ebFmz3oxRNy4iqVQh4mAIh9Z8xYeet+ayvLfmK4Ba\nJ4H6uGd19u3bx44dOxgxYgQdO3bk0qVL7Ny5EwsLCwYNGgTA6tWrcXFx4dlnn0Uul3P9+nVDrWfq\n1KmsXbsWJycnRo8eDZTVhGqjU6dOBAcHG/aBz8zMxNXVlYEDB2JhYUFSUhK//vorEomE3r1707Vr\nV4YOHUpISIihmU+pVAJlWwQ7OzvTp08fVCoVKSkp7Nq1C41GY7R3iiDUVPl+J0nxZ+kvleHlaMP7\n3rf6Ip/fe5YjI12J6NeKUZHJWFzPJb9AQ5fBowj4ZLkZI298RFKpQtgfvxl9+QN84GnDe3/+XusE\nUB/3rEpRURGBgYGMHj2aMWPGAGVzgzQaDUFBQfj4+JCfn09GRgYvvvgiLVu2BMDd/dZqqi4uLigU\nCqysrO65Sc3Ozg6dTkdBQQHW1tb07n1rfL9er6dDhw5kZmYSHh5O7969sba2xtHREaDSsz08PAzz\nmvR6Pe3bt6ekpITw8HCRVIS7Nmv2M2TEn8ZGIaNnqYQWCrlRQgFYO6wzQ3dEccZGQYaLNQ4uzVn6\n0qIHaqhwTYmkUgW5rtTkcVmptlHdsypJSUloNBpDp3m5jh07smfPHrKysrCzs8Pe3p4NGzYwePBg\nOnbs2GCrDBQUFLBr1y7OnDlDdna2YVdJOzu7O16r0WjYu3cvJ06cIDMzE51OZzhXXhMShOqU10yS\n484yTKngz/E9Dede3x9H2JVMfFo7GF2jlkixR41X8y48++hUkVCqIJJKFbRS0+uClcpq/8rq455V\nyc/PB+DTTz81eT4rKwsHBwdefvlldu7cyW+//YZGo8HV1ZXJkyfTpk0bk9fVVnZ2NlKpFLVaDcCv\nv/5KcnIyY8aMoUWLFiiVSg4dOmRYZaE627ZtIyIigrFjx9KmTRtUKhXR0dEEBQWh1WpRKBR1Grtw\nfwkODeHwW14GAAAgAElEQVS9z5bgnJFFX72EH0caD3f/apgnH0QkVEoqcrmKE9sONGSoTZJIKlXw\nmTyd99Z8xQcVmquWnM3F5wXTi1ma655VKf/ynjNnjsnaR/lini1atOD5559Hp9ORkJDAtm3b+OGH\nH4y2G6gLcXFxtGvXDqlUikajITY2lilTpvDII48YylSscVQnMjKSwYMHGw04qLiQqCBUZ9XaFfQt\nLmTd471YeiTRZJnLt233+2pYEnOXLGuI8Jo8kVSqUN7H8d6fvyMr1VIqk+Pzwux76vuoj3tWpX37\n9lhYWJCdnW00b6UqUqkUd3d3hgwZwvr16ykoKECtViOXy9FoNPcUS0REBJcvX2bGjBkAaLVa9Hq9\n0SrRRUVFnDlzxqjpqvy8VqtFLr/1T1Wr1Rpdq9PpOHny5D3FKNzflq8MYO3WX6GggO4letZNKGvu\n0upMDxO+VlrKxO2RqORyVE4uTHvrw3odpXk/EUmlGgMGD63zf0j1cU9T1Go1Y8eO5c8//yQzM5MO\nHTqg1+tJS0sjISGB2bNnc/XqVbZs2UKvXr1o1qwZBQUFBAcH07p1a0NNx9nZmbi4OOLi4lCr1TRr\n1qzaHTfT09O5ePEipaWlZGVlcebMGSIjI+nfv79hHxyVSkXbtm3Zs2cPSqUSiUTC3r17UalUFBXd\n+guxfOLmgQMHcHd3R6lU4uzsjIeHB2FhYTRv3hyVSkVYWJhRv5EgVDTKdzyJBalYq+QMt7LBrUIX\n5oh2jrwfnmA80ut4ImfUcp6bKOad1IZIKvex4cOHY2try4EDB9i/fz8WFhY0b97csNKzra0tNjY2\nBAUFkZOTg0qlwt3dnccff9xwj9GjR5OZmcm6desoLi6+4zyVkJAQQkJCkMvlhlFjL774YqVlWmbO\nnMmGDRv45ZdfsLKyYtCgQZSUlBAWFmYo4+bmxrBhwzh48CDbt283zFN58skn2bhxI5s2bcLCwoJ+\n/frRvXt3o/0fBAHK1uy6kJGCVGWBa46GNSM88A9PMJwv7zf5ICKBlNwirhZpSLKxZvk7/xYd8bUk\nFpR8QNfnERqGWFCydu41/uDQEBb925/Ckhw6OVqhRoJlWj4bRnQh7Eomey9lGNVO3j98gejsApy9\nh/NJHcw7aervXywoKQiC8DffOc8Qcy6K9sV6ujmoWfn3IpDlNZSKtROZRMLx6zkUKlUMnzabl155\nzVxh3zdEUhEE4b4wf/ECdh7fj6pUxwiVkg4OCvwq1EYq9p/4tHbAp7UDs0PO4f3siyKZ1CGRVARB\naNJWffc1Qb+tQ6GQ0KuFNZrsYn706VRpuHB5DWXi9kg0cikSCxVDJs8QCaWOiaQiCEKTNWv2M9he\nOkvQY90Mx14OKZsRb2q4sE9rB96Lvsy8D/8jOuLriVjPQhCEJmf5ygDcRvYiI/50pRnxK4d6su9y\nhqG5q6Ln98Ux9qnZIqHUI1FTEQShSfGd8wzHk2OQqORYaU0PXr2QV8R7FTrkz2cWkKdQ8fKSz8Qk\nxnomkoogCE3C8pUBrPh9DTSzpNn8suV9NL+bXisu1VrB0N2nUen0FJTqcfTozjqx50mDEM1fgiA0\nevMXL+CbrevQ28pxmNXHcPxKTxdmnzDukH9u31liM/KIkUo539yRoc/MEQmlAT3wNZWGWuq9NmQy\nWZNefkTEL9SF5SsD2Be2By+JDCuVlJLfo7nS0wWtZ3O0ns2JAIYFxWDb3JqcG3mc12jo2qkHG34Q\nicQcHuik0thnvDb1WbkifuFeRBwM4Yt3F6BAywC9lDd6tDUMC559NJEIMCSWs/E3sJ3QhfQVEbjZ\ntxMJxYzMmlTWrVtHUlISrq6uzJo1y3B848aNREVFATBt2jS6deuGTqdj/fr1JCcnY21tbdi3XBCE\n+8+wQX3xKMlhz2O3Rna9X2FG/Jo+HRgVmUyyZ3Ny/orFsqszWT+eZN7EWWIRSDMzW1JJTEykuLgY\nf39/Vq9eTUJCAm5uZbNfhwwZwtSpUykoKODTTz+lW7duRERE0KZNG2bOnGmukAVBqGfLVwaweu13\neCss+GFcD6Nz73u7GW2eZXEtl/SAw+hL9UhS8lj57udiqHAjYLakcuHCBXr0KPtH4+XlRXx8vCGp\nlG8gJZfLkUgkAJw8eRJbW1v8/f3x8fFhxIgR5glcEIR6MfLRoVjlZ9JTIgOdnrcOnsPKQs6Ido6G\nRCL7+/sAIL9ES2mRFo82HQjasN1cYQu3Mdvor/z8fJRKJVC290f59rcVbdiwgVGjRgFl29G2bt2a\nJUuWEBYWRnZ2doPGKwhC/Zi/eAF9BnShpyaPj3q04+EWtmx6vCefDe6En7cbey9lEHYlE4DSvxdV\nnxkcS5JGx5pPV4iE0siYraaiVqspLCwEoKCgoNLGT0ePHiU/P5+BAwcaynfp0sWwQ2Fqaip2dnZG\n18TExBhtK+vr69uoR3fdiUKhEPGbUVOOvynE/vV/PmfHTz+glOroLpPzXOeWBN+2JD3cavb66ew1\nkpUyhu4+TYZUxcXYc2aK/M6awvu/k4r7E3Xt2rXSnkhVMVtS8fDwICgoCG9vb6Kjoxk2bJjhXHJy\nMrt372bRokWGY506dSI5OZmWLVty6dIlxo4dW+mepj54Ux6909RHH4n4zaexx/7woD54oaGbWkme\nBkos4N/HLmKtkJksH5eRz5FSLZnIebhjN0J/WN+oP19jf/93YmNjg6+vb62uNVvzl6urKwqFAj8/\nP2QyGW5ubqxZswaA9evXk5OTw9KlS/nss8+Asl0Mw8LCWLJkCe7u7jg6OpordEEQamn5ygDa9e2E\nS0kx7rZqvhzmyQ+ju/LjWC96trClVK83NHVVlFaq4/NPviFpb6QYLtzIPdA7PzZ298NfOyJ+82hs\nsQeHhrD4qw9JvXoNmZ2KIbla/hjfo1K5DyISuJBVwE9jvQzH5hy4wJRFy5rUml2N7f3fLbHzoyAI\njdb8xQvYdngPUksLZA5qKNVhKZOYLCuTSJACk7dFopVJwNKKuUuaVkJ50ImkIghCvZm/eAE7okKw\na2aFu1KBGgkF6MlJrNzEBWWju26WlHLRzpoPFi8T806aILGgpCAIdW75ygB6Du5Jyv49jMgrpe/1\nQtyvF7DQ0ZYgr/boLWW8FBRjdM37hy8QlZ5Hfqt2nA6LFgmliRI1FUEQ6pTvnGeIORfFSIWCF3u0\nJfhSBnKphHMZ+XwbeQmAnWO788jm44zbcgpbuYxinY4MrY7HZv1DbO/bxImkIgjCPQsODeHLH1eQ\nePo07lZKHrG0RK2H7Yk3+GSQh6Hc6/vP8lvcNXxaO2BvbUmESoout4iWDs6Eb99vxk8g1JUqk8pT\nTz1Vqxv+73//q3UwgiA0PcGhISz49xI02Vn0V1rSw9bKUDN5unNLo7JfDevMrMCyjbXyS7TotXoe\nHzSWgGVfmCN0oR5UmVQGDx5c6VhSUhKXL1+mZcuWtG7dGoArV65w7do12rZtS4cOHeovUkEQGp35\nixewZd9OZDZKumigu5M1fhVmxFdcWbicQiZlZlAM456Zw1bR1HXfqTKpzJ071+j3qKgojhw5wj//\n+U8efvhho3NHjx7lm2++ESsIC8IDpHv/brSXSxmoVlJQpMNOL6lyiZWKSeVKfjGvffaNGCZ8n6rx\n6K///e9/jBw5slJCAejXrx8jR44UTV+C8IDo1rcLfZRyhjvZMNDOimGO1qhlpr9OKq4sPHvvWZFQ\n7nM1TiqXLl3CxcWlyvMtWrQgOTm5ToISBKFxmr94Ae0GdKadTEJ3eyv8vN14p38H/Lzd0FWxOEdE\najaPB55hblwRT733uUgo97kaJxUrKysiIyOrPB8VFYVara6ToARBaFyCQ0PoOaQnicG7GSqzoJ3C\nAgkYrdM1v1c7/nHb3JNZe2NoM2QU60NOsmzdBpFQHgA1HlLs4+PD9u3bWbFiBRMmTDCsDXP16lW2\nbt3KiRMnGDduXL0FKgiCeXiPH0ZxRhoPy2R0cbEz6jep2BHv09qBj49dZOiOSNRyGfmaUsbNeFHM\nO3nA1DipPPXUU6SmpnLgwAEOHDiAVFpWydHpdAD06dOHadOm1U+UgiA0uODQEF7856s01+rwUlig\nksnu2BFfKNFzqrgEpU5J/KHT5ghbMLMaJxWFQsHChQuJiori2LFjXL9+HSjrS3n44YcNWwMLgtD0\njfIdz5WUJHpLZbSxscTVTk2+RmuybHlH/Ky9McSVaHhjzjz+7+X5DRmu0Ijc9Yz6Hj16iAQiCPep\n4NAQ5rw7n+YaHQNlcno42aDV6RnRzpGVUZdNXnP0Zi5Dd0ZxVS/n7InGuxuj0DBqtUxLamoqWVlZ\ntG3bttI2wIIgND3BoSG89c4C2khLGSiRo5LqmN+znaFZ6/3wBAa1dmDevrN8M7yz4boXg2I4Xqqh\nW9feHBObZwncZVI5fvw469at48aNGwAsWbKEbt26kZWVxZIlS3j66afx9vaul0AFQagfb7/9f5w7\nsAdvSws62lkxop0jPq0djDrhy/tObhQU80FEAucz88nT6EiUyIk9HGvmTyA0JjUeUhwTE8MXX3yB\njY0NU6ZMMTpnb29PixYtOHz4cJ0HKAhC/QgODaFXz05ojh1g38Te/DzWCz9vN7Yn3iDsSibve7ux\n73KGobxMIkEll3Etr5hLecXg2Z2Dh06a8RMIjVGNayqbNm2iXbt2LF26lLy8PDZt2mR03sPDg4MH\nD9Z5gIIg1L1RvuNJSbrAwyoFq0d1NTr3ySAP3gyJw6e1g9Fs+HMZ+VwvKCZVoeTgibMNHbLQRNS4\nppKQkMCgQYMMQ4lv5+joSGam6d3cBEFoHIJDQ+g1uBeKlGQGWCiwsZCZLJevKQXKdmIEeG3fWW4U\nldBhxFhROxGqVeOail6vx8LCosrzubm5yOViexZBaKzefvv/OL1/N12R4Gqv4uthnfH/u9/kdiWl\nOv6xN5bU3GImb40kXadn3KyXxERG4Y5qXFNp1aoVZ89WXeU9efIk7du3r4uYBEGoQ8GhIXR7uAv5\nxw/Qw0aFg9KCr4eVjeAa0c7R0CFf7v3DF7hWWEKghZ4D2hJOOdnx+ucBIqEINVLjqsWIESNYs2YN\n+/bto2/fvobjRUVF/Prrr8THx1daLl8QBPPynfMMZ2JO0VkPblZKLmTlI5VICLuSaVhaBeCDiARS\ncotoY6PkXGY+59GTfTOPtf9ZJfaKF+6KRK+vYmnR2+j1egICAjh06BBKpZKioiJsbW3Jzc1Fr9cz\ndOhQXnnllfqO965dvXrV3CHUmo2NDbm5ueYOo9ZE/OZz+MQRZsydjVopw6tET3u1Jd+N7GI4/354\nAiP/HjpcblZgNFnFpUQVFeHRtx8bzDjvpCm/e2j68Zev7VgbNa6pSCQSXnvtNQYMGMDBgwe5cuUK\nAB07dmTIkCEMGDDgrh++bt06kpKScHV1ZdasWYbjGzduJCoqCoBp06bRrVs3QkJC+Ouvv3BwcKBj\nx47MmDHjrp8nCA+C5SsD+OGHADrLLWhRAhIkRgkFKq/ZNS/4LNmlpZzU6/jP19+L2olQa3fds96v\nXz/69et3zw9OTEykuLgYf39/Vq9eTUJCAm5uZYvVDRkyhKlTp1JQUMCnn35Kt27dAJgwYQLDhw+/\n52cLwv1o1Xdfs/3HVdgq5DxsocDWUs7Pj3Zn6ZFEk+VTcotYeiSR0zdySc4vptTFhehdIQ0btHDf\nqXFHvb+/P9HR0VWeP3PmDP7+/jV+8IULFwxriHl5eREfH2845+zsDIBcLkdSYZz8jh078PPz48yZ\nMzV+jiA8CEY+OpSzG9dxcFIftj/Wgy2TeuNmb0XYlUy0OtMt3JlFGiJv5nI0r5AxL81lr0goQh2o\ncVKJjY0lOzu7yvPZ2dnExtZ8uYb8/HyUSiUAarWa/Pz8SmU2bNjAqFGjgLIa0hdffMGCBQv4+eef\nqWFXkCDc14JDQ+jySFdaZN5k7ehuRufKZ8RXNcIrq0TLzRZtiYyMF6sKC3WmziaWFBQU3NU8FbVa\nTWFhoeHa2xemPHr0KPn5+QwcONBQHsDW1paWLVuSlZWFg4OD0TUxMTHExNzaec7X1xcbG5tafZ7G\nQKFQiPjNqLHHP/6ZySSeOkY/iQxVFZMYZRKJyRFep9NzGffya7z2xsKGDLnGGvu7v5OmHj+U/VFf\nrmvXrnTt2rWa0rdUmwUuXrxIcnKyoVZw9uxZSktLK5XLzc1lz549tGnTpsYBe3h4EBQUhLe3N9HR\n0QwbNsxwLjk5md27d7No0SLDscLCQlQqFSUlJVy7dg07O7tK9zT1wZvyCIymPoJExF8/Vn33NYE/\nfo+jTEoPuQXze7Xjh+gUk2XLZ8T7tHbgp9irJOQVkSq1ZO7HAQwYPLRRfj5ovO++pu6H+H19fWt1\nbbVJ5ejRo2zevNnw+969e9m7d6/Jskqlkueff77GD3Z1dUWhUODn50f79u1xc3NjzZo1zJ49m/Xr\n15OTk8PSpUtRq9UsXLiQHTt2EBkZiV6v54knnqhyuRhBuJ/Nmv0Mdsmx7JvU23Dslb2xpBeW8H54\ngtHOjP8KjSevRMvSI4lE3sjldLGWo8diTN1WEOpMtfNU0tLSDMvcf/DBBzzxxBN4eXkZ30AiQalU\n0qZNGxQKRf1GWwtinor5iPjrTnBoCC8unEtPiZR9E3tVOj9lWyTWFlI62Fshk0i4WVjCxexCVBYy\nUrWl5No1a1Id8Y3p3ddGU4+/3uapODs7G0ZivfLKK3Tp0sXwuyAIDcN3zjPEHztKb7kce0sJS48k\nGnZjLO8v6eVsy4nrZQNpYm7mUVyqI6OklAu6Urp1781esYGW0EBq3LPu4+NDSUlJlecLCgpQKBRi\nUUlBqCOrvvuaHet/QKHV0VlhgZu9moAKuy5W3ESrVK/HSaXgWl4xOSUaYopLKGlmR8D7/xYTGYUG\nVeOOiZ9//tmo4/x2ixYt4pdffqmToAThQTdpynhiNv/I0t7tGehiT/+W9kYJBW4NGX5tXxzD2zpy\ns0DDyZu5nNRqefGNfxIbfFwkFKHB1TipREVFVTuTvn///kRGRtZJUILwoFr13deM698Vh6uXUOjg\nm1OXGNnOEblUYrJ8Sm4RpXodv569xpnCIlKbO/DNf1axaP4/GzhyQShT47aq9PR0XFxcqjzv7OzM\nzZs36yQoQXgQTZoyHsfrlxjpYm80iuvt0HiKtTqT12QXa0kv0ZJYouVUZLzJMoLQkGpcU5HL5dXu\n7JidnS2G+QpCLXUZ0gfJlYt0d7QxSihQtr1viU5XaVb8P4JiiM7O59UvvuVU5LmGDFcQqlTjmspD\nDz1EeHg4kyZNqtQZr9VqOXz4MO3atavzAAXhfjZ/8QK2BO/AWibFWW5RZTNXK2slQ9o48EFEAgmZ\nBaQXaYgvLOaTFatFv4nQqNS4ajF27FhSUlL4+OOPuXDhAlqtFq1Wy4ULF/j4449JSUlh7Nix9Rmr\nINw3lq8MoHNvD5L37GSgXsYEtZrOjtZVLv4YmZbDfyIvEZyeS1BRMYnNm3Ps9HmRUIRGp8Y1lQED\nBjBp0iT++usv3nnnHSQSCRKJBJ2urK134sSJhnW6BEGomu+cZzh/+iSD1Eo6N7NBAvh5uxF2JZNf\nzl6rNDN+bnAsWpmUozoteSVa1n6xUiQTodG6q0kl06dP5+GHHyY0NJTU1FQAWrZsiY+PDx07dqyX\nAAXhfhEcGsK8JQuQSjX0QIqlTIaFVEJ8Zr5he1+A3+KuMSswmlK9ngKNjqvFGi4pJLRu24GgDdvN\n/CkEoXp3PVOxY8eOIoEIwl2av3gBwaF78NTqsdJBGxtlpe19AaN948dvjeRUqYY8qY61n4m94oWm\nQQzXEoR6EhwawnOLXsV9aE/C9uzgMYWCfRN709fFzuT2vvsuZxh+f27/WU5qS5Db27N2uUgoQtNR\nZU1l48aNSCQSJk+ejFQqNfx+J1OmTKnTAAWhKQoODeGld19HoyvFsVhLT4WCH0aVbctQ3UTG53ZF\nc7VIQ4JUytmjcQ0ZsiDUiSqTyqZNmwCYNGkSUqnU8PudiKQiPOiCQ0N44V+vglyKrbUlI5VKHrJW\nGs5XNcIrraCExLwiej4+gU3LvmiocAWhTlWZVAICAsoK/D0npfx3QRCqtnxlAN/8sQZHoLNWgl2B\njiIgKbvQUKZ8e9+KI7xeDoohsbCE0OjzDR+0INShKpPK7UvciyXvBaF63uOHkZOXTu9SaK2wxNVO\nbVie/tldp/m/kDiWD/U0dMRP3xEFQJ5WR5ZdM0IjT5gzfEGoE2KdekG4R8tXBhCwcTX2ucV4Wyrp\n6WRt2O9k76WyzvefH+3O5K2n+CAiAZlEwonrOdzQapG368Bfm8QwYeH+cceO+rsl+lSEB8XylQEE\n/LQSib0SW0c1IyRyfhjZ1XD+/fAERrZzZN/lDHxaO+CkUvDeADdeDIohsqSEf38pJjEK9587dtTf\nLZFUhAfB/MUL2Lt3B10kcprlalHllWKtUhhNYnzf281QMwFIK9QwZHskiZpSvhIJRbhP3bGjvlxR\nURHffvstMpmMcePG0bp1awBSUlLYsWMHOp2OefPm1W+0gmBmwaEhvPbx2+hz8higUtLd3qrSMvWA\nIbHIJBJK9XpeCY4lqriEQWPGsVWM7BLuYzXuqF+zZg1yuRx/f3+jVYrbt2/PgAED8PPzIygoiNmz\nZ9dftIJgJsGhIfzrMz+KS3Lp7GSNOldGD3sr/EwsU/9BRIIhqUTfyOVmsYbLSIg8IeadCPe/Gs+o\nDw8PZ+DAgSb3oJfL5TzyyCNERETUaXCC0BgEh4aw0G8BLmk36JdfSvtr+TjKZFVOYixv7noxKIYj\neYW0GvUoR4/FNGTIgmA2NR79VVhYSEFBQZXnCwoKyM/Pr5OgBKGx8J3zDGfORtJfKqO7i4Ohqcs/\nPKHKSYxH03IYvOUkF3V6/hPwveg7ER4oNa6puLq6snv3bsPqxBVdu3aN3bt306FDhzoNThDMqXmX\ndhxPjsFdLqeHg7VR38mIdo6k5hdX2o3xuaAYTun1DHvuJaKPxIiEIjxwalxTmTFjBh9++CELFiyg\nb9++Rh31x48fRyKR8PTTT9/Vw9etW0dSUhKurq7MmjXLcHzjxo1ERZVNDJs2bRrdunUznPvss89o\n164d06ZNu6tnCUJNLF8ZwNpd/0Oemo63TI51CZRodORrtEblyvtMvjxxkcnbIpHJpKSXaBn73D/4\n+pXXzBG6IDQKNU4qnp6evP/++/z444+V+k7c3d2ZOXMmHh4eNX5wYmIixcXF+Pv7s3r1ahISEnBz\nK/tLcMiQIUydOpWCggI+/fRTQ1JJTk5Go9HUav6MINzJ8pUBfLfvNxxtZAwvtGbF8M6GczN3RVcq\n79Paga8iLxEu02Nr7UD49v0NGa4gNEp3NaPe3d2djz76iOzsbK5fvw6UjRKzt7e/6wdfuHCBHj16\nAODl5UV8fLwhqZSPPJPL5UYJZNeuXYwePZqEhITKNxSEexAcGsLXv67C0qM57rE3WTGhl9H5f3Rv\nw+v7z/LVsFuJ5sWgGE6WaHjh+Vf4v5fnN3TIgtAo1WqZFjs7O+zs7O7pwfn5+YbkoVaruXz5cqUy\nGzZsYNSoUQBcuXIFOzs7rKys7um5gnC7Ub7jib92EVtrSzxvFmInl1Uq49Pagc+OXWTitkgUMgnp\nJaXkOjhx8ohYr0sQKrqrpFJaWkpoaCinT58mOzubZ555BldXV/Ly8jhx4gReXl44OjrW6F5qtZrC\nwrKVWwsKCioli6NHj5Kfn2/Y937Hjh34+vpy5cqVKu8ZExNDTMytoZu+vr7Y2NjczUdsVBQKhYi/\nnnUc4EW2RTE2CjkjrVWs6dMB/3DTNWGdTEKopgRKJbz18hssmv/PBo625prCu6+OiN/8NmzYYPi5\na9eudO3atZrSt9Q4qRQXF/PRRx8RHx+PQqGgpKTEMIRYpVLx66+/MnToUKZPn16j+3l4eBAUFIS3\ntzfR0dEMGzbMcC45OZndu3ezaNEiw7EbN26wYsUK8vLyyM3NpUePHnTu3NnonqY+eG5ubk0/YqNj\nY2Mj4q8no3zHcyH9MlIrSyycbXFLyGJNn7LRi6aWpn81OJaY/CKktgpee/ol5s16qdF+Nmjc774m\nRPzmZWNjg6+vb62urXFS2bhxI4mJiSxYsABPT0/mzJljOCeTyXj44Yc5ffp0jZOKq6srCoUCPz8/\n2rdvj5ubG2vWrGH27NmsX7+enJwcli5dikql4q233uKdd94BIDY2lujo6EoJRRBqymNgD3QtVbiM\n7UTryFTUhToUFeaclI/s+iAigYTMApBAfG4hJc1s+e/7/xbDhAWhGjVOKuHh4YwYMYJ+/fqRk5NT\n6byLiwvh4eF39fCKw4gBwxIv5QnElC5dutClS5cqzwtCVXznPMOZ0yfprJBjWaTnoeCLfD/UEwD/\nPOMmL5/WDvi0dihLLHlF9Bz1GIGfLDdH2ILQpNR48mNmZibt27ev8rylpaWhj0QQGptRvuOJuXCa\nUY7WhIzrySMyuSGhwK0mr4r+ERRDWHoRT7/3BZ+IhCIINVLjmoq1tTUZGRlVnk9JScHBwaFOghKE\nurJ8ZQDfrP8ebBR0l1uwbkhZIrl93a7yJq+J2yMpkUoo0OroPvIxNn7waYPHLAhNWY1rKl5eXuzf\nv5+ioqJK59LS0ti/fz89e/as0+AE4V6M8h1PwKb/gr0lEgsZ6gp5xNS6XT6tHcjW6en39ItsPRzN\nV1+uaMBoBeH+UOOaypQpU3j77bdZtGiRYZhvZGQkUVFRBAUFIZfLeeKJJ+otUEGoieDQEH7auYFT\nZ6IoUOpwen2g4Vz+v8MMP5sa4fXC/ngWfRLAgMFDGzJkQbivSPR6vemlVk1ITEzku+++49KlS0bH\n27Zty7x586rtczGXq1evmjuEWrsfhiU2ZPzLVwawcsd6JC2t0Kbm4jinn9F53b4EBp5N58ehZSMH\nw4sf6kMAABnDSURBVK5k8lXkJQoBla0jL/7LzyihNOX335RjBxG/ubVq1arW195VUil36dIlUlJS\nAGjZsiWurq61DqC+iaRiPg0Zv++cZzh2PgqJSoFELkWv0WE9uiOW7k5G5Qq+CKUjEtRSKfklpWQo\n1ITtM70PUFN+/005dhDxm9u9JJUaNX8VFhaycOFCHn30UcaNG0e7du1o165drR8qCHVp0pTxaFIu\nMshChqVWQpaljJTBrqRHXgMwSixFdkqiNaXos4qYP/NlsWaXINSxGiUVlUpFXl4eSqWyvuMRhBop\n7ztJij5DqxsZeNmr+LrCYo+zw84T4dOWjLNphqSS+dNJdNmFWMvV/OfTb8UkRkGoBzXuqHd3dych\nIYERI0bUZzyCcEfBoSG88tVilI+0pV12Fs2VFkYJBWCNtzujIpO5npVP+soI0Oiwlij58sMAkUwE\noR7VeEjx008/TXh4OPv27aMW3TCCUCeCQ0N4YfE8JPaW5Ick0Uwhp5Oj6ZWr1QDaUuRSOfMmz+b0\n7nCRUAShntW4pvLTTz9hbW3NqlWr+OWXX3BxcUGhUFQq5+fnV6cBCkK5+YsXsCV4B4p2DthO7ELO\ntrMoknKq3Cs++0o2SpmcgHc/FclEEBpIjZNKWloaAE5OZe3TWVlZ9RORINxm+coAfvr9vzyk0zNQ\npaRYq+da3A3Q6cmykjOibeU5J3OCYkiXKokNNj2ySxCE+lGjpJKdnc3rr7+Ora0tLi4u9R2TIBiM\n8h3P1RuXGKlWsm7wrbW6ng87T2gHO+IzC1lz6Saz2znxQUQCMomEyBu5pFo7EBYYYr7ABeEBVW1S\n0el0rF69muDgYMMxDw8PFi5ciK2tbb0HJzy4gkNDePPDRRTYQs9W9qzzam90fq23O6Oik4kf+BD7\nDieTePoSaomEIo2esc+8wEuvvGaewAXhAVdtUgkMDCQ4OBgHBwfc3d1JTU0lPj6eVatWsXDhwoaK\nUXjATJoyHv31S3SVydBY2iDNLjZZTk3ZHJTMw8lEarX079KLP39Y37DBCoJgpNqkcvDgQVq1asWy\nZctQqVTo9XpWrVrFgQMHyM/PF/vFC3Vq+coAVv/3W0Y6WPPjuFuLk/4jJI6wK5mGlYTL5dzIIz3g\nMLY6JZGHYm6/nSAIZlDtkOKrV68ydOhQVCoVABKJhEcffRSdTse1a9caJEDhweA75xm+/nUV7tZK\nfhxuvAnb90M9+fpMitGxWeHnSZDo6ftQVyL33t3mcIIg1J9qayrFxcU4OjoaHSvfM8XUEviCUBuz\nZj9DcdIZvOUWWMtkJsv8f3t3H9bUfegB/Ms7BoJKBQtWKtqiE5D6XguK4OCK663tMwRW71plz9Zd\n7WZXay22oij0bdN1Mq0vHfWKViVMbCdVqgRQaBVuLQjBXQU0iFqxpfISEAic+4cSQQKSGHIS+H6e\nx+eBc05OvsmD+eZ3XluGDUFIsRI2N+qhampF3SMj8NE77/FQYSIT88CjvywsLB60CJFe/rBmJbJO\nfYXgIXZI+49JAIC4++6+2OFWjQr/HuGMNjtLLAv/Ha/ZRWSiHlgqZ8+e7XJOSscI5ZtvvsHly5e7\nLf/ss88aLh0NWCERz6K8/jomDbHtsrlL231OXsosxcXWVrjddsTat9ZxdEJkwh5YKnl5ecjLy+s2\n/cSJE1qXZ6lQbzZvT8THst0QhtvikWVPw+lASZf5HTvjnz9eAuFRKWqv1aJc1YLETdtYJkRmoNdS\niY2NNVYOGgT+sGYljpV9A0tPJzgtvDM6aYT22/q+c64S56pr8YTLYyjJOmLsqESkp15Lxdvb21g5\naADb8fEW5KTth9ByG36jpLhYe+8gj6tPPYro/AokTR2rmfZSZimqre3xSSyv2UVkbvp87S8ifSyJ\n/i84Vf0f0oPvXZp+Sc6/kf/vm1BPcIF6ggtOAwgpVMLmWh0a1W34mf/P8c37m8ULTUR6E7VUdu/e\njUuXLsHT0xNLlizRTJfJZCgqKgIAREVFwcfHBzk5OZDL5WhpaUFQUBBCQ0NFSk19sXl7InYdSoZX\na4vmyK4OuwMnIOgrBa5OcAEAqCe4oPBMJWxgib+/+1eOTojMmGilUlFRgebmZsTFxeGTTz5BeXk5\nxo27c8RPYGAgFi1ahMbGRnzwwQfw8fFBQEAAAgMD0d7ejtWrV7NUTNjm7Yn4OH0v2u0FOFjaaF3G\nUWqHui9Koa5WQWhsxS+mByPx3U1GTkpEhiZaqZSVlcHPzw8A4OvriwsXLmhKxdXV9U44a2vNeTJW\nd0+KU6vVGDVqlAiJ6UEyT2Xjr/u243zlRcDaEg5zx6LlW+1XXqj/UYVW1W0420jxQeyHHJ0QDRCi\nlYpKpdKUh0QiwZUrV7otk5KSgpCQEM3vqampyMzMRFhYmNFyUt9knsrG2j1/Qetzj8MZjwAA6g6X\n4pKrBNHfdt0R/3JmKVpc3LBrxVssE6IBRrRSkUgkaGpqAgA0NjZ2uzhlfn4+VCoV/P39NdPCw8Px\n/PPPIzY2FsHBwXB0dOzyGIVCAYXi3oUFIyIiIJVK+/FV9C9bW1uTz/9e4l/wjz074aFWY4zEBreT\nfsD1ZzygnuACp+cnou6LUpye4Y6QQiVsf2yEqlmNEV6TkPvZIbGjP5A5vP89MefsAPObgpSUFM3P\n3t7efT4aWLRS8fLywvHjxzFr1iwUFxcjKChIM0+pVCIjIwMxMTGaaWq1GtbW1rCysoKdnR1sbLpv\nq9f2wuvr6/vvRfQzqVRq0vk3b0/E7i/2YN4jQ7qMRJbmXsQZ3NkBDwsLqCe4QDnBBT/9/TSWRUbj\n9d//waRfVwdTf/97Y87ZAeYXm1QqRUREhF6PFa1UPD09YWtri3Xr1mHMmDEYN24ckpKSEB0djb17\n96Kurg4JCQmQSCRYtWoVDh06hPPnz0OtVmPOnDmws7MTK/qgl3kqG3u+TME3RQWYNHwIkrTdQKtQ\nCeUEF0C4c3Jje+pF7HhnEzd3EQ1wFoIgdD+leQC5du2a2BH0ZorfdjJPZeNd2VbUhbii7l/nMVPV\nhs99H++23MJiJb5ua4VlfRvGe4zFay++YnaFYorvf1+Zc3aA+cXm7u6u92N58iP1SeapbPz1f7bh\nwtVLsBgtBT7/Ae2qFjRaar9Ufe2VW/D+2UT8cbn5lQkR6Y+lQg+UeSobb+94Dz/ZtWDoshma6T/t\nOYsLLWqtR3f97Jl52Lp1l1l/WyMi3bFUqEenT2Yj99B+XCwrxaPNjbAIHQd1p/nDX5qCn5LPQt6u\nxtwviyCxtESTuh0TAubhfV5mhWhQYqmQVjs+3oKK9BRsDxgLPOoJAIjOr8Bp3D2q6y6rYUMwwu4R\n/HHFcm7mIqLe71FPg1PmqWzID392p1A6SZo6FqMKb3SZ5lgjYE0EC4WI7mCpUDeb92yD3Qjth2xL\nOv1s/YUSH67gnRiJ6B5u/iLNeSeN6mYoL1ag+oebmPa4s9ZlVdfq0bbvPEYNH4nXXnqDhUJEXbBU\nBrnO550A9sCcibD+9Fut1+x6JbcCq+I24+k5c0XLS0SmjaUyyP3j8313C+We4Uun4tb2fJye64mQ\nQiUkAFp+bEbQwhdZKETUK5bKIJaRkYH/LTqLoYFPd5v3xONjMfKnEWjxGA5LC2v89veLuKmLiB6I\npTII1dTUIDY2FmlpabDxGKZ1mZHDRmD3u1uNnIyIzB2P/hpkjh07huDgYKSlpQEAWm/UozbpbJdl\nnL6qxq/DFokRj4jMHEcqg0Tn0Uln4f/5AuaFheLQyS/RIqhha2GNX/O8EyLSE0tlEDh27Bjeeust\n3Lx5UzNt5MiReP/99xEaGgoAeG7+L8SKR0QDCEtlAOtpdPLLX/4SGzZswLBh2venEBHpi6UyQPVl\ndEJEZGgslQGmx30n4eGIi4vj6ISI+hVLZQDh6ISIxMZSGQC474SITAVLxcxxdEJEpoSlYqa474SI\nTBFLxQxlZGRg9erVHJ0QkclhqZgR7jshIlPHUjEDmaeysXnPNly8XI6WhtuAnRXQ3MbRCRGZHFFL\nZffu3bh06RI8PT2xZMkSzXSZTIaioiIAQFRUFHx8fHDixAlkZWUBAMLCwhAQECBGZKM7fPRfWLdn\nM2xfnIihcAEA1OzKx7ShT2BH4sccnRCRSRHtKsUVFRVobm5GXFwc1Go1ysvLNfMCAwMRHx+PNWvW\nQCaTAQD8/PyQkJCADRs24MiRI2LFNqr09HS8+X4sbF+c2GW6829nYMhoZxYKEZkc0UqlrKwMfn5+\nAABfX19cuHBBM8/V9c6dCK2trWFhYQEAcHG58y3d0tISVlZWRk5rXDU1NXj11Vfxq1/9Cq0WbVqX\naRHURk5FRPRgopWKSqWCvb09AEAikUClUnVbJiUlBSEhIV2mHT9+HNOnTzdKRjFkZGR0ud+J0Ky9\nVGwtuDuMiEyPaJ9MEokETU1NAIDGxkY4ODh0mZ+fnw+VSgV/f3/NtIsXL6KwsBCrVq3Suk6FQgGF\nQqH5PSIiAlKptB/S94/s7GxER0d3mTZr/GTc+Koa9aH37iM/7MQP+N1Lr5v8a7O1tTX5jL0x5/zm\nnB1gflOQkpKi+dnb2xve3t59epxopeLl5YXjx49j1qxZKC4uRlBQkGaeUqlERkYGYmJiNNNqamqQ\nnJyMN998U7NJ7H7aXnh9fX3/vIB+MGXKFMyePRunTp2Cq6srEhMTERAQgMxT2Ug+Krt3E63w/8Yz\nU2ea/GuTSqUmn7E35pzfnLMDzC82qVSKiIgIvR5rIQiCYOA8fdZx9NeYMWOwdOlSJCUlITo6GgkJ\nCbh16xYcHR0hkUiwatUq7Ny5EwqFAs7OzgCAmJgY2NraPvA5rl271t8vw6CqqqqwZcsWxMTEwMPD\nw+z/MJlfHOacHWB+sbm7u+v9WFFLxRjMrVQ6M/c/TOYXjzlnB5hfbA9TKqLtqCciooGHpUJERAbD\nUiEiIoNhqRARkcGwVIiIyGBYKkREZDAsFSIiMhiWChERGQxLhYiIDIalQkREBsNSISIig2GpEBGR\nwbBUiIjIYFgqRERkMCwVIiIyGJYKEREZDEuFiIgMhqVCREQGw1IhIiKDYakQEZHBsFSIiMhgWCpE\nRGQwLBUiIjIYlgoRERmMtZhPvnv3bly6dAmenp5YsmSJZrpMJkNRUREAICoqCj4+Pvjuu++wZ88e\nSKVSbNiwQaTERETUG9FGKhUVFWhubkZcXBzUajXKy8s18wIDAxEfH481a9ZAJpMBALy8vPDnP/9Z\nrLhERNQHopVKWVkZ/Pz8AAC+vr64cOGCZp6rqysAwNraGhYWFgAABwcHWFuLOrAiIqIHEK1UVCoV\n7O3tAQASiQQqlarbMikpKQgJCTF2NCIi0pNoX/0lEgmampoAAI2NjXBwcOgyPz8/HyqVCv7+/n1e\np0KhgEKh0PweEREBd3d3wwQWiVQqFTvCQ2F+8ZhzdoD5xZaSkqL52dvbG97e3n16nGgjFS8vLxQX\nFwMAiouL4eXlpZmnVCqRkZGB3/zmNzqt09vbGxEREZp/nd8Uc8T84jLn/OacHWB+saWkpHT5LO1r\noQAiloqnpydsbW2xbt06WFlZYdy4cUhKSgIA7N27F3V1dUhISNDsnC8vL8fGjRtx5coVxMfHo7W1\nVazoRETUA1H3fHc+jBgAoqOjAQBvv/12t2XHjRuHtWvXGiMWERHpaUCf/KjLkM0UMb+4zDm/OWcH\nmF9sD5PfQhAEwYBZiIhoEBvQIxUiIjIulgoRERmM2Z+ibu7XD9Ml/4kTJ5CVlQUACAsLQ0BAgBiR\nNXTJnpOTA7lcjpaWFgQFBSE0NFSk1Pfokr/Dhx9+CA8PD0RFRRk7bje65M/Ozsbhw4cxfPhwPPHE\nE1i8eLFIqe/RJX97ezv27t0LpVIJR0dH/OlPfxIp9T265D98+LBmWllZGbZv397t3Dxj0iV7VVUV\nduzYAQDw8fFBZGRk7ysXzFh5ebmwfft2QRAEYdeuXUJZWZlm3o0bNwRBEASVSiXExsYKgiAIDQ0N\nQmtrq7B27Vrjh9VC1/zV1dWCIAiCWq0WVq9ebeS0XemaXa1WC4IgCG1tbcIbb7xh5LTd6ZpfEATh\n8uXLQnx8vHDgwAHjhtVC1/xZWVlCZmam8YP2QNf8eXl5Zp2/Q11dnbB+/XrjBdVC1+xJSUnC+fPn\nBUEQhI0bNwoqlarX9Zv15i9zv36YrvldXFwAAJaWlrCysjJy2q50zd6RV61WY9SoUUZO252u+QHg\n6NGjCA0NhWACx7bokz89PR3r1q1DSUmJccNqoWv+s2fPoqqqCnFxccjMzDR+4Pvo8/4DQEFBAaZN\nm2a8oFromt3d3R0qlQrt7e0AABsbm17Xb9alYu7XD9M3//HjxzF9+nSjZOyJPtlTU1OxYsUKjB07\n1mg5e6Jr/qtXr2Lo0KGibrLoTNf8M2bMwKZNm7By5UokJyeLXoy65q+trcWoUaOwdu1a5Obmora2\n1qh576fv/92CggLMmDHDKBl7omt2X19ffPrpp3jttdfg5eU1sEulP64fZkz65L948SIKCwuxcOFC\no2a9nz7Zw8PDkZiYiNOnT6OhocGoee+na/709HSEhYWJ/mHcQdf8EokEAODk5AQ3NzfcunXLuIHv\no0/+iRMnwtLSEk8++SS+//57o2fuTJ+//6amJtTX12u2OIhF1+wHDx7E66+/jr/97W+orKzEzZs3\ne12/WZdKf1w/zJh0zV9TU4Pk5GQsW7as27Da2HTNrlarAdzZDGZnZ/fAbzv9Tdf8N2/exLZt27Bv\n3z7k5eXh/PnzRs/cma75Oz5EWlpacP36dQwdOtS4ge+ja/7x48dDqVQCACorK0X/YNbns+e7777D\n5MmTjZpTG32yOzg4wMLCAhKJBLdv3+51/Vbr169fb/DURjJ8+HAUFxcjLS0Nzs7OCA4ORlJSEiZP\nnoytW7eitrYWZ86cQUFBAfz9/VFeXo6tW7dCqVSipKQEs2bNEnXfhK75k5OTceXKFRQWFiInJwfP\nPPOMaPl1zZ6amorU1FRkZmYiICCgyx+yKefPz8+Hv78/5syZg9mzZ8PNzQ329vaYO3euWeTveP8/\n//xzfPbZZ8jOzsbChQsxevRos8jf8f6PHj0aqampOHr0KLy9vTF16lSzyg8Ahw4dQkhICJycnMwi\ne8ffzsiRI7Fz507k5ORg2LBhCA4O7nX9PKOeiIgMxqw3fxERkWlhqRARkcGwVIiIyGBYKkREZDAs\nFSIiMhiWChERGQxLhWiAWr58OeLi4sSOQYMMS4WoBw0NDVi8eDEiIyNx8uRJvdejUCggk8nQ2Nho\nwHREpomlQtSD3NxcqNVquLq6au5jow+FQoHU1FSWCg0KLBWiHsjlcvj4+GDBggUoLS1FdXX1Q62P\nF6+gwcB0bi5CZEIqKiqgVCqxfPlyTJ48GcnJyZDL5d3u+KhWq5Geno7c3Fx8//33sLKygpubGwID\nAzF//nxs3bpVs+ns1Vdf1Txu0aJFCA8P18w/ePBgtwyRkZEIDAzEsmXLNNMyMjJQUFCAqqoq1NXV\nQSqVwsfHB1FRUaJfZJEIYKkQaSWXy2Fvb4+nn34atra2mDJlCnJychAZGam5QrRarUZCQgJKS0vh\n5+eHwMBA2NjYQKlUoqCgAPPnz0dISAiamppQUFCAl19+WXMxQQ8PD71yHTlyBE8++SQWLFgAR0dH\nVFZWIjMzEyUlJdi0aRMcHR0N9h4Q6YOlQnSflpYW5OXlYebMmbC1tQUAzJ07FwUFBSgqKsJTTz0F\n4M49VkpLS/HCCy90G8F0bOry8vKCh4eH5uZMI0aMeKhsmzZt0mTqMG3aNGzcuBFyuRzPPffcQ62f\n6GFxnwrRffLz89HY2Njl8vaTJ0+Gk5MT5HK5Zlpubi4cHR0RHh7ebR39db+bjkJpb29HY2Mj6urq\n4OHhAYlEgrKysn55TiJdcKRCdB+5XA4nJyc4Ozt3ucOgr68vzpw5g4aGBjg6OuL69evw9PSEtbXx\n/huVlJQgNTUVZWVlaG1t7TJP221hiYyNpULUSXV1NRQKBQBgxYoVWpc5efIkFixYYJDn62lE09bW\n1m1aWVkZ4uPj4ebmhsWLF8PV1VUzcvnoo4/Q3t5ukExED4OlQtRJx/kor7zySrd7dwuCgIMHDyIr\nKwsLFiyAm5sbrl69CrVa3etopbdNYR071lUqVZfnu3HjRrdlc3NzIQgC1qxZ0+VIr9u3b6OhoaFv\nL5Con7FUiO5qb29HdnY2PDw8erxlalVVFWQyGcrLyzF79mzs27cP//znPxEZGdllOUEQNGVib28P\nAKivr++2o97d3R0AcO7cOcyaNUsz/ciRI92e29LSUrPuztLS0nR5mUT9iqVCdNe5c+dQU1ODefPm\n9bjMzJkzIZPJIJfLsXTpUnz77bc4dOgQysvLMWnSJNjY2ODKlSu4fv061q5dC+DOEWAAsG/fPgQE\nBMDGxgYeHh4YPXo0/P39sX//fuzcuRNXr16Fo6MjCgsLUV9fr/W5v/zyS7z33nuYN28erK2tce7c\nOVRWVkIqlfbPm0KkIx79RXRXx5FdM2fO7HGZ0aNHw83NDV9//TUEQcA777yDyMhI/Pjjj9i/fz8O\nHDiAioqKLusYP348Fi9ejBs3bmDHjh3YsmULzpw5AwAYMmQIYmJi8NhjjyEtLQ0ymQzOzs54++23\nuz33+PHjsXLlStjZ2eHgwYOQyWSws7PD+vXrYWdnZ+B3g0g/FgKvHUFERAbCkQoRERkMS4WIiAyG\npUJERAbDUiEiIoNhqRARkcGwVIiIyGBYKkREZDAsFSIiMhiWChERGQxLhYiIDOb/AQfxKimwPjrU\nAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "from pymks.tools import draw_goodness_of_fit\n", "\n", "\n", "fit_data = np.array([y, model.predict(X)])\n", "pred_data = np.array([y_new, y_predict])\n", "draw_goodness_of_fit(fit_data, pred_data, ['Training Data', 'Test Data'])\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can see that the `MKSHomogenizationModel` has created a homogenization linkage for the effective stiffness for the 6 different microstructures and has predicted the average stress values for our new microstructures reasonably well.\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "##References\n", "\n", "[1] 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", "[2] Çeçen, A., et al. \"A data-driven approach to establishing microstructure–property relationships in porous transport layers of polymer electrolyte fuel cells.\" Journal of Power Sources 245 (2014): 144-153. [doi:10.1016/j.jpowsour.2013.06.100](http://dx.doi.org/10.1016/j.jpowsour.2013.06.100)\n", "\n", "[3] Deshpande, P. D., et al. \"Application of Statistical and Machine Learning Techniques for Correlating Properties to Composition and Manufacturing Processes of Steels.\" 2 World Congress on Integrated Computational Materials Engineering. John Wiley & Sons, Inc. [doi:10.1002/9781118767061.ch25](http://dx.doi.org/10.1002/9781118767061.ch25)\n" ] } ], "metadata": { "kernelspec": { "display_name": "Python 2", "language": "python", "name": "python2" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.10" } }, "nbformat": 4, "nbformat_minor": 0 }