コード例 #1
0
def approximateSurfaceCurrent(c, S, fv, sig):
    cc = fv.centers
    nu = fv.surfel
    g1 = computeProductsCurrents(c,S,sig)
    g2 = computeProductsAsymCurrents(c, S, cc, sig)
    b = LA.solve(g1, np.dot(g2, nu))
    n0 = surfaces.currentNorm0(fv, kfun.Kernel(name='gauss', sigma=sig))
    n1 = diffeonCurrentNormDef(c,S,b,fv,sig)
    print 'Norm before approx:', n0
    print 'Diff after approx:', n0 + n1
    print 'Norm of Projection:', (b*np.dot(g1, b)).sum(), -n1
    return b
コード例 #2
0
def diffeonCurrentNorm0(fv, K):
    #print 'sigma=', sig
    #K = kfun.Kernel(name='gauss', sigma=sig)
    obj = surfaces.currentNorm0(fv, K)
    return obj