File: t_BernsteinCopulaFactory_std.py

package info (click to toggle)
openturns 1.7-3
  • links: PTS, VCS
  • area: main
  • in suites: stretch
  • size: 38,588 kB
  • ctags: 26,495
  • sloc: cpp: 144,032; python: 26,855; ansic: 7,868; sh: 419; makefile: 263; yacc: 123; lex: 44
file content (26 lines) | stat: -rwxr-xr-x 823 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#! /usr/bin/env python

from __future__ import print_function
from openturns import *

TESTPREAMBLE()
RandomGenerator.SetSeed(0)

try:
    coll = [GumbelCopula(3.0), ClaytonCopula(3.0), FrankCopula(3.0)]
    size = 1000
    for i in range(len(coll)):
        ref_copula = coll[i]
        print("Reference copula", str(ref_copula))
        sample = ref_copula.getSample(size)
        est_copula = BernsteinCopulaFactory().build(sample)
        max_error = 0.0
        for m in range(11):
            for n in range(11):
                point = [0.1 * m, 0.1 * n]
                max_error = max(max_error, abs(ref_copula.computeCDF(point) - est_copula.computeCDF(point)))
        print("Max. error=%.5f" % max_error)

except:
    import sys
    print("t_BernsteinCopulaFactory_std.py", sys.exc_info()[0], sys.exc_info()[1])