Skip to content

Instantly share code, notes, and snippets.

@Jutho
Created February 11, 2014 12:54
Show Gist options
  • Save Jutho/8934314 to your computer and use it in GitHub Desktop.
Save Jutho/8934314 to your computer and use it in GitHub Desktop.
Matrix Multiplication with Julia
{
"metadata": {
"language": "Julia",
"name": "MatrixMultiplication"
},
"nbformat": 3,
"nbformat_minor": 0,
"worksheets": [
{
"cells": [
{
"cell_type": "code",
"collapsed": false,
"input": "function mygemm!{T<:Number}(alpha::T,A::Matrix{T},B::Matrix{T},beta::T,C::Matrix{T})\n n1=size(C,1);\n n2=size(C,2);\n n3=size(A,2);\n ind=0;\n @inbounds begin\n for j=1:n2, i=1:n1\n ind=ind+1;\n C[ind]=beta*C[ind];\n for k in 1:n3\n indA=(k-1)*n1+i\n indB=(j-1)*n3+k\n C[ind]=C[ind]+alpha*A[indA]*B[indB]\n end\n end\n end\nend",
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 1,
"text": "mygemm! (generic function with 1 method)"
}
],
"prompt_number": 1
},
{
"cell_type": "code",
"collapsed": false,
"input": "#compile for Float64\nmygemm!(1.,randn(10,10),randn(10,10),1.,randn(10,10))",
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 2
},
{
"cell_type": "code",
"collapsed": false,
"input": "function gemmtime(N)\n A=randn(N,N)\n B=randn(N,N)\n C=randn(N,N)\n t1=@elapsed mygemm!(1.,A,B,0.,C)\n t2=@elapsed Base.LinAlg.BLAS.gemm!('N','N',1.,A,B,0.,C)\n return t1,t2\nend",
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 3,
"text": "gemmtime (generic function with 1 method)"
}
],
"prompt_number": 3
},
{
"cell_type": "code",
"collapsed": false,
"input": "function timeall(J)\n blas_set_num_threads(1)\n Nlist=[iround(1.2^i) for i=0:40];\n T1=zeros(length(Nlist),J)\n T2=zeros(length(Nlist),J)\n for i=1:length(Nlist)\n N=Nlist[i]\n for j=1:J\n t1,t2=gemmtime(N)\n T1[i,j]=t1\n T2[i,j]=t2\n end\n end\n return Nlist,mean(T1,2),mean(T2,2)\nend",
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 4,
"text": "timeall (generic function with 1 method)"
}
],
"prompt_number": 4
},
{
"cell_type": "code",
"collapsed": false,
"input": "Nlist,T1,T2=timeall(10);",
"language": "python",
"metadata": {},
"outputs": [],
"prompt_number": 4
},
{
"cell_type": "code",
"collapsed": false,
"input": "using PyPlot",
"language": "python",
"metadata": {},
"outputs": [
{
"output_type": "stream",
"stream": "stdout",
"text": "Loading help data...\n"
}
],
"prompt_number": 5
},
{
"cell_type": "code",
"collapsed": false,
"input": "ylim([0,1]);plot(Nlist,1e8*T1./Nlist.^3,\"bo\")",
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"png": "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iSeeUF1dXZs6DgAAgOAVUIidMWOGHnvsMU2fPl0rV65UaGiorr76am3ZsqXV69544w1deeWVqqio0MKFC/W73/1O5557ru655x79/Oc//1YPAAAAgODjMsYYf04sKipSamqqli9f7g2eVVVVGjFihAYOHNhqkL3pppu0ceNGlZeXq2/fvt728ePHa+fOnTpy5Eiz123fvl2jR4/Wtm3blJycHMhzAQAAoBM4ldf8HonNy8tTWFiY5syZ422LiIjQ7NmzVVBQoL1797Z4bWRkpCIiItSnTx+f9sGDB6tXr15t6DYAAACCmd8hdseOHUpMTFR0dLRP+5gxYyRJO3fubPHau+++W3V1dbrjjju0a9cuffrpp1q1apVefvll3XvvvW3sOgAAAIJVmL8nlpeXKy4urkl7Q9u+fftavHbkyJF66623lJaWpueee06SFBoaqqeeespnZBcAAADwh98h9sSJE4qIiGjS3rNnT+/xluzatUsTJ07UWWedpUceeUQ9e/bUf/3Xf+mnP/2pBg0apGuvvbYNXQcAAECw8jvERkZGqqqqqkl7ZWWl93hLfvnLXyosLExvv/22dw7slClTdPnll+uuu+7SNddco9DQ0Bavnzdvns8LYZKUkZGhjIwMf7sPAACAb2nDhg3asGGDT1tLL+h3NL9DbFxcXLNTBsrLyyVJ8fHxLV77zjvvKC0trclLXGlpafrFL36hTz/9VOeee26L169YsYLVCQAAABzW3CBiw+oEnc3vF7tGjRqlkpISHT161Ke9sLBQkpSUlNTitTU1NaqtrW3SXl1d7T0OAAAA+MvvEDtlyhTV1tZq9erV3raqqiplZ2crNTVVQ4YMkSTt379fu3bt8gmmo0aN0l/+8hd98cUX3rba2lq9+OKLiomJUUJCQns8CwAAAIKE39MJUlJSNHXqVN177706ePCgEhIStG7dOu3evVvZ2dne8xYsWKCcnByVlZVp6NChkqSFCxdq4sSJGjt2rObMmaOePXtqw4YN2r59u5YuXdrqfFgAAACgMb9DrCTl5ORo0aJFWr9+vQ4fPqyRI0dq06ZNuuyyy7znuFwuuVwun+smTJig119/XUuXLtUDDzygmpoaXXjhhXr22Wd1++23t8+TAAAAIGj4ve2sE9h2FgAAoGvr8tvOAgAAAF0FIRYAAADWIcQCAADAOoRYAAAAWIcQ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qqpSdna2UlNTNWTIEEnS/v37tWvXLtXU1Phce+DAAW3cuNHbdujQIb300ktKS0tTeHh4ezwLAAAAgoTLGGP8PTk9PV0vv/yyfvaznykhIUHr1q3T1q1b9be//U2XXXaZJM+uXjk5OSorK9PQoUMleXbsuuyyy/T+++9r/vz56t+/v55++ml99tlnevfdd3X++ed3zNMBAACgW/J7OoEk5eTkaNGiRVq/fr0OHz6skSNHatOmTd4AK0kul8tnyoAkhYSE6PXXX9f8+fO1cuVKnThxQikpKcrJySHAAgAAIGABjcQCAAAAXYHfc2IBAACArqJLhtiqqiplZWUpPj5evXr1UmpqqvLz853uVqd799139dOf/lTDhw9XdHS0zjrrLKWnp+ujjz5qcu6HH36oCRMmqHfv3urfv79uueUWHTp0qNn7Pv/887rooosUGRmpxMREPfnkkx39KI5aunSpQkJCdPHFFzc5Rt18bd++XZMmTVL//v0VFRWliy++WE888YTPOdTslK1bt+raa69VfHy8oqKidNFFF2nx4sVNNnAJ1pp9/fXXuv/++zVhwgT169dPISEhWrduXbPndkSNjhw5ojlz5ig2NlbR0dG6/PLLtWPHjnZ7vo7gT82MMVq7dq0mTZqkoUOHKjo6WhdffLGWLl3a7JrsUveumRTY91qD6upqDRs2TCEhIXr00UebPac71y2QmtXV1emZZ55RUlKSevXqpQEDBuiKK67Qe++91+TcTq2Z6YKmTZtmwsPDTWZmplmzZo0ZN26cCQ8PN++8847TXetUN9xwg4mPjzf33HOPef75582SJUvM4MGDTXR0tHn//fe95+3Zs8cMGDDAnH/++eaJJ54wDz30kOnXr59JSkoyJ0+e9LnnqlWrjMvlMlOnTjXPPfecueWWW4zL5TLLli3r7MfrFHv27DG9evUy0dHR5uKLL25yjLqd8uabb5oePXqYSy+91KxYscI899xzZsGCBSYrK8t7DjU75b333jMRERHmnHPOMcuWLTNr1qwxM2fONC6Xy1x77bXe84K5Zp988olxuVzm7LPPNj/4wQ+My+Uy69ata3JeR9SotrbWjBs3zkRHR5sHH3zQPPXUU2b48OEmJibGfPTRRx363N+GPzU7evSocblcZty4ceahhx4yzz33nJk1a5YJDQ01P/jBD5rcs7vXzBj/v9dO9+ijj5ro6GjjcrnMo48+2uR4d69bIDW79dZbTXh4uLntttvM888/bx5//HEzc+ZMk5+f73NeZ9esy4XYwsLCJt9QlZWV5rzzzjPjxo1zsGed7x//+Ieprq72afvoo49Mz549zc033+xtu/POO01UVJTZs2ePty0/P9+4XC6zevVqb9vx48dN//79TVpams89b775ZhMdHW0OHz7cQU/inPT0dPPDH/7QjB8/3owYMcLnGHU75csvvzSDBg0yN9xwQ6vnUbNT7rvvPuNyuUxxcbFP+6233mpcLpc5cuSIMSa4a1ZVVWUOHDhgjDFm69atLX5IdkSNcnNzjcvlMn/605+8bRUVFeaMM84wP/7xj9vtGdubPzU7efKkKSgoaHLtgw8+aFwul0+wCIaaGeP/91qDAwcOmL59+5olS5Y0G2KDoW7+1qzh+V555ZVW7+dEzbpciJ0/f74JDw83R48e9Wl/+OGHjcvlMp999plDPes6kpOTzSWXXOL93wMHDjTp6elNzrvgggvMD3/4Q+///u///m/jcrnM//zP//icV1BQYFwul/nDH/7QcZ12wP/+7/+asLAw8/7775vvf//7TUZiqdspzzzzjHG5XGbXrl3GGGOOHTtmamtrm5xHzU5ZvHixcblc5tChQz7tWVlZJiwszBw/ftwYQ80avPvuuy1+SHZEjaZOnWri4uKa3POOO+4wUVFRTUZ4u6LWatac9957z7hcLvPkk09624KtZsb4V7eZM2ea1NRU72hk4xAbbHVrrWZjx441qampxhjPCOqxY8eavYcTNetyc2J37NihxMRERUdH+7SPGTNGkrRz504nutVlGGN04MABDRgwQJK0d+9eVVRU6JJLLmly7pgxY3zmlzT8d+Nzk5OTFRIS0q1qW1tbq7vvvlu33367hg8f3uQ4dfOVn5+vmJgY7dmzRxdccIF69+6tPn366Cc/+Yl3jh018zVr1iwNGjRIs2fP1r/+9S/t2bNHubm5WrVqlebOnavIyEhq5oeOqtGOHTuUnJzc7D2PHz+ukpKS9nqELmP//v2S5P18kKhZc4qKipSTk6MVK1a0eA518/jqq6/07rvv6pJLLtF9992nPn36qHfv3kpISNBLL73kc64TNetyIba8vLzZbWYb2vbt29fZXepSXnjhBe3bt0/p6emSPPWS1GLNvvjiC1VXV3vPDQ0N9fkHTpJ69Oih/v37d6varlq1Srt379bixYubPU7dfH300UeqqanRddddp6uuukobN27UrFmztGrVKs2cOVMSNWssPj5eW7Zs0a5duzRq1CidddZZysjI0Ny5c70viVCzb9ZRNQrGzxK3260+ffroqquu8rZRM1/GGN19992aNm2axo4d2+J51M2jtLRUxhj98Y9/1Nq1a7V8+XK98MILio2N1bRp0/Tmm296z3WiZgFtdtAZTpw4oYiIiCbtPXv29B4PVrt27dJdd92lcePG6dZbb5V0qh7fVLPw8HCdOHFCPXr0aPbeERER3aa2n3/+uX7961/r17/+tfr379/sOdTN17Fjx3T8+HHdeeed3tGJ6667TidPntSzzz6rBx98kJo1cuDAAW9YWLNmjfr3769NmzZp6dKlGjRokO666y5q5oeOqlFlZWVQfZY89NBD+tvf/qZnnnlGMTEx3nZq5mvt2rV6//33tXHjxlbPo24ex44dkyR98cUX+uc//+n9rfikSZN0zjnnaMmSJfrRj34kyZmadbkQGxkZ2ewSIZWVld7jwWj//v2aOHGizjjjDOXl5Xl3RWuohz81i4yM1MmTJ5u9f2VlZbep7a9+9SsNGDBAd999d4vnUDdfDc+QkZHh056RkaFnn31W//znP3XhhRdKomYNFi9erL1796qkpETx8fGSPMG/rq5OWVlZysjI4PvMDx1Vo2D6LMnNzdWiRYt022236Y477vA5Rs1O+eqrr3TvvfcqMzNTQ4YMafVc6ubR0PdzzjnHG2AlKSoqStdcc41eeOEF1dXVKSQkxJGadbnpBHFxcc0OIzf8yqnhwyKYfPnll7rqqqv01Vdf6Y033tDgwYO9xxqG3hvqc7ry8nL1799f4eHh3nNra2ubrL148uRJffHFF92ith999JHWrFmju+++W5999pnKyspUVlamyspKnTx5Up9++qkOHz5M3RppeIZBgwb5tA8cOFCSdPjwYe851MzjnXfe0ahRo5o8S1pamo4fP66dO3fyfeaHjqpRsHyW/PWvf9Utt9yia665RqtWrWpynJqdsnz5clVXV+vGG2/0fjZ89tlnkjwjjWVlZd6pK9TNo6XPBsnz+VBdXa2vv/5akjM163IhdtSoUSopKdHRo0d92gsLCyVJSUlJTnTLMZWVlUpLS9PHH3+sTZs2eUfDGgwZMkSxsbF69913m1xbVFTkU69Ro0ZJUpNzt27dqrq6um5R271796qurk5z587Vueee6/1TVFSkkpISnXPOOVq8eDF1a6RhIn7DP+gNGv6RiY2NVXx8PDU7TXV1tWpra5ttl6Samhq+z/zQUTVKSkrS9u3bZRrtrF5YWKioqCglJia252M4orCwUJMnT1ZKSopefPFFhYQ0/UinZqfs2bNHhw8f1vDhw72fDd/73vckeaZjnHvuufrwww8lncoawV63+Ph4DR48WHv37m1ybN++fYqMjFTv3r0lOfS95tcaBp2oYZ3Y5cuXe9sa1om99NJLHexZ56upqTGTJk0yPXr0aLJkxenuvPNO06tXr2bXWHz22We9bSdOnOh261A2dujQIfPKK6+YV1991fvnlVdeMSNGjDBnn322efXVV70bRVC3U3bs2GFcLpe56aabfNozMjJMjx49THl5uTGGmp3u5ptvNhEREaakpMSn/brrrjNhYWHUrJHWlvDpiBo1rEOZl5fnbauoqDB9+/Y1GRkZ7floHaa1mhUXF5v+/fubiy++2LsmcXOCrWbGtFy37du3+3w2vPrqq2b16tXG5XKZWbNmmVdffdV8+eWXxpjgq1tr32vz5s0zLpfL/PWvf/W2VVRUmJiYGHPNNdd425yoWZcLscYYc+ONN3p37Hr22WfNuHHjTI8ePczmzZud7lqnuueee4zL5TKTJk0y69evb/KnQcNuN+edd553t5szzjjDjBw5sslaa08//bR3N401a9Z4d9N4+OGHO/vxOtX3v//9JpsdUDdfs2fPNi6Xy6Snp5unnnrKTJ061bhcLrNw4ULvOdTslH/9618mMjLSDBo0yCxevNg89dRT5qqrrjIul8vMmTPHe16w1+yJJ54wixcvNnfeeadxuVzmhhtuMIsXLzaLFy/2BoaOqFFtba259NJLTe/evX12BOrTp0+THzy6mm+q2VdffWXOPPNMExoaapYtW9bks6HxRgjBUDNj/Ptea6yldWKNCY66+VOzAwcOmPj4eBMTE2N+85vfmN/97ncmMTHRREVFmffee8/nfp1dsy4ZYisrK838+fNNXFyc6dmzpxk7dqz5y1/+4nS3Ot348eNNSEiIcblcTf6EhIT4nPvBBx+YH/3oRyYqKsr069fPTJ8+3Rw8eLDZ+65Zs8ZceOGFJiIiwpx//vnm8ccf74zHcdT48eObbHZgDHU7XXV1tXnggQfM2WefbXr06GESExObfUZqdkphYaGZMGGCiYmJMT169DAXXnihefjhh5tsFBHMNTv77LN9/t1q+DctJCTEfPrpp97zOqJGhw8fNrfddpsZMGCAiYqKMj/4wQ/Mtm3bOuQ529M31awheLX0+TBz5swm9+zuNTPG/++107UWYo3p/nXzt2b//ve/zfXXX2/69OljevXqZX74wx+arVu3NnvPzqyZy5hGExIAAACALq7LvdgFAAAAfBNCLAAAAKxDiAUAAIB1CLEAAACwDiEWAAAA1iHEAgAAwDqEWAAAAFiHEAsAAADrEGIBAABgHUIsAAAArEOIBQAAgHUIsQAAALDO/wf2cakdWhYDiwAAAABJRU5ErkJggg==",
"text": "Figure(PyObject <matplotlib.figure.Figure object at 0x11c956f50>)"
},
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 6,
"text": "1-element Array{Any,1}:\n PyObject <matplotlib.lines.Line2D object at 0x11d108150>"
}
],
"prompt_number": 6
},
{
"cell_type": "code",
"collapsed": false,
"input": "ylim([0,1]);plot(Nlist,1e9*T2./Nlist.^3,\"bo\")",
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"png": "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acp186VmFRUVeuONN9SrVy81b95c7dq106233qovv/zSo69fa2YaoTFjxpjw8HCTmppqli9fbgYNGmTCw8PNZ599Fuih+dX9999vnE6nefrpp83bb79t5syZYzp27GhiYmLMV1995ep34MAB065dO3PdddeZV155xcybN8+0adPG9OrVy5w9e9btmkuXLjUOh8OMHj3avPXWW+bhhx82DofDzJ8/39+35xcHDhwwzZs3NzExMebGG2/0OEbdzvnoo49Ms2bNzMCBA83ixYvNW2+9ZaZNm2bS0tJcfajZOV9++aWJiIgwV199tZk/f75Zvny5GT9+vHE4HObuu+929Qvmmn333XfG4XCYLl26mJtvvtk4HA6zcuVKj34NUaPy8nIzaNAgExMTY1544QXz2muvme7du5uWLVua3bt3N+h9Xw5vanby5EnjcDjMoEGDzLx588xbb71lJkyYYEJDQ83NN9/scc2mXjNjvP9eO99LL71kYmJijMPhMC+99JLH8aZeN19q9sgjj5jw8HDz6KOPmrffftu8/PLLZvz48WbTpk1u/fxds0YXYrOzsz2+oYqLi821115rBg0aFMCR+d/nn39uSktL3dp2795tIiMjzUMPPeRqe+KJJ0x0dLQ5cOCAq23Tpk3G4XCYZcuWudpOnz5t2rZta0aMGOF2zYceesjExMSY48ePN9CdBE5ycrK57bbbzJAhQ0yPHj3cjlG3c3744QfToUMHc//991+0HzU7Z8aMGcbhcJi8vDy39kceecQ4HA5z4sQJY0xw16ykpMQcOXLEGGPMtm3bav2QbIgarVmzxjgcDvPnP//Z1VZUVGSuuOIK8+///u/1do/1zZuanT171mRlZXmc+8ILLxiHw+EWLIKhZsZ4/71W7ciRI6Z169Zmzpw5NYbYYKibtzWrvr/169df9HqBqFmjC7FTp0414eHh5uTJk27tL774onE4HOb7778P0Mgajz59+ph+/fq5/t6+fXuTnJzs0e/66683t912m+vv//Vf/2UcDof57//+b7d+WVlZxuFwmD/+8Y8NN+gA+J//+R8TFhZmvvrqK3PTTTd5PImlbue88cYbxuFwmF27dhljjDl16pQpLy/36EfNzpk9e7ZxOBzm6NGjbu1paWkmLCzMnD592hhDzapt3bq11g/JhqjR6NGjTVxcnMc1H3/8cRMdHe3xhLcxuljNavLll18ah8NhXn31VVdbsNXMGO/qNn78eJOUlOR6GnlhiA22ul2sZgMGDDBJSUnGmMonqKdOnarxGoGoWaObE5ubm6uEhATFxMS4tffv31+StHPnzkAMq9EwxujIkSNq166dJOngwYMqKipSv379PPr279/fbX5J9f++sG+fPn0UEhLSpGpbXl6up556So899pi6d+/ucZy6udu0aZNatmypAwcO6Prrr1eLFi3UqlUr/eIXv3DNsaNm7iZMmKAOHTpo4sSJ+uKLL3TgwAGtWbNGS5cu1eTJkxUVFUXNvNBQNcrNzVWfPn1qvObp06eVn59fX7fQaBw+fFiSXJ8PEjWrSU5OjjIzM7V48eJa+1C3Sj/++KO2bt2qfv36acaMGWrVqpVatGih+Ph4vffee259A1GzRhdiCwoKatxmtrrt0KFD/h5So/LOO+/o0KFDSk5OllRZL0m11uzYsWMqLS119Q0NDXX7B06SmjVrprZt2zap2i5dulT79+/X7NmzazxO3dzt3r1bZWVluueee3TnnXdq3bp1mjBhgpYuXarx48dLomYXcjqd2rJli3bt2qXevXvrqquuUkpKiiZPnux6SYSaXVpD1SgYP0vS09PVqlUr3Xnnna42aubOGKOnnnpKY8aM0YABA2rtR90q7dmzR8YY/elPf9KKFSu0cOFCvfPOO4qNjdWYMWP00UcfufoGomY+bXbgD2fOnFFERIRHe2RkpOt4sNq1a5eefPJJDRo0SI888oikc/W4VM3Cw8N15swZNWvWrMZrR0RENJna/vOf/9Rvf/tb/fa3v1Xbtm1r7EPd3J06dUqnT5/WE0884Xo6cc899+js2bN688039cILL1CzCxw5csQVFpYvX662bdtq48aNmjt3rjp06KAnn3ySmnmhoWpUXFwcVJ8l8+bN08cff6w33nhDLVu2dLVTM3crVqzQV199pXXr1l20H3WrdOrUKUnSsWPH9I9//MP1W/GRI0fq6quv1pw5c3THHXdICkzNGl2IjYqKqnGJkOLiYtfxYHT48GENHz5cV1xxhdauXevaFa26Ht7ULCoqSmfPnq3x+sXFxU2mtr/5zW/Url07PfXUU7X2oW7uqu8hJSXFrT0lJUVvvvmm/vGPf6hr166SqFm12bNn6+DBg8rPz5fT6ZRUGfwrKiqUlpamlJQUvs+80FA1CqbPkjVr1mjWrFl69NFH9fjjj7sdo2bn/Pjjj5o+fbpSU1PVqVOni/albpWqx3711Ve7AqwkRUdH66677tI777yjiooKhYSEBKRmjW46QVxcXI2Pkat/5VT9YRFMfvjhB91555368ccf9eGHH6pjx46uY9WP3qvrc76CggK1bdtW4eHhrr7l5eUeay+ePXtWx44daxK13b17t5YvX66nnnpK33//vfbu3au9e/equLhYZ8+e1b59+3T8+HHqdoHqe+jQoYNbe/v27SVJx48fd/WhZpU+++wz9e7d2+NeRowYodOnT2vnzp18n3mhoWoULJ8lf/vb3/Twww/rrrvu0tKlSz2OU7NzFi5cqNLSUj3wwAOuz4bvv/9eUuWTxr1797qmrlC3SrV9NkiVnw+lpaX66aefJAWmZo0uxPbu3Vv5+fk6efKkW3t2drYkqVevXoEYVsAUFxdrxIgR+vbbb7Vx40bX07BqnTp1UmxsrLZu3epxbk5Ojlu9evfuLUkefbdt26aKioomUduDBw+qoqJCkydP1jXXXOP6k5OTo/z8fF199dWaPXs2dbtA9UT86n/Qq1X/IxMbGyun00nNzlNaWqry8vIa2yWprKyM7zMvNFSNevXqpR07dshcsLN6dna2oqOjlZCQUJ+3ERDZ2dm69957lZiYqHfffVchIZ4f6dTsnAMHDuj48ePq3r2767Ph5z//uaTK6RjXXHONvvnmG0nnskaw183pdKpjx446ePCgx7FDhw4pKipKLVq0kBSg7zWv1jDwo+p1YhcuXOhqq14nduDAgQEcmf+VlZWZkSNHmmbNmnksWXG+J554wjRv3rzGNRbffPNNV9uZM2ea3DqUFzp69KhZv3692bBhg+vP+vXrTY8ePUyXLl3Mhg0bXBtFULdzcnNzjcPhMA8++KBbe0pKimnWrJkpKCgwxlCz8z300EMmIiLC5Ofnu7Xfc889JiwsjJpd4GJL+DREjarXoVy7dq2rraioyLRu3dqkpKTU5601mIvVLC8vz7Rt29bceOONrjWJaxJsNTOm9rrt2LHD7bNhw4YNZtmyZcbhcJgJEyaYDRs2mB9++MEYE3x1u9j32pQpU4zD4TB/+9vfXG1FRUWmZcuW5q677nK1BaJmjS7EGmPMAw884Nqx68033zSDBg0yzZo1M5s3bw700Pzq6aefNg6Hw4wcOdKsWrXK40+16t1urr32WtduN1dccYXp2bOnx1prr7/+ums3jeXLl7t203jxxRf9fXt+ddNNN3lsdkDd3E2cONE4HA6TnJxsXnvtNTN69GjjcDjMzJkzXX2o2TlffPGFiYqKMh06dDCzZ882r732mrnzzjuNw+EwkyZNcvUL9pq98sorZvbs2eaJJ54wDofD3H///Wb27Nlm9uzZrsDQEDUqLy83AwcONC1atHDbEahVq1YeP3g0Npeq2Y8//miuvPJKExoaaubPn+/x2XDhRgjBUDNjvPteu1Bt68QaExx186ZmR44cMU6n07Rs2dL8x3/8h/n9739vEhISTHR0tPnyyy/drufvmjXKEFtcXGymTp1q4uLiTGRkpBkwYID561//Guhh+d2QIUNMSEiIcTgcHn9CQkLc+n799dfmjjvuMNHR0aZNmzZm7NixprCwsMbrLl++3HTt2tVERESY6667zrz88sv+uJ2AGjJkiMdmB8ZQt/OVlpaa559/3nTp0sU0a9bMJCQk1HiP1Oyc7OxsM3ToUNOyZUvTrFkz07VrV/Piiy96bBQRzDXr0qWL279b1f+mhYSEmH379rn6NUSNjh8/bh599FHTrl07Ex0dbW6++Wazffv2BrnP+nSpmlUHr9o+H8aPH+9xzaZeM2O8/14738VCrDFNv27e1uz//u//zH333WdatWplmjdvbm677Tazbdu2Gq/pz5o5jLlgQgIAAADQyDW6F7sAAACASyHEAgAAwDqEWAAAAFiHEAsAAADrEGIBAABgHUIsAAAArEOIBQAAgHUIsQAAALAOIRYAAADWIcQCAADAOoRYAAAAWIcQCwAAAOv8f9aU5SKgPKbhAAAAAElFTkSuQmCC",
"text": "Figure(PyObject <matplotlib.figure.Figure object at 0x11d0f2310>)"
},
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 7,
"text": "1-element Array{Any,1}:\n PyObject <matplotlib.lines.Line2D object at 0x11d1431d0>"
}
],
"prompt_number": 7
},
{
"cell_type": "code",
"collapsed": false,
"input": "plot(Nlist,T1./T2,\"bo\")",
"language": "python",
"metadata": {},
"outputs": [
{
"metadata": {},
"output_type": "display_data",
"png": "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t3NcaCuhQNSnZY/MzZs3u6+5XC7To0cPk5WV5c+XFlAXqltJSYmJj483gwcPdu+Z7Euo1a21mu3du9fjveHll182v/nNb4zD4TAzZswwL7/8sjl58qQxJvRqZsyFf9bmz59vHA6Hee2119zXXC6X6datm8nIyHBfC0bdLvtga4wxt9xyi/vksTVr1pj09HQTGRlpdu3aFeyldah58+YZh8NhpkyZYn73u995/WrRcmrP1772NfepPT179jTf+MY3vPaB+/Wvf+0+EWTt2rXuE0GWLl3a0S+vQ33zm9/0OqCBunm66667jMPhMJmZmebxxx8306ZNMw6Hw9x///3uOdTM03vvvWeio6NN3759TW5urnn88cfNpEmTjMPhMN///vfd80K5bo8++qjJzc01s2fPNg6Hw0ydOtXk5uaa3Nxcd4gIRH0aGhrMmDFjTFxcnMepRt27d/f6IHI5uljdPv/8c/OVr3zFdOnSxTzyyCNe7w/nH94QCnVry8/a+Vrbx9aY0KiZMW2r25EjR0xiYqLp1q2b+a//+i/z85//3CQnJ5uYmBjz/vvvezxfR9etUwTbmpoas2DBApOQkGC6du1qRo0aZf70pz8Fe1kd7oYbbjBhYWHG4XB4/QoLC/OY+9e//tV85zvfMTExMaZXr17m9ttvN5WVlT6fd+3atebaa681UVFR5utf/7r55S9/2REvJ6huuOEGrwMajKFu56qrqzP//d//ba6++moTGRlpkpOTfb5GauapsLDQTJw40XTr1s1ERkaaa6+91ixdutTrgItQrdvVV1/t8edWy59pYWFh5tNPP3XPC0R9jh8/bmbOnGl69+5tYmJizLhx48w777wTkNfpbxerW0sga+09Ijs72+s5ba9bW3/WznWhYGuM/TUzpu11+9vf/mb+9V//1XTv3t1cccUV5tvf/rbZs2ePz+fsyLo5jDmvmQEAAADohC77L48BAAAAbUGwBQAAgBUItgAAALACwRYAAABWINgCAADACgRbAAAAWIFgCwAAACsQbAEAAGAFgi0AAACsQLAFAACAFQi2AAAAsALBFgAAAFb4/0vgFtb2WyeGAAAAAElFTkSuQmCC",
"text": "Figure(PyObject <matplotlib.figure.Figure object at 0x11d0f2710>)"
},
{
"metadata": {},
"output_type": "pyout",
"prompt_number": 8,
"text": "1-element Array{Any,1}:\n PyObject <matplotlib.lines.Line2D object at 0x1188cafd0>"
}
],
"prompt_number": 8
},
{
"cell_type": "code",
"collapsed": false,
"input": "",
"language": "python",
"metadata": {},
"outputs": []
}
],
"metadata": {}
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment