diff --git a/Maths_Python_Slips_Solution/SLIP 1.ipynb b/Maths_Python_Slips_Solution/SLIP 1.ipynb deleted file mode 100644 index acee495..0000000 --- a/Maths_Python_Slips_Solution/SLIP 1.ipynb +++ /dev/null @@ -1,747 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": null, - "id": "211a851b", - "metadata": {}, - "outputs": [], - "source": [ - "Q.1 Attempt any TWO of the following." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "790f7810", - "metadata": {}, - "outputs": [], - "source": [ - "(a) Write a Python program to plot 2D graph of the functions f (x) = x2 and g(x) = x3 in [−1, 1]" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "id": "b9b5ea90", - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "from matplotlib.pylab import*\n", - "from numpy import *\n", - "x=linspace(-1,1,100)\n", - "f=x**2\n", - "g=x**3\n", - "plot(x,f)\n", - "plot(x,g)\n", - "show()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "1ab8e66d", - "metadata": {}, - "outputs": [], - "source": [ - "(b) Write a Python program to plot 3D graph of the function f (x) = e−x in [−5, 5] with green dashed\n", - "points line with upward pointing triangle." - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "id": "b1fd68bf", - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "from mpl_toolkits import mplot3d\n", - "from numpy import *\n", - "from pylab import*\n", - "x=linspace(-5,5,100)\n", - "y=e**(-x**2)\n", - "ax=axes(projection='3d')\n", - "ax.plot(x,y,'-.^g')\n", - "show()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "e45db69b", - "metadata": {}, - "outputs": [], - "source": [ - "(c) Using python, represent the following information using a bar graph (in green color )\n", - "\n", - " items | clothing | Food | rent | Petrol | Misc. |\n", - "expenditure in Rs | 600 | 4000 | 2000 | 1500 | 700 |" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "id": "7b7c2c2a", - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "from matplotlib.pyplot import *\n", - "from numpy import *\n", - "items=['Clothing','Food','Rent','Petrol','Misc']\n", - "exp=[600,4000,2000,1500,700]\n", - "bar(items,exp,width=0.6,color='green')\n", - "xlabel('items')\n", - "ylabel('Expenditure in Rs')\n", - "show()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "3914e80b", - "metadata": {}, - "outputs": [], - "source": [ - "Q.2 Attempt any TWO of the following." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "15d5b2ca", - "metadata": {}, - "outputs": [], - "source": [ - "(a) Write a Python program to reflect the line segment joining the points A[5, 3] and B[1, 4] through\n", - "the line y = x + 1." - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "id": "253d9380", - "metadata": {}, - "outputs": [ - { - "data": { - "image/svg+xml": [ - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " " - ], - "text/latex": [ - "$\\displaystyle Segment2D\\left(Point2D\\left(2, 6\\right), Point2D\\left(3, 2\\right)\\right)$" - ], - "text/plain": [ - "Segment2D(Point2D(2, 6), Point2D(3, 2))" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from sympy import *\n", - "s=Segment(Point(5,3),Point(1,4))\n", - "x,y=symbols('x y')\n", - "l=Line(x-y+1)\n", - "s.reflect(l)\n", - "#print(s.reflect(l))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "2465bb76", - "metadata": {}, - "outputs": [], - "source": [ - "(b) Write a Python program to draw a polygon with vertices (0, 0), (2, 0), (2, 3) and (1, 6) and rotate\n", - "it by 180◦ ." - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "id": "f50848af", - "metadata": {}, - "outputs": [ - { - "data": { - "image/svg+xml": [ - "\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " " - ], - "text/latex": [ - "$\\displaystyle Polygon\\left(Point2D\\left(0, 0\\right), Point2D\\left(-2, 0\\right), Point2D\\left(-2, -3\\right), Point2D\\left(-1, -6\\right)\\right)$" - ], - "text/plain": [ - "Polygon(Point2D(0, 0), Point2D(-2, 0), Point2D(-2, -3), Point2D(-1, -6))" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from matplotlib.pylab import* \n", - "from sympy import *\n", - "a=Point(0,0)\n", - "b=Point(2,0)\n", - "c=Point(2,3)\n", - "d=Point(1,6)\n", - "p=Polygon(a,b,c,d)\n", - "p.rotate(pi) # print(p.rotate(pi)) " - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "id": "f3b6fc20", - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "\n", - "from matplotlib.patches import Polygon as PolygonPatch\n", - "import matplotlib.pyplot as plt\n", - "from sympy import Point, Polygon, pi\n", - "op = Polygon(Point(0, 0), Point(2, 0), Point(2, 3), Point(1, 6))\n", - "rotated = op.rotate(pi)\n", - "x_op, y_op = zip(*op.vertices)\n", - "x_rotated, y_rotated = zip(*rotated.vertices)\n", - "plt.gca().add_patch(PolygonPatch(list(zip(x_op, y_op)), alpha=0.3, label='Original', color='red'))\n", - "plt.gca().add_patch(PolygonPatch(list(zip(x_rotated, y_rotated)), alpha=0.3, linestyle='--', label='Rot'))\n", - "plt.axis('equal')\n", - "plt.legend()\n", - "plt.show()" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "120cdf5b", - "metadata": {}, - "outputs": [], - "source": [ - "(c) Write a Python program to find the area and perimeter of the ∆ABC, where A[0, 0], B[5, 0], C[3, 3]" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "id": "84160625", - "metadata": {}, - "outputs": [ - { - "data": { - "text/latex": [ - "$\\displaystyle \\frac{15}{2}$" - ], - "text/plain": [ - "15/2" - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from sympy import *\n", - "a=Point(0,0)\n", - "b=Point(5,0)\n", - "c=Point(3,3)\n", - "tri=Triangle(a,b,c)\n", - "tri.area #print('Area = ',tri.area)" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "id": "317aed32", - "metadata": {}, - "outputs": [ - { - "data": { - "text/latex": [ - "$\\displaystyle \\sqrt{13} + 3 \\sqrt{2} + 5$" - ], - "text/plain": [ - "sqrt(13) + 3*sqrt(2) + 5" - ] - }, - "execution_count": 12, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "tri.perimeter\n", - "#print('Perimeter =',tri.perimeter)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "4351b4cc", - "metadata": {}, - "outputs": [], - "source": [ - "Q.3 Attempt the following." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "bf8b1aa3", - "metadata": {}, - "outputs": [], - "source": [ - "(a) Attempt any ONE of the following." - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "65f0c17c", - "metadata": {}, - "outputs": [], - "source": [ - "(i) Write a Python program to solve the following LPP:\n", - "Max Z = 150x + 75y\n", - "subject to\n", - "4x + 6y ≤ 24\n", - "5x + 3y ≤ 15\n", - "x ≥ 0, y ≥ 0." - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "id": "cd777963", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Solution:\n", - "MAXIMIZE\n", - "150*x + 75*y + 0\n", - "SUBJECT TO\n", - "_C1: 4 x + 6 y <= 24\n", - "\n", - "_C2: 5 x + 3 y <= 15\n", - "\n", - "VARIABLES\n", - "x Continuous\n", - "y Continuous\n", - "\n", - "\n", - "\n", - "Welcome to the CBC MILP Solver \n", - "Version: 2.10.7 \n", - "Build Date: Feb 14 2022 \n", - "\n", - "command line - cbc /tmp/741d8bc9330c4c3eae1f06faf4ee22ba-pulp.mps max timeMode elapsed branch printingOptions all solution /tmp/741d8bc9330c4c3eae1f06faf4ee22ba-pulp.sol (default strategy 1)\n", - "At line 2 NAME MODEL\n", - "At line 3 ROWS\n", - "At line 7 COLUMNS\n", - "At line 14 RHS\n", - "At line 17 BOUNDS\n", - "At line 18 ENDATA\n", - "Problem MODEL has 2 rows, 2 columns and 4 elements\n", - "Coin0008I MODEL read with 0 errors\n", - "Option for timeMode changed from cpu to elapsed\n", - "Presolve 2 (0) rows, 2 (0) columns and 4 (0) elements\n", - "0 Obj -0 Dual inf 225 (2)\n", - "0 Obj -0 Dual inf 225 (2)\n", - "1 Obj 450\n", - "Optimal - objective value 450\n", - "Optimal objective 450 - 1 iterations time 0.002\n", - "Option for printingOptions changed from normal to all\n", - "Total time (CPU seconds): 0.01 (Wallclock seconds): 0.01\n", - "\n", - "1\n", - "\n", - "Model Objective Value = 450.0\n", - "\n", - "Value of x = 3.0\n", - "\n", - "Value of y = 0.0\n" - ] - } - ], - "source": [ - "from pulp import *\n", - "model=LpProblem(name=\"Solution\",sense=LpMaximize)\n", - "x=LpVariable(name=\"x\",lowBound=0)\n", - "y=LpVariable(name=\"y\",lowBound=0)\n", - "model +=(4*x+6*y<=24)\n", - "model +=(5*x+3*y<=15)\n", - "model +=150*x+75*y\n", - "print(model)\n", - "print('\\n')\n", - "print(model.solve())\n", - "print('\\nModel Objective Value = ',model.objective.value())\n", - "print('\\nValue of x = ',x.value())\n", - "print('\\nValue of y = ',y.value())" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "d7bf3a34", - "metadata": {}, - "outputs": [], - "source": [ - "(ii) Write a python program to display the following LPP by using pulp module and simplex\n", - "method. Find its optimal solution if exist.\n", - "Min Z = x + y\n", - "subject to\n", - " x ≥ 6\n", - " y ≥ 6\n", - " x + y ≤ 11\n", - " x ≥ 0, y ≥ 0." - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "id": "bd92aade", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Solution:\n", - "MINIMIZE\n", - "1*x + 1*y + 0\n", - "SUBJECT TO\n", - "_C1: x >= 6\n", - "\n", - "_C2: y >= 6\n", - "\n", - "_C3: x + y <= 11\n", - "\n", - "VARIABLES\n", - "x Continuous\n", - "y Continuous\n", - "\n", - "\n", - "\n", - "Welcome to the CBC MILP Solver \n", - "Version: 2.10.7 \n", - "Build Date: Feb 14 2022 \n", - "\n", - "command line - cbc /tmp/515c4260d2454ae897036c25be379a3b-pulp.mps timeMode elapsed branch printingOptions all solution /tmp/515c4260d2454ae897036c25be379a3b-pulp.sol (default strategy 1)\n", - "At line 2 NAME MODEL\n", - "At line 3 ROWS\n", - "At line 8 COLUMNS\n", - "At line 15 RHS\n", - "At line 19 BOUNDS\n", - "At line 20 ENDATA\n", - "Problem MODEL has 3 rows, 2 columns and 4 elements\n", - "Coin0008I MODEL read with 0 errors\n", - "Option for timeMode changed from cpu to elapsed\n", - "Presolve determined that the problem was infeasible with tolerance of 1e-08\n", - "Analysis indicates model infeasible or unbounded\n", - "0 Obj 0 Primal inf 12 (2)\n", - "2 Obj 12 Primal inf 0.9999999 (1)\n", - "Primal infeasible - objective value 12\n", - "PrimalInfeasible objective 12 - 2 iterations time 0.002\n", - "\n", - "Result - Linear relaxation infeasible\n", - "\n", - "Enumerated nodes: 0\n", - "Total iterations: 0\n", - "Time (CPU seconds): 0.00\n", - "Time (Wallclock Seconds): 0.00\n", - "\n", - "Option for printingOptions changed from normal to all\n", - "Total time (CPU seconds): 0.00 (Wallclock seconds): 0.00\n", - "\n", - "-1\n", - "\n", - "Model Objective Value = 12.0\n", - "\n", - "Value of x = 6.0\n", - "\n", - "Value of y = 6.0\n" - ] - } - ], - "source": [ - "from pulp import *\n", - "model=LpProblem(name=\"Solution\",sense=LpMinimize)\n", - "x=LpVariable(name=\"x\",lowBound=0)\n", - "y=LpVariable(name=\"y\",lowBound=0)\n", - "model += (x>=6)\n", - "model += (y>=6)\n", - "model += (x+y<=11)\n", - "model += x+y\n", - "print(model)\n", - "print('\\n')\n", - "print(model.solve())\n", - "print('\\nModel Objective Value = ',model.objective.value())\n", - "print('\\nValue of x = ',x.value())\n", - "print('\\nValue of y = ',y.value())" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "5a9e94b2", - "metadata": {}, - "outputs": [], - "source": [ - "(b) Attempt any ONE of the following" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "ba666095", - "metadata": {}, - "outputs": [], - "source": [ - "(i) Apply Python program in each of the following transformations on the point P [3, −1]\n", - " (I) Refection through X−axis.\n", - " (II) Scaling in X−coordinate by factor 2.\n", - " (III) Scaling in Y−coordinate by factor 1.5.\n", - " (IV) Reflection through the line y = x." - ] - }, - { - "cell_type": "code", - "execution_count": 13, - "id": "f4b247a5", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "\n", - "Refection through X−axis :: Point2D(3, 1)\n", - "\n", - "Scaling in X−coordinate by factor 2. :: Point2D(6, 0)\n", - "\n", - "Scaling in Y−coordinate by factor 1.5. :: Point2D(0, -3/2)\n", - "\n", - "Reflection through the line y = x. :: Point2D(-1, 3)\n" - ] - } - ], - "source": [ - "from sympy import *\n", - "p=Point(3,-1)\n", - "x,y=symbols('x y')\n", - "print('\\nRefection through X−axis :: ',p.transform(Matrix([[1,0,0],[0,-1,0],[0,0,1]])))\n", - "#p.reflect(Line(y)))\n", - "print('\\nScaling in X−coordinate by factor 2. :: ',p.scale(2,0))\n", - "print('\\nScaling in Y−coordinate by factor 1.5. :: ',p.scale(0,1.5))\n", - "print('\\nReflection through the line y = x. :: ',p.transform(Matrix([[0,1,0],[1,0,0],[0,0,1]])))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "949182b6", - "metadata": {}, - "outputs": [], - "source": [ - "(ii) Find the combined transformation of the line segment between the points A[5, −2] & B[4, 3]\n", - " by using Python program for the following sequence of transformations:-\n", - " (I) Rotation about origin through an angle π.\n", - " (II) Scaling in X− coordinate by 2 units.\n", - "(III) Reflection through the line y = −x.\n", - "(IV) Shearing in X direction by 4 units." - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "id": "5a896f0e", - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "(Point2D(0, 10), Point2D(0, 8))\n", - "(Point2D(-10, 0), Point2D(-8, 0))\n", - "Segment2D(Point2D(-10, 0), Point2D(-8, 0))\n" - ] - } - ], - "source": [ - "from sympy import *\n", - "a = Point(5,-2)\n", - "b = Point(4,3)\n", - "x,y=symbols('x y')\n", - "s=Segment(a,b)\n", - "s=s.rotate(pi)\n", - "s=s.scale(2,0)\n", - "s = s.reflect(Line(y+x))\n", - "points=s.points\n", - "print(points)\n", - "s = s.reflect(Line(y+x))\n", - "points=s.points\n", - "print(points)\n", - "p=points[0]\n", - "q=points[1]\n", - "p1=p.transform(Matrix([[1,0,0],[4,1,0],[0,0,1]]))\n", - "q1=q.transform(Matrix([[1,0,0],[4,1,0],[0,0,1]]))\n", - "print(Segment(p1,q1))" - ] - }, - { - "cell_type": "code", - "execution_count": 16, - "id": "8afc3db7", - "metadata": {}, - "outputs": [ - { - "ename": "ValueError", - "evalue": "could not find x", - "output_type": "error", - "traceback": [ - "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", - "\u001b[0;31mValueError\u001b[0m Traceback (most recent call last)", - "\u001b[0;32m/tmp/ipykernel_3110/4104299242.py\u001b[0m in \u001b[0;36m\u001b[0;34m\u001b[0m\n\u001b[1;32m 4\u001b[0m \u001b[0mp\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0mPoint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m3\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;34m-\u001b[0m\u001b[0;36m1\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 5\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0my\u001b[0m\u001b[0;34m=\u001b[0m\u001b[0msymbols\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'x y'\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m----> 6\u001b[0;31m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'\\nRefection through X−axis :: '\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mreflect\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mLine\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0my\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 7\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'\\nScaling in X−coordinate by factor 2. :: '\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mscale\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m2\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 8\u001b[0m \u001b[0mprint\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'\\nScaling in Y−coordinate by factor 1.5. :: '\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0mp\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mscale\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;36m0\u001b[0m\u001b[0;34m,\u001b[0m\u001b[0;36m1.5\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/lib/python3/dist-packages/sympy/geometry/line.py\u001b[0m in \u001b[0;36m__new__\u001b[0;34m(cls, *args, **kwargs)\u001b[0m\n\u001b[1;32m 1164\u001b[0m \u001b[0mequation\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mequation\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mlhs\u001b[0m \u001b[0;34m-\u001b[0m \u001b[0mequation\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mrhs\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1165\u001b[0m \u001b[0mxin\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0myin\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0my\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m-> 1166\u001b[0;31m \u001b[0mx\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mfind\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mequation\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0mDummy\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 1167\u001b[0m \u001b[0my\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0mfind\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0my\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mequation\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32mor\u001b[0m \u001b[0mDummy\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 1168\u001b[0m \u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;32m/usr/lib/python3/dist-packages/sympy/geometry/util.py\u001b[0m in \u001b[0;36mfind\u001b[0;34m(x, equation)\u001b[0m\n\u001b[1;32m 29\u001b[0m \u001b[0mxs\u001b[0m \u001b[0;34m=\u001b[0m \u001b[0;34m[\u001b[0m\u001b[0mi\u001b[0m \u001b[0;32mfor\u001b[0m \u001b[0mi\u001b[0m \u001b[0;32min\u001b[0m \u001b[0mfree\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;34m(\u001b[0m\u001b[0mi\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mname\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0misinstance\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mx\u001b[0m\u001b[0;34m,\u001b[0m \u001b[0mstr\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;32melse\u001b[0m \u001b[0mi\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m==\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m]\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 30\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0;32mnot\u001b[0m \u001b[0mxs\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0;32m---> 31\u001b[0;31m \u001b[0;32mraise\u001b[0m \u001b[0mValueError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'could not find %s'\u001b[0m \u001b[0;34m%\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m\u001b[1;32m 32\u001b[0m \u001b[0;32mif\u001b[0m \u001b[0mlen\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mxs\u001b[0m\u001b[0;34m)\u001b[0m \u001b[0;34m!=\u001b[0m \u001b[0;36m1\u001b[0m\u001b[0;34m:\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[1;32m 33\u001b[0m \u001b[0;32mraise\u001b[0m \u001b[0mValueError\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0;34m'ambiguous %s'\u001b[0m \u001b[0;34m%\u001b[0m \u001b[0mx\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n", - "\u001b[0;31mValueError\u001b[0m: could not find x" - ] - } - ], - "source": [ - "from sympy.geometry import Line\n", - "from pulp import *\n", - "from sympy import *\n", - "p=Point(3,-1)\n", - "x,y=symbols('x y')\n", - "print('\\nRefection through X−axis :: ',p.reflect(Line(y)))\n", - "print('\\nScaling in X−coordinate by factor 2. :: ',p.scale(2,0))\n", - "print('\\nScaling in Y−coordinate by factor 1.5. :: ',p.scale(0,1.5))\n", - "print('\\nReflection through the line y = x. :: ',p.reflect(Line(x-y)))" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "id": "dcc2b3d7", - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "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.10.12" - } - }, - "nbformat": 4, - "nbformat_minor": 5 -}