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

Edit detail for SandBoxWirtinger revision 16 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: 2014/09/25 02:13:29 GMT+0
Note:

added:
diff(sqrt(x*conjugate(x))/x,x)+diff(sqrt(x*conjugate(x))/x,conjugate x)
eval(%,conjugate(x)=x)

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

Refs.

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:Expression Integer,z:Kernel Expression Integer):Expression Integer == eval(D(eval(ex,[z],[%conjugate]),%conjugate),[%conjugate],[z])
Function declaration diff : (Expression(Integer),Kernel(Expression( Integer))) -> Expression(Integer) has been added to workspace.
Type: Void

Tests

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

\label{eq1} \mbox{\rm true} (1)
Type: Boolean
fricas
test(diff(conjugate z,conjugate z)=1)

\label{eq2} \mbox{\rm true} (2)
Type: Boolean
fricas
test(diff(z,conjugate z)=0)

\label{eq3} \mbox{\rm true} (3)
Type: Boolean
fricas
test(diff(conjugate z,z)=0)

\label{eq4} \mbox{\rm true} (4)
Type: Boolean
fricas
diff(sin(x),x)

\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
diff(%,conjugate x)

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

\label{eq18}{3 \  x}\over{8 \ {{\overline x}^{2}}\ {\sqrt{x \ {\overline x}}}}(18)
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{eq19} \mbox{\rm true} (19)
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{eq20} \mbox{\rm true} (20)
Type: Boolean
fricas
real(a+%i*b)
fricas
Compiling function real with type Polynomial(Complex(Integer)) -> 
      Expression(Complex(Integer))

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

\label{eq22}a(22)
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{eq23} \mbox{\rm true} (23)
Type: Boolean
fricas
imag(a+%i*b)
fricas
Compiling function imag with type Polynomial(Complex(Integer)) -> 
      Expression(Complex(Integer))

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

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

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

\label{eq27}1 \over 2(27)
Type: Expression(Integer)
fricas
diff(imag(x),x)
Conversion failed in the compiled user function diff .
Cannot convert from type Expression(Complex(Integer)) to Expression( Integer) for value _ %ix - %i x ---------- 2
diff(imag(x),conjugate x)
Conversion failed in the compiled user function diff .
Cannot convert from type Expression(Complex(Integer)) to Expression( Integer) for value _ %ix - %i x ---------- 2
diff(abs(x)^2,x)

\label{eq28}\overline x(28)
Type: Expression(Integer)

Functions are assumed holomorphic

fricas
f:=operator 'f

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

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

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

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

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

\label{eq34} \mbox{\rm true} (34)
Type: Boolean
fricas
test(diff(conjugate f(z,conjugate z),z) = conjugate diff(f(z,conjugate z),conjugate z))

\label{eq35} \mbox{\rm true} (35)
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{eq36}{{{\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(36)
Type: Expression(Complex(Integer))
fricas
test(diff(t1,z) = 1/2*z+1/2*conjugate(z)-3/8*(z-conjugate(z))^2)

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

\label{eq38}\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}
(38)
Type: Equation(Expression(Integer))
fricas
test(diff(t1,conjugate z) = 1/2*z+1/2*conjugate(z)-3/8*(z-conjugate(z))^2)

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

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

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

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

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

\label{eq44}0(44)
Type: Expression(Integer)