#!/usr/bin/env python import sys import cProfile import numpy as np import interp.bootstrap from interp.grid.gmsh import gmsh_grid3D from interp.tools import improved_answer, log, exact from interp.grid import grid if __name__ == '__main__': if len(sys.argv) != 2: print >> sys.stderr, "usage: %s " % sys.argv[0] sys.exit(1) g = gmsh_grid3D(sys.argv[1]) g.q = np.array([exact(x) for x in g.verts]) X = np.array([0.2, 0.5, 0.01]) R = g.get_containing_simplex(X) R, S = g.get_simplex_and_nearest_points(X, 10) print R print "r", R print "s", S results = {True:0, False:0} # import pdb; pdb.set_trace() for i in xrange(1000): X = np.random.random((1,3))[0] a = g.run_baker(X, order = 3, extra_points = 32) e = exact(X) results[improved_answer(a, e)] += 1 print results # g.normalize_q() # print g.toxml() igg = grid(g.verts, g.q)