19
19
# Test for realization of distribution
20
20
oneRealization = distribution.getRealization()
21
print "oneRealization=", repr(oneRealization)
21
print "oneRealization=", repr(oneRealization)
23
23
# Test for sampling
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())
31
31
point = NumericalPoint( distribution.getDimension() , 1.0)
32
print "Point= " , repr(point)
32
print "Point= " , repr(point)
34
34
# Show PDF and CDF of point
37
37
# derivative of PDF with regards its arguments
38
38
DDF = distribution.computeDDF( point )
39
39
print "ddf =" , repr(DDF)
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))
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)
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)
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)
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))
103
print "t_Student_std.py", sys.exc_type, sys.exc_value
103
print "t_Student_std.py", sys.exc_type, sys.exc_value