packages feed

egison-4.2.0: sample/math/geometry/surface.egi

def v1 := [|1, 0, ∂/∂ (f x y) x|]

def v2 := [|0, 1, ∂/∂ (f x y) y|]

v1
-- [| 1, 0, f|1 x y |]

v2
-- [| 0, 1, f|2 x y |]

def v3 := crossProduct v1 v2

v3
-- [| - f|1 x y, - f|2 x y, 1 |]

def e3 := v3 / sqrt '(V.* v3 v3)

e3
-- [| - f|1 x y / sqrt ((f|1 x y)^2 + (f|2 x y)^2 + 1), - f|2 x y / sqrt ((f|1 x y)^2 + (f|2 x y)^2 + 1), 1 / sqrt ((f|1 x y)^2 + (f|2 x y)^2 + 1) |]

def E := V.* v1 v1

def F := V.* v1 v2

def G := V.* v2 v2

E
-- 1 + (f|1 x y)^2

F
-- f|1 x y * f|2 x y

G
-- 1 + (f|2 x y)^2

def L := V.* (∂/∂ v1 x) e3

def M := V.* (∂/∂ v1 y) e3

def N := V.* (∂/∂ v2 y) e3

L
-- f|1|1 x y / sqrt ((f|1 x y)^2 + (f|2 x y)^2 + 1)

M
-- f|1|2 x y / sqrt ((f|1 x y)^2 + (f|2 x y)^2 + 1)

N
-- f|2|2 x y / sqrt ((f|1 x y)^2 + (f|2 x y)^2 + 1)

def K := (L * N - M ^ 2) / '(E * G - F ^ 2)

def H := ('E * N + 'G * L + (-2) * F * M) / 2 * '(E * G - F ^ 2)

K
-- (f|1|1 x y * f|2|2 x y * (f|1 x y)^2 + f|1|1 x y * f|2|2 x y * (f|2 x y)^2 + f|1|1 x y * f|2|2 x y - (f|1|2 x y)^2 * (f|1 x y)^2 - (f|1|2 x y)^2 * (f|2 x y)^2 - (f|1|2 x y)^2) / (3 * (f|1 x y)^4 + 3 * (f|1 x y)^4 * (f|2 x y)^2 + (f|1 x y)^6 + 6 * (f|1 x y)^2 * (f|2 x y)^2 + 3 * (f|1 x y)^2 * (f|2 x y)^4 + 3 * (f|1 x y)^2 + 3 * (f|2 x y)^4 + (f|2 x y)^6 + 3 * (f|2 x y)^2 + 1)
H
-- (f|2|2 x y + f|2|2 x y * (f|2 x y)^2 + 2 * f|2|2 x y * (f|1 x y)^2 + (f|1 x y)^2 * f|2|2 x y * (f|2 x y)^2 + (f|1 x y)^4 * f|2|2 x y + f|1|1 x y + 2 * f|1|1 x y * (f|2 x y)^2 + f|1|1 x y * (f|1 x y)^2 + (f|2 x y)^4 * f|1|1 x y + (f|2 x y)^2 * f|1|1 x y * (f|1 x y)^2 - 2 * f|1 x y * f|2 x y * f|1|2 x y - 2 * f|1 x y * (f|2 x y)^3 * f|1|2 x y - 2 * (f|1 x y)^3 * f|2 x y * f|1|2 x y) / (2 * sqrt ((f|1 x y)^2 + (f|2 x y)^2 + 1))