How to find image of a complex function with given constraints? The Next CEO of Stack...

Calculate the Mean mean of two numbers

What is the difference between "hamstring tendon" and "common hamstring tendon"?

Why is information "lost" when it got into a black hole?

How to set page number in right side in chapter title page?

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

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

Prepend last line of stdin to entire stdin

Why is the US ranked as #45 in Press Freedom ratings, despite its extremely permissive free speech laws?

How many extra stops do monopods offer for tele photographs?

(How) Could a medieval fantasy world survive a magic-induced "nuclear winter"?

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

Is dried pee considered dirt?

Can Sneak Attack be used when hitting with an improvised weapon?

How to Implement Deterministic Encryption Safely in .NET

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

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

How to use ReplaceAll on an expression that contains a rule

What was the first Unix version to run on a microcomputer?

Can I board the first leg of the flight without having final country's visa?

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

How to properly draw diagonal line while using multicolumn inside tabular environment?

Help! I cannot understand this game’s notations!

If Nick Fury and Coulson already knew about aliens (Kree and Skrull) why did they wait until Thor's appearance to start making weapons?

How did Beeri the Hittite come up with naming his daughter Yehudit?



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

                      IEEEtran - How to include ORCID in TeX/PDF with PdfLatexIs there a standard way to include ORCID in TeX /...

                      Cicindela nigrior Przypisy | Menu nawigacyjneCicindela varians unicolorManual for the Identification of the...

                      Glossaries-extra: Adding glossaries package to “Clas­sicTh­e­sis” template by Dr. André Miede v. 4.6 ...