Evaluating number of iteration with a certain map with While The 2019 Stack Overflow Developer Survey Results Are InWhy should I avoid the For loop in Mathematica?Out of memory in a Do loopRepeating Calculations/Iterations without a specific functionWhile loop with changing variable , NDSolve and an IntegralUsing Map function with NDSolveHow do I repeat the number of times a nested for loop does an iteration?

Is flight data recorder erased after every flight?

What do the Banks children have against barley water?

How would photo IDs work for shapeshifters?

Does light intensity oscillate really fast since it is a wave?

Why the maximum length of openwrt’s root password is 8?

Why Did Howard Stark Use All The Vibranium They Had On A Prototype Shield?

Manuscript was "unsubmitted" because the manuscript was deposited in Arxiv Preprints

How to deal with fear of taking dependencies

Extreme, but not acceptable situation and I can't start the work tomorrow morning

get_users(...) only returns one user

What is the steepest angle that a canal can be traversable without locks?

Fractional alignment

If you're not a professional, what motivates you to keep writing?

Information to fellow intern about hiring?

What are the motivations for publishing new editions of an existing textbook, beyond new discoveries in a field?

Is it possible for the two major parties in the UK to form a coalition with each other instead of a much smaller party?

Can't find the latex code for the ⍎ (down tack jot) symbol

Why isn't airport relocation done gradually?

In What Way Would Cryomancy Affect the Food Eaten by Medieval People?

Re-submission of rejected manuscript without informing co-authors

Access elements in std::string where positon of string is greater than its size

Evaluating number of iteration with a certain map with While

Inline version of a function returns different value then non-inline version

What could be the right powersource for 15 seconds lifespan disposable giant chainsaw?



Evaluating number of iteration with a certain map with While



The 2019 Stack Overflow Developer Survey Results Are InWhy should I avoid the For loop in Mathematica?Out of memory in a Do loopRepeating Calculations/Iterations without a specific functionWhile loop with changing variable , NDSolve and an IntegralUsing Map function with NDSolveHow do I repeat the number of times a nested for loop does an iteration?










1












$begingroup$


Beeing used to programming in C-like languages I am struggling with iterations and loops with mathematica. I am trying not to use the For command, as already lots of people recommended.



I am trying to solve the following problem:



Given the map $z_i+1= z_i^2 +c$ with $z_i, c in mathbbC$ and $z_0 = 0$ evaluate the contours that represents given the parameter $c$ the number of iterations $i$ that I have to perform in order to have $|z_i|> 2$. Perform the computation with $-0.6 leq Re(z_i)leq -0.4 $ and $0.6 leq Im(z_i)leq 0.4$ and 100 points per axis.



Given the condition I though I could use a While Loop to perform the task



i=0; (*init counter*)
z[i]=0; (*init z[i]*)
g[c_]:= While[
Abs[z[i]]<= 2, (*condition*)
z[i+1]= z[i]^2 +c; (*process*)
i++; (*increment*)
]
Print[i]
g[0.2 + 0.2 I]


This computation with the input, say, $(-0.2 +0.2 i)$ (and with many others) takes all the memory of the machine I am using (Wolfram online). I don't understand whether I am just missing something or the amount of computation I can perform on the server just isn't enough (which seems really unlikely)



Furthermore I would like the function to return an integer (i - the number of iterations) but I really struggle with how to correctly use the synthax of Mathematica to do that.



Thanks in advance to everyone who is so keen to stop by and help :)










share|improve this question







New contributor




JacquesLeen 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$


    Beeing used to programming in C-like languages I am struggling with iterations and loops with mathematica. I am trying not to use the For command, as already lots of people recommended.



    I am trying to solve the following problem:



    Given the map $z_i+1= z_i^2 +c$ with $z_i, c in mathbbC$ and $z_0 = 0$ evaluate the contours that represents given the parameter $c$ the number of iterations $i$ that I have to perform in order to have $|z_i|> 2$. Perform the computation with $-0.6 leq Re(z_i)leq -0.4 $ and $0.6 leq Im(z_i)leq 0.4$ and 100 points per axis.



    Given the condition I though I could use a While Loop to perform the task



    i=0; (*init counter*)
    z[i]=0; (*init z[i]*)
    g[c_]:= While[
    Abs[z[i]]<= 2, (*condition*)
    z[i+1]= z[i]^2 +c; (*process*)
    i++; (*increment*)
    ]
    Print[i]
    g[0.2 + 0.2 I]


    This computation with the input, say, $(-0.2 +0.2 i)$ (and with many others) takes all the memory of the machine I am using (Wolfram online). I don't understand whether I am just missing something or the amount of computation I can perform on the server just isn't enough (which seems really unlikely)



    Furthermore I would like the function to return an integer (i - the number of iterations) but I really struggle with how to correctly use the synthax of Mathematica to do that.



    Thanks in advance to everyone who is so keen to stop by and help :)










    share|improve this question







    New contributor




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







    $endgroup$














      1












      1








      1





      $begingroup$


      Beeing used to programming in C-like languages I am struggling with iterations and loops with mathematica. I am trying not to use the For command, as already lots of people recommended.



      I am trying to solve the following problem:



      Given the map $z_i+1= z_i^2 +c$ with $z_i, c in mathbbC$ and $z_0 = 0$ evaluate the contours that represents given the parameter $c$ the number of iterations $i$ that I have to perform in order to have $|z_i|> 2$. Perform the computation with $-0.6 leq Re(z_i)leq -0.4 $ and $0.6 leq Im(z_i)leq 0.4$ and 100 points per axis.



      Given the condition I though I could use a While Loop to perform the task



      i=0; (*init counter*)
      z[i]=0; (*init z[i]*)
      g[c_]:= While[
      Abs[z[i]]<= 2, (*condition*)
      z[i+1]= z[i]^2 +c; (*process*)
      i++; (*increment*)
      ]
      Print[i]
      g[0.2 + 0.2 I]


      This computation with the input, say, $(-0.2 +0.2 i)$ (and with many others) takes all the memory of the machine I am using (Wolfram online). I don't understand whether I am just missing something or the amount of computation I can perform on the server just isn't enough (which seems really unlikely)



      Furthermore I would like the function to return an integer (i - the number of iterations) but I really struggle with how to correctly use the synthax of Mathematica to do that.



      Thanks in advance to everyone who is so keen to stop by and help :)










      share|improve this question







      New contributor




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







      $endgroup$




      Beeing used to programming in C-like languages I am struggling with iterations and loops with mathematica. I am trying not to use the For command, as already lots of people recommended.



      I am trying to solve the following problem:



      Given the map $z_i+1= z_i^2 +c$ with $z_i, c in mathbbC$ and $z_0 = 0$ evaluate the contours that represents given the parameter $c$ the number of iterations $i$ that I have to perform in order to have $|z_i|> 2$. Perform the computation with $-0.6 leq Re(z_i)leq -0.4 $ and $0.6 leq Im(z_i)leq 0.4$ and 100 points per axis.



      Given the condition I though I could use a While Loop to perform the task



      i=0; (*init counter*)
      z[i]=0; (*init z[i]*)
      g[c_]:= While[
      Abs[z[i]]<= 2, (*condition*)
      z[i+1]= z[i]^2 +c; (*process*)
      i++; (*increment*)
      ]
      Print[i]
      g[0.2 + 0.2 I]


      This computation with the input, say, $(-0.2 +0.2 i)$ (and with many others) takes all the memory of the machine I am using (Wolfram online). I don't understand whether I am just missing something or the amount of computation I can perform on the server just isn't enough (which seems really unlikely)



      Furthermore I would like the function to return an integer (i - the number of iterations) but I really struggle with how to correctly use the synthax of Mathematica to do that.



      Thanks in advance to everyone who is so keen to stop by and help :)







      procedural-programming






      share|improve this question







      New contributor




      JacquesLeen 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




      JacquesLeen 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






      New contributor




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









      asked 1 hour ago









      JacquesLeenJacquesLeen

      253




      253




      New contributor




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





      New contributor





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






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




















          3 Answers
          3






          active

          oldest

          votes


















          4












          $begingroup$

          The problem with your code is that for some values of c, Abs[z] will never become larger than 2. You need to cap the number of iterations.




          For this type of iteration, the typical function to use is Nest and related functions.



          countIter[c_] := 
          Length@NestWhileList[
          #^2 + c &,
          0.0,
          Abs[#] <= 2 &,
          1,
          100 (* limit number of iterations to 100 *)
          ]

          result =
          Table[
          countIter[re + im I],
          re, -0.6, -0.4, 0.2/100,
          im, 0.4, 0.6, 0.2/100
          ];

          ArrayPlot[result, ColorFunction -> "Rainbow"]


          enter image description here




          However, this type of problem is quite amenable to compilation with Compile. When using Compile, the usual advice does not apply: a procedural style is still the best. (This does not mean that For is good, I'd still argue against that. But there are many other procedural constructs such as Do and While).



          countIterCompiled = Compile[c, _Complex,
          Block[z = 0.0 + 0.0 I, i = 0,
          While[i <= 100 && Abs[z] <= 2,
          z = z^2 + c;
          i++
          ];
          i
          ]
          ]


          Using countIterCompiled will be much faster than countIter.






          share|improve this answer











          $endgroup$












          • $begingroup$
            thank u very much for the suggestion... I previously had a similar idea using Module instead of Block, and the problem was that the exercise did not specify that for many values the map was converging so I had to cap the number of iterations.
            $endgroup$
            – JacquesLeen
            43 mins ago










          • $begingroup$
            @JacquesLeen Maybe that was part of the exercise: will you discover it on your own? Inside Compile, Module and Block are the same, I think. (Not outside of it.)
            $endgroup$
            – Szabolcs
            16 mins ago


















          1












          $begingroup$

          For iterated function systems like this, Nest and relatives are the preferred tools. Just exploring your (rather famous) map:



          f[z_, c_] := z^2 + c
          Abs[NestList[f[#, 0.2 + 0.2 I] &, 0, 30]]
          (* 0, 0.282843, 0.344093, 0.351367, 0.327239, 0.304778, 0.303605,
          0.311545, 0.316158, 0.315818, 0.313773, 0.312729, 0.31295, 0.313482,
          0.313697, 0.313611, 0.313477, 0.313435, 0.313464, 0.313497, 0.313504,
          0.313495, 0.313487, 0.313486, 0.313489, 0.313491, 0.313491, 0.31349,
          0.31349, 0.31349, 0.31349 *)


          As you can see, it converges to a value inside your radius. That's why your function doesn't terminate.






          share|improve this answer









          $endgroup$




















            0












            $begingroup$

            You could also use MandelbrotSetPlot to create Szabolcs' graphic:



            MandelbrotSetPlot[-0.6 + 0.4 I, -0.4 + 0.6 I, PlotLegends -> Automatic]


            enter image description here






            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
              );



              );






              JacquesLeen 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%2f194872%2fevaluating-number-of-iteration-with-a-certain-map-with-while%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









              4












              $begingroup$

              The problem with your code is that for some values of c, Abs[z] will never become larger than 2. You need to cap the number of iterations.




              For this type of iteration, the typical function to use is Nest and related functions.



              countIter[c_] := 
              Length@NestWhileList[
              #^2 + c &,
              0.0,
              Abs[#] <= 2 &,
              1,
              100 (* limit number of iterations to 100 *)
              ]

              result =
              Table[
              countIter[re + im I],
              re, -0.6, -0.4, 0.2/100,
              im, 0.4, 0.6, 0.2/100
              ];

              ArrayPlot[result, ColorFunction -> "Rainbow"]


              enter image description here




              However, this type of problem is quite amenable to compilation with Compile. When using Compile, the usual advice does not apply: a procedural style is still the best. (This does not mean that For is good, I'd still argue against that. But there are many other procedural constructs such as Do and While).



              countIterCompiled = Compile[c, _Complex,
              Block[z = 0.0 + 0.0 I, i = 0,
              While[i <= 100 && Abs[z] <= 2,
              z = z^2 + c;
              i++
              ];
              i
              ]
              ]


              Using countIterCompiled will be much faster than countIter.






              share|improve this answer











              $endgroup$












              • $begingroup$
                thank u very much for the suggestion... I previously had a similar idea using Module instead of Block, and the problem was that the exercise did not specify that for many values the map was converging so I had to cap the number of iterations.
                $endgroup$
                – JacquesLeen
                43 mins ago










              • $begingroup$
                @JacquesLeen Maybe that was part of the exercise: will you discover it on your own? Inside Compile, Module and Block are the same, I think. (Not outside of it.)
                $endgroup$
                – Szabolcs
                16 mins ago















              4












              $begingroup$

              The problem with your code is that for some values of c, Abs[z] will never become larger than 2. You need to cap the number of iterations.




              For this type of iteration, the typical function to use is Nest and related functions.



              countIter[c_] := 
              Length@NestWhileList[
              #^2 + c &,
              0.0,
              Abs[#] <= 2 &,
              1,
              100 (* limit number of iterations to 100 *)
              ]

              result =
              Table[
              countIter[re + im I],
              re, -0.6, -0.4, 0.2/100,
              im, 0.4, 0.6, 0.2/100
              ];

              ArrayPlot[result, ColorFunction -> "Rainbow"]


              enter image description here




              However, this type of problem is quite amenable to compilation with Compile. When using Compile, the usual advice does not apply: a procedural style is still the best. (This does not mean that For is good, I'd still argue against that. But there are many other procedural constructs such as Do and While).



              countIterCompiled = Compile[c, _Complex,
              Block[z = 0.0 + 0.0 I, i = 0,
              While[i <= 100 && Abs[z] <= 2,
              z = z^2 + c;
              i++
              ];
              i
              ]
              ]


              Using countIterCompiled will be much faster than countIter.






              share|improve this answer











              $endgroup$












              • $begingroup$
                thank u very much for the suggestion... I previously had a similar idea using Module instead of Block, and the problem was that the exercise did not specify that for many values the map was converging so I had to cap the number of iterations.
                $endgroup$
                – JacquesLeen
                43 mins ago










              • $begingroup$
                @JacquesLeen Maybe that was part of the exercise: will you discover it on your own? Inside Compile, Module and Block are the same, I think. (Not outside of it.)
                $endgroup$
                – Szabolcs
                16 mins ago













              4












              4








              4





              $begingroup$

              The problem with your code is that for some values of c, Abs[z] will never become larger than 2. You need to cap the number of iterations.




              For this type of iteration, the typical function to use is Nest and related functions.



              countIter[c_] := 
              Length@NestWhileList[
              #^2 + c &,
              0.0,
              Abs[#] <= 2 &,
              1,
              100 (* limit number of iterations to 100 *)
              ]

              result =
              Table[
              countIter[re + im I],
              re, -0.6, -0.4, 0.2/100,
              im, 0.4, 0.6, 0.2/100
              ];

              ArrayPlot[result, ColorFunction -> "Rainbow"]


              enter image description here




              However, this type of problem is quite amenable to compilation with Compile. When using Compile, the usual advice does not apply: a procedural style is still the best. (This does not mean that For is good, I'd still argue against that. But there are many other procedural constructs such as Do and While).



              countIterCompiled = Compile[c, _Complex,
              Block[z = 0.0 + 0.0 I, i = 0,
              While[i <= 100 && Abs[z] <= 2,
              z = z^2 + c;
              i++
              ];
              i
              ]
              ]


              Using countIterCompiled will be much faster than countIter.






              share|improve this answer











              $endgroup$



              The problem with your code is that for some values of c, Abs[z] will never become larger than 2. You need to cap the number of iterations.




              For this type of iteration, the typical function to use is Nest and related functions.



              countIter[c_] := 
              Length@NestWhileList[
              #^2 + c &,
              0.0,
              Abs[#] <= 2 &,
              1,
              100 (* limit number of iterations to 100 *)
              ]

              result =
              Table[
              countIter[re + im I],
              re, -0.6, -0.4, 0.2/100,
              im, 0.4, 0.6, 0.2/100
              ];

              ArrayPlot[result, ColorFunction -> "Rainbow"]


              enter image description here




              However, this type of problem is quite amenable to compilation with Compile. When using Compile, the usual advice does not apply: a procedural style is still the best. (This does not mean that For is good, I'd still argue against that. But there are many other procedural constructs such as Do and While).



              countIterCompiled = Compile[c, _Complex,
              Block[z = 0.0 + 0.0 I, i = 0,
              While[i <= 100 && Abs[z] <= 2,
              z = z^2 + c;
              i++
              ];
              i
              ]
              ]


              Using countIterCompiled will be much faster than countIter.







              share|improve this answer














              share|improve this answer



              share|improve this answer








              edited 1 hour ago

























              answered 1 hour ago









              SzabolcsSzabolcs

              163k14448945




              163k14448945











              • $begingroup$
                thank u very much for the suggestion... I previously had a similar idea using Module instead of Block, and the problem was that the exercise did not specify that for many values the map was converging so I had to cap the number of iterations.
                $endgroup$
                – JacquesLeen
                43 mins ago










              • $begingroup$
                @JacquesLeen Maybe that was part of the exercise: will you discover it on your own? Inside Compile, Module and Block are the same, I think. (Not outside of it.)
                $endgroup$
                – Szabolcs
                16 mins ago
















              • $begingroup$
                thank u very much for the suggestion... I previously had a similar idea using Module instead of Block, and the problem was that the exercise did not specify that for many values the map was converging so I had to cap the number of iterations.
                $endgroup$
                – JacquesLeen
                43 mins ago










              • $begingroup$
                @JacquesLeen Maybe that was part of the exercise: will you discover it on your own? Inside Compile, Module and Block are the same, I think. (Not outside of it.)
                $endgroup$
                – Szabolcs
                16 mins ago















              $begingroup$
              thank u very much for the suggestion... I previously had a similar idea using Module instead of Block, and the problem was that the exercise did not specify that for many values the map was converging so I had to cap the number of iterations.
              $endgroup$
              – JacquesLeen
              43 mins ago




              $begingroup$
              thank u very much for the suggestion... I previously had a similar idea using Module instead of Block, and the problem was that the exercise did not specify that for many values the map was converging so I had to cap the number of iterations.
              $endgroup$
              – JacquesLeen
              43 mins ago












              $begingroup$
              @JacquesLeen Maybe that was part of the exercise: will you discover it on your own? Inside Compile, Module and Block are the same, I think. (Not outside of it.)
              $endgroup$
              – Szabolcs
              16 mins ago




              $begingroup$
              @JacquesLeen Maybe that was part of the exercise: will you discover it on your own? Inside Compile, Module and Block are the same, I think. (Not outside of it.)
              $endgroup$
              – Szabolcs
              16 mins ago











              1












              $begingroup$

              For iterated function systems like this, Nest and relatives are the preferred tools. Just exploring your (rather famous) map:



              f[z_, c_] := z^2 + c
              Abs[NestList[f[#, 0.2 + 0.2 I] &, 0, 30]]
              (* 0, 0.282843, 0.344093, 0.351367, 0.327239, 0.304778, 0.303605,
              0.311545, 0.316158, 0.315818, 0.313773, 0.312729, 0.31295, 0.313482,
              0.313697, 0.313611, 0.313477, 0.313435, 0.313464, 0.313497, 0.313504,
              0.313495, 0.313487, 0.313486, 0.313489, 0.313491, 0.313491, 0.31349,
              0.31349, 0.31349, 0.31349 *)


              As you can see, it converges to a value inside your radius. That's why your function doesn't terminate.






              share|improve this answer









              $endgroup$

















                1












                $begingroup$

                For iterated function systems like this, Nest and relatives are the preferred tools. Just exploring your (rather famous) map:



                f[z_, c_] := z^2 + c
                Abs[NestList[f[#, 0.2 + 0.2 I] &, 0, 30]]
                (* 0, 0.282843, 0.344093, 0.351367, 0.327239, 0.304778, 0.303605,
                0.311545, 0.316158, 0.315818, 0.313773, 0.312729, 0.31295, 0.313482,
                0.313697, 0.313611, 0.313477, 0.313435, 0.313464, 0.313497, 0.313504,
                0.313495, 0.313487, 0.313486, 0.313489, 0.313491, 0.313491, 0.31349,
                0.31349, 0.31349, 0.31349 *)


                As you can see, it converges to a value inside your radius. That's why your function doesn't terminate.






                share|improve this answer









                $endgroup$















                  1












                  1








                  1





                  $begingroup$

                  For iterated function systems like this, Nest and relatives are the preferred tools. Just exploring your (rather famous) map:



                  f[z_, c_] := z^2 + c
                  Abs[NestList[f[#, 0.2 + 0.2 I] &, 0, 30]]
                  (* 0, 0.282843, 0.344093, 0.351367, 0.327239, 0.304778, 0.303605,
                  0.311545, 0.316158, 0.315818, 0.313773, 0.312729, 0.31295, 0.313482,
                  0.313697, 0.313611, 0.313477, 0.313435, 0.313464, 0.313497, 0.313504,
                  0.313495, 0.313487, 0.313486, 0.313489, 0.313491, 0.313491, 0.31349,
                  0.31349, 0.31349, 0.31349 *)


                  As you can see, it converges to a value inside your radius. That's why your function doesn't terminate.






                  share|improve this answer









                  $endgroup$



                  For iterated function systems like this, Nest and relatives are the preferred tools. Just exploring your (rather famous) map:



                  f[z_, c_] := z^2 + c
                  Abs[NestList[f[#, 0.2 + 0.2 I] &, 0, 30]]
                  (* 0, 0.282843, 0.344093, 0.351367, 0.327239, 0.304778, 0.303605,
                  0.311545, 0.316158, 0.315818, 0.313773, 0.312729, 0.31295, 0.313482,
                  0.313697, 0.313611, 0.313477, 0.313435, 0.313464, 0.313497, 0.313504,
                  0.313495, 0.313487, 0.313486, 0.313489, 0.313491, 0.313491, 0.31349,
                  0.31349, 0.31349, 0.31349 *)


                  As you can see, it converges to a value inside your radius. That's why your function doesn't terminate.







                  share|improve this answer












                  share|improve this answer



                  share|improve this answer










                  answered 1 hour ago









                  John DotyJohn Doty

                  7,54811124




                  7,54811124





















                      0












                      $begingroup$

                      You could also use MandelbrotSetPlot to create Szabolcs' graphic:



                      MandelbrotSetPlot[-0.6 + 0.4 I, -0.4 + 0.6 I, PlotLegends -> Automatic]


                      enter image description here






                      share|improve this answer









                      $endgroup$

















                        0












                        $begingroup$

                        You could also use MandelbrotSetPlot to create Szabolcs' graphic:



                        MandelbrotSetPlot[-0.6 + 0.4 I, -0.4 + 0.6 I, PlotLegends -> Automatic]


                        enter image description here






                        share|improve this answer









                        $endgroup$















                          0












                          0








                          0





                          $begingroup$

                          You could also use MandelbrotSetPlot to create Szabolcs' graphic:



                          MandelbrotSetPlot[-0.6 + 0.4 I, -0.4 + 0.6 I, PlotLegends -> Automatic]


                          enter image description here






                          share|improve this answer









                          $endgroup$



                          You could also use MandelbrotSetPlot to create Szabolcs' graphic:



                          MandelbrotSetPlot[-0.6 + 0.4 I, -0.4 + 0.6 I, PlotLegends -> Automatic]


                          enter image description here







                          share|improve this answer












                          share|improve this answer



                          share|improve this answer










                          answered 14 mins ago









                          Carl WollCarl Woll

                          73.2k396190




                          73.2k396190




















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









                              draft saved

                              draft discarded


















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












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











                              JacquesLeen 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%2f194872%2fevaluating-number-of-iteration-with-a-certain-map-with-while%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

                              How should I use the fbox command correctly to avoid producing a Bad Box message?How to put a long piece of text in a box?How to specify height and width of fboxIs there an arrayrulecolor-like command to change the rule color of fbox?What is the command to highlight bad boxes in pdf?Why does fbox sometimes place the box *over* the graphic image?how to put the text in the boxHow to create command for a box where text inside the box can automatically adjust?how can I make an fbox like command with certain color, shape and width of border?how to use fbox in align modeFbox increase the spacing between the box and it content (inner margin)how to change the box height of an equationWhat is the use of the hbox in a newcommand command?

                              Doxepinum Nexus interni Notae | Tabula navigationis3158DB01142WHOa682390"Structural Analysis of the Histamine H1 Receptor""Transdermal and Topical Drug Administration in the Treatment of Pain""Antidepressants as antipruritic agents: A review"

                              inputenc: Unicode character … not set up for use with LaTeX The Next CEO of Stack OverflowEntering Unicode characters in LaTeXHow to solve the `Package inputenc Error: Unicode char not set up for use with LaTeX` problem?solve “Unicode char is not set up for use with LaTeX” without special handling of every new interesting UTF-8 characterPackage inputenc Error: Unicode character ² (U+B2)(inputenc) not set up for use with LaTeX. acroI2C[I²C]package inputenc error unicode char (u + 190) not set up for use with latexPackage inputenc Error: Unicode char u8:′ not set up for use with LaTeX. 3′inputenc Error: Unicode char u8: not set up for use with LaTeX with G-BriefPackage Inputenc Error: Unicode char u8: not set up for use with LaTeXPackage inputenc Error: Unicode char ́ (U+301)(inputenc) not set up for use with LaTeX. includePackage inputenc Error: Unicode char ̂ (U+302)(inputenc) not set up for use with LaTeX. … $widehatleft (OA,AA' right )$Package inputenc Error: Unicode char â„¡ (U+2121)(inputenc) not set up for use with LaTeX. printbibliography[heading=bibintoc]Package inputenc Error: Unicode char − (U+2212)(inputenc) not set up for use with LaTeXPackage inputenc Error: Unicode character α (U+3B1) not set up for use with LaTeXPackage inputenc Error: Unicode characterError: ! Package inputenc Error: Unicode char ⊘ (U+2298)(inputenc) not set up for use with LaTeX