Skip to main content
added code in question
Source Link
Gary
  • 569
  • 3
  • 13

Code added on June 29, 2014

Clear["Global`*"]

Style[Pane[Framed[Manipulate[

(* GRAPHICS AND PLOTS COMBINED USING SHOW; LAST ITEM IN TRUMPS PREVIOUS *)
Show[{
circleK,
circleAPlot[offset oCircA],
circleBPlot[offset oCircA],invLineGraphics[offset oCircA],invAVGrPts[offset oCircA],
invLVGrPts[offset oCircA],
qPt,lineR,
labels[offset oCircA],
caption
},Axes->False,PlotRange->{xBnds,yBnds},Background->LightGray],
{{offset,2,Style["origin A multiplier",White,Bold]}, {3,2.5,2,1.5, 1, .5, 0,-.5}},
Initialization :> (

(* CONSTANTS *)

radCircA = 1/4; (* Radius of A *)

oCircA = (1+I)/(4 Sqrt[2]); (* Center of A *)

radR = 1; (* Radius of K *)

q = 0; (* Center of K *)

invAngles = Range[Pi/4, 3Pi/4, Pi/8];

(* PLOTTING BOUNDARIES *)

bnds = 4;

xBnds = {-bnds,bnds};

yBnds = {-bnds,bnds};

(* FUNCTIONS *)

(* THE POINT OF THE PLOT IS TO DEMONSTRATE THE BEHAVIOR OF THIS FUNCTION, Subscript[I, k](z), R = 1 *)

zInv[z_,q_,R_]:=(q Conjugate[z] + (R^2 - Abs[q]^2)/(Conjugate[z]-Conjugate[q]));

(* CONVERT COMPLEX TO VECTOR w REAL ELEMENTS *)

v[z_]:={Re[z],Im[z]};

(* CIRCLE WITH ORIGIN AT q AND RADIUS OF radR *)

circleK := Graphics[Circle[v[q],radR]];

(* CALCULATE COMPLEX POINTS OF CIRCLE A AND USE TABLE TO CREATE LIST OF POINTS *)

circleATable[centerA_] := Table[radCircA Exp[I \[Theta]]+centerA, {\[Theta], 0, 2Pi, .01}];

(* INVERT COMPLEX POINTS OF CIRCLE A BY MAPPING zInv[] TO LIST OF COMPLEX POINTS; RETURNS A LIST *)

circleBTable[centerA_] := zInv[#,q,radR]&/@circleATable[centerA];

(* MAP LISTS OF COMPLEX POINTS TO LISTS OF VECTORS *)

circleAVectors[centerA_] := v[#]&/@circleATable[centerA];

circleBVectors[centerA_] := v[#]&/@circleBTable[centerA];

(* CREATE LINE PLOTS FROM LISTS OF VECTORS *)

circleAPlot[centerA_] := ListLinePlot[circleAVectors[centerA],AspectRatio->1,PlotStyle->{Blue}];

circleBPlot[centerA_] := ListLinePlot[circleBVectors[centerA],AspectRatio->1,PlotStyle->{Blue}];

(* INVERSION POINTS IN A, SHOWN WITH RED DOTS AND ARROWS *)

invACPts[centerA_] := (radCircA Exp[I (#-Pi/4)]+centerA)&/@invAngles;

invLCPts[centerA_] := zInv[#,q,radR]&/@invACPts[centerA];

invAVGrPts[centerA_] :=Graphics[{Red,Point[v[#]]}&/@invACPts[centerA]];

invLVGrPts[centerA_]:= Graphics[{Red,Point[v[#]]}&/@invLCPts[centerA]];

invLineObjs[centerA_] := {Gray, Dashed,Arrowheads[.02],Arrow[{v[0],v[#]}]}&/@invLCPts[centerA];

invLineGraphics[centerA_] := Graphics[invLineObjs[centerA]];

(* OTHER *)

qPt = Graphics[Point[v[q]]];

lineR = Graphics[{Dashed,Gray,Line[{v[q],v[radR Exp[I (Pi/2+Pi/4)]]}]}];

(* LABELS *)

labelK=Text[Style["K", Bold, 12], v[-.5-.5I]];

labelA[centerA_] := {Blue,Text[Style["A", Bold, 8], v[centerA]]};

labelB[centerA_] :={Blue,Text[Style[If[Abs[centerA] == Abs[oCircA], "B = L","B"], Bold, 8], v[zInv[centerA +radCircA Exp[I  Pi/4],q,radR]+.2+.2I]]};

labelq = Text[Style["q", Bold, 12], v[0]-{.1,.1}];

labelR = Text[Style["R", Bold, 10], v[(1/2)Exp[I(Pi/2+Pi/4)]]-{.1,.1}];

(* CONVERT TEXT PRIMITIVES TO GRAPHICS OBJECTS *)

labels[centerA_] := Graphics[{labelK, labelA[centerA], labelB[centerA],labelq,labelR}];

caption = Graphics[{Text[Style["Complex inversion of circle A in unit circle K\nto circle B or to line L if center q of K in A\nSubscript[I, k](z) =(q Overscript[z, _] + ((R^2)-|q|^2) )/(Overscript[z, _]-Overscript[q, _]), R=1", Bold,12], v[-2.2I]]}])
],Background->Black],{395,430},Alignment->Left],Background->LightGray]

Code added on June 29, 2014

Clear["Global`*"]

Style[Pane[Framed[Manipulate[

(* GRAPHICS AND PLOTS COMBINED USING SHOW; LAST ITEM IN TRUMPS PREVIOUS *)
Show[{
circleK,
circleAPlot[offset oCircA],
circleBPlot[offset oCircA],invLineGraphics[offset oCircA],invAVGrPts[offset oCircA],
invLVGrPts[offset oCircA],
qPt,lineR,
labels[offset oCircA],
caption
},Axes->False,PlotRange->{xBnds,yBnds},Background->LightGray],
{{offset,2,Style["origin A multiplier",White,Bold]}, {3,2.5,2,1.5, 1, .5, 0,-.5}},
Initialization :> (

(* CONSTANTS *)

radCircA = 1/4; (* Radius of A *)

oCircA = (1+I)/(4 Sqrt[2]); (* Center of A *)

radR = 1; (* Radius of K *)

q = 0; (* Center of K *)

invAngles = Range[Pi/4, 3Pi/4, Pi/8];

(* PLOTTING BOUNDARIES *)

bnds = 4;

xBnds = {-bnds,bnds};

yBnds = {-bnds,bnds};

(* FUNCTIONS *)

(* THE POINT OF THE PLOT IS TO DEMONSTRATE THE BEHAVIOR OF THIS FUNCTION, Subscript[I, k](z), R = 1 *)

zInv[z_,q_,R_]:=(q Conjugate[z] + (R^2 - Abs[q]^2)/(Conjugate[z]-Conjugate[q]));

(* CONVERT COMPLEX TO VECTOR w REAL ELEMENTS *)

v[z_]:={Re[z],Im[z]};

(* CIRCLE WITH ORIGIN AT q AND RADIUS OF radR *)

circleK := Graphics[Circle[v[q],radR]];

(* CALCULATE COMPLEX POINTS OF CIRCLE A AND USE TABLE TO CREATE LIST OF POINTS *)

circleATable[centerA_] := Table[radCircA Exp[I \[Theta]]+centerA, {\[Theta], 0, 2Pi, .01}];

(* INVERT COMPLEX POINTS OF CIRCLE A BY MAPPING zInv[] TO LIST OF COMPLEX POINTS; RETURNS A LIST *)

circleBTable[centerA_] := zInv[#,q,radR]&/@circleATable[centerA];

(* MAP LISTS OF COMPLEX POINTS TO LISTS OF VECTORS *)

circleAVectors[centerA_] := v[#]&/@circleATable[centerA];

circleBVectors[centerA_] := v[#]&/@circleBTable[centerA];

(* CREATE LINE PLOTS FROM LISTS OF VECTORS *)

circleAPlot[centerA_] := ListLinePlot[circleAVectors[centerA],AspectRatio->1,PlotStyle->{Blue}];

circleBPlot[centerA_] := ListLinePlot[circleBVectors[centerA],AspectRatio->1,PlotStyle->{Blue}];

(* INVERSION POINTS IN A, SHOWN WITH RED DOTS AND ARROWS *)

invACPts[centerA_] := (radCircA Exp[I (#-Pi/4)]+centerA)&/@invAngles;

invLCPts[centerA_] := zInv[#,q,radR]&/@invACPts[centerA];

invAVGrPts[centerA_] :=Graphics[{Red,Point[v[#]]}&/@invACPts[centerA]];

invLVGrPts[centerA_]:= Graphics[{Red,Point[v[#]]}&/@invLCPts[centerA]];

invLineObjs[centerA_] := {Gray, Dashed,Arrowheads[.02],Arrow[{v[0],v[#]}]}&/@invLCPts[centerA];

invLineGraphics[centerA_] := Graphics[invLineObjs[centerA]];

(* OTHER *)

qPt = Graphics[Point[v[q]]];

lineR = Graphics[{Dashed,Gray,Line[{v[q],v[radR Exp[I (Pi/2+Pi/4)]]}]}];

(* LABELS *)

labelK=Text[Style["K", Bold, 12], v[-.5-.5I]];

labelA[centerA_] := {Blue,Text[Style["A", Bold, 8], v[centerA]]};

labelB[centerA_] :={Blue,Text[Style[If[Abs[centerA] == Abs[oCircA], "B = L","B"], Bold, 8], v[zInv[centerA +radCircA Exp[I  Pi/4],q,radR]+.2+.2I]]};

labelq = Text[Style["q", Bold, 12], v[0]-{.1,.1}];

labelR = Text[Style["R", Bold, 10], v[(1/2)Exp[I(Pi/2+Pi/4)]]-{.1,.1}];

(* CONVERT TEXT PRIMITIVES TO GRAPHICS OBJECTS *)

labels[centerA_] := Graphics[{labelK, labelA[centerA], labelB[centerA],labelq,labelR}];

caption = Graphics[{Text[Style["Complex inversion of circle A in unit circle K\nto circle B or to line L if center q of K in A\nSubscript[I, k](z) =(q Overscript[z, _] + ((R^2)-|q|^2) )/(Overscript[z, _]-Overscript[q, _]), R=1", Bold,12], v[-2.2I]]}])
],Background->Black],{395,430},Alignment->Left],Background->LightGray]
added 7 characters in body
Source Link
Gary
  • 569
  • 3
  • 13

A CDF manipulate made in Mathematica 8 works fine and looks fine in a web page except for unsightly notebook tags and white space around the outside of and below the panel. What can be done?

http://faculty.unlv.edu/gbp/mma/VisualComplexAnalysis/play_page.htmlhttp://faculty.unlv.edu/gbp/mma/VisualComplexAnalysis/complexInversion.html

Mathematica 9 is available, but not yet downloaded. Will it provide better web deployment?

A CDF manipulate made in Mathematica 8 works fine and looks fine in a web page except for unsightly notebook tags and white space around the outside of and below the panel. What can be done?

http://faculty.unlv.edu/gbp/mma/VisualComplexAnalysis/play_page.html

Mathematica 9 is available, but not yet downloaded. Will it provide better web deployment?

A CDF manipulate made in Mathematica 8 works fine and looks fine in a web page except for unsightly notebook tags and white space around the outside of and below the panel. What can be done?

http://faculty.unlv.edu/gbp/mma/VisualComplexAnalysis/complexInversion.html

Mathematica 9 is available, but not yet downloaded. Will it provide better web deployment?

eliminate redundancy
Source Link
Gary
  • 569
  • 3
  • 13

A CDF manipulate made in Mathematica 8 works fine and looks fine in a web page except for unsightly notebook tags and white space around the outside of and below the panel. What can be done?

http://faculty.unlv.edu/gbp/mma/VisualComplexAnalysis/play_page.html

Mathematica 9 is available, but not yet downloaded. Will it provide better web deployment?

For some reason I was locked out of the "Comment" option, so I am adding a reply to Nasser here:

@Nasser, In MMA 8, I don't see an Export menu choice. I just saved it as CDF. In your link, I do not see the brackets, but I do see the unwanted white space outside the Manipulate box plus a yellow panel off to the right just to the left of where the tags would be. A panel that should perhaps show at the top is hidden with just the lower edge showing. It is the same in Chrome and Firefox, except that Firefox puts a black background around the whole cell (including Manipulate panel, white space, and yellow space). I will try MMA 9 when I finish the download tonight.

A CDF manipulate made in Mathematica 8 works fine and looks fine in a web page except for unsightly notebook tags and white space around the outside of and below the panel. What can be done?

http://faculty.unlv.edu/gbp/mma/VisualComplexAnalysis/play_page.html

Mathematica 9 is available, but not yet downloaded. Will it provide better web deployment?

For some reason I was locked out of the "Comment" option, so I am adding a reply to Nasser here:

@Nasser, In MMA 8, I don't see an Export menu choice. I just saved it as CDF. In your link, I do not see the brackets, but I do see the unwanted white space outside the Manipulate box plus a yellow panel off to the right just to the left of where the tags would be. A panel that should perhaps show at the top is hidden with just the lower edge showing. It is the same in Chrome and Firefox, except that Firefox puts a black background around the whole cell (including Manipulate panel, white space, and yellow space). I will try MMA 9 when I finish the download tonight.

A CDF manipulate made in Mathematica 8 works fine and looks fine in a web page except for unsightly notebook tags and white space around the outside of and below the panel. What can be done?

http://faculty.unlv.edu/gbp/mma/VisualComplexAnalysis/play_page.html

Mathematica 9 is available, but not yet downloaded. Will it provide better web deployment?

Tweeted twitter.com/#!/StackMma/status/482615493891993601
added 23 characters in body
Source Link
Szabolcs
  • 236.5k
  • 31
  • 641
  • 1.3k
Loading
Source Link
Gary
  • 569
  • 3
  • 13
Loading