Mathematics Stack Exchange is a question and answer site for people studying math at any level and professionals in related fields. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a function $f(\bar{z},z)$ mapping from $\mathbb{C}^n \times \mathbb{C}^n \rightarrow \mathbb{C}^n$, which I would like to find the roots of numerically.

Since it is nicely formulated in terms of $\bar{z}, z$, is it safe to use Wirtinger calculus $\partial_z, \partial_{\bar{z}}$, extract the partial derivatives of real and imaginary part after evaluation by $\partial_x=\partial_z+\partial_{\bar{z}}$ and $\partial_y=i(\partial_z-\partial_{\bar{z}})$ and run a real-valued Newton-like algorithm?

If I am overlooking something here, can somebody point me to a reference helping me out?

EDIT: I reworked this question with a more evolved example:

consider the function $f(\vec{z}) = z_1^2 + \bar{z}_2^3 + \bar{z}_1z_2z_3 + \bar{z}_3 + i$ and I am trying to find the zero of its first derivative.

Let's work out the first derivative $F$ in terms of the three component vector $\vec{z}$:

$F=\begin{pmatrix} \partial_{z_1} f \\ \partial_{z_2} f \\ \partial_{z_3} f \\ \partial_{\bar{z}_1} f \\ \partial_{\bar{z}_2} f \\ \partial_{\bar{z}_3} f \end{pmatrix} = \begin{pmatrix} 2z_1\\ \bar{z}_1z_3\\\bar{z}_1z_2 \\ z_2z_3 \\ 3\bar{z}_2^2 \\ 1\end{pmatrix} $

I evaluate this function with my starting point $(z_0, \bar{z}_0)$, corresponding to a starting point $(x_0, y_0)$, and map it to the real domain using the linear transformation stated above.

$F=\begin{pmatrix} \partial_{x_1} f \\ \partial_{y_1} f \\ \partial_{x_2} f \\ \partial_{y_z} f \\ \partial_{x_3} f \\ \partial_{y_3} f \end{pmatrix}_{x_0,y_0} = \vec{U_F} + i \vec{V_F} = \begin{pmatrix} U_F \\ V_F \end{pmatrix} $

Which is suddenly a 12dim vector, yielding two equations for each real variable? I am not sure where I should proceed from here...

share|cite|improve this question

Yes, this is a reasonable approach. Essentially, you are using the Newton algorithm over real numbers, with complex variables appearing only as a formal device for calculating real derivatives.

For example, suppose you want to solve $$\begin{split} z_1^2+\bar z_2^3+\bar z_1 z_2+i&=0 \\ z_1-z_2^2 +\bar z_1\bar z_2-3 &= 0 \end{split}$$ (I'm using bars instead of stars for complex conjugation.)

The Wirtinger derivatives are $$ \frac{\partial f}{\partial z_1}=\begin{pmatrix} 2z_1 \\ 1 \end{pmatrix},\quad \frac{\partial f}{\partial \bar z_1}=\begin{pmatrix} z_2 \\ \bar z_2 \end{pmatrix},\quad \frac{\partial f}{\partial z_2}=\begin{pmatrix} \bar z_1 \\ 2z+2 \end{pmatrix},\quad \frac{\partial f}{\partial \bar z_1}=\begin{pmatrix} 3\bar z_2^2 \\ \bar z_1 \end{pmatrix} $$ These can be converted to real derivatives in $x_1,x_2,y_1,y_2$. Note that you will also be separating real and imaginary parts in the target space, e.g., $w_1=u_1+iv_1$, $w_2=u_2+iv_2$. So, for example, $$ \frac{\partial f}{\partial x_1}=\begin{pmatrix} 2z_1+z_2 \\ \bar z_2 + 1 \end{pmatrix} =\begin{pmatrix}2x_1+x_2 \\ 2y_1+y_2 \\ x_2+1 \\ -y_2 \end{pmatrix} $$ The real Jacobian matrix in this example has size $4\times 4$, and you would use it exactly as Newton method says.

share|cite|improve this answer
Thank you for your answer! P.S.: I think you might rework in your answer the index of the last Wirtinger derivative and the second entry of the third. – user157050 Jun 16 '14 at 6:27
One further question, by "separating real and imaginary parts in the target space" you mean $f_j = w_j = u_j + iv_j$ ? – user157050 Jun 16 '14 at 6:48
And what happens if I had for example six variables? Wouldn't the Jacobian then be a $4\times 6$ matrix? What do I do then? – user157050 Jun 16 '14 at 9:50

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.