Lektion 2


In [1]:
from sympy import *
init_printing()

Vereinfachungen


In [2]:
x = Symbol('x')
y = Symbol('y')
f = (x - y) * (x + y)
f


Out[2]:
$$\left(x - y\right) \left(x + y\right)$$

In [3]:
f.expand()


Out[3]:
$$x^{2} - y^{2}$$

In [4]:
expand(f)


Out[4]:
$$x^{2} - y^{2}$$

In [5]:
expand(f**2)


Out[5]:
$$x^{4} - 2 x^{2} y^{2} + y^{4}$$

In [6]:
fe = f.expand()
fe


Out[6]:
$$x^{2} - y^{2}$$

In [7]:
fe.factor()


Out[7]:
$$\left(x - y\right) \left(x + y\right)$$

In [8]:
g = (x**2-y**2)/(x-y)**2
g


Out[8]:
$$\frac{x^{2} - y^{2}}{\left(x - y\right)^{2}}$$

In [9]:
g.ratsimp()


Out[9]:
$$\frac{2 y}{x - y} + 1$$

In [10]:
g.factor()


Out[10]:
$$\frac{x + y}{x - y}$$

In [11]:
g.simplify()


Out[11]:
$$\frac{x + y}{x - y}$$

In [12]:
h = x*x**y
h


Out[12]:
$$x x^{y}$$

In [13]:
h.powsimp()


Out[13]:
$$x^{y + 1}$$

In [14]:
hp = h.simplify()
hp


Out[14]:
$$x^{y + 1}$$

In [15]:
hp.expand()


Out[15]:
$$x x^{y}$$

In [16]:
f = (sin(2*x)+cos(x)) / ((sin(2*x)**2 - cos(x)**2)*(sin(2*x)-cos(x)))
f


Out[16]:
$$\frac{\sin{\left (2 x \right )} + \cos{\left (x \right )}}{\left(\sin{\left (2 x \right )} - \cos{\left (x \right )}\right) \left(\sin^{2}{\left (2 x \right )} - \cos^{2}{\left (x \right )}\right)}$$

In [17]:
f.ratsimp()


Out[17]:
$$\frac{1}{\sin^{2}{\left (2 x \right )} - 2 \sin{\left (2 x \right )} \cos{\left (x \right )} + \cos^{2}{\left (x \right )}}$$

In [18]:
f.trigsimp()


Out[18]:
$$\frac{1}{\left(2 \sin{\left (x \right )} - 1\right)^{2} \cos^{2}{\left (x \right )}}$$

In [19]:
f.simplify()


Out[19]:
$$\frac{1}{\left(2 \sin{\left (x \right )} - 1\right)^{2} \cos^{2}{\left (x \right )}}$$

In [20]:
f.expand()


Out[20]:
$$\frac{\sin{\left (2 x \right )}}{\sin^{3}{\left (2 x \right )} - \sin^{2}{\left (2 x \right )} \cos{\left (x \right )} - \sin{\left (2 x \right )} \cos^{2}{\left (x \right )} + \cos^{3}{\left (x \right )}} + \frac{\cos{\left (x \right )}}{\sin^{3}{\left (2 x \right )} - \sin^{2}{\left (2 x \right )} \cos{\left (x \right )} - \sin{\left (2 x \right )} \cos^{2}{\left (x \right )} + \cos^{3}{\left (x \right )}}$$

In [21]:
f.expand(trig=True)


Out[21]:
$$\frac{2 \sin{\left (x \right )} \cos{\left (x \right )}}{8 \sin^{3}{\left (x \right )} \cos^{3}{\left (x \right )} - 4 \sin^{2}{\left (x \right )} \cos^{3}{\left (x \right )} - 2 \sin{\left (x \right )} \cos^{3}{\left (x \right )} + \cos^{3}{\left (x \right )}} + \frac{\cos{\left (x \right )}}{8 \sin^{3}{\left (x \right )} \cos^{3}{\left (x \right )} - 4 \sin^{2}{\left (x \right )} \cos^{3}{\left (x \right )} - 2 \sin{\left (x \right )} \cos^{3}{\left (x \right )} + \cos^{3}{\left (x \right )}}$$

In [22]:
f.expand(trig=True, numer=True)


Out[22]:
$$\frac{2 \sin{\left (x \right )} \cos{\left (x \right )} + \cos{\left (x \right )}}{\left(\sin{\left (2 x \right )} - \cos{\left (x \right )}\right) \left(\sin^{2}{\left (2 x \right )} - \cos^{2}{\left (x \right )}\right)}$$

In [23]:
fe = f.expand(trig=True,numer=True).expand(trig=True,denom=True)
fe


Out[23]:
$$\frac{2 \sin{\left (x \right )} \cos{\left (x \right )} + \cos{\left (x \right )}}{8 \sin^{3}{\left (x \right )} \cos^{3}{\left (x \right )} - 4 \sin^{2}{\left (x \right )} \cos^{3}{\left (x \right )} - 2 \sin{\left (x \right )} \cos^{3}{\left (x \right )} + \cos^{3}{\left (x \right )}}$$

In [24]:
fe.factor()


Out[24]:
$$\frac{1}{\left(2 \sin{\left (x \right )} - 1\right)^{2} \cos^{2}{\left (x \right )}}$$

In [25]:
f.expand(gibtsnich=True)


Out[25]:
$$\frac{\sin{\left (2 x \right )}}{\sin^{3}{\left (2 x \right )} - \sin^{2}{\left (2 x \right )} \cos{\left (x \right )} - \sin{\left (2 x \right )} \cos^{2}{\left (x \right )} + \cos^{3}{\left (x \right )}} + \frac{\cos{\left (x \right )}}{\sin^{3}{\left (2 x \right )} - \sin^{2}{\left (2 x \right )} \cos{\left (x \right )} - \sin{\left (2 x \right )} \cos^{2}{\left (x \right )} + \cos^{3}{\left (x \right )}}$$

Auswertungen von Ausdrücken


In [26]:
x = Symbol('x')
a = (9*x**2-5)/((x-2)*(x-3))
a


Out[26]:
$$\frac{9 x^{2} - 5}{\left(x - 3\right) \left(x - 2\right)}$$

In [27]:
a.subs(x, 4)


Out[27]:
$$\frac{139}{2}$$

In [28]:
y = Symbol('y')
b = (x-y)**3 / (x+y)
b


Out[28]:
$$\frac{\left(x - y\right)^{3}}{x + y}$$

In [29]:
b.subs(x, 3).subs(y, 0)


Out[29]:
$$9$$

In [30]:
a


Out[30]:
$$\frac{9 x^{2} - 5}{\left(x - 3\right) \left(x - 2\right)}$$

In [31]:
a.subs(x, 2)


Out[31]:
$$\tilde{\infty}$$

In [32]:
c = 1/cos(x*pi/2)
c


Out[32]:
$$\frac{1}{\cos{\left (\frac{\pi x}{2} \right )}}$$

In [33]:
c.subs(x,1)


Out[33]:
$$\tilde{\infty}$$

Grenzwerte


In [34]:
a


Out[34]:
$$\frac{9 x^{2} - 5}{\left(x - 3\right) \left(x - 2\right)}$$

In [35]:
a.limit(x, 2)


Out[35]:
$$-\infty$$

In [36]:
a.limit(x, 2, dir='-')


Out[36]:
$$\infty$$

In [37]:
a = cos(pi*x)/(2*x-1)
a


Out[37]:
$$\frac{\cos{\left (\pi x \right )}}{2 x - 1}$$

In [38]:
a.limit(x, Rational(1,2))


Out[38]:
$$- \frac{\pi}{2}$$

In [39]:
a.subs(x, Rational(1,2))


Out[39]:
$$\mathrm{NaN}$$

In [40]:
n = Symbol('n')
b = factorial(n)*exp(n)/n**n/sqrt(n)
b


Out[40]:
$$\frac{n^{- n}}{\sqrt{n}} e^{n} n!$$

In [41]:
L = Limit(b, n, oo)   # Träger Operator
L


Out[41]:
$$\lim_{n \to \infty}\left(\frac{n^{- n}}{\sqrt{n}} e^{n} n!\right)$$

In [42]:
L.doit()


Out[42]:
$$\sqrt{2} \sqrt{\pi}$$

Stirlingsche Formel

Ableitungen


In [43]:
f = x**n
f


Out[43]:
$$x^{n}$$

In [44]:
f.diff(x)


Out[44]:
$$\frac{n x^{n}}{x}$$

In [45]:
f.diff(x).powsimp()


Out[45]:
$$n x^{n - 1}$$

In [46]:
f.diff(x,x,x).factor()


Out[46]:
$$\frac{n x^{n}}{x^{3}} \left(n - 2\right) \left(n - 1\right)$$

In [47]:
f.diff(x,3).factor()


Out[47]:
$$\frac{n x^{n}}{x^{3}} \left(n - 2\right) \left(n - 1\right)$$

In [48]:
f.diff()


---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-48-90cbeb354bfa> in <module>()
----> 1 f.diff()

/az076/anaconda3/lib/python3.5/site-packages/sympy/core/expr.py in diff(self, *symbols, **assumptions)
   2864         new_symbols = list(map(sympify, symbols))  # e.g. x, 2, y, z
   2865         assumptions.setdefault("evaluate", True)
-> 2866         return Derivative(self, *new_symbols, **assumptions)
   2867 
   2868     ###########################################################################

/az076/anaconda3/lib/python3.5/site-packages/sympy/core/function.py in __new__(cls, expr, *variables, **assumptions)
   1035                         Since there is more than one variable in the
   1036                         expression, the variable(s) of differentiation
-> 1037                         must be supplied to differentiate %s''' % expr))
   1038 
   1039         # Standardize the variables by sympifying them and making appending a

ValueError: 
Since there is more than one variable in the expression, the
variable(s) of differentiation must be supplied to differentiate x**n

In [49]:
f.diff(x,0)


Out[49]:
$$x^{n}$$

In [50]:
g = x**2*cos(2*x)
g.diff()


Out[50]:
$$- 2 x^{2} \sin{\left (2 x \right )} + 2 x \cos{\left (2 x \right )}$$

So ist das Leben.


In [51]:
a


Out[51]:
$$\frac{\cos{\left (\pi x \right )}}{2 x - 1}$$

Wir berechnen den Grenzwert zu Fuß mit der Regel von de l'Hôpital


In [52]:
zaehler = numer(a)    # numer ist keine Methode
nenner = denom(a)
zaehler, nenner


Out[52]:
$$\left ( \cos{\left (\pi x \right )}, \quad 2 x - 1\right )$$

In [53]:
d_zaehler = zaehler.diff(x)
d_nenner = nenner.diff(x)
d_zaehler, d_nenner


Out[53]:
$$\left ( - \pi \sin{\left (\pi x \right )}, \quad 2\right )$$

In [54]:
d_zaehler.subs(x, Rational(1,2)) / d_nenner.subs(x, Rational(1,2))


Out[54]:
$$- \frac{\pi}{2}$$

unbestimmte Integrale


In [55]:
f


Out[55]:
$$x^{n}$$

In [56]:
f.integrate(x)


Out[56]:
$$\begin{cases} \log{\left (x \right )} & \text{for}\: n = -1 \\\frac{x^{n + 1}}{n + 1} & \text{otherwise} \end{cases}$$

In [57]:
f.integrate(x, conds='none')


Out[57]:
$$\frac{x^{n + 1}}{n + 1}$$

In [58]:
f = sin(2*x)*cos(3*x)**2
f


Out[58]:
$$\sin{\left (2 x \right )} \cos^{2}{\left (3 x \right )}$$

In [59]:
I1 = f.integrate()   # warum darf diese Variable nicht I heißen?
I1


Out[59]:
$$\frac{3}{16} \sin{\left (2 x \right )} \sin{\left (3 x \right )} \cos{\left (3 x \right )} - \frac{9}{32} \sin^{2}{\left (3 x \right )} \cos{\left (2 x \right )} - \frac{7}{32} \cos{\left (2 x \right )} \cos^{2}{\left (3 x \right )}$$

In [60]:
I1.diff(x)


Out[60]:
$$\sin{\left (2 x \right )} \cos^{2}{\left (3 x \right )}$$

In [61]:
I1.diff(x) == f


Out[61]:
True

In [62]:
g = 1/(1+x**4)
I2 = g.integrate(x)
I2


Out[62]:
$$- \frac{\sqrt{2}}{8} \log{\left (x^{2} - \sqrt{2} x + 1 \right )} + \frac{\sqrt{2}}{8} \log{\left (x^{2} + \sqrt{2} x + 1 \right )} + \frac{\sqrt{2}}{4} \operatorname{atan}{\left (\sqrt{2} x - 1 \right )} + \frac{\sqrt{2}}{4} \operatorname{atan}{\left (\sqrt{2} x + 1 \right )}$$

In [63]:
I2.diff(x)


Out[63]:
$$- \frac{\sqrt{2} \left(2 x - \sqrt{2}\right)}{8 x^{2} - 8 \sqrt{2} x + 8} + \frac{\sqrt{2} \left(2 x + \sqrt{2}\right)}{8 x^{2} + 8 \sqrt{2} x + 8} + \frac{1}{2 \left(\sqrt{2} x + 1\right)^{2} + 2} + \frac{1}{2 \left(\sqrt{2} x - 1\right)^{2} + 2}$$

In [64]:
I2.diff() == g


Out[64]:
False

In [65]:
I2.diff().ratsimp() ==g


Out[65]:
True

bestimmte Integrale


In [66]:
f


Out[66]:
$$\sin{\left (2 x \right )} \cos^{2}{\left (3 x \right )}$$

In [67]:
I3 = f.integrate((x,0,pi/4))
I3


Out[67]:
$$\frac{1}{8}$$

In [68]:
I4 = Integral(f, (x,0,pi/4))
I4


Out[68]:
$$\int_{0}^{\frac{\pi}{4}} \sin{\left (2 x \right )} \cos^{2}{\left (3 x \right )}\, dx$$

In [69]:
I4.doit()


Out[69]:
$$\frac{1}{8}$$

In [70]:
I4.n()  # numerische Integration


Out[70]:
$$0.125$$

In [71]:
I5 = Integral(sqrt(exp(x)+4), (x,0,1))
I5


Out[71]:
$$\int_{0}^{1} \sqrt{e^{x} + 4}\, dx$$

In [72]:
I5.doit()


Out[72]:
$$\int_{0}^{1} \sqrt{e^{x} + 4}\, dx$$

In [73]:
I5.n()


Out[73]:
$$2.38910363799198$$

Vergleich mit der Methode aus der CompLA (nicht prüfungsrelevant für CompAna)


In [74]:
import numpy as np
from scipy import integrate

In [75]:
def f(x):
    return np.sqrt(np.exp(x)+4)

In [76]:
res, err = integrate.quad(f, 0, 1)
res


Out[76]:
$$2.3891036379919814$$