File:OAM qubit.svg
Original file (SVG file, nominally 2,513 × 890 pixels, file size: 324 KB)
Captions
Summary
[edit]DescriptionOAM qubit.svg |
English: A qubit is a two-dimensional quantum system, which can be implemented in many ways. When an orbital angular momentum (OAM) of single photons is employed, one chooses two different OAM modes and all their superpositions to get a qubit. In the figure, the two OAM modes are +1 and -1 and all three mutually unbiased bases are shown. The intensity profiles of the photon's wavefunction are shown in the first row, the phase profiles in the second row. Čeština: Qubit je dvourozměrný kvantový systém, který lze implementovat mnoha způsoby. Pokud se použije orbitální moment hybnosti (OAM) jednotlivých fotonů, stačí pro vytvoření qubitu zvolit dva OAM módy a všechny jejich superpozice. Na obrázku jsou zvoleny módy +1 a -1 a vyobrazeny jsou všechny "vzájemně nestranné báze". Profily intenzity vlnové funkce fotonu jsou zobrazeny v prvním řádku, odpovídající profily fáze pak v řádku druhém. |
Date | |
Source | Own work |
Author | JozumBjada |
Licensing
[edit]- You are free:
- to share – to copy, distribute and transmit the work
- to remix – to adapt the work
- Under the following conditions:
- attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
- share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible license as the original.
Source code
[edit]This figure was created using Wolfram language 12.0.0 for Microsoft Windows (64-bit) (April 6, 2019). The source code follows.
(* ::Package:: *)
(* ::Section:: *)
(*Superpositions*)
(* ::Subsection:: *)
(*Routines*)
(* ::Input::Initialization:: *)
beamLG[k_][\[Rho]_,\[Phi]_]:=Sqrt[2/(\[Pi] Abs[k]!)](Sqrt[2]\[Rho])^Abs[k]Exp[-\[Rho]^2]Exp[-I k \[Phi]]
(* ::Input::Initialization:: *)
colOpts={PlotRange->All,ImageSize->{Automatic,300},Exclusions->(#1<0&==0&),MaxRecursion->Automatic,PlotRangePadding->None,Frame->False};
(* ::Input::Initialization:: *)
plotSuperpositionMagn[coefsi_,modes_,plotPoints_:50,circ_:False]:=Module[{plotlim=3.5,fun,x,y,coefs=Normalize[coefsi]},
fun=Total@MapThread[#1 beamLG[#2][Sqrt[x^2+y^2],ArcTan[y,x]]&,{coefs,modes}];
DensityPlot[Evaluate[Abs[fun]^2],{x,-plotlim,plotlim},{y,-plotlim,plotlim},
PlotPoints->plotPoints,ColorFunction->"SunsetColors",RegionFunction->If[circ,(#1^2+#2^2<=plotlim^2&),True],Evaluate[Sequence@@colOpts]]
]
(* ::Input::Initialization:: *)
plotSuperpositionPhas[coefsi_,modes_,plotPoints_:50,circ_:False]:=Module[{plotlim=3.5,fun,x,y,coefs=Normalize[coefsi],\[Rho],\[Phi]},
fun=Total@MapThread[#1 beamLG[#2][\[Rho],\[Phi]]&,{coefs,modes}];
fun=Mod[Arg[fun],2\[Pi]]/(2\[Pi])/.{\[Rho]->Sqrt[x^2+y^2],\[Phi]->ArcTan[y,x]};
DensityPlot[fun,{x,-plotlim,plotlim},{y,-plotlim,plotlim},
PlotPoints->plotPoints,ColorFunction->Hue,ColorFunctionScaling->False,RegionFunction->If[circ,(#1^2+#2^2<=plotlim^2&),True],Evaluate[Sequence@@colOpts]]
]
(* ::Input::Initialization:: *)
phaseLabel[ang_,pos_]:=Text[Style[ang,FontSize->35,FontFamily->"Times",Black],ImageScaled[pos]]
phaseGr[hue_,pol1_,pol2_,lab1_,lab2_]:=Graphics[{Hue[hue],Polygon[pol1],Hue[hue+1/2],Polygon[pol2],phaseLabel@@lab1,phaseLabel@@lab2},ImageSize->{Automatic,300},PlotRangePadding->None]
(* ::Input::Initialization:: *)
colorbarFun[colorfun_,{low_,mid_,high_},{minx_,maxx_},{miny_,maxy_},fontFamily_:"Times"]:=Module[{textoff=20,lineoff=50,fontSize=30,plot},
plot=DensityPlot[y+miny,{x,minx,maxx},{y,miny,maxy},ColorFunction->colorfun,Frame->False,PlotRangePadding->None];
plot=First@Cases[InputForm@plot,_GraphicsComplex,Infinity,1];
Graphics[{
Rectangle[{-2+minx,miny},{maxx+1,maxy}],
plot,
Line[{
{{-2+minx,miny},{lineoff+maxx,miny}},
{{-2+minx,maxy+1},{lineoff+maxx,maxy+1}},
{{-2+minx,0},{maxx+textoff/2,0}}
}],
Text[Style[low,FontFamily->fontFamily,FontSize->fontSize],{textoff+maxx,miny},{-1,-1}],
Text[Style[mid,FontFamily->fontFamily,FontSize->fontSize],{textoff+maxx,0},{-1,0}],
Text[Style[high,FontFamily->fontFamily,FontSize->fontSize],{textoff+maxx,maxy},{-1,1}]
},ImageSize->{Automatic,(maxy-miny)},PlotRangePadding->None]
]
(* ::Subsection:: *)
(*Qubit case*)
(* ::Input:: *)
(*colorBarMagn=colorbarFun["SunsetColors",{0,0.5,1},{0,35},{-150,150}];*)
(*(*colorBarPhas=colorbarFun[Hue,{Style[0,FontFamily\[Rule]"Times"],\[Pi],Row[{Style[2,FontFamily\[Rule]"Times"],"\[Pi]"}]},{0,35},{-150,150},Automatic];*)*)
(*colorBarPhas=colorbarFun[Hue,{0,\[Pi],2\[Pi]},{0,35},{-150,150}];*)
(* ::Input:: *)
(*kets={Row[{Ket[1],Spacer[{0,40,17}]}],Row[{Ket[-1],Spacer[{0,40,17}]}],Row[{1/Sqrt[2],"(",Ket[1],"\[ThinSpace]+\[ThinSpace]",Ket[-1],")"}],Row[{1/Sqrt[2],"(",Ket[1],"\[ThinSpace]-\[ThinSpace]",Ket[-1],")"}],Row[{1/Sqrt[2],"(",Ket[1],"\[ThinSpace]+\[ThinSpace]\[ImaginaryI]\[ThinSpace]", Ket[-1],")"}],Row[{1/Sqrt[2],"(",Ket[1],"\[ThinSpace]-\[ThinSpace]\[ImaginaryI]\[ThinSpace]", Ket[-1],")"}]};*)
(*kets=Framed[Style[Row[{Ket["\[Psi]"]," = ",#}],30,FontFamily->"Times"],ImageSize->{300,100},Alignment->Center]&/@kets;*)
(* ::Input:: *)
(*pts ={{0,1},{-1,1},{-1,-1},{0,-1},{1,-1},{1,1}};*)
(*w = {1,.5, .5, 1, .5, .5};*)
(*k ={0, 0, 0, 1/4, 1/2, 1/2, 3/4, 1, 1};*)
(*arrow={Arrowheads[.1],Thickness[0.01],Arrow@BSplineCurve[RotationTransform[\[Pi]/4][pts], SplineDegree -> 2, SplineKnots -> k, SplineWeights -> w]};*)
(* ::Input:: *)
(*coefs={{1},{1},{1,1},{1,-1},{1,I},{1,-I}};*)
(*modes={{1},{-1},{1,-1},{1,-1},{1,-1},{1,-1}};*)
(*magns=MapThread[plotSuperpositionMagn[#1,#2]&,{coefs,modes}];*)
(*(*phases could also be created as MapThread[plotSuperpositionPhas[#1,#2]&,{coefs,modes}], but this approach results in plots with jagged edges*)*)
(*phases={*)
(*Show[plotSuperpositionPhas[{1},{1}],Epilog->arrow],*)
(*Show[plotSuperpositionPhas[{1},{-1}],Epilog->Scale[arrow,{-1,1}]],*)
(*phaseGr[0/8,{{0,.5},{1,.5},{1,1},{0,1}},{{0,0},{1,0},{1,.5},{0,.5}},{\[Pi],{.5,.25}},{0,{.5,.75}}],*)
(*phaseGr[2/8,{{0,0},{.5,0},{.5,1},{0,1}},{{.5,0},{1,0},{1,1},{.5,1}},{\[Pi]/2,{.25,.5}},{3\[Pi]/2,{.75,.5}}],*)
(*phaseGr[1/8,{{0,0},{1,1},{0,1}},{{0,0},{1,0},{1,1}},{\[Pi]/4,{.25,.75}},{5\[Pi]/4,{.75,.25}}],*)
(*phaseGr[3/8,{{0,0},{1,0},{0,1}},{{1,0},{1,1},{0,1}},{3\[Pi]/4,{.25,.25}},{7\[Pi]/4,{.75,.75}}]*)
(*};*)
(* ::Input:: *)
(*grid=Grid[{Append[kets,""],Append[magns,colorBarMagn],Append[phases,colorBarPhas]},Spacings->{{3->3,5->3},Automatic},Dividers->{{3->Directive[Black,Thick],5->Directive[Black,Thick]},False}]*)
(* ::Input:: *)
(*SetDirectory[NotebookDirectory[]]*)
(* ::Input:: *)
(*Export["gridQubit.png",grid,ImageResolution->200]*)
(*Export["gridQubit.svg",grid,ImageResolution->200]*)
File history
Click on a date/time to view the file as it appeared at that time.
Date/Time | Thumbnail | Dimensions | User | Comment | |
---|---|---|---|---|---|
current | 15:52, 9 February 2022 | 2,513 × 890 (324 KB) | JozumBjada (talk | contribs) | modified horizontal spacing | |
20:10, 10 January 2022 | 2,578 × 890 (324 KB) | JozumBjada (talk | contribs) | Cross-wiki upload from cs.wikipedia.org |
You cannot overwrite this file.
File usage on Commons
There are no pages that use this file.
File usage on other wikis
The following other wikis use this file:
- Usage on cs.wikipedia.org
Metadata
This file contains additional information such as Exif metadata which may have been added by the digital camera, scanner, or software program used to create or digitize it. If the file has been modified from its original state, some details such as the timestamp may not fully reflect those of the original file. The timestamp is only as accurate as the clock in the camera, and it may be completely wrong.
Width | 2010pt |
---|---|
Height | 712pt |