Re: Problem with Min Max between two functions
- To: mathgroup at smc.vnet.net
- Subject: [mg111445] Re: Problem with Min Max between two functions
- From: "J. Batista" <jbatista800 at gmail.com>
- Date: Mon, 2 Aug 2010 07:02:00 -0400 (EDT)
Maria/All, I just learned from a colleague that all equations on my message have double equal signs. Please note that is probably due to a transmission error. All equations should only have a single equal sign. I'm retransmitting my original message. Regards, J. Batista On Sun, Aug 1, 2010 at 3:10 AM, J. Batista <jbatista800 at gmail.com> wrote: > Dean Maria, here is a possible solution to your question. The white > contour areas can be removed by approaching the output of ContourPlot as an > image, treating the task as one of image processing (as suggested previously > by Daniel Lichtblau). First, equate the original ContourPlot output with a > variable name, for example originalPlot == Out[1] (where Out[1] is the > ContourPlot output cell). Alternatively, you can simply select the > ContourPlot, copy and then paste into the first line of the code sequence > below in place of the variable originalPlot. I will now display the four > lines of the code sequence and then explain them afterwards. > > originalColorData == ImageData[originalPlot]; > > targetPixels == Position[originalColorData, originalColorData[[180, 180]]]; > > newColorData == ReplacePart[originalColorData, targetPixels -> {1., 1., > 1.}]; > > Image[newColorData] > > > The first code line accomplishes the task of collecting and reading the > ContourPlot into computer memory as image data, in this case a vector of RGB > color values. Note that I place a semicolon at the end of this and other > lines of code in order to suppress the visual output of the code sequence's > result. This is because the vector is lengthy and will clog the notebook > unnecessarily. > The second code line establishes the pattern by which the portions of the > plot that you wish to alter are identified as a subset of the entire > original data set. The pattern is established by entering the pixel > coordinate of a representative target pixel that you wish to alter, in this > case [[180, 180]] being one of the pixels in the white contour areas. You > can determine an appropriate pixel coordinate by right-clicking in the > original ContourPlot output, selecting Get Indices, and then guiding your > cursor to a desired location within the plot. > The third code line replaces the pixel locations flagged by the previous > pattern search with new pixel data, in this case new RGB color values that > you select. I have used the example of {1., 1., 1.} to illustrate changing > from the semi-white color of the original plot to a true white that matches > the plot background. Be sure to use decimal points as above when expressing > color values for your pixels, as something like {1, 1, 1} will not > be understood correctly for this purpose. If you want to change the > semi-white color of your original plot to black, use {0., 0., 0.}. > The fourth and final line re-establishes the newly altered set of pixel > data as an image object, and displays the altered image. > > Hope this helps. > Best Regards, > J. Batista > > On Mon, Jul 26, 2010 at 6:37 AM, maria giovanna dainotti < > mariagiovannadainotti at yahoo.it> wrote: > >> Dear Mathgroup, >> I have the following function >> R1==1.029 >> R2==3.892 >> R3==8 >> e1==250 >> e2==11.8 >> e3==80.5 >> i==pi/12 >> spherenear[x_,y_]:==((R3^2-x^2-y^2)^(1/2)) >> spherefar[x_,y_]:==-((R3^2-x^2-y^2)^(1/2)) >> emptynear[x_,y_]:==Min[Re[spherenear[x,y]],Re[(R2^2-x^2)^(1/2)+y*Tan[i]]= ] >> emptyfar[x_,y_]:==Max[Re[spherefar[x,y]],Re[-(R2^2-x^2)^(1/2)]+y*Tan[i]] >> jetnear[x_,y_]:==Min[Re[spherenear[x,y]],Re[(R1^2-x^2)^(1/2)+y*Tan[i]]] >> jetfar[x_,y_]:==Max[Re[spherefar[x,y]],Re[-(R1^2-x^2)^(1/2)]+y*Tan[i]] >> >> f[x_,y_]:==((jetnear[x,y]-jetfar[x,y])*e1+e3*(spherenear[x,y]-emptynear[= x,y]+emptyfar[x,y]-spherefar[x,y])+e2*(emptynear[x,y]-jetnear[x,y]+jetfar[x= ,y]-emptyfar[x,y]))*Boole[-R1==EF==82==A3x==EF==82==A3R1]+((emptynear[x,y]-= emptyfar[x,y])*e2+e3*(spherenear[x,y]-emptynear[x,y]+emptyfar[x,y]-spherefa= r[x,y]))*(Boole[-R2<x<-R1]+Boole[R2>x>R1])+(spherenear[x,y]-spherefar[x,y])= *e3*(Boole[x<-R2]+Boole[x>R2]) >> >> >> ContourPlot[f[x,y],{x,-8,8},{y,-8,8},Contours==EF==82==AE{0,100,200,300,= 400,500,600,700,800,900}] >> >> From the picture you can see there is a white contours that results a bi= t >> odd, I >> think th at it comes out from the introduction of the Min and Max. >> I would like to remove this white contour. Could you help me? >> Thanks a lot for your attention >> Cheers >> Maria >> >> >