1
$\begingroup$

I want to map the upper-half plane $$\mathbb H:=\{z\in\mathbb C:\Im(z)>0\}$$ to $[0,1)^2$ by a conformal map. If I got this right, then such a mapping is given by the Schwarz-Christoffel mapping to the square.

Now, I need to implement this mapping in a C++ program and hence I guess I need to numerically compute the integrat in the definition of the mapping. But how do we need to do this? What kind of integral is this at all?

According to the wikipedia article, the mapping is given by

$$z\mapsto\int^z\frac{{\rm d}w}{\sqrt{w(1-w^2)}}=\sqrt 2F(\sqrt{z+1};\sqrt 2/2)\tag1.$$ I guess this integral is the incomplete elliptic integral of the first kind (which I never heard about before). But I don't get the parameters. From the Wikipedia article about the elliptic integral, shouldn't the first parameter be a real numbers (instead of the complex number $\sqrt{z+1}$)?

Remark: the C++ standard contains the incomplete elliptic integral of the first kind, which we might need to use: https://en.cppreference.com/w/cpp/experimental/special_functions.

$\endgroup$
17
  • $\begingroup$ @AlexandreEremenko Thank you for your comment. What exactly do I need to look up? Could you refer me to an explicit reference? I've seen that a similar question (math.stackexchange.com/q/266269/47771) was asked on MSE, but shouldn't I need a map which maps $-\infty$ to $(0, 0)$, $\infty$ to $(0, 1)$ and $\infty+{\rm i}\infty$ to $(1,1)$ (if that makes sense)? $\endgroup$
    – 0xbadf00d
    Commented Dec 14, 2022 at 22:59
  • 1
    $\begingroup$ You have to look at the Abramowitz and Stegun book, cs.bham.ac.uk/~aps/research/projects/as/resources/… section 18.14, page 658. $\endgroup$ Commented Dec 14, 2022 at 23:18
  • $\begingroup$ I am sorry, this is is called the "Lemniscatic case", $g_2=1,g_3=0$. (Wikipedia has completely confused terminology!) $\endgroup$ Commented Dec 14, 2022 at 23:23
  • $\begingroup$ @AlexandreEremenko Thank you for the link. Unfortunately, it is quite hard to read the material for me. How would I actually implement this? The C++ tandard already contains a function to compute incomplete elliptic integrals of the first kind, but I don't get the parameterization for $F$ which is used there (and the result is a double; hence not a complex number). $\endgroup$
    – 0xbadf00d
    Commented Dec 15, 2022 at 10:00
  • 1
    $\begingroup$ I can't help with the numeric stuff and I don't remember how elliptic $F$ works, but if it's of any use, I can show the (fairly short) Sage code I used to compute this image (larger version as PDF) some years ago. Maybe you can use it, say, as a check against another implementation or something. $\endgroup$
    – Gro-Tsen
    Commented Dec 15, 2022 at 11:02

0

You must log in to answer this question.