I have various $\mathbb{C}^{n}$ valued function $f[z,\overline{z}],g[z,\overline{z}]$ with $z \in \mathbb{C}$ and I wish to represent their Hermitian inner product and furthermore the derivative of this inner product symbolically.
The rules I wish to include would be the complex product rule; $\frac{\partial}{\partial z} \langle f,g \rangle = \langle \frac{\partial f}{\partial z} , g \rangle + \langle f, \frac{\partial g}{\partial \overline{z}} \rangle$ as well as the conjugate linear property of the bracket $\langle f , \alpha g \rangle = \overline{\alpha} \langle f, g\rangle$
However, I've been unsuccessful when trying to define such a product as the expression;
H[a_,b_] = a.Conjugate[b]
when differentiating, will result in Conjugate'[f[z,Conjugate[z]]] and Conjugate'[z] terms.
What would be the best way to represent these symbols, I've tried defining the differential directly
H[a_,b_]:=a.Conjugate[b];
Dz[A_,z_]:=H[D[A[[1]],z],A[[2]]]+H[A[[1]],D[A[[2]],Conjugate[z]]];
But this will result in the same problem as above, as breaks down once you apply it twice.
D[H[F, F], z] X = HEvaluate@D[H[F, F], z]; D[X, z] HEvaluate@D[X, z]gives $f\left(z,z^\right).\left(f^{(2,0)}\left(z,z^\right) \text{Conjugate}'\left(f^{(1,0)}\left(z,z^\right)\right)\right)+f^{(1,0)}\left(z,z^\right).\left(f^{(1,0)}\left(z,z^\right) \text{Conjugate}'\left(f\left(z,z^\right)\right)\right)+f^{(1,0)}\left(z,z^\right).f^{(1,0)}\left(z,z^\right)^+f^{(2,0)}\left(z,z^\right).f\left(z,z^\right)^$ (I don't know how to directly copy the output) – Jack Moon Jan 11 '17 at 04:35HEvaluategives a wonky result? Because that's not too surprising. Try applyingHEvaluateonly at the very end. That is, do all your Hermitian stuff symbolically, passing the operator itself around, then later applyHEvaluate. – b3m2a1 Jan 11 '17 at 20:32Conjugate'terms in the previous expression. So the output forF = f[z, Conjugate[z]]; D[H[F, F], z] ; HEvaluate@D[H[F, F], z] /. {Conjugate'[z] -> 0}is as expectedf[z,Conjugate[z]].Conjugate[(f^(1,0))[z,Conjugate[z]]]+(f^(1,0))[z,Conjugate[z]].Conjugate[f[z,Conjugate[z]]], however preforming the operation twice, say for example;D[D[H[F, F], z] , z]; HEvaluate@D[D[H[F, F], z] , z] /. {Conjugate'[z] -> 0}results in terms such as(H^(0,1))[(f^(1,0))[z,Conjugate[z]],f[z,Conjugate[z]]]– Jack Moon Jan 12 '17 at 01:47X = HEvaluate@D[H[F, F], z] /. {Conjugate'[z] -> 0} HEvaluate@D[X, z] /. {Conjugate'[z] -> 0}should have a second order derivative term of the form $ f \cdot \overline{\frac{\partial^2 f}{\partial z^2}}$, instead it has the termf[z,Conjugate[z]].((Conjugate')[(f^(1,0))[z,Conjugate[z]]] (f^(2,0))[z,Conjugate[z]])It's like this(Conjugate')[(f^(1,0))[z,Conjugate[z]]]term should be the conjugate operator on the following term. – Jack Moon Jan 12 '17 at 01:53