# How to take the curl of a vector function involving hypergeometric functions?

I have a vector function involving a hypergeometric function as its inner constituent. I need to take the curl of this vector and when I do, Mathematica prompts this array of errors:

TensorRank::fscl: Nonscalar expression {0.6 -97.9987 I,0.6 +97.9987 I} encountered as an argument of numeric function HypergeometricPFQ.
TensorRank::fscl: Nonscalar expression {0.6 -97.9987 I,0.6 +97.9987 I} encountered as an argument of numeric function HypergeometricPFQ.
TensorRank::fscl: Nonscalar expression {0.6 -97.9987 I,0.6 +97.9987 I} encountered as an argument of numeric function HypergeometricPFQ.
General::stop: Further output of TensorRank::fscl will be suppressed during this calculation.
Symmetrize::fscl: Nonscalar expression {0.6 -97.9987 I,0.6 +97.9987 I} encountered as an argument of numeric function HypergeometricPFQ.
Symmetrize::fscl: Nonscalar expression {0.6 -97.9987 I,0.6 +97.9987 I} encountered as an argument of numeric function HypergeometricPFQ.
Symmetrize::fscl: Nonscalar expression {0.6 -97.9987 I,0.6 +97.9987 I} encountered as an argument of numeric function HypergeometricPFQ.
General::stop: Further output of Symmetrize::fscl will be suppressed during this calculation.


I tried differentiating HypergeometricPFQ functions with complex arguments and it does the operation readily. So the problem only arises when I'm taking the curl. I wonder what am I missing in my calculations?

Here's my code,

fun[z_] = (E^(-z))^2.*HypergeometricPFQ[{2. - I, 2. + 2.*I}, {2., 3. - 3.*I, 3 + I}, -2/E^z]
vector[x_, z_] = {E^(I*x)*fun[z], E^(I*x)*z, fun[z]}
Curl[vector[x, z], {x, y, z}]


• Please show your data and code in your question, or we won’t be able to help. – MarcoB Jun 6 '18 at 4:00
• @MarcoB thanks for letting me know. The code is now included. – Abbas Jun 6 '18 at 10:57
• If I copy your code in a fresh kernel I get a valid result: {-E^(I x), -2. E^( I x) (E^-z)^2. HypergeometricPFQ[{2. - 1. I, 2. + 2. I}, {2., 3. - 3. I, 3 + I}, -2 E^-z] + (0.333333 + 0.333333 I) E^( I x - z) (E^-z)^2. HypergeometricPFQ[{3. - 1. I, 3. + 2. I}, {3., 4. - 3. I, 4 + I}, -2 E^-z], I E^(I x) z} Are you sure all the symbols that you are using are correctly defined? – dpravos Jun 6 '18 at 11:27
• @dpravos actually I got the same results but all the errors mentioned in the body text is generated beforehand. Since even in the case of encountering an error, Mathematica still cranks out some outputs (probably defective results), I thought maybe what I've got off the code wasn't correct. – Abbas Jun 6 '18 at 11:41
• The code also executes without error messages in MM 10.4.1.0. Perhaps this is a bug introduced in version 11.1. – Michael Seifert Jun 6 '18 at 12:50

FullSimplify[{-E^(I*x), -2.*E^(I*x)*(E^(-z))^2.*HypergeometricPFQ[{2. - 1.*I, 2. + 2.*I}, {2., 3. - 3.*I, 3 + I}, -2/E^z] +