login  home  contents  what's new  discussion  bug reports     help  links  subscribe  changes  refresh  edit

Edit detail for SandBoxWirtinger revision 21 of 21

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
Editor: Bill Page
Time: 2015/03/17 21:28:28 GMT+0
Note: refs

added:

- "An Introduction to Complex Differentials and Complex Differentiability":https://mediatum.ub.tum.de/doc/631019/631019.pdf
  by Raphael Hunger

Wirtinger Derivatives or Wirtinger Calculus (also called \mathbb{CR}-Calculus)

Reference

fricas
)lib FSPECX
FunctionalSpecialFunction is now explicitly exposed in frame initial
FunctionalSpecialFunction will be automatically loaded when needed from /var/aw/var/LatexWiki/FSPECX.NRLIB/FSPECX

fricas
diff(ex,z) == eval(D(eval(ex,[z],[%conjugate]),%conjugate),[%conjugate],[z])
Type: Void

Tests

fricas
test(diff(z,z)=1)
fricas
Compiling function diff with type (Variable(z),Variable(z)) -> 
      Polynomial(Integer)

\label{eq1} \mbox{\rm true} (1)
Type: Boolean
fricas
test(diff(conjugate z,conjugate z)=1)
fricas
Compiling function diff with type (Expression(Integer),Expression(
      Integer)) -> Expression(Integer)

\label{eq2} \mbox{\rm true} (2)
Type: Boolean
fricas
test(diff(z,conjugate z)=0)
fricas
Compiling function diff with type (Variable(z),Expression(Integer))
       -> Expression(Integer)

\label{eq3} \mbox{\rm true} (3)
Type: Boolean
fricas
test(diff(conjugate z,z)=0)
fricas
Compiling function diff with type (Expression(Integer),Variable(z))
       -> Expression(Integer)

\label{eq4} \mbox{\rm true} (4)
Type: Boolean
fricas
diff(sin(x),x)
fricas
Compiling function diff with type (Expression(Integer),Variable(x))
       -> Expression(Integer)

\label{eq5}\cos \left({x}\right)(5)
Type: Expression(Integer)
fricas
diff(sin(x),conjugate x)

\label{eq6}0(6)
Type: Expression(Integer)
fricas
diff(sqrt(x^2),x)

\label{eq7}x \over{\sqrt{{x}^{2}}}(7)
Type: Expression(Integer)
fricas
diff(sqrt(x^2),conjugate x)

\label{eq8}0(8)
Type: Expression(Integer)
fricas
diff(z*conjugate(z),z)

\label{eq9}\overline z(9)
Type: Expression(Integer)
fricas
diff(z*conjugate(z),conjugate z)

\label{eq10}z(10)
Type: Expression(Integer)
fricas
diff(sqrt(x*conjugate(x)),x)

\label{eq11}{\overline x}\over{2 \ {\sqrt{x \ {\overline x}}}}(11)
Type: Expression(Integer)
fricas
diff(%,x)

\label{eq12}-{{\overline x}\over{4 \  x \ {\sqrt{x \ {\overline x}}}}}(12)
Type: Expression(Integer)
fricas
diff(%,x)

\label{eq13}{3 \ {\overline x}}\over{8 \ {{x}^{2}}\ {\sqrt{x \ {\overline x}}}}(13)
Type: Expression(Integer)
fricas
diff(diff(diff(abs(x),x),x),x)

\label{eq14}{3 \ {{\overline x}^{3}}}\over{8 \ {{abs \left({x}\right)}^{5}}}(14)
Type: Expression(Integer)
fricas
_rule(abs(x),sqrt(x*conjugate(x))) %

\label{eq15}{3 \ {\overline x}}\over{8 \ {{x}^{2}}\ {\sqrt{x \ {\overline x}}}}(15)
Type: Expression(Integer)
fricas
diff(sqrt(x*conjugate(x)),conjugate x)

\label{eq16}x \over{2 \ {\sqrt{x \ {\overline x}}}}(16)
Type: Expression(Integer)
fricas
conjugate(diff(conjugate(sqrt(x*conjugate(x))),x))

\label{eq17}{\sqrt{x \ {\overline x}}}\over{2 \ {\overline x}}(17)
Type: Expression(Integer)
fricas
diff(%,conjugate x)

\label{eq18}-{x \over{4 \ {\overline x}\ {\sqrt{x \ {\overline x}}}}}(18)
Type: Expression(Integer)
fricas
diff(%,conjugate x)

\label{eq19}{3 \  x}\over{8 \ {{\overline x}^{2}}\ {\sqrt{x \ {\overline x}}}}(19)
Type: Expression(Integer)

Non-holomorphic functions

fricas
real(x) == (x+conjugate(x))/2
Type: Void
fricas
test(real real x = real x)
fricas
Compiling function real with type Variable(x) -> Expression(Integer)
fricas
Compiling function real with type Expression(Integer) -> Expression(
      Integer)

\label{eq20} \mbox{\rm true} (20)
Type: Boolean
fricas
imag(x) == -%i*(x-conjugate(x))/2
Type: Void
fricas
test(imag imag x = 0)
fricas
Compiling function imag with type Variable(x) -> Expression(Complex(
      Integer))
fricas
Compiling function imag with type Expression(Complex(Integer)) -> 
      Expression(Complex(Integer))

\label{eq21} \mbox{\rm true} (21)
Type: Boolean
fricas
real(a+%i*b)
fricas
Compiling function real with type Polynomial(Complex(Integer)) -> 
      Expression(Complex(Integer))

\label{eq22}{-{i \ {\overline b}}+{\overline a}+{i \  b}+ a}\over 2(22)
Type: Expression(Complex(Integer))
fricas
eval(%,[conjugate(a)=a,conjugate(b)=b])

\label{eq23}a(23)
Type: Expression(Complex(Integer))
fricas
test(real(real(a) + %i*real(b)) = real(a))
fricas
Compiling function real with type Variable(a) -> Expression(Integer)
fricas
Compiling function real with type Variable(b) -> Expression(Integer)
fricas
Compiling function real with type Expression(Complex(Integer)) -> 
      Expression(Complex(Integer))

\label{eq24} \mbox{\rm true} (24)
Type: Boolean
fricas
imag(a+%i*b)
fricas
Compiling function imag with type Polynomial(Complex(Integer)) -> 
      Expression(Complex(Integer))

\label{eq25}{{\overline b}+{i \ {\overline a}}+ b -{i \  a}}\over 2(25)
Type: Expression(Complex(Integer))
fricas
eval(%,[conjugate(a)=a,conjugate(b)=b])

\label{eq26}b(26)
Type: Expression(Complex(Integer))
fricas
diff(real(x),x)

\label{eq27}1 \over 2(27)
Type: Expression(Integer)
fricas
diff(real(x),conjugate x)

\label{eq28}1 \over 2(28)
Type: Expression(Integer)
fricas
diff(imag(x),x)
fricas
Compiling function diff with type (Expression(Complex(Integer)),
      Variable(x)) -> Expression(Complex(Integer))

\label{eq29}-{i \over 2}(29)
Type: Expression(Complex(Integer))
fricas
diff(imag(x),conjugate x)
fricas
Compiling function diff with type (Expression(Complex(Integer)),
      Expression(Integer)) -> Expression(Complex(Integer))

\label{eq30}i \over 2(30)
Type: Expression(Complex(Integer))
fricas
diff(abs(x)^2,x)

\label{eq31}\overline x(31)
Type: Expression(Integer)

Functions are assumed holomorphic

fricas
f:=operator 'f

\label{eq32}f(32)
Type: BasicOperator?
fricas
diff(c*f(x),x)

\label{eq33}c \ {{f_{\ }^{,}}\left({x}\right)}(33)
Type: Expression(Integer)
fricas
diff(c*f(x),conjugate x)

\label{eq34}0(34)
Type: Expression(Integer)
fricas
diff(f(x,conjugate x),x)

\label{eq35}{f_{, 1}}\left({x , \:{\overline x}}\right)(35)
Type: Expression(Integer)
fricas
diff(f(x,conjugate x),conjugate x)

\label{eq36}{f_{, 2}}\left({x , \:{\overline x}}\right)(36)
Type: Expression(Integer)
fricas
test(diff(conjugate f(z,conjugate z),conjugate z) = conjugate diff(f(z,conjugate z),z))

\label{eq37} \mbox{\rm false} (37)
Type: Boolean
fricas
test(diff(conjugate f(z,conjugate z),z) = conjugate diff(f(z,conjugate z),conjugate z))

\label{eq38} \mbox{\rm false} (38)
Type: Boolean

Examples

fricas
t1:=real(z)^2+%i*imag(z)^3
fricas
Compiling function real with type Variable(z) -> Expression(Integer)
fricas
Compiling function imag with type Variable(z) -> Expression(Complex(
      Integer))

\label{eq39}{{{\overline z}^{3}}+{{\left(-{3 \  z}+ 2 \right)}\ {{\overline z}^{2}}}+{{\left({3 \ {{z}^{2}}}+{4 \  z}\right)}\ {\overline z}}-{{z}^{3}}+{2 \ {{z}^{2}}}}\over 8(39)
Type: Expression(Complex(Integer))
fricas
test(diff(t1,z) = 1/2*z+1/2*conjugate(z)-3/8*(z-conjugate(z))^2)
fricas
Compiling function diff with type (Expression(Complex(Integer)),
      Variable(z)) -> Expression(Complex(Integer))

\label{eq40} \mbox{\rm true} (40)
Type: Boolean
fricas
(diff(t1,conjugate z) = 1/2*z+1/2*conjugate(z)-3/8*(z-conjugate(z))^2)

\label{eq41}\begin{array}{@{}l}
\displaystyle
{{{3 \ {{\overline z}^{2}}}+{{\left(-{6 \  z}+ 4 \right)}\ {\overline z}}+{3 \ {{z}^{2}}}+{4 \  z}}\over 8}= 
\
\
\displaystyle
{{-{3 \ {{\overline z}^{2}}}+{{\left({6 \  z}+ 4 \right)}\ {\overline z}}-{3 \ {{z}^{2}}}+{4 \  z}}\over 8}
(41)
Type: Equation(Expression(Complex(Integer)))
fricas
test(diff(t1,conjugate z) = 1/2*z+1/2*conjugate(z)-3/8*(z-conjugate(z))^2)

\label{eq42} \mbox{\rm false} (42)
Type: Boolean
fricas
t2:=2*log(sqrt(z*conjugate(z)))

\label{eq43}2 \ {\log \left({\sqrt{z \ {\overline z}}}\right)}(43)
Type: Expression(Integer)
fricas
diff(t2,z)

\label{eq44}1 \over z(44)
Type: Expression(Integer)
fricas
diff(t2,conjugate z)

\label{eq45}1 \over{\overline z}(45)
Type: Expression(Integer)
fricas
diff(sqrt(x*conjugate(x))/x,x)+diff(sqrt(x*conjugate(x))/x,conjugate x)

\label{eq46}{-{\overline x}+ x}\over{2 \  x \ {\sqrt{x \ {\overline x}}}}(46)
Type: Expression(Integer)
fricas
eval(%,conjugate(x)=x)

\label{eq47}0(47)
Type: Expression(Integer)