Module Expr Str Import alias ImportFrom alias FunctionDef arguments args NameParam NameParam NameParam NameParam NameParam defaults Num Num body Expr Str Assign NameStore AttributeLoad NameLoad attr Assign NameStore AttributeLoad NameLoad attr Return BinOpDiv BinOpAdd Num BinOpDiv BinOpMult NameLoad BinOpAdd BinOpAdd Call NameLoad BinOpSub UnaryOpUSub BinOpPow NameLoad Num BinOpPow BinOpSub NameLoad NameLoad Num Call NameLoad BinOpSub UnaryOpUSub BinOpPow NameLoad Num BinOpPow BinOpAdd NameLoad NameLoad Num BinOpMult BinOpMult BinOpMult Num NameLoad Call NameLoad BinOpSub UnaryOpUSub BinOpPow NameLoad Num BinOpPow NameLoad Num Call NameLoad BinOpMult BinOpMult Num NameLoad NameLoad BinOpMult Num BinOpAdd Num Call NameLoad UnaryOpUSub BinOpPow NameLoad Num Num decorator_list Assign TupleStore NameStore NameStore SubscriptLoad AttributeLoad NameLoad attr ExtSlice Slice Num Num Num Slice Num Num Num Expr Call AttributeLoad NameLoad attr Num keyword TupleLoad Num Num keyword TupleLoad Num Num Num keyword TupleLoad Num Num Num Expr Call AttributeLoad NameLoad attr Assign NameStore Call NameLoad NameLoad NameLoad Num Assign NameStore Call NameLoad NameLoad NameLoad Num Assign NameStore Call NameLoad NameLoad NameLoad Num AugAssignSub NameStore Num AugAssignSub NameStore Num AugAssignSub NameStore Num Assign NameStore TupleLoad Num Num Num Num Num Num Assign NameStore Call AttributeLoad NameLoad attr BinOpSub NameLoad Num NameLoad NameLoad keyword Str keyword Num keyword NameLoad keyword Num keyword Num Expr Call AttributeLoad NameLoad attr NameLoad keyword TupleLoad Num Num Num keyword NameLoad Expr Call AttributeLoad NameLoad attr NameLoad keyword TupleLoad Num Num Num keyword NameLoad keyword TupleLoad Num Num Num Num Num Num keyword Str keyword Str keyword Str keyword NameLoad keyword NameLoad Expr Call AttributeLoad NameLoad attr Num Num Str keyword Num keyword Num Assign NameStore TupleLoad Num Num Num Num Num Num Assign NameStore Call AttributeLoad NameLoad attr NameLoad NameLoad NameLoad keyword Str keyword Num keyword NameLoad keyword Num keyword Num Expr Call AttributeLoad NameLoad attr NameLoad keyword TupleLoad Num Num Num keyword NameLoad Expr Call AttributeLoad NameLoad attr Num Num Str keyword Num keyword Num Assign NameStore TupleLoad Num Num Num Num Num Num Assign NameStore Call AttributeLoad NameLoad attr BinOpAdd NameLoad Num NameLoad NameLoad keyword Str keyword Num keyword NameLoad keyword Num keyword Num Expr Call AttributeLoad NameLoad attr NameLoad keyword TupleLoad Num Num Num keyword NameLoad Expr Call AttributeLoad NameLoad attr Num Num Str keyword Num keyword Num Expr Call AttributeLoad NameLoad attr Str Expr Call AttributeLoad NameLoad attr Num Num Num Expr Call AttributeLoad NameLoad attr
N/A N/A 
An example in which 3 functions of x and y  are displayed with a surf plot,
while the z scaling is kept constant, to allow comparison between them.

The important aspect of this example is that the 3 functions should not
be displayed on top of each other, but side by side. For this we use the
extent keyword argument.

In addition, the relative scale between the different plots is important.
This is why we also use the `warp_scale` keyword argument, to have the same
scale on all plots.

Finally, we have to adjust the data bounds: as we want the "horizon" of
the wigner function in the middle of our extents, we put this to zero.

We add a set of axes and outlines to the plot. We have to play we extents
and ranges in order to make them fit with the data.
 N/A numpy mayavi mlab cat N/A N/A x y alpha eta purity N/A 1 1 N/A N/A  Multiphoton shrodinger cat. eta is the fidelity, alpha the number
        of photons N/A cos N/A numpy cos N/A exp N/A numpy exp N/A N/A N/A 1 N/A N/A eta N/A N/A N/A exp N/A N/A N/A x 2 N/A N/A y alpha 2 N/A exp N/A N/A N/A x 2 N/A N/A y alpha 2 N/A N/A N/A 2 purity N/A exp N/A N/A N/A x 2 N/A y 2 N/A cos N/A N/A 2 alpha x N/A 2 N/A 1 N/A exp N/A N/A alpha 2 2 N/A N/A N/A x y N/A N/A numpy mgrid N/A N/A -4 4.15 0.1 N/A -4 4.15 0.1 N/A N/A N/A mlab figure 1 size N/A 500 250 fgcolor N/A 1 1 1 bgcolor N/A 0.5 0.5 0.5 N/A N/A N/A mlab clf N/A cat1 N/A cat x y 1 N/A cat2 N/A cat x y 2 N/A cat3 N/A cat x y 3 N/A cat1 0.5 N/A cat2 0.5 N/A cat3 0.5 N/A cat1_extent N/A -14 -6 -4 4 0 5 N/A surf_cat1 N/A N/A mlab surf N/A x 10 y cat1 colormap Spectral warp_scale 5 extent cat1_extent vmin -0.5 vmax 0.5 N/A N/A N/A mlab outline surf_cat1 color N/A 0.7 0.7 0.7 extent cat1_extent N/A N/A N/A mlab axes surf_cat1 color N/A 0.7 0.7 0.7 extent cat1_extent ranges N/A 0 1 0 1 0 1 xlabel ylabel zlabel Probability x_axis_visibility False z_axis_visibility False N/A N/A N/A mlab text -18 -4 1 photon z -4 width 0.13 N/A cat2_extent N/A -4 4 -4 4 0 5 N/A surf_cat2 N/A N/A mlab surf x y cat2 colormap Spectral warp_scale 5 extent cat2_extent vmin -0.5 vmax 0.5 N/A N/A N/A mlab outline surf_cat2 color N/A 0.7 0.7 0.7 extent cat2_extent N/A N/A N/A mlab text -4 -3 2 photons z -4 width 0.14 N/A cat3_extent N/A 6 14 -4 4 0 5 N/A surf_cat3 N/A N/A mlab surf N/A x 10 y cat3 colormap Spectral warp_scale 5 extent cat3_extent vmin -0.5 vmax 0.5 N/A N/A N/A mlab outline surf_cat3 color N/A 0.7 0.7 0.7 extent cat3_extent N/A N/A N/A mlab text 6 -2.5 3 photons z -4 width 0.14 N/A N/A N/A mlab title Multi-photons cats Wigner function N/A N/A N/A mlab view 142 -72 32 N/A N/A N/A mlab show