Re: Ploting a transformation of a set
- To: mathgroup at smc.vnet.net
- Subject: [mg123474] Re: Ploting a transformation of a set
- From: Barrie Stokes <Barrie.Stokes at newcastle.edu.au>
- Date: Thu, 8 Dec 2011 05:26:16 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <4EDCB5F0.813B.006A.0@newcastle.edu.au> <jbkj0l$i30$1@smc.vnet.net>
Hi Dan
This is very nice too.
I think stabilising the mapped plane with PlotRange helps:
With[ {n = 10, c1 = ColorData[ 1 ][ 1 ], c2 = ColorData[ 1 ][ 2 ]},
refGrid = Show[ {
ParametricPlot[ Table[ {2 t, 2 (k/n)}, {k, n} ], {t, 0, 1},
PlotStyle -> c1 ],
ParametricPlot[ Table[ {2 (k/n), 2 t}, {k, n} ], {t, 0, 1},
PlotStyle -> c2 ]
}, ImageSize -> 200 ];
Manipulate[
Module[ {map},
map = ({x, y} \[Function] {(x + a y)^b, (a x + y)^b});
Grid[ {{
refGrid,
Show[ {
ParametricPlot[ Table[ map @@ {2 t, 2 (k/n)}, {k, n} ], {t,
0, 1}, PlotStyle -> c1, PlotRange -> {{0, 2}, {0, 2}} ],
ParametricPlot[ Table[ map @@ {2 (k/n), 2 t}, {k, n} ], {t,
0, 1}, PlotStyle -> c2, PlotRange -> {{0, 2}, {0, 2}} ]
}, ImageSize -> 200 ]
}} ]
],
{{a, 0.5}, 0, 1, 0.05},
{{b, 0.5}, 0.1, 1, 0.05}
]
]
Cheers
Barrie
PS
I like your indenting for clarity. I purposely use "[space" and "space]" everywhere in code I paste into emails. Gradually my spellchecker will know every reserved word in Mathematica.
>>> On 07/12/2011 at 10:15 pm, in message <201112071115.GAA04280 at smc.vnet.net>, Dan
<dflatin at rcn.com> wrote:
> Another approach would be to look at the transformation of the grid. I
> find this sort of visualization more informative for these sorts of
> mappings. For example:
>
> With[{n=10,c1=ColorData[1][1],c2=ColorData[1][2]},
> refGrid=Show[{
> ParametricPlot[Table[{2t,2(k/n)},{k,n}],{t,0,1},PlotStyle->c1],
> ParametricPlot[Table[{2(k/n),2t},{k,n}],{t,0,1},PlotStyle->c2]
> },ImageSize->200];
> Manipulate[
> Module[{map},
> map=({x,y}\[Function]{(x+a y)^b,(a x+y)^b});
> Grid[{{
> refGrid,
> Show[{
> ParametricPlot[Table[map@@{2t,2(k/n)},{k,n}],{t,
> 0,1},PlotStyle->c1],
> ParametricPlot[Table[map@@{2(k/n),2t},{k,n}],{t,
> 0,1},PlotStyle->c2]
> },ImageSize->200]
> }}]
> ],
> {{a,0.5},0,1,0.05},
> {{b,0.5},0.1,1,0.05}
> ]
> ]
>
> -- Dan