~ubuntu-branches/ubuntu/maverick/openturns/maverick

« back to all changes in this revision

Viewing changes to python/test/t_Student_std.py

  • Committer: Bazaar Package Importer
  • Author(s): Fabrice Coutadeur
  • Date: 2010-05-10 17:27:55 UTC
  • mfrom: (1.1.4 upstream) (5.1.5 sid)
  • Revision ID: james.westby@ubuntu.com-20100510172755-cb5ynskknqqi5rhp
Tags: 0.13.2-2ubuntu1
* Merge with Debian testing. No changes left.
* ubuntu_fix-python-2.6.patch: fix detection of python 2.6 libs, to not use
  LOCALMODLIBS. This pulls a dependency on SSL and makes the package FTBFS.

Show diffs side-by-side

added added

removed removed

Lines of Context:
8
8
try :
9
9
    # Instanciate one distribution object
10
10
    distribution = Student(5.0, -0.5)
11
 
    print "Distribution " , distribution 
 
11
    print "Distribution " , distribution
12
12
 
13
13
    # Is this distribution elliptical ?
14
14
    print "Elliptical = ", distribution.isElliptical()
18
18
 
19
19
    # Test for realization of distribution
20
20
    oneRealization = distribution.getRealization()
21
 
    print "oneRealization=", repr(oneRealization) 
22
 
 
 
21
    print "oneRealization=", repr(oneRealization)
 
22
 
23
23
    # Test for sampling
24
24
    size = 10000
25
25
    oneSample = distribution.getNumericalSample( size )
26
 
    print "oneSample first=" , repr(oneSample[0]) , " last=" , repr(oneSample[size - 1]) 
27
 
    print "mean=" , repr(oneSample.computeMean()) 
28
 
    print "covariance=" , oneSample.computeCovariance()
 
26
    print "oneSample first=" , repr(oneSample[0]) , " last=" , repr(oneSample[size - 1])
 
27
    print "mean=" , repr(oneSample.computeMean())
 
28
    print "covariance=" , repr(oneSample.computeCovariance())
29
29
 
30
30
    # Define a point
31
31
    point = NumericalPoint( distribution.getDimension() , 1.0)
32
 
    print "Point= " , repr(point) 
 
32
    print "Point= " , repr(point)
33
33
 
34
34
    # Show PDF and CDF of point
35
35
    eps = 1e-5
36
 
        
 
36
 
37
37
    # derivative of PDF with regards its arguments
38
38
    DDF = distribution.computeDDF( point )
39
39
    print "ddf     =" , repr(DDF)
42
42
 
43
43
    # PDF value
44
44
    PDF = distribution.computePDF( point )
45
 
    print "pdf     =%.6f" % PDF 
 
45
    print "pdf     =%.6f" % PDF
46
46
    # by the finite difference technique from CDF
47
47
    print "pdf (FD)=%.6f" % ((distribution.computeCDF( point + NumericalPoint(1, eps) ) - distribution.computeCDF( point  + NumericalPoint(1, -eps) )) / (2.0 * eps))
48
48
 
49
49
    # derivative of the PDF with regards the parameters of the distribution
50
50
    CDF = distribution.computeCDF( point )
51
 
    print "cdf=%.6f" % CDF 
 
51
    print "cdf=%.6f" % CDF
52
52
    PDFgr = distribution.computePDFGradient( point )
53
 
    print "pdf gradient     =" , repr(PDFgr) 
 
53
    print "pdf gradient     =" , repr(PDFgr)
54
54
    # by the finite difference technique
55
55
    PDFgrFD = NumericalPoint(2)
56
56
    PDFgrFD[0] = (Student(distribution.getNu() + eps, distribution.getMu()).computePDF(point) -
58
58
    PDFgrFD[1] = (Student(distribution.getNu(), distribution.getMu() + eps).computePDF(point) -
59
59
                  Student(distribution.getNu(), distribution.getMu() - eps).computePDF(point)) / (2.0 * eps)
60
60
    print "pdf gradient (FD)=" , repr(PDFgrFD)
61
 
    
 
61
 
62
62
    # derivative of the PDF with regards the parameters of the distribution
63
63
    CDFgr = distribution.computeCDFGradient( point )
64
 
    print "cdf gradient     =" , repr(CDFgr) 
 
64
    print "cdf gradient     =" , repr(CDFgr)
65
65
    CDFgrFD = NumericalPoint(2)
66
66
    CDFgrFD[0] = (Student(distribution.getNu() + eps, distribution.getMu()).computeCDF(point) -
67
67
                  Student(distribution.getNu() - eps, distribution.getMu()).computeCDF(point)) / (2.0 * eps)
68
68
    CDFgrFD[1] = (Student(distribution.getNu(), distribution.getMu() + eps).computeCDF(point) -
69
69
                  Student(distribution.getNu(), distribution.getMu() - eps).computeCDF(point)) / (2.0 * eps)
70
 
    print "cdf gradient (FD)=",  repr(CDFgrFD) 
 
70
    print "cdf gradient (FD)=",  repr(CDFgrFD)
71
71
 
72
72
    # quantile
73
73
    quantile = distribution.computeQuantile( 0.95 )
74
 
    print "quantile=" , repr(quantile) 
75
 
    print "cdf(quantile)=%.6f" % distribution.computeCDF(quantile) 
 
74
    print "quantile=" , repr(quantile)
 
75
    print "cdf(quantile)=%.6f" % distribution.computeCDF(quantile)
76
76
    mean = distribution.getMean()
77
 
    print "mean=" , repr(mean) 
 
77
    print "mean=" , repr(mean)
78
78
    standardDeviation = distribution.getStandardDeviation()
79
 
    print "standard deviation=" , repr(standardDeviation) 
 
79
    print "standard deviation=" , repr(standardDeviation)
80
80
    skewness = distribution.getSkewness()
81
 
    print "skewness=" , repr(skewness) 
 
81
    print "skewness=" , repr(skewness)
82
82
    kurtosis = distribution.getKurtosis()
83
 
    print "kurtosis=" , repr(kurtosis) 
 
83
    print "kurtosis=" , repr(kurtosis)
84
84
    covariance = distribution.getCovariance()
85
 
    print "covariance=" , covariance 
 
85
    print "covariance=" , repr(covariance)
86
86
    parameters = distribution.getParametersCollection()
87
 
    print "parameters=" , repr(parameters) 
 
87
    print "parameters=" , repr(parameters)
88
88
 
89
89
    # Specific to this distribution
90
90
    beta = point.norm2()
91
91
    densityGenerator = distribution.computeDensityGenerator(beta)
92
 
    print "density generator=%.6f" % densityGenerator 
93
 
    print "pdf via density generator=%.6f" % EllipticalDistribution.computePDF(distribution, point) 
 
92
    print "density generator=%.6f" % densityGenerator
 
93
    print "pdf via density generator=%.6f" % EllipticalDistribution.computePDF(distribution, point)
94
94
    densityGeneratorDerivative = distribution.computeDensityGeneratorDerivative(beta)
95
 
    print "density generator derivative     =%.6f" % densityGeneratorDerivative 
 
95
    print "density generator derivative     =%.6f" % densityGeneratorDerivative
96
96
    print "density generator derivative (FD)=%.6f" % ((distribution.computeDensityGenerator(beta + eps) - distribution.computeDensityGenerator(beta - eps)) / (2.0 * eps))
97
97
    densityGeneratorSecondDerivative = distribution.computeDensityGeneratorSecondDerivative(beta)
98
 
    print "density generator second derivative     =%.6f" % densityGeneratorSecondDerivative 
 
98
    print "density generator second derivative     =%.6f" % densityGeneratorSecondDerivative
99
99
    print "density generator second derivative (FD)=%.6f" % ((distribution.computeDensityGeneratorDerivative(beta + eps) - distribution.computeDensityGeneratorDerivative(beta - eps)) / (2.0 * eps))
100
100
 
101
101
except :
102
 
  import sys
103
 
  print "t_Student_std.py", sys.exc_type, sys.exc_value
 
102
    import sys
 
103
    print "t_Student_std.py", sys.exc_type, sys.exc_value
104
104