{ "cells": [ { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Il rapporto u_x/u_y è uguale a 4*sqrt(y)/(3*sqrt(x))\n", "La soluzione è x= 15.609756097560975 y= 2.1951219512195124\n", "L'utilità nel punto di ottimo è 20.2484567313166\n", "Grafico:\n" ] }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "#!/usr/bin/python3\n", "#exec(open(\"/home/sasa/Dropbox/MyPy/dwl.py\").read())\n", "from sympy import Symbol, diff, solve\n", "import numpy as np\n", "#simboli\n", "x = Symbol('x')\n", "y = Symbol('y')\n", "\n", "#funzione di utilità -- vale l'ultima definita\n", "#Cobb-Douglas:\n", "def u(x,y):\n", "\talpha=1/3; beta=2/3\n", "\treturn x**alpha*y**beta\n", "\n", "#sqrt additiva\n", "def u(x,y):\n", "\ta=4; b=3\n", "\treturn a*sqrt(x)+b*sqrt(y)\n", "\n", "#utilità marginali\n", "ux=diff(u(x,y),x)\n", "uy=diff(u(x,y),y)\n", "#prezzi e reddito\n", "[p,q,m]=[1,2,20]\n", "\n", "#soluzione problema scelta\n", "S=solve([ux/uy-p/q, p*x+q*y-m])\n", "[x0,y0]=[float(S[0][x]),float(S[0][y])]\n", "\n", "#plot\n", "from numpy import linspace, meshgrid, arange\n", "import matplotlib\n", "import matplotlib.pyplot as plt\n", "import matplotlib.lines as lines\n", "\n", "\n", "\n", "fig = plt.figure()\n", "#plot budget line\n", "t=linspace(0,m/p,400)\n", "b=m/q-(p/q)*t\n", "plt.plot(t,b,'r',linewidth=2.0)\n", "#plot three indifference curves\n", "xbar=2.5*m/p\n", "ybar=1.6*m/q\n", "X = linspace(0, xbar,400)\n", "Y = linspace(0, ybar,400)\n", "X,Y=meshgrid(X,Y)\n", "uu=lambdify((x,y), u(x,y), modules=['numpy'])\n", "z=uu(X,Y)\n", "U=u(x0,y0)\n", "levels=[0.9*U,U,1.1*U]\n", "cs=plt.contour(X,Y,z,levels,linewidths=2.0)\n", "plt.clabel(cs,fontsize=12)\n", "plt.xlabel('Bene x',fontsize=14)\n", "plt.ylabel('Bene y',fontsize=14)\n", "plt.xlim([0, xbar])\n", "plt.ylim([0, ybar])\n", "plt.title('Problema del consumatore',fontsize=18)\n", "# save figure if you want\n", "#fig.savefig('ConsMaxM.pdf')\n", "print('Il rapporto u_x/u_y è uguale a',ux/uy)\n", "print('La soluzione è', 'x=',x0, 'y=',y0)\n", "print('L\\'utilità nel punto di ottimo è', U)\n", "print('Grafico:')\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "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.6.5" } }, "nbformat": 4, "nbformat_minor": 2 }