Doubt on derivation of complex functions

In summary, the author of the source article claims that the correct derivation of a complex function w.r.t. to a complex variable should be: f(z)=g(z) x h(z).Differentiating this with d/dz yields: f'(z)=g'(z) x h(z) + g(z) x h'(z).However, the author glosses over a problem and states that the correct derivation is: f(z)=g(z) x h(z).This is because the function g(z) is a
  • #1
mnb96
715
5
Hello,

I have a doubt on how to differentiate a complex function f:ℂ→ℂ defined as follows: [tex]f(z)=zz^*[/tex] where the * stands for complex conjugation.

According to this source (at the very end of the Section, where it says: "...As this is a complex value, G*(f) acts as a constant...") the result should be: [tex]\frac{df}{dz}=z^*[/tex] which to me sounds a bit strange (i.e. why on Earth should z* be treated as a constant?)

What's the correct way of performing derivation of a complex function w.r.t. to a complex variable?
 
Physics news on Phys.org
  • #2
Let g(z)=z; h(z)=z*. Then f(z)=g(z) x h(z).

Now differentiate with d/dz yields f'(z)=g'(z) x h(z) + g(z) x h'(z).

By the definitions g'(z) = dz/dz = 1; but h'(z) does not exist ... see http://rutherglen.science.mq.edu.au/wchen/lnicafolder/ica03.pdf

Thus it would seem that the writer is glossing over a problem here!
 
  • Like
Likes 1 person
  • #3
Yes, I actually noticed now that the argumentation used by the author of that article was wrong.
I should anyway study a bit more about complex derivatives, as I noticed I don't know very much about it.
 
  • #4
Focus on understanding the Cauchy conditions; they are fundamental.
 
  • #5
Sorry for bothering again with this, but I have just come across this page on matrix calculus where the following result is listed in the Section "Differentials of Quadratic Products" :
[tex]d (\mathbf{x}^H \mathbf{x}) = 2\mathcal{R}e(\mathbf{x}^H d\mathbf{x})[/tex]

Here H stands for Hermitian transpose, [itex]\mathcal{R}e[/itex] means "real part", and x is a complex vector.
If this result is correct, then when x is a complex scalar we would get the following result:
[tex]\frac{d|x|^2}{dx}=2 \mathcal{R}e \{x^*\}[/tex]

How is it possible to obtain these two results when, as UltrafastPED said, the derivative for x* does not exist?

EDIT: Perhaps the trick could be that the function f(z)=zz* is actually a real function [itex]f:\mathbb{C}\rightarrow \mathbb{R}[/itex] with a complex variable? Such a function does not yield a vector field, instead it can be represented by a scalar field on the complex 2D plane, so I guess we can "bypass" the step of using the product rule and evaluate the derivative of z*?
This page seems to say something about the trick.
 
Last edited:
  • #6
Note that in signal processing we often use shortcuts that are along these lines. Given the context that could be what the page you reference was talking about. It is sometimes called wirtinger calculus. Google found this nice pdf from a signal processing book:
http://onlinelibrary.wiley.com/doi/10.1002/0471439002.app1/pdf

I use this all the time, since I want to estimate complex valued parameters or signals, usually by minimizing the mean square error or some other metric. One can treat each complex parameter as a combination of 2 real parameters of course, but the wirtinger calculus provides a shortcut. Again, this is used all the time in signal processing, and I always see it as a shortcut. The examples in the link I give (especially table A.2) are very common to run across.

jason

EDIT
Here is a link to some parameter estimation (the electrical engineering way) lecture notes - the one on complex vector calculus is what you want to look for.
http://dsp.ucsd.edu/~kreutz/PEI05.html
It contains much more than lecture notes; it is more like a book chapter if you ask me.
 
Last edited:
  • Like
Likes 1 person
  • #7
The source of your formula is "The Matrix Reference Manual", which is a bit schematic - not a detailed textbook with derivations.

See the paragraph "Derivatives with respect to a complex matrix" where the rules are expressed.

He has substituted an alternative "generalized complex derivative"; see the explanation there.
 
  • #8
Thanks a lot jason! Especially for the first link.

Finally things make sense. My confusion was apparently due to the fact that the function that I mentioned in my first post was actually being differentiated by using the definition of Wirtinger derivative, and not by using the standard definition of complex derivative.

That should have been mentioned by the author to avoid confusion, as the notation to express the two derivatives is exactly the same.
 
Last edited:
  • #9
I'm glad it helped. Just beware that some people do not include the factor of 1/2 in their definition of the derivative, so extra factors of 2 show up in some intermediate results of some work you may run across. I am an electrical engineer, but I first learned this from an astronomy course that did not include the 1/2.

jason
 
  • #10
The problem is that you wrote a straight d/dz when apparently it should have been a curly ∂/∂z.

I.e. the "wirtinger" derivative is a partial complex derivative. Actually the definitions are completely consistent with the usual ones, in term of derivatives of real functions.

i.e. one can consider a complex function as a function of two variables z and zbar, and then there are partial derivatives wrt each "variable" that obey some of the usual rules.

Although d/dz is only defined for holomorphic functions, ∂/∂z and ∂/∂zbar are both defined for all smooth complex functions.i.e. at each point, df is a real linear function from C to C, and this is a 2 dimensional C-vector space.

one basis for such functions is dx, dy and another basis is dz, dzbar.In both cases one has for f, that df = ∂f/∂x dx + ∂f/∂y dy = ∂f/∂z dz + ∂f/∂zbar dzbar.

So we are just expressing df in two different bases.in this sense ∂f/∂z is by definition the coefficient of dz in the expansion of df in the basis dz, dzbar.you can also express ∂/∂z and ∂/∂zbar in terms of ∂/∂x and ∂/∂y if you wish:

to do this just use the equations dz = dx + idy, dzbar = dx -idy, to solve for dx = (1/2)(dz + dzbar),

and dy = (1/2i)(dz - dzbar), substitute into the LHS of the equation:

∂f/∂x dx + ∂f/∂y dy = ∂f/∂z dz + ∂f/∂zbar dzbar, and then collect terms and equate coefficients of dz, dzbar,

yielding

∂/∂z = (1/2)(∂/∂x - i∂/∂y) and ∂/∂zbar = (1/2)(∂/∂x + i∂/∂y).then since z.zbar = x^2 + y^2, you can compute that indeed ∂/∂z(z.zbar) = zbar.Then a function is holomorphic, i.e. d/dz is defined, if and only if ∂/∂zbar of it = 0, (Cauchy Riemann equations).

in particular, z.zbar is not holomorphic since (∂/∂zbar)(z.zbar) = z ≠ 0.

Interestingly, in that case, then d/dz = ∂/∂z = ∂/∂x. E.g. if f = z^2, which is holomorphic,

then z^2 = (x^2-y^2) + 2i(xy), so d(z^2)/dz = 2z.

but also ∂/∂x(z^2) = ∂/∂x((x^2-y^2) + 2i(xy)) = 2x +2iy = 2z !

cool huh?

oh yes, and one can see from this derivation that the coefficient (1/2) is forced on you, so leaving it out is, in my opinion, just wrong. i.e. dz + dzbar = 2dx, not dx.

to put it another way, if you believe z = x+iy and zbar = x-iy, and you want to have

df = ∂f/∂x dx + ∂f/∂y dy = ∂f/∂z dz + ∂f/∂zbar dzbar,

then you have no choice about the (1/2).
 
Last edited:
  • Like
Likes 1 person
  • #11
Thanks Mathwonk. That is a nice concise presentation of this topic. I have to be honest that I have never worked through it very thoroughly. It is a tool I learned well enough to use correctly for my work and not much more. I simply worked through the common functions I care about and showed that Wirtinger gives the same complex parameter estimates as when I do it the slower way of using two real variables for each complex one.
It is nice to hear a mathematician's take on this.

jason
 
  • #12
Thanks Mathwonk!
Extremely clear and very useful explanation.

It is nice that the Cauchy-Riemann equations can be written with a single formula using Wirtinger derivatives.

For those interested in this topic, it is perhaps worth mentioning that this kind of derivatives, as well as other differential operators like divergence, gradient, curl, are generalized to n-dimensions, and in a coordinate-free manner by the so-called "multivector derivative" operator proposed by D. Hestenes in the context of Clifford Algebras. He also showed that such a generalized derivative operator allows one to write the generalization of the Cauchy-Riemann equations with a single equation [see the link].
 
  • #13
glad this helped. historically this is the point of view already in Riemann's thesis, in the 1850's before wirtinger.
 

1. What is a complex function?

A complex function is a mathematical function that operates on complex numbers, which are numbers that have both a real and an imaginary component. It takes in a complex number as its input and produces a complex number as its output.

2. How do you derive a complex function?

The process of deriving a complex function is similar to that of deriving a real-valued function. You use the rules of differentiation, such as the power rule and chain rule, to find the derivative of the function with respect to the complex variable. However, you must also consider the properties of complex numbers, such as the fact that their conjugates are equal, when performing the derivation.

3. Why is there doubt surrounding the derivation of complex functions?

There may be doubt surrounding the derivation of complex functions because it can be a more complex and abstract concept compared to real-valued functions. Additionally, there may be different approaches or interpretations of how to derive complex functions, leading to potential discrepancies or disagreements.

4. What are some common challenges in deriving complex functions?

One common challenge in deriving complex functions is determining which rules and properties to apply. This can be especially difficult when dealing with functions that involve logarithms, exponentials, or trigonometric functions. Another challenge is keeping track of the complex variables and their derivatives, as they can become quite convoluted.

5. How can I improve my understanding of deriving complex functions?

To improve your understanding of deriving complex functions, it is important to have a strong foundation in complex numbers and their properties. Practice applying the rules of differentiation to various complex functions and pay attention to the steps and reasoning behind each step. Working through examples and seeking guidance from a teacher or tutor can also be helpful in solidifying your understanding.

Similar threads

Replies
6
Views
1K
Replies
12
Views
2K
Replies
15
Views
2K
Replies
5
Views
942
  • Calculus
Replies
5
Views
2K
Replies
5
Views
1K
Replies
14
Views
1K
  • Calculus and Beyond Homework Help
Replies
7
Views
1K
Replies
3
Views
973
Replies
2
Views
1K
Back
Top