MathGroup Archive 2010

[Date Index] [Thread Index] [Author Index]

Search the Archive

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



  • Prev by Date: Re: assuming certain properties about variables
  • Next by Date: ReplaceAll and ReplaceRepeated Strange Behavior
  • Previous by thread: Re: Problem with Min Max between two functions
  • Next by thread: Re: Problem with Min Max between two functions