ContourPlot — How do I color by contour curvature?Custom contour labels in ContourPlotListContourPlot is blocking my geometryHow to plot the contour of f[x,y]==0 if always f[x,y]>=0Contour coloring and (List)ContourPlot projectionMore stream lines in a ListStreamPlotContourPlot - unequal contour spacingContourPlot color problems3D Stack of Disks with dedicated height plotsHow to color Contours in ContourPlot with custom ColorFunctionChanging the color of a specific curve in ContourPlot

Can a creature tell when it has been affected by a Divination wizard's Portent?

How to back up a running remote server?

Why do Ichisongas hate elephants and hippos?

Will tsunami waves travel forever if there was no land?

How to stop co-workers from teasing me because I know Russian?

Were there two appearances of Stan Lee?

Single Colour Mastermind Problem

Can solid acids and bases have pH values? If not, how are they classified as acids or bases?

How deep to place a deadman anchor for a slackline?

Why does processed meat contain preservatives, while canned fish needs not?

Can fracking help reduce CO2?

Confused by notation of atomic number Z and mass number A on periodic table of elements

Pythonic way to find the last position in a string not matching a regex

Is thermodynamics only applicable to systems in equilibrium?

Any examples of headwear for races with animal ears?

Phrase for the opposite of "foolproof"

Is GOCE a satellite or aircraft?

What's the metal clinking sound at the end of credits in Avengers: Endgame?

What are the spoon bit of a spoon and fork bit of a fork called?

Examples of non trivial equivalence relations , I mean equivalence relations without the expression " same ... as" in their definition?

Does a creature that is immune to a condition still make a saving throw?

Toggle Overlays shortcut?

What is a Recurrent Neural Network?

Will a top journal at least read my introduction?



ContourPlot — How do I color by contour curvature?


Custom contour labels in ContourPlotListContourPlot is blocking my geometryHow to plot the contour of f[x,y]==0 if always f[x,y]>=0Contour coloring and (List)ContourPlot projectionMore stream lines in a ListStreamPlotContourPlot - unequal contour spacingContourPlot color problems3D Stack of Disks with dedicated height plotsHow to color Contours in ContourPlot with custom ColorFunctionChanging the color of a specific curve in ContourPlot













11












$begingroup$


I'm plotting the stream lines of fluid flow past a cylinder, and I would like the colors to increase with contour curvature (i.e. increase as the velocity of the flow increases. Here's a MWE that seems to color it based on the the y-axis value:



ψ[r_, θ_] := U (r - a^2/r) Sin[θ]
r = Sqrt[x^2 + y^2];
θ = ArcSin[y/r];

stream = ContourPlot[
ψ[r, θ] /. U -> 10, a -> 1,
x, -5,5, y, -5, 5,
Contours -> 10 Table[i, i, -10, 10, 0.025]
];

cyl = Graphics[Disk[0, 0, 1]];

Show[stream, cyl]


stream lines around a cylinder










share|improve this question











$endgroup$
















    11












    $begingroup$


    I'm plotting the stream lines of fluid flow past a cylinder, and I would like the colors to increase with contour curvature (i.e. increase as the velocity of the flow increases. Here's a MWE that seems to color it based on the the y-axis value:



    ψ[r_, θ_] := U (r - a^2/r) Sin[θ]
    r = Sqrt[x^2 + y^2];
    θ = ArcSin[y/r];

    stream = ContourPlot[
    ψ[r, θ] /. U -> 10, a -> 1,
    x, -5,5, y, -5, 5,
    Contours -> 10 Table[i, i, -10, 10, 0.025]
    ];

    cyl = Graphics[Disk[0, 0, 1]];

    Show[stream, cyl]


    stream lines around a cylinder










    share|improve this question











    $endgroup$














      11












      11








      11


      2



      $begingroup$


      I'm plotting the stream lines of fluid flow past a cylinder, and I would like the colors to increase with contour curvature (i.e. increase as the velocity of the flow increases. Here's a MWE that seems to color it based on the the y-axis value:



      ψ[r_, θ_] := U (r - a^2/r) Sin[θ]
      r = Sqrt[x^2 + y^2];
      θ = ArcSin[y/r];

      stream = ContourPlot[
      ψ[r, θ] /. U -> 10, a -> 1,
      x, -5,5, y, -5, 5,
      Contours -> 10 Table[i, i, -10, 10, 0.025]
      ];

      cyl = Graphics[Disk[0, 0, 1]];

      Show[stream, cyl]


      stream lines around a cylinder










      share|improve this question











      $endgroup$




      I'm plotting the stream lines of fluid flow past a cylinder, and I would like the colors to increase with contour curvature (i.e. increase as the velocity of the flow increases. Here's a MWE that seems to color it based on the the y-axis value:



      ψ[r_, θ_] := U (r - a^2/r) Sin[θ]
      r = Sqrt[x^2 + y^2];
      θ = ArcSin[y/r];

      stream = ContourPlot[
      ψ[r, θ] /. U -> 10, a -> 1,
      x, -5,5, y, -5, 5,
      Contours -> 10 Table[i, i, -10, 10, 0.025]
      ];

      cyl = Graphics[Disk[0, 0, 1]];

      Show[stream, cyl]


      stream lines around a cylinder







      plotting color






      share|improve this question















      share|improve this question













      share|improve this question




      share|improve this question








      edited Mar 20 at 21:11









      m_goldberg

      89.3k873200




      89.3k873200










      asked Mar 20 at 19:05









      dpholmesdpholmes

      350111




      350111




















          1 Answer
          1






          active

          oldest

          votes


















          14












          $begingroup$

          f = ψ[r, θ] /. U -> 10, a -> 1;
          gradf = D[f, x, y, 1];
          Hessf = D[f, x, y, 2];
          normal = gradf[[1]]/Sqrt[gradf[[1]].gradf[[1]]] // Simplify;
          secondfundamentalform = -PseudoInverse[gradf].Hessf // ComplexExpand // Simplify;
          tangent = RotationMatrix[Pi/2].normal;
          curvaturevector = (secondfundamentalform.tangent).tangent // Simplify;
          signedcurvature = curvaturevector.normal // Simplify;

          stream = ContourPlot[
          ψ[r, θ] /. U -> 10, a -> 1, x, -5, 5, y, -5, 5,
          Contours -> 10 Table[i, i, -10, 10, 0.2],
          ContourShading -> None
          ];
          curvatureplot = DensityPlot[signedcurvature, x, -5, 5, y, -5, 5,
          ColorFunction -> "RedGreenSplit",
          ClippingStyle -> Automatic,
          PlotPoints -> 100,
          PlotRange -> -1, 1
          ];
          Show[
          curvatureplot,
          stream,
          cyl
          ]


          enter image description here






          share|improve this answer











          $endgroup$













            Your Answer








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



            );













            draft saved

            draft discarded


















            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f193665%2fcontourplot-how-do-i-color-by-contour-curvature%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown

























            1 Answer
            1






            active

            oldest

            votes








            1 Answer
            1






            active

            oldest

            votes









            active

            oldest

            votes






            active

            oldest

            votes









            14












            $begingroup$

            f = ψ[r, θ] /. U -> 10, a -> 1;
            gradf = D[f, x, y, 1];
            Hessf = D[f, x, y, 2];
            normal = gradf[[1]]/Sqrt[gradf[[1]].gradf[[1]]] // Simplify;
            secondfundamentalform = -PseudoInverse[gradf].Hessf // ComplexExpand // Simplify;
            tangent = RotationMatrix[Pi/2].normal;
            curvaturevector = (secondfundamentalform.tangent).tangent // Simplify;
            signedcurvature = curvaturevector.normal // Simplify;

            stream = ContourPlot[
            ψ[r, θ] /. U -> 10, a -> 1, x, -5, 5, y, -5, 5,
            Contours -> 10 Table[i, i, -10, 10, 0.2],
            ContourShading -> None
            ];
            curvatureplot = DensityPlot[signedcurvature, x, -5, 5, y, -5, 5,
            ColorFunction -> "RedGreenSplit",
            ClippingStyle -> Automatic,
            PlotPoints -> 100,
            PlotRange -> -1, 1
            ];
            Show[
            curvatureplot,
            stream,
            cyl
            ]


            enter image description here






            share|improve this answer











            $endgroup$

















              14












              $begingroup$

              f = ψ[r, θ] /. U -> 10, a -> 1;
              gradf = D[f, x, y, 1];
              Hessf = D[f, x, y, 2];
              normal = gradf[[1]]/Sqrt[gradf[[1]].gradf[[1]]] // Simplify;
              secondfundamentalform = -PseudoInverse[gradf].Hessf // ComplexExpand // Simplify;
              tangent = RotationMatrix[Pi/2].normal;
              curvaturevector = (secondfundamentalform.tangent).tangent // Simplify;
              signedcurvature = curvaturevector.normal // Simplify;

              stream = ContourPlot[
              ψ[r, θ] /. U -> 10, a -> 1, x, -5, 5, y, -5, 5,
              Contours -> 10 Table[i, i, -10, 10, 0.2],
              ContourShading -> None
              ];
              curvatureplot = DensityPlot[signedcurvature, x, -5, 5, y, -5, 5,
              ColorFunction -> "RedGreenSplit",
              ClippingStyle -> Automatic,
              PlotPoints -> 100,
              PlotRange -> -1, 1
              ];
              Show[
              curvatureplot,
              stream,
              cyl
              ]


              enter image description here






              share|improve this answer











              $endgroup$















                14












                14








                14





                $begingroup$

                f = ψ[r, θ] /. U -> 10, a -> 1;
                gradf = D[f, x, y, 1];
                Hessf = D[f, x, y, 2];
                normal = gradf[[1]]/Sqrt[gradf[[1]].gradf[[1]]] // Simplify;
                secondfundamentalform = -PseudoInverse[gradf].Hessf // ComplexExpand // Simplify;
                tangent = RotationMatrix[Pi/2].normal;
                curvaturevector = (secondfundamentalform.tangent).tangent // Simplify;
                signedcurvature = curvaturevector.normal // Simplify;

                stream = ContourPlot[
                ψ[r, θ] /. U -> 10, a -> 1, x, -5, 5, y, -5, 5,
                Contours -> 10 Table[i, i, -10, 10, 0.2],
                ContourShading -> None
                ];
                curvatureplot = DensityPlot[signedcurvature, x, -5, 5, y, -5, 5,
                ColorFunction -> "RedGreenSplit",
                ClippingStyle -> Automatic,
                PlotPoints -> 100,
                PlotRange -> -1, 1
                ];
                Show[
                curvatureplot,
                stream,
                cyl
                ]


                enter image description here






                share|improve this answer











                $endgroup$



                f = ψ[r, θ] /. U -> 10, a -> 1;
                gradf = D[f, x, y, 1];
                Hessf = D[f, x, y, 2];
                normal = gradf[[1]]/Sqrt[gradf[[1]].gradf[[1]]] // Simplify;
                secondfundamentalform = -PseudoInverse[gradf].Hessf // ComplexExpand // Simplify;
                tangent = RotationMatrix[Pi/2].normal;
                curvaturevector = (secondfundamentalform.tangent).tangent // Simplify;
                signedcurvature = curvaturevector.normal // Simplify;

                stream = ContourPlot[
                ψ[r, θ] /. U -> 10, a -> 1, x, -5, 5, y, -5, 5,
                Contours -> 10 Table[i, i, -10, 10, 0.2],
                ContourShading -> None
                ];
                curvatureplot = DensityPlot[signedcurvature, x, -5, 5, y, -5, 5,
                ColorFunction -> "RedGreenSplit",
                ClippingStyle -> Automatic,
                PlotPoints -> 100,
                PlotRange -> -1, 1
                ];
                Show[
                curvatureplot,
                stream,
                cyl
                ]


                enter image description here







                share|improve this answer














                share|improve this answer



                share|improve this answer








                edited Mar 21 at 8:40

























                answered Mar 20 at 19:28









                Henrik SchumacherHenrik Schumacher

                61.3k585171




                61.3k585171



























                    draft saved

                    draft discarded
















































                    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%2f193665%2fcontourplot-how-do-i-color-by-contour-curvature%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

                    Masuk log Menu navigasi

                    Identifying “long and narrow” polygons in with PostGISlength and width of polygonWhy postgis st_overlaps reports Qgis' “avoid intersections” generated polygon as overlapping with others?Adjusting polygons to boundary and filling holesDrawing polygons with fixed area?How to remove spikes in Polygons with PostGISDeleting sliver polygons after difference operation in QGIS?Snapping boundaries in PostGISSplit polygon into parts adding attributes based on underlying polygon in QGISSplitting overlap between polygons and assign to nearest polygon using PostGIS?Expanding polygons and clipping at midpoint?Removing Intersection of Buffers in Same Layers

                    Старые Смолеговицы Содержание История | География | Демография | Достопримечательности | Примечания | НавигацияHGЯOLHGЯOL41 206 832 01641 606 406 141Административно-территориальное деление Ленинградской области«Переписная оброчная книга Водской пятины 1500 года», С. 793«Карта Ингерманландии: Ивангорода, Яма, Копорья, Нотеборга», по материалам 1676 г.«Генеральная карта провинции Ингерманландии» Э. Белинга и А. Андерсина, 1704 г., составлена по материалам 1678 г.«Географический чертёж над Ижорскою землей со своими городами» Адриана Шонбека 1705 г.Новая и достоверная всей Ингерманландии ланткарта. Грав. А. Ростовцев. СПб., 1727 г.Топографическая карта Санкт-Петербургской губернии. 5-и верстка. Шуберт. 1834 г.Описание Санкт-Петербургской губернии по уездам и станамСпецкарта западной части России Ф. Ф. Шуберта. 1844 г.Алфавитный список селений по уездам и станам С.-Петербургской губернииСписки населённых мест Российской Империи, составленные и издаваемые центральным статистическим комитетом министерства внутренних дел. XXXVII. Санкт-Петербургская губерния. По состоянию на 1862 год. СПб. 1864. С. 203Материалы по статистике народного хозяйства в С.-Петербургской губернии. Вып. IX. Частновладельческое хозяйство в Ямбургском уезде. СПб, 1888, С. 146, С. 2, 7, 54Положение о гербе муниципального образования Курское сельское поселениеСправочник истории административно-территориального деления Ленинградской области.Топографическая карта Ленинградской области, квадрат О-35-23-В (Хотыницы), 1930 г.АрхивированоАдминистративно-территориальное деление Ленинградской области. — Л., 1933, С. 27, 198АрхивированоАдминистративно-экономический справочник по Ленинградской области. — Л., 1936, с. 219АрхивированоАдминистративно-территориальное деление Ленинградской области. — Л., 1966, с. 175АрхивированоАдминистративно-территориальное деление Ленинградской области. — Лениздат, 1973, С. 180АрхивированоАдминистративно-территориальное деление Ленинградской области. — Лениздат, 1990, ISBN 5-289-00612-5, С. 38АрхивированоАдминистративно-территориальное деление Ленинградской области. — СПб., 2007, с. 60АрхивированоКоряков Юрий База данных «Этно-языковой состав населённых пунктов России». Ленинградская область.Административно-территориальное деление Ленинградской области. — СПб, 1997, ISBN 5-86153-055-6, С. 41АрхивированоКультовый комплекс Старые Смолеговицы // Электронная энциклопедия ЭрмитажаПроблемы выявления, изучения и сохранения культовых комплексов с каменными крестами: по материалам работ 2016-2017 гг. в Ленинградской области