WIP: (feature) add anisotropic meshing to LearnerND
Closes #74
Depends on !86 (merged) and #80 and therefore it has the corresponding branches included as well
Still has a few to-do's:
-
let LearnerND.ip()
make use of our triangulation rather than building a new one -
make it work in arbitrary dimensions -
verify that it is beneficial -
let the user configure the parameters (maximum stretch factor and number of points to take into account)Use one simplex and it's neighbours -
make test pass -
addNo more RTree anymore :)rtree
as install requirement raise exception ifanistropic=True
andrtree
not installed, pass ifanisotropic=False
-
-
refactor code to be human-readable -
let's make it fast :)#80
As it seems it doesn't work that well with the ring, since this ring has a relative low average gradient and very high second derivative. So maybe this second derivative might be a more useful property to determine the
Merge request reports
Activity
- Resolved by Jorn Hoofwijk
- Resolved by Anton Akhmerov
- Resolved by Anton Akhmerov
- Resolved by Jorn Hoofwijk
- Resolved by Jorn Hoofwijk
added 2 commits
let
LearnerND.ip()
make use of our triangulation rather than building a new oneThis point is going to be a lot harder than I thought. Scipy does not support this and I couldn't find a lib that does. Also when I would just use
Triangulation.locate_point(p)
it would be an O(N) operation per requested point.actually, @basnijholt pointed out yesterday that I was mistaken and that scipy does allow you to provide a triangulation to the linearNDinterpolator. However, I am not completely sure as to what methods must be implemented on the provided triangulation. Depending on what it is, we can either do it efficiently or it may be pretty inefficient.
added 133 commits
-
1df1216a...bc5de332 - 131 commits from branch
master
- 2439803c - Merge branch 'master' into 74--add-anisotropicity-to-learnerND
- 672247c3 - enable plotting of custom triangulations
-
1df1216a...bc5de332 - 131 commits from branch