# Ulysses’ trip

## Posts

• ### Normal vectors of a scalar field

This article gives the formula for the normal vectors of a surface defined by a scalar field on $\mathbb R^n$. The normal vector of the graph of the function $y=f\!\left(\mathbf x\right)$ at $\left(\mathbf x_0,f\!\left(\mathbf x_0\right)\right)$ is $\left(\nabla f\!\left(\mathbf x_0\right),-1\right)$. This also provides us a way to recover a scalar field from the normal vectors of its graph: normalizing the vectors so that the last component is $-1$, and then integrate the rest components.

• ### It is Feb 29 today!

It is Feb 29 today. The date appears once for as long as 4 years!

• ### Monkey-patching graciously

Monkey-patching is a powerful tool in programming. In this article, I used techniques of Ruby metaprogramming to define a series of methods def_after, def_before, etc. to help monkey-patching. They look graciously in that we can use it to shorten the codes for monkey-patching (avoiding aliasing and repeating codes).

• ### Amazing Siteleaf

I have been using Siteleaf to manage my blog. It is just convenient and amazing.

• ### Hyperellipsoids in barycentric coordinates

In this article, I introduce the barycentric coordinates: it is an elegant way to represent geometric shapes related to a simplex. By using it, given a simplex, we can construct a hyperellipsoid with the properties: its surface passes every vertex of the simplex, and its tangent hyperplane at each vertex is parallel to the hyperplane containing all other vertices.

• ### Use complex numbers as canonical variables

In this article, I try exploring an idea: using complex numbers to combine pairs of canonical variables into complex variables: $\mathbf c:=\alpha\mathbf q+\mathrm i\beta\mathbf p$. It turns out that we can write canonical equations $\frac{\mathrm d\mathbf c}{\mathrm dt}=-2\mathrm i\alpha\beta\frac{\partial\mathcal H}{\partial\mathbf c^*}$, Poisson brackets $\left\{f,g\right\}=-2\mathrm i\alpha\beta \left(\frac{\partial f}{\partial\mathbf c}\cdot \frac{\partial g}{\partial\mathbf c^*}- \frac{\partial f}{\partial\mathbf c^*}\cdot \frac{\partial g}{\partial\mathbf c}\right)$, and canonical transformations $\frac{\partial\mathbf c^*}{\partial\mathbf c’^*}= \frac{\partial\mathbf c’}{\partial\mathbf c}, \frac{\partial\mathbf c}{\partial\mathbf c’^*}= -\frac{\partial\mathbf c’}{\partial\mathbf c^*}$ in these complex numbers. Finally, I show two examples of using them in real problems: a free particle, and a harmonic oscillator.

• ### Giving birth to my own blog

This is my first blog! I will share interesting things in my life here.