Skip to content

Invert Bertin1953, Chamberlin, interruptedSinuMollweide#181

Merged
Fil merged 2 commits into
masterfrom
newton2d-inverse
Jan 2, 2020
Merged

Invert Bertin1953, Chamberlin, interruptedSinuMollweide#181
Fil merged 2 commits into
masterfrom
newton2d-inverse

Conversation

@Fil

@Fil Fil commented Dec 18, 2019

Copy link
Copy Markdown
Member

… with an approximate 2-d Newton-Raphson method.

The general Jacobian inversion method is detailed in Ipbuker & Bildirici 2002

In this implementation, I added a dampening factor when the determinant is too small — which helps with convergence near the singularities of the projection.

Inspired by Robert B. Schmunk’s work on the Bertin1953 inverse for G.Projector, which showed it was possible.

closes #85 (at long last)

@Fil Fil requested a review from mbostock December 18, 2019 14:12
… and interruptedSinuMollweide

The general Jacobian inversion method is detailed in Ipbuker & Bildirici 2002

In this implementation, I added a dampening factor when the determinant is too small — which helps with convergence near the singularities of the projection.

Inspired by Robert B. Schmunk’s work on the Bertin1953 inverse for G.Projector, which showed it was possible.

test all inverse projections

closes #85 (at long last)
@Fil Fil force-pushed the newton2d-inverse branch from 01b0af1 to 0b4f7c2 Compare December 18, 2019 15:30
Fil added a commit to d3/d3-geo-polygon that referenced this pull request Dec 18, 2019
inverses d3.geoTetrahedralLee

See d3/d3-geo-projection#181 for d3-geo-projection
@Fil

Fil commented Dec 21, 2019

Copy link
Copy Markdown
Member Author

I've written an explanation of the algorithm here https://observablehq.com/d/8fb764aa82e81880

@Fil

Fil commented Dec 23, 2019

Copy link
Copy Markdown
Member Author

Added a "backtrack if overshooting" step.

@Fil Fil merged commit 559e3c4 into master Jan 2, 2020
@Fil Fil deleted the newton2d-inverse branch January 2, 2020 21:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

Algorithmic search for inverse projections

1 participant