Добавил:
Tushkan
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Лабораторные работы / Бочаров (5 вариант) / lab6 / poissonsubstances
.py'''
Created on 29.11.2011
@author: b
'''
import math;
import numpy as np;
import scipy.stats as stats;
from scipy import *
import os as os
os.environ['HOME'] = "E:\\python_src"
import matplotlib.pyplot as plt;
def probability(k,lamb):
return stats.poisson.pmf(k,lamb);
def get_probability_ratio(lamb1,lamb2,k):
return probability(k,lamb2)/probability(k,lamb1);
def SerialWaldAnalisys(A,B,lamb1,lamb2):
ratio = 1;
current = 0;
result = list()
while (A<ratio<B):
current = stats.poisson.rvs(lamb2);
ratio *= get_probability_ratio(lamb1,lamb2,current)
result.append(ratio);
print "Measurement time needed: "+ str(len(result))+" seconds"
return result;
def show_result(ratiolist,A,B):
plt.plot(range(1,len(ratiolist)+1),ratiolist,'r-');
t = linspace(0,len(ratiolist),len(ratiolist));
y1 = B+t-t;
y2 = A+t-t;
plt.plot(t,y1,'b-');
plt.plot(t,y2,'g-');
plt.ylabel("Likeness ratio")
plt.xlabel("Measurement time,seconds")
plt.show();
show_result( SerialWaldAnalisys(0.0526,19,0.1,0.12),0.0526,19)