Exemple #1
0
    def rank(self, grid, gp, alphas, params, *args, **kws):
        gs = grid.getStorage()

        # estimate the convergence of ancestors of gp
        ratio = estimateConvergence(grid, gp, alphas)

        # get grid point associated to ix
        p = [gs.getCoordinates(gp, j) for j in range(gs.getDimension())]

        # get joint distribution
        ap = params.activeParams()
        U = ap.getIndependentJointDistribution()
        T = ap.getJointTransformation()
        q = T.unitToProbabilistic(p)

        # get area of basis function
        A = 1.0
        for d in range(gs.getDimension()):
            A *= getIntegral(grid, gp.getLevel(d), gp.getIndex(d))

        return abs(ratio) * U.pdf(q) * A
    def rank(self, grid, gp, alphas, params, *args, **kws):
        gs = grid.getStorage()

        # estimate the convergence of ancestors of gp
        ratio = estimateConvergence(grid, gp, alphas)

        # get grid point associated to ix
        p = [gp.getCoord(j) for j in xrange(gs.dim())]

        # get joint distribution
        ap = params.activeParams()
        U = ap.getIndependentJointDistribution()
        T = ap.getJointTransformation()
        q = T.unitToProbabilistic(p)

        # get area of basis function
        A = 1.0
        for d in xrange(gs.dim()):
            A *= getIntegral(grid, gp.getLevel(d), gp.getIndex(d))

        return abs(ratio) * U.pdf(q) * A
Exemple #3
0
 def rank(self, grid, gp, alphas, *args, **kws):
     return np.abs(estimateConvergence(grid, gp, alphas))
 def rank(self, grid, gp, alphas, *args, **kws):
     return abs(estimateConvergence(grid, gp, alphas))
Exemple #5
0
for i in range(gs.getSize()):
    gs.getCoordinates(gs.getPoint(i), p)
    nodalValues[i] = f(p.array())

v = hierarchize(grid, nodalValues)

ipar = 1
assert ipar < len(v)
gp = gs.getPoint(ipar)
print("Grand father:", gs.getCoordinate(gs.getPoint(0), 0), v[0])
print("Father:", gs.getCoordinate(gs.getPoint(0), 0), v[ipar])

gpl = HashGridPoint(gp)
gpl.getLeftChild(0)
gpr = HashGridPoint(gp)
gpr.getRightChild(0)

assert gsc.isContaining(gpl)
assert gsc.isContaining(gpr)

print(gs.getCoordinate(gpl, 0), \
    estimateSurplus(grid, gpl, v), \
    estimateConvergence(grid, gpl, v), \
    w[gsc.getSequenceNumber(gpl)])

print(gs.getCoordinate(gpr, 0), \
    estimateSurplus(grid, gpr, v), \
    estimateConvergence(grid, gpr, v), \
    w[gsc.getSequenceNumber(gpr)])