Similar apps
Compare allApp info
- Installs
- 0+
- Category
- Tools
- Content rating
- Everyone
- Version
- 2.0
- Released
- Oct 4, 2026
- Last updated
- 4 Oct 2026
- In-app purchases
- No
- Contains ads
- Yes
- Promo video
- No
- Requires Android
- 7.0
Loading…
This app isn't in any of our charts yet.
An app for exploring a 2D Riemannian metric
An app for exploring a 2D Riemannian metric g = E(x,y) dx² + 2F(x,y) dx dy + G(x,y) dy² on a chart (a manifold M² with coordinates x, y). ## Using the app - Enter the metric components `E(x,y) = g₁₁`, `F(x,y) = g₁₂`, `G(x,y) = g₂₂` and the chart ranges `[x min, x max] × [y min, y max]`, then tap **Draw**. - The chart is coloured by the Gaussian curvature K: red for K > 0, blue for K < 0, white for K ≈ 0. - Choose a point by tapping the chart or with the x and y sliders. The dashed ellipse is the unit circle of the metric at that point (drawn at a fixed scale), showing how the metric distorts lengths and angles. - **Geodesic:** enter the **angle** (degrees, measured from the x direction in the sense of the metric) and the **length** s, then tap **Geodesic**. With **All directions** ticked, 12 geodesics are drawn in a fan. Geodesics stop when they leave the chart. - Syntax (exp4j): `+ - * / ^`, `sin cos tan asin acos atan sinh cosh tanh exp log sqrt abs`, constants `pi` and `e`; variables `x` and `y`. - Top bar: **Save metric**, **My metrics**, **Points table**, **Examples**, **Language**, and **About** (in the ⋮ menu). ## Manifolds and Riemannian metrics A smooth manifold M is a space covered by charts with smooth transition maps. A Riemannian metric g is a smooth choice of inner product g_p on each tangent space T_pM; in a chart g = g_ij dxⁱ dxʲ. The metric gives lengths L = ∫ √(g(γ′, γ′)) dt, angles and areas dA = √det g dx dy. ## Displayed quantities | Quantity | Formula | Meaning | | **g_ij** | E, F, G | The metric at the point | | **det g, √det g** | EG − F² | √det g is the area element dA = √det g dx dy | | **g^ij** | (1/det g)·[[G, −F], [−F, E]] | Inverse metric (used to raise indices) | | **Γᵏᵢⱼ** (Christoffel symbols) | ½ gᵏˡ (∂ᵢgⱼₗ + ∂ⱼgᵢₗ − ∂ₗgᵢⱼ) | Coefficients of the Levi-Civita connection (the unique torsion-free connection preserving g) | | **K** (Gaussian curvature) | Brioschi's formula from E, F, G and their derivatives | In dimension 2 the whole curvature tensor is determined by K | | **Ric, R** | Ric = K·g, R = 2K | Ricci tensor and scalar curvature of a surface | | **R₁₂₁₂** | K·det g | The only independent component of the Riemann tensor in dimension 2 | | **Geodesic** | ẍᵏ + Γᵏᵢⱼ ẋⁱ ẋʲ = 0 | Locally shortest curves; ∇_γ′γ′ = 0 | The Levi-Civita connection is defined by ∇_X Y with Γᵏᵢⱼ as above, and the Riemann tensor by R(X, Y)Z = ∇_X∇_Y Z − ∇_Y∇_X Z − ∇_[X,Y] Z. In dimension 2 the sectional curvature is the single number K. | Example | E, F, G | K | | Euclidean plane | 1, 0, 1 | 0 | | Sphere (θ, φ) | 1, 0, sin²x | 1 | | Poincaré half-plane | 1/y², 0, 1/y² | −1 | | Poincaré disk | 4/(1−x²−y²)², 0, 4/(1−x²−y²)² | −1 | | Polar coordinates (r, θ) | 1, 0, x² | 0 (flat plane in polar coordinates) | | Hyperbolic cylinder | 1, 0, e^(2x) | −1 | | Paraboloid z = x² + y² (induced) | 1+4x², 4xy, 1+4y² | 4/(1+4x²+4y²)², so 4 at the origin | In the Poincaré half-plane the geodesics are vertical lines and semicircles centred on the x axis. Starting at (0, 1) with angle 0°, the geodesic follows the unit circle x² + y² = 1. In the Poincaré disk they are arcs of circles orthogonal to the unit circle. Flat polar coordinates show that the same flat metric can look very different in another chart; K stays 0. ## Points table The table icon opens a separate screen (`PointsActivity`) with E, F, G and K on a grid of (x, y) values. Set **x from / to / step** and **y from / to / step**, then tap **Compute**; the defaults split the current ranges into 4 steps (a 5 × 5 grid). Up to 2000 points are shown. The text is selectable, so it can be copied. ## How it works E, F, G are evaluated from your expressions; their first derivatives use central differences (step 10⁻⁴), second derivatives (E_yy, G_xx, F_xy for Brioschi's formula) use step 10⁻³. Geodesics are integrated with the classical Runge-Kutta (RK4) method in 200 steps; the error indicator |g(γ′, γ′) − 1| shows how well the unit speed is preserved.