How to find image of a complex function with given constraints? The Next CEO of Stack OverflowDraw the image of a complex regionFinding residues of multi-dimensional complex functionsMulti-dimensional integral in the complex plane with poles and essential singularityPlotting a set of points given by a complex expressionFind regions in which the roots of a third degree polynomial are realHow to find function existence borderPerformance of Apart with complex numbersUsing MaxValue with complex argumentHow to maximize the modulus of a multivariate complex-valued function?Defining 3rd variable for parametricplot3D of two-variable complex functionHow to achieve faster performance on plotting complex valued functions

Is there a way to save my career from absolute disaster?

IC has pull-down resistors on SMBus lines?

How to find image of a complex function with given constraints?

What happened in Rome, when the western empire "fell"?

Traveling with my 5 year old daughter (as the father) without the mother from Germany to Mexico

Does destroying a Lich's phylactery destroy the soul within it?

Is "three point ish" an acceptable use of ish?

Why the last AS PATH item always is `I` or `?`?

Would a completely good Muggle be able to use a wand?

Help/tips for a first time writer?

Can this note be analyzed as a non-chord tone?

AB diagonalizable then BA also diagonalizable

"Eavesdropping" vs "Listen in on"

Do scriptures give a method to recognize a truly self-realized person/jivanmukta?

0-rank tensor vs vector in 1D

Players Circumventing the limitations of Wish

Is a distribution that is normal, but highly skewed, considered Gaussian?

What connection does MS Office have to Netscape Navigator?

What CSS properties can the br tag have?

My ex-girlfriend uses my Apple ID to login to her iPad, do I have to give her my Apple ID password to reset it?

Do I need to write [sic] when including a quotation with a number less than 10 that isn't written out?

Decide between Polyglossia and Babel for LuaLaTeX in 2019

What was Carter Burkes job for "the company" in "Aliens"?

What flight has the highest ratio of timezone difference to flight time?



How to find image of a complex function with given constraints?



The Next CEO of Stack OverflowDraw the image of a complex regionFinding residues of multi-dimensional complex functionsMulti-dimensional integral in the complex plane with poles and essential singularityPlotting a set of points given by a complex expressionFind regions in which the roots of a third degree polynomial are realHow to find function existence borderPerformance of Apart with complex numbersUsing MaxValue with complex argumentHow to maximize the modulus of a multivariate complex-valued function?Defining 3rd variable for parametricplot3D of two-variable complex functionHow to achieve faster performance on plotting complex valued functions










2












$begingroup$


I am very new to Mathematica. I have started learning it only last month. I would like to graph the image of some complex valued polynomials with some provided conditions. For example: $$ p(z_1,z_2,z_3)=z_1z_2^2 +z_2z_3+z_1z_3,$$ given that $|z_1|=1, |z_2|=2=|z_3|$.










share|improve this question









New contributor




XYZABC is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.







$endgroup$







  • 1




    $begingroup$
    mathematica.stackexchange.com/questions/30687/…
    $endgroup$
    – Alrubaie
    5 hours ago










  • $begingroup$
    Possible duplicate of Draw the image of a complex region
    $endgroup$
    – MarcoB
    4 hours ago






  • 1




    $begingroup$
    Do you want to draw the image or do you want a symbolic-algebraic description of the image?
    $endgroup$
    – Michael E2
    3 hours ago






  • 1




    $begingroup$
    People here generally like users to post code as Mathematica code instead of just images or TeX, so they can copy-paste it. It makes it convenient for them and more likely you will get someone to help you. You may find this meta Q&A helpful
    $endgroup$
    – Michael E2
    3 hours ago










  • $begingroup$
    @Michael E2, Great point! I've updated my answer to include the algebraic description as well. Thank you!
    $endgroup$
    – mjw
    2 hours ago















2












$begingroup$


I am very new to Mathematica. I have started learning it only last month. I would like to graph the image of some complex valued polynomials with some provided conditions. For example: $$ p(z_1,z_2,z_3)=z_1z_2^2 +z_2z_3+z_1z_3,$$ given that $|z_1|=1, |z_2|=2=|z_3|$.










share|improve this question









New contributor




XYZABC is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.







$endgroup$







  • 1




    $begingroup$
    mathematica.stackexchange.com/questions/30687/…
    $endgroup$
    – Alrubaie
    5 hours ago










  • $begingroup$
    Possible duplicate of Draw the image of a complex region
    $endgroup$
    – MarcoB
    4 hours ago






  • 1




    $begingroup$
    Do you want to draw the image or do you want a symbolic-algebraic description of the image?
    $endgroup$
    – Michael E2
    3 hours ago






  • 1




    $begingroup$
    People here generally like users to post code as Mathematica code instead of just images or TeX, so they can copy-paste it. It makes it convenient for them and more likely you will get someone to help you. You may find this meta Q&A helpful
    $endgroup$
    – Michael E2
    3 hours ago










  • $begingroup$
    @Michael E2, Great point! I've updated my answer to include the algebraic description as well. Thank you!
    $endgroup$
    – mjw
    2 hours ago













2












2








2





$begingroup$


I am very new to Mathematica. I have started learning it only last month. I would like to graph the image of some complex valued polynomials with some provided conditions. For example: $$ p(z_1,z_2,z_3)=z_1z_2^2 +z_2z_3+z_1z_3,$$ given that $|z_1|=1, |z_2|=2=|z_3|$.










share|improve this question









New contributor




XYZABC is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.







$endgroup$




I am very new to Mathematica. I have started learning it only last month. I would like to graph the image of some complex valued polynomials with some provided conditions. For example: $$ p(z_1,z_2,z_3)=z_1z_2^2 +z_2z_3+z_1z_3,$$ given that $|z_1|=1, |z_2|=2=|z_3|$.







complex






share|improve this question









New contributor




XYZABC is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











share|improve this question









New contributor




XYZABC is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









share|improve this question




share|improve this question








edited 2 hours ago









Henrik Schumacher

58.6k581162




58.6k581162






New contributor




XYZABC is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









asked 6 hours ago









XYZABCXYZABC

1111




1111




New contributor




XYZABC is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





New contributor





XYZABC is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






XYZABC is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.







  • 1




    $begingroup$
    mathematica.stackexchange.com/questions/30687/…
    $endgroup$
    – Alrubaie
    5 hours ago










  • $begingroup$
    Possible duplicate of Draw the image of a complex region
    $endgroup$
    – MarcoB
    4 hours ago






  • 1




    $begingroup$
    Do you want to draw the image or do you want a symbolic-algebraic description of the image?
    $endgroup$
    – Michael E2
    3 hours ago






  • 1




    $begingroup$
    People here generally like users to post code as Mathematica code instead of just images or TeX, so they can copy-paste it. It makes it convenient for them and more likely you will get someone to help you. You may find this meta Q&A helpful
    $endgroup$
    – Michael E2
    3 hours ago










  • $begingroup$
    @Michael E2, Great point! I've updated my answer to include the algebraic description as well. Thank you!
    $endgroup$
    – mjw
    2 hours ago












  • 1




    $begingroup$
    mathematica.stackexchange.com/questions/30687/…
    $endgroup$
    – Alrubaie
    5 hours ago










  • $begingroup$
    Possible duplicate of Draw the image of a complex region
    $endgroup$
    – MarcoB
    4 hours ago






  • 1




    $begingroup$
    Do you want to draw the image or do you want a symbolic-algebraic description of the image?
    $endgroup$
    – Michael E2
    3 hours ago






  • 1




    $begingroup$
    People here generally like users to post code as Mathematica code instead of just images or TeX, so they can copy-paste it. It makes it convenient for them and more likely you will get someone to help you. You may find this meta Q&A helpful
    $endgroup$
    – Michael E2
    3 hours ago










  • $begingroup$
    @Michael E2, Great point! I've updated my answer to include the algebraic description as well. Thank you!
    $endgroup$
    – mjw
    2 hours ago







1




1




$begingroup$
mathematica.stackexchange.com/questions/30687/…
$endgroup$
– Alrubaie
5 hours ago




$begingroup$
mathematica.stackexchange.com/questions/30687/…
$endgroup$
– Alrubaie
5 hours ago












$begingroup$
Possible duplicate of Draw the image of a complex region
$endgroup$
– MarcoB
4 hours ago




$begingroup$
Possible duplicate of Draw the image of a complex region
$endgroup$
– MarcoB
4 hours ago




1




1




$begingroup$
Do you want to draw the image or do you want a symbolic-algebraic description of the image?
$endgroup$
– Michael E2
3 hours ago




$begingroup$
Do you want to draw the image or do you want a symbolic-algebraic description of the image?
$endgroup$
– Michael E2
3 hours ago




1




1




$begingroup$
People here generally like users to post code as Mathematica code instead of just images or TeX, so they can copy-paste it. It makes it convenient for them and more likely you will get someone to help you. You may find this meta Q&A helpful
$endgroup$
– Michael E2
3 hours ago




$begingroup$
People here generally like users to post code as Mathematica code instead of just images or TeX, so they can copy-paste it. It makes it convenient for them and more likely you will get someone to help you. You may find this meta Q&A helpful
$endgroup$
– Michael E2
3 hours ago












$begingroup$
@Michael E2, Great point! I've updated my answer to include the algebraic description as well. Thank you!
$endgroup$
– mjw
2 hours ago




$begingroup$
@Michael E2, Great point! I've updated my answer to include the algebraic description as well. Thank you!
$endgroup$
– mjw
2 hours ago










3 Answers
3






active

oldest

votes


















2












$begingroup$

On the boundary of the image the Jacobian will be singular:



Clear[r, s, t];
Block[z1 = Exp[I r], z2 = 2 Exp[I s], z3 = 2 Exp[I t],
expr = ComplexExpand[ReIm[z1 z2^2 + z2 z3 + z1 z3]]
]
(*
4 Cos[r + 2 s] + 2 Cos[r + t] + 4 Cos[s + t],
4 Sin[r + 2 s] + 2 Sin[r + t] + 4 Sin[s + t]
*)

D[expr, r, s, t]; (* Jacobian is 2 x 3 *)
Equal @@ Divide @@ % // Simplify (* It's singular if the rows are proportional *)
sub = r + t -> u, s + t -> v, r + 2 s -> w;
% /. sub // Simplify
(* Solve cannot solve the system, unless we cut it into bite-size pieces *)
solv = Solve[%[[;; 2]], v] /. C[1] -> 0;
%%[[2 ;;]] /. % // Simplify;
solu = Solve[#, u] & /@ %;
(*
-((2 Sin[r + 2 s] + Sin[r + t])/(2 Cos[r + 2 s] + Cos[r + t])) ==
-((2 Sin[r + 2 s] + Sin[s + t])/(2 Cos[r + 2 s] + Cos[s + t])) ==
-((Sin[r + t] + 2 Sin[s + t])/(Cos[r + t] + 2 Cos[s + t]))

-((Sin[u] + 2 Sin[w])/(Cos[u] + 2 Cos[w])) ==
-((Sin[v] + 2 Sin[w])/(Cos[v] + 2 Cos[w])) ==
-((Sin[u] + 2 Sin[v])/(Cos[u] + 2 Cos[v]))
*)

(* fix sub so that it works on a general expression *)
invsub = First@ Solve[Equal @@@ sub, u, v, w];
sub = First@ Solve[Equal @@@ invsub, r, s, t];
(* some u solutions are complex *)
realu = List /@ Cases[Flatten@solu, _?(FreeQ[#, Complex] &)];

boundaries = PiecewiseExpand /@
Simplify[
TrigExpand@Simplify[Simplify[expr /. sub] /. solv] /. realu //
Flatten[#, 1] &, 0 <= w < 2 Pi];

ParametricPlot[boundaries // Evaluate, w, 0, 2 Pi]


enter image description here



Well, it's only a start, since you have to check in the interior boundaries to see whether they might be holes. But @HenrikSchumacher has done that already.






share|improve this answer









$endgroup$












  • $begingroup$
    Amazing idea to look for critical points of the Jacobian. Good job!
    $endgroup$
    – Henrik Schumacher
    1 hour ago



















1












$begingroup$

By letting $z_1,z_2,z_3$ trace out circles, we can see some beautiful curves that live within that blob!



 p[z1_, z2_, z3_] := z1 z2^2 + z2 z3 + z1 z3;
q[t_][a1_, a2_, b1_, b2_, c1_, c2_] :=
p[Exp[ I (a1 t + a2)], 2 Exp[ I (b1 t + b2)], 2 Exp[ I (c1 t + c2)]];
Manipulate[
ParametricPlot[Re[q[ t][a1, a2, b1, b2, c1, c2]],
Im[q[ t][a1, a2, b1, b2, c1, c2]], t, 0, 2 [Pi],
Axes -> False, Frame -> True, PlotRange -> -12, 12,-12, 12],
a1, -5, 5,a2, 0, 2 [Pi],b1, -5, 5,b2, 0, 2 [Pi],
c1, -5, 5,c2, 0, 2 [Pi]]


enter image description here



Here is a look at the analytical form of these curves:



 Manipulate[
ComplexExpand@ReIm[q[t][a1, a2, b1, b2, c1, c2]],
a1, -5, 5, a2, 0, 2 [Pi], b1, -5, 5, b2, 0, 2 [Pi],
c1, -5, 5, c2, 0, 2 [Pi]]


enter image description here



or



 Manipulate[
FullSimplify[q[t][a1, a2, b1, b2, c1, c2]], a1, -5, 5, a2, 0,
2 [Pi], b1, -5, 5, b2, 0, 2 [Pi], c1, -5, 5, c2, 0, 2 [Pi]]


enter image description here






share|improve this answer











$endgroup$




















    1












    $begingroup$

    Not very elegant, but this might give you a coarse idea.



    z1 = Exp[I r];
    z2 = 2 Exp[I s];
    z3 = 2 Exp[I t];
    expr = ComplexExpand[ReIm[z1 z2^2 + z2 z3 + z1 z3]];
    f = r, s, t [Function] Evaluate[expr];

    R = DiscretizeRegion[Cuboid[-1, -1, -1 Pi, 1, 1, 1 Pi],
    MaxCellMeasure -> 0.0125];
    pts = f @@@ MeshCoordinates[R];
    triangles = MeshCells[R, 2, "Multicells" -> True][[1]];
    Graphics[
    Red, Disk[0, 0, 10],
    FaceForm[Black], EdgeForm[Thin],
    GraphicsComplex[pts, triangles]
    ,
    Axes -> True
    ]


    enter image description here



    Could be the disk of radius 10...






    share|improve this answer











    $endgroup$













      Your Answer





      StackExchange.ifUsing("editor", function ()
      return StackExchange.using("mathjaxEditing", function ()
      StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
      StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
      );
      );
      , "mathjax-editing");

      StackExchange.ready(function()
      var channelOptions =
      tags: "".split(" "),
      id: "387"
      ;
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function()
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled)
      StackExchange.using("snippets", function()
      createEditor();
      );

      else
      createEditor();

      );

      function createEditor()
      StackExchange.prepareEditor(
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: false,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: null,
      bindNavPrevention: true,
      postfix: "",
      imageUploader:
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      ,
      onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      );



      );






      XYZABC is a new contributor. Be nice, and check out our Code of Conduct.









      draft saved

      draft discarded


















      StackExchange.ready(
      function ()
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f194320%2fhow-to-find-image-of-a-complex-function-with-given-constraints%23new-answer', 'question_page');

      );

      Post as a guest















      Required, but never shown

























      3 Answers
      3






      active

      oldest

      votes








      3 Answers
      3






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      2












      $begingroup$

      On the boundary of the image the Jacobian will be singular:



      Clear[r, s, t];
      Block[z1 = Exp[I r], z2 = 2 Exp[I s], z3 = 2 Exp[I t],
      expr = ComplexExpand[ReIm[z1 z2^2 + z2 z3 + z1 z3]]
      ]
      (*
      4 Cos[r + 2 s] + 2 Cos[r + t] + 4 Cos[s + t],
      4 Sin[r + 2 s] + 2 Sin[r + t] + 4 Sin[s + t]
      *)

      D[expr, r, s, t]; (* Jacobian is 2 x 3 *)
      Equal @@ Divide @@ % // Simplify (* It's singular if the rows are proportional *)
      sub = r + t -> u, s + t -> v, r + 2 s -> w;
      % /. sub // Simplify
      (* Solve cannot solve the system, unless we cut it into bite-size pieces *)
      solv = Solve[%[[;; 2]], v] /. C[1] -> 0;
      %%[[2 ;;]] /. % // Simplify;
      solu = Solve[#, u] & /@ %;
      (*
      -((2 Sin[r + 2 s] + Sin[r + t])/(2 Cos[r + 2 s] + Cos[r + t])) ==
      -((2 Sin[r + 2 s] + Sin[s + t])/(2 Cos[r + 2 s] + Cos[s + t])) ==
      -((Sin[r + t] + 2 Sin[s + t])/(Cos[r + t] + 2 Cos[s + t]))

      -((Sin[u] + 2 Sin[w])/(Cos[u] + 2 Cos[w])) ==
      -((Sin[v] + 2 Sin[w])/(Cos[v] + 2 Cos[w])) ==
      -((Sin[u] + 2 Sin[v])/(Cos[u] + 2 Cos[v]))
      *)

      (* fix sub so that it works on a general expression *)
      invsub = First@ Solve[Equal @@@ sub, u, v, w];
      sub = First@ Solve[Equal @@@ invsub, r, s, t];
      (* some u solutions are complex *)
      realu = List /@ Cases[Flatten@solu, _?(FreeQ[#, Complex] &)];

      boundaries = PiecewiseExpand /@
      Simplify[
      TrigExpand@Simplify[Simplify[expr /. sub] /. solv] /. realu //
      Flatten[#, 1] &, 0 <= w < 2 Pi];

      ParametricPlot[boundaries // Evaluate, w, 0, 2 Pi]


      enter image description here



      Well, it's only a start, since you have to check in the interior boundaries to see whether they might be holes. But @HenrikSchumacher has done that already.






      share|improve this answer









      $endgroup$












      • $begingroup$
        Amazing idea to look for critical points of the Jacobian. Good job!
        $endgroup$
        – Henrik Schumacher
        1 hour ago
















      2












      $begingroup$

      On the boundary of the image the Jacobian will be singular:



      Clear[r, s, t];
      Block[z1 = Exp[I r], z2 = 2 Exp[I s], z3 = 2 Exp[I t],
      expr = ComplexExpand[ReIm[z1 z2^2 + z2 z3 + z1 z3]]
      ]
      (*
      4 Cos[r + 2 s] + 2 Cos[r + t] + 4 Cos[s + t],
      4 Sin[r + 2 s] + 2 Sin[r + t] + 4 Sin[s + t]
      *)

      D[expr, r, s, t]; (* Jacobian is 2 x 3 *)
      Equal @@ Divide @@ % // Simplify (* It's singular if the rows are proportional *)
      sub = r + t -> u, s + t -> v, r + 2 s -> w;
      % /. sub // Simplify
      (* Solve cannot solve the system, unless we cut it into bite-size pieces *)
      solv = Solve[%[[;; 2]], v] /. C[1] -> 0;
      %%[[2 ;;]] /. % // Simplify;
      solu = Solve[#, u] & /@ %;
      (*
      -((2 Sin[r + 2 s] + Sin[r + t])/(2 Cos[r + 2 s] + Cos[r + t])) ==
      -((2 Sin[r + 2 s] + Sin[s + t])/(2 Cos[r + 2 s] + Cos[s + t])) ==
      -((Sin[r + t] + 2 Sin[s + t])/(Cos[r + t] + 2 Cos[s + t]))

      -((Sin[u] + 2 Sin[w])/(Cos[u] + 2 Cos[w])) ==
      -((Sin[v] + 2 Sin[w])/(Cos[v] + 2 Cos[w])) ==
      -((Sin[u] + 2 Sin[v])/(Cos[u] + 2 Cos[v]))
      *)

      (* fix sub so that it works on a general expression *)
      invsub = First@ Solve[Equal @@@ sub, u, v, w];
      sub = First@ Solve[Equal @@@ invsub, r, s, t];
      (* some u solutions are complex *)
      realu = List /@ Cases[Flatten@solu, _?(FreeQ[#, Complex] &)];

      boundaries = PiecewiseExpand /@
      Simplify[
      TrigExpand@Simplify[Simplify[expr /. sub] /. solv] /. realu //
      Flatten[#, 1] &, 0 <= w < 2 Pi];

      ParametricPlot[boundaries // Evaluate, w, 0, 2 Pi]


      enter image description here



      Well, it's only a start, since you have to check in the interior boundaries to see whether they might be holes. But @HenrikSchumacher has done that already.






      share|improve this answer









      $endgroup$












      • $begingroup$
        Amazing idea to look for critical points of the Jacobian. Good job!
        $endgroup$
        – Henrik Schumacher
        1 hour ago














      2












      2








      2





      $begingroup$

      On the boundary of the image the Jacobian will be singular:



      Clear[r, s, t];
      Block[z1 = Exp[I r], z2 = 2 Exp[I s], z3 = 2 Exp[I t],
      expr = ComplexExpand[ReIm[z1 z2^2 + z2 z3 + z1 z3]]
      ]
      (*
      4 Cos[r + 2 s] + 2 Cos[r + t] + 4 Cos[s + t],
      4 Sin[r + 2 s] + 2 Sin[r + t] + 4 Sin[s + t]
      *)

      D[expr, r, s, t]; (* Jacobian is 2 x 3 *)
      Equal @@ Divide @@ % // Simplify (* It's singular if the rows are proportional *)
      sub = r + t -> u, s + t -> v, r + 2 s -> w;
      % /. sub // Simplify
      (* Solve cannot solve the system, unless we cut it into bite-size pieces *)
      solv = Solve[%[[;; 2]], v] /. C[1] -> 0;
      %%[[2 ;;]] /. % // Simplify;
      solu = Solve[#, u] & /@ %;
      (*
      -((2 Sin[r + 2 s] + Sin[r + t])/(2 Cos[r + 2 s] + Cos[r + t])) ==
      -((2 Sin[r + 2 s] + Sin[s + t])/(2 Cos[r + 2 s] + Cos[s + t])) ==
      -((Sin[r + t] + 2 Sin[s + t])/(Cos[r + t] + 2 Cos[s + t]))

      -((Sin[u] + 2 Sin[w])/(Cos[u] + 2 Cos[w])) ==
      -((Sin[v] + 2 Sin[w])/(Cos[v] + 2 Cos[w])) ==
      -((Sin[u] + 2 Sin[v])/(Cos[u] + 2 Cos[v]))
      *)

      (* fix sub so that it works on a general expression *)
      invsub = First@ Solve[Equal @@@ sub, u, v, w];
      sub = First@ Solve[Equal @@@ invsub, r, s, t];
      (* some u solutions are complex *)
      realu = List /@ Cases[Flatten@solu, _?(FreeQ[#, Complex] &)];

      boundaries = PiecewiseExpand /@
      Simplify[
      TrigExpand@Simplify[Simplify[expr /. sub] /. solv] /. realu //
      Flatten[#, 1] &, 0 <= w < 2 Pi];

      ParametricPlot[boundaries // Evaluate, w, 0, 2 Pi]


      enter image description here



      Well, it's only a start, since you have to check in the interior boundaries to see whether they might be holes. But @HenrikSchumacher has done that already.






      share|improve this answer









      $endgroup$



      On the boundary of the image the Jacobian will be singular:



      Clear[r, s, t];
      Block[z1 = Exp[I r], z2 = 2 Exp[I s], z3 = 2 Exp[I t],
      expr = ComplexExpand[ReIm[z1 z2^2 + z2 z3 + z1 z3]]
      ]
      (*
      4 Cos[r + 2 s] + 2 Cos[r + t] + 4 Cos[s + t],
      4 Sin[r + 2 s] + 2 Sin[r + t] + 4 Sin[s + t]
      *)

      D[expr, r, s, t]; (* Jacobian is 2 x 3 *)
      Equal @@ Divide @@ % // Simplify (* It's singular if the rows are proportional *)
      sub = r + t -> u, s + t -> v, r + 2 s -> w;
      % /. sub // Simplify
      (* Solve cannot solve the system, unless we cut it into bite-size pieces *)
      solv = Solve[%[[;; 2]], v] /. C[1] -> 0;
      %%[[2 ;;]] /. % // Simplify;
      solu = Solve[#, u] & /@ %;
      (*
      -((2 Sin[r + 2 s] + Sin[r + t])/(2 Cos[r + 2 s] + Cos[r + t])) ==
      -((2 Sin[r + 2 s] + Sin[s + t])/(2 Cos[r + 2 s] + Cos[s + t])) ==
      -((Sin[r + t] + 2 Sin[s + t])/(Cos[r + t] + 2 Cos[s + t]))

      -((Sin[u] + 2 Sin[w])/(Cos[u] + 2 Cos[w])) ==
      -((Sin[v] + 2 Sin[w])/(Cos[v] + 2 Cos[w])) ==
      -((Sin[u] + 2 Sin[v])/(Cos[u] + 2 Cos[v]))
      *)

      (* fix sub so that it works on a general expression *)
      invsub = First@ Solve[Equal @@@ sub, u, v, w];
      sub = First@ Solve[Equal @@@ invsub, r, s, t];
      (* some u solutions are complex *)
      realu = List /@ Cases[Flatten@solu, _?(FreeQ[#, Complex] &)];

      boundaries = PiecewiseExpand /@
      Simplify[
      TrigExpand@Simplify[Simplify[expr /. sub] /. solv] /. realu //
      Flatten[#, 1] &, 0 <= w < 2 Pi];

      ParametricPlot[boundaries // Evaluate, w, 0, 2 Pi]


      enter image description here



      Well, it's only a start, since you have to check in the interior boundaries to see whether they might be holes. But @HenrikSchumacher has done that already.







      share|improve this answer












      share|improve this answer



      share|improve this answer










      answered 1 hour ago









      Michael E2Michael E2

      150k12203482




      150k12203482











      • $begingroup$
        Amazing idea to look for critical points of the Jacobian. Good job!
        $endgroup$
        – Henrik Schumacher
        1 hour ago

















      • $begingroup$
        Amazing idea to look for critical points of the Jacobian. Good job!
        $endgroup$
        – Henrik Schumacher
        1 hour ago
















      $begingroup$
      Amazing idea to look for critical points of the Jacobian. Good job!
      $endgroup$
      – Henrik Schumacher
      1 hour ago





      $begingroup$
      Amazing idea to look for critical points of the Jacobian. Good job!
      $endgroup$
      – Henrik Schumacher
      1 hour ago












      1












      $begingroup$

      By letting $z_1,z_2,z_3$ trace out circles, we can see some beautiful curves that live within that blob!



       p[z1_, z2_, z3_] := z1 z2^2 + z2 z3 + z1 z3;
      q[t_][a1_, a2_, b1_, b2_, c1_, c2_] :=
      p[Exp[ I (a1 t + a2)], 2 Exp[ I (b1 t + b2)], 2 Exp[ I (c1 t + c2)]];
      Manipulate[
      ParametricPlot[Re[q[ t][a1, a2, b1, b2, c1, c2]],
      Im[q[ t][a1, a2, b1, b2, c1, c2]], t, 0, 2 [Pi],
      Axes -> False, Frame -> True, PlotRange -> -12, 12,-12, 12],
      a1, -5, 5,a2, 0, 2 [Pi],b1, -5, 5,b2, 0, 2 [Pi],
      c1, -5, 5,c2, 0, 2 [Pi]]


      enter image description here



      Here is a look at the analytical form of these curves:



       Manipulate[
      ComplexExpand@ReIm[q[t][a1, a2, b1, b2, c1, c2]],
      a1, -5, 5, a2, 0, 2 [Pi], b1, -5, 5, b2, 0, 2 [Pi],
      c1, -5, 5, c2, 0, 2 [Pi]]


      enter image description here



      or



       Manipulate[
      FullSimplify[q[t][a1, a2, b1, b2, c1, c2]], a1, -5, 5, a2, 0,
      2 [Pi], b1, -5, 5, b2, 0, 2 [Pi], c1, -5, 5, c2, 0, 2 [Pi]]


      enter image description here






      share|improve this answer











      $endgroup$

















        1












        $begingroup$

        By letting $z_1,z_2,z_3$ trace out circles, we can see some beautiful curves that live within that blob!



         p[z1_, z2_, z3_] := z1 z2^2 + z2 z3 + z1 z3;
        q[t_][a1_, a2_, b1_, b2_, c1_, c2_] :=
        p[Exp[ I (a1 t + a2)], 2 Exp[ I (b1 t + b2)], 2 Exp[ I (c1 t + c2)]];
        Manipulate[
        ParametricPlot[Re[q[ t][a1, a2, b1, b2, c1, c2]],
        Im[q[ t][a1, a2, b1, b2, c1, c2]], t, 0, 2 [Pi],
        Axes -> False, Frame -> True, PlotRange -> -12, 12,-12, 12],
        a1, -5, 5,a2, 0, 2 [Pi],b1, -5, 5,b2, 0, 2 [Pi],
        c1, -5, 5,c2, 0, 2 [Pi]]


        enter image description here



        Here is a look at the analytical form of these curves:



         Manipulate[
        ComplexExpand@ReIm[q[t][a1, a2, b1, b2, c1, c2]],
        a1, -5, 5, a2, 0, 2 [Pi], b1, -5, 5, b2, 0, 2 [Pi],
        c1, -5, 5, c2, 0, 2 [Pi]]


        enter image description here



        or



         Manipulate[
        FullSimplify[q[t][a1, a2, b1, b2, c1, c2]], a1, -5, 5, a2, 0,
        2 [Pi], b1, -5, 5, b2, 0, 2 [Pi], c1, -5, 5, c2, 0, 2 [Pi]]


        enter image description here






        share|improve this answer











        $endgroup$















          1












          1








          1





          $begingroup$

          By letting $z_1,z_2,z_3$ trace out circles, we can see some beautiful curves that live within that blob!



           p[z1_, z2_, z3_] := z1 z2^2 + z2 z3 + z1 z3;
          q[t_][a1_, a2_, b1_, b2_, c1_, c2_] :=
          p[Exp[ I (a1 t + a2)], 2 Exp[ I (b1 t + b2)], 2 Exp[ I (c1 t + c2)]];
          Manipulate[
          ParametricPlot[Re[q[ t][a1, a2, b1, b2, c1, c2]],
          Im[q[ t][a1, a2, b1, b2, c1, c2]], t, 0, 2 [Pi],
          Axes -> False, Frame -> True, PlotRange -> -12, 12,-12, 12],
          a1, -5, 5,a2, 0, 2 [Pi],b1, -5, 5,b2, 0, 2 [Pi],
          c1, -5, 5,c2, 0, 2 [Pi]]


          enter image description here



          Here is a look at the analytical form of these curves:



           Manipulate[
          ComplexExpand@ReIm[q[t][a1, a2, b1, b2, c1, c2]],
          a1, -5, 5, a2, 0, 2 [Pi], b1, -5, 5, b2, 0, 2 [Pi],
          c1, -5, 5, c2, 0, 2 [Pi]]


          enter image description here



          or



           Manipulate[
          FullSimplify[q[t][a1, a2, b1, b2, c1, c2]], a1, -5, 5, a2, 0,
          2 [Pi], b1, -5, 5, b2, 0, 2 [Pi], c1, -5, 5, c2, 0, 2 [Pi]]


          enter image description here






          share|improve this answer











          $endgroup$



          By letting $z_1,z_2,z_3$ trace out circles, we can see some beautiful curves that live within that blob!



           p[z1_, z2_, z3_] := z1 z2^2 + z2 z3 + z1 z3;
          q[t_][a1_, a2_, b1_, b2_, c1_, c2_] :=
          p[Exp[ I (a1 t + a2)], 2 Exp[ I (b1 t + b2)], 2 Exp[ I (c1 t + c2)]];
          Manipulate[
          ParametricPlot[Re[q[ t][a1, a2, b1, b2, c1, c2]],
          Im[q[ t][a1, a2, b1, b2, c1, c2]], t, 0, 2 [Pi],
          Axes -> False, Frame -> True, PlotRange -> -12, 12,-12, 12],
          a1, -5, 5,a2, 0, 2 [Pi],b1, -5, 5,b2, 0, 2 [Pi],
          c1, -5, 5,c2, 0, 2 [Pi]]


          enter image description here



          Here is a look at the analytical form of these curves:



           Manipulate[
          ComplexExpand@ReIm[q[t][a1, a2, b1, b2, c1, c2]],
          a1, -5, 5, a2, 0, 2 [Pi], b1, -5, 5, b2, 0, 2 [Pi],
          c1, -5, 5, c2, 0, 2 [Pi]]


          enter image description here



          or



           Manipulate[
          FullSimplify[q[t][a1, a2, b1, b2, c1, c2]], a1, -5, 5, a2, 0,
          2 [Pi], b1, -5, 5, b2, 0, 2 [Pi], c1, -5, 5, c2, 0, 2 [Pi]]


          enter image description here







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited 1 hour ago

























          answered 1 hour ago









          mjwmjw

          1,19810




          1,19810





















              1












              $begingroup$

              Not very elegant, but this might give you a coarse idea.



              z1 = Exp[I r];
              z2 = 2 Exp[I s];
              z3 = 2 Exp[I t];
              expr = ComplexExpand[ReIm[z1 z2^2 + z2 z3 + z1 z3]];
              f = r, s, t [Function] Evaluate[expr];

              R = DiscretizeRegion[Cuboid[-1, -1, -1 Pi, 1, 1, 1 Pi],
              MaxCellMeasure -> 0.0125];
              pts = f @@@ MeshCoordinates[R];
              triangles = MeshCells[R, 2, "Multicells" -> True][[1]];
              Graphics[
              Red, Disk[0, 0, 10],
              FaceForm[Black], EdgeForm[Thin],
              GraphicsComplex[pts, triangles]
              ,
              Axes -> True
              ]


              enter image description here



              Could be the disk of radius 10...






              share|improve this answer











              $endgroup$

















                1












                $begingroup$

                Not very elegant, but this might give you a coarse idea.



                z1 = Exp[I r];
                z2 = 2 Exp[I s];
                z3 = 2 Exp[I t];
                expr = ComplexExpand[ReIm[z1 z2^2 + z2 z3 + z1 z3]];
                f = r, s, t [Function] Evaluate[expr];

                R = DiscretizeRegion[Cuboid[-1, -1, -1 Pi, 1, 1, 1 Pi],
                MaxCellMeasure -> 0.0125];
                pts = f @@@ MeshCoordinates[R];
                triangles = MeshCells[R, 2, "Multicells" -> True][[1]];
                Graphics[
                Red, Disk[0, 0, 10],
                FaceForm[Black], EdgeForm[Thin],
                GraphicsComplex[pts, triangles]
                ,
                Axes -> True
                ]


                enter image description here



                Could be the disk of radius 10...






                share|improve this answer











                $endgroup$















                  1












                  1








                  1





                  $begingroup$

                  Not very elegant, but this might give you a coarse idea.



                  z1 = Exp[I r];
                  z2 = 2 Exp[I s];
                  z3 = 2 Exp[I t];
                  expr = ComplexExpand[ReIm[z1 z2^2 + z2 z3 + z1 z3]];
                  f = r, s, t [Function] Evaluate[expr];

                  R = DiscretizeRegion[Cuboid[-1, -1, -1 Pi, 1, 1, 1 Pi],
                  MaxCellMeasure -> 0.0125];
                  pts = f @@@ MeshCoordinates[R];
                  triangles = MeshCells[R, 2, "Multicells" -> True][[1]];
                  Graphics[
                  Red, Disk[0, 0, 10],
                  FaceForm[Black], EdgeForm[Thin],
                  GraphicsComplex[pts, triangles]
                  ,
                  Axes -> True
                  ]


                  enter image description here



                  Could be the disk of radius 10...






                  share|improve this answer











                  $endgroup$



                  Not very elegant, but this might give you a coarse idea.



                  z1 = Exp[I r];
                  z2 = 2 Exp[I s];
                  z3 = 2 Exp[I t];
                  expr = ComplexExpand[ReIm[z1 z2^2 + z2 z3 + z1 z3]];
                  f = r, s, t [Function] Evaluate[expr];

                  R = DiscretizeRegion[Cuboid[-1, -1, -1 Pi, 1, 1, 1 Pi],
                  MaxCellMeasure -> 0.0125];
                  pts = f @@@ MeshCoordinates[R];
                  triangles = MeshCells[R, 2, "Multicells" -> True][[1]];
                  Graphics[
                  Red, Disk[0, 0, 10],
                  FaceForm[Black], EdgeForm[Thin],
                  GraphicsComplex[pts, triangles]
                  ,
                  Axes -> True
                  ]


                  enter image description here



                  Could be the disk of radius 10...







                  share|improve this answer














                  share|improve this answer



                  share|improve this answer








                  edited 1 hour ago

























                  answered 2 hours ago









                  Henrik SchumacherHenrik Schumacher

                  58.6k581162




                  58.6k581162




















                      XYZABC is a new contributor. Be nice, and check out our Code of Conduct.









                      draft saved

                      draft discarded


















                      XYZABC is a new contributor. Be nice, and check out our Code of Conduct.












                      XYZABC is a new contributor. Be nice, and check out our Code of Conduct.











                      XYZABC is a new contributor. Be nice, and check out our Code of Conduct.














                      Thanks for contributing an answer to Mathematica Stack Exchange!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid


                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.

                      Use MathJax to format equations. MathJax reference.


                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function ()
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f194320%2fhow-to-find-image-of-a-complex-function-with-given-constraints%23new-answer', 'question_page');

                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown







                      Popular posts from this blog

                      Best approach to update all entries in a list that is paginated?Best way to add items to a paginated listChoose Your Country: Best Usability approachUpdate list when a user is viewing the list without annoying themWhen would the best day to update your webpage be?What should happen when I add a Row to a paginated, sorted listShould I adopt infinite scrolling or classical pagination?How to show user that page objects automatically updateWhat is the best location to locate the comments section in a list pageBest way to combine filtering and selecting items in a listWhen one of two inputs must be updated to satisfy a consistency criteria, which should you update (if at all)?

                      Вунгтау (аеропорт) Загальні відомості | Див. також | Посилання | Навігаційне меню10°22′00″ пн. ш. 107°05′00″ сх. д. / 10.36667° пн. ш. 107.08333° сх. д. / 10.36667; 107.0833310°22′00″ пн. ш. 107°05′00″ сх. д. / 10.36667° пн. ш. 107.08333° сх. д. / 10.36667; 107.083337731608Vinh AirportVinh airport facelift improves serviceвиправивши або дописавши їївиправивши або дописавши їїр

                      Тонконіг бульбистий Зміст Опис | Поширення | Екологія | Господарське значення | Примітки | Див. також | Література | Джерела | Посилання | Навігаційне меню1114601320038-241116202404kew-435458Poa bulbosaЭлектронный каталог сосудистых растений Азиатской России [Електронний каталог судинних рослин Азіатської Росії]Малышев Л. Л. Дикие родичи культурных растений. Poa bulbosa L. - Мятлик луковичный. [Малишев Л. Л. Дикі родичи культурних рослин. Poa bulbosa L. - Тонконіг бульбистий.]Мятлик (POA) Сем. Злаки (Мятликовые) [Тонконіг (POA) Род. Злаки (Тонконогові)]Poa bulbosa Linnaeus, Sp. Pl. 1: 70. 1753. 鳞茎早熟禾 lin jing zao shu he (Description from Flora of China) [Poa bulbosa Linnaeus, Sp. Pl. 1: 70. 1753. 鳞茎早熟禾 lin jing zao shu he (Опис від Флора Китаю)]Poa bulbosa L. – lipnice cibulkatá / lipnica cibulkatáPoa bulbosa в базі даних Poa bulbosa на сайті Poa bulbosa в базі даних «Global Biodiversity Information Facility» (GBIF)Poa bulbosa в базі даних «Euro + Med PlantBase» — інформаційному ресурсі для Євро-середземноморського розмаїття рослинPoa bulbosa L. на сайті «Плантариум»