Tyto stránky již nejsou udržovány. Obsah je postupně přesouván/aktualizován na adrese chytrosti.marrek.cz.
1575/14246
1 #!/usr/bin/env python
2 # -*- coding: utf8 -*-
3 # Soubor: 20120402-Mon-graf.py
4 # Datum: 02.04.2012 08:21
5 # Autor: Marek Nožka, nozka <@t> spseol <d.t> cz
6 # Licence: GNU/GPL
7 # Úloha:
8 # Popis:
9 ###################################################3
10
11
12 # nehdřív nastavím jak se má knihovna chovat
13 import matplotlib as mpl
14 #mpl.use('GTKAgg')
15 mpl.use('Qt4Agg')
16 #mpl.rc('font',**{'family':'sans-serif','sans-serif':['Helvetica']})
17 ## for Palatino and other serif fonts use:
18 #mpl.rc('font',**{'family':'serif','serif':['Palatino']}n+n*n*n*n*n*)
19 #mpl.rc('lines', linewidth=2, color='r')
20
21 mpl.rcParams['text.usetex']=True
22 mpl.rcParams['text.latex.unicode']=True
23 #########################################################################
24 # další balíčky
25 #import numpy as num
26 #import scipy as sci
27
28 import math
29 import pylab as lab
30 from pylab import pi, e
31 #interactive mode
32 #lab.ion()
33 #lab.ioff()
34
35 print pi
36 print lab.pi
37 print e
38 print lab.e
39
40 # konstanty
41 fs = 1000. # vzorkovací kmitočet
42 Ts = 1/fs # vzorkovací perioda
43
44 f = 50.0 # Hz
45 T = 1/f # s
46 Umax = 2. # V
47 Imax = 1. # A
48
49 # generuji časovou osu
50 # od, do, krok
51 t = lab.arange(0, 1.5*T, Ts)
52
53 # harmonické napětí
54 u = []
55 for hodnota in t:
56 u.append(Umax*math.sin(2*pi*f*hodnota))
57 # místo tohoto cyklu napíšu jednoduše
58 u = Umax * lab.sin(2*pi*f*t)
59
60 # harmonický proud
61 i = Imax * lab.sin(2*pi*f*t + pi/6 )
62 # výkon
63 p = []
64 for n in range(len(u)):
65 p.append(u[n]* i [n])
66
67 p = u * i
68
69 # kreslím...
70 lab.figure(1)
71 lab.plot(t,u, 'b-.', label=u'napětí')
72 lab.plot(t,i, 'r:', label=u'proud')
73 lab.plot(t,p, 'g', label=u'výkon')
74 lab.plot(t,p, 'kx')
75 lab.ylim([-2.2,2.5])
76 lab.grid(True)
77 lab.title(u'Výkon střídavého proudu')
78 lab.xlabel(r'$t [s]$ \\~~~~~~~~~~~$\rightarrow$')
79 lab.ylabel('$u_1 [V], i_{vst} [A]$')
80 lab.legend(bbox_to_anchor=(.9, 0.2) )
81
82
83 lab.text(0.005, -2, r'$x_{12}=\frac{-2b \pm \sqrt{b^2-4ac} }{2a} $', {'fontsize' : 30})
84
85 lab.annotate('AHOJ', xy=(0.01,1), xytext=(0.005, 2), arrowprops=dict(arrowstyle="->") )
86
87
88 #lab.arrow(0,0,0.01,1, shape='full', lw=3, length_includes_head=True, head_width=.01)
89 lab.arrow(0.005,0,0.01,1,label='ahoj', shape='full', hatch='x')
90
91 lab.show()