I have a problem with this code:
b = 2*23.5;
nu = 0.3;
Ee = 10^5;
h = 4.5;
z = x + y*I;
G = Ee/(2*(1 + nu));
Zline = (Ee*2*h)/(2*Pi*(1 - nu^2))*ArcSinh[Sqrt[z/b]];
Z = (Ee*2*h)/(2*Pi*(1 - nu^2))*1/Sqrt[z (z + b)];
u = ((1 - 2 nu)*Re[Zline] - y*Im[Z])/(2 G);
v = (2*(1 - nu)*Im[Zline] - y*Re[Z])/(2 G);
Final = D[v, x] - D[u, y]
Plot3D[Final, {x, -b, -b/10}, {y, b/10, b}, AxesLabel -> Automatic]
Plot3D[u, {x, -b, 0}, {y, 0, b}, AxesLabel -> Automatic]
Plot3D[v, {x, -b, 0}, {y, 0, b}, AxesLabel -> Automatic]
Functions u
and v
should be real-valued functions. Can I get their analytical form? I tried to use ComplexExpand
, but still has something like Arg[(x + I y) (47. + x + I y)]
.
Then I calculate derivative with Final = D[v, x] - D[u, y]
. I don't understand why this line doesn't work:
Plot3D[Final, {x, -b, -b/10}, {y, b/10, b}, AxesLabel -> Automatic]
Final
is that you are taking derivatives of expressions that haveRe
andIm
asHead
s. Mathematica doesn't like taking derivatives of those functions: look at the output ofD[Re[f[x]],x]
. The same thing happens withConjugate
, so doing the obvious thing of replacingRe[a]
with(a + Conjugate[a])/2
won't work. $\endgroup$ND
( which requires theNumericalCalculus
package: doNeeds["NumericalCalculus
"]` $\endgroup$TargetFunctions -> {Re, Im}
setting inComplexExpand[]
? $\endgroup$