Les formules de la réponse d’un polariseur

Voici les formules utilisées pour calculer la réponse d’un polariseur dans les simulations numériques locales des expériences de Bell.

  • – Paramètre de particule : \(V\) est la variable cachée ou commune de la particule. \(V\) est en unités d’angles.
  • – Paramètre local : \(R\) est la rotation aléatoire en unités d’angles.
  • – Paramètre global : \(L\) est une valeur de « marge d’erreur » autour de la variable commune. C’est aussi en unités d’angles.
  • – Paramètre global : \(n\) est un paramètre ad hoc , un entier performant entre \(5\) et \(\infty\) . On peut le considérer comme un nombre de barrières élémentaires
  • – Paramètre global : \(m\) est un paramètre ad hoc . On peut le considérer comme le nombre de tentatives.

Des tests systématiques ont permis de déterminer quelques bons triplets \((L,n,m)\).

  • \(L\) rend de bons résultats entre \(\pi/50\) et \(\pi/8\).
  • \(n\) peut prendre n’importe quelle valeur et est performant à partir de 5.
  • \(m\) doit s’y ajuster.

Posons \(\vartheta = V – R\)

Probabilité de rendre UP à chaque étape dans le polarisateur :
\(p_{\uparrow} = \prod_{i=1}^{n}{{\cos({\vartheta}+{L \frac{2 i-n}{2 n}})}^{2}}\)

Probabilité de rendre DOWN à chaque étape dans le polarisateur :
\(p_{\downarrow} = \prod_{i=1}^{n}{{\sin({\vartheta}+{L \frac{2 i-n}{2 n}})}^{2}}\)

Probabilité d’échouer et devoir recommencer :
\(p_0 = 1 – p_{\uparrow} – p_{\downarrow}\)

Probabilité finale de rendre 1 après la tentative de polarisation :

\(P_1 = \frac{p_{\uparrow} p_0^{m}}{ \left(p_{\uparrow}+p_{\downarrow}\right)}\)

Probabilité finale de rendre -1 après la tentative de polarisation :

\(P_{-1} = \frac{p_{\downarrow} p_0^{m}}{ \left(p_{\uparrow}+p_{\downarrow}\right)}\)

Probabilité finale de rendre 0 pour une particule non détectée après la tentative de polarisation :
\(P_0 = 1 -P_1-P_{-1}\)


Ce bricolage algorithmique décrit assez correctement le mécanisme de tentatives de passage d’une barrière de potentiel classique en \(m\) fois maximum.

Une implémentation en C++ est disponible pour Windows et Linux, cliquez sur Télécharger au menu. C’est aussi ce qui est fait dans la simulation en ligne. Vous pouvez en voir le code javascript dans le navigateur mais il y aura bientôt une version propre sans graphique.


Alternative avec élimination apparente de la variable cachée

On peut

J’avais conservé L car il a son homogue dans un autre algorithme sur lequel nous travaillons et pour lequel il est important.

Donc la variable cachée ou commune est la précédente plus 1 modulo 180 ou 360. Elle est en unités d’angles.

Cela donne :

Probabilité de rendre UP à chaque étape dans le polarisateur :
\(p_{\uparrow} = \cos(\vartheta)^{2 n}\)

Probabilité de rendre DOWN à chaque étape dans le polarisateur :
\(p_{\downarrow} = \sin(\vartheta)^{2 n}\)

La suite ne change pas. D’où :

\(P_1 = \frac{{\cos(\vartheta)^{2 n}} ({1 – {\cos(\vartheta)^{2 n}} – {\sin(\vartheta)^{2 n}}})^{m}}{ {\cos(\vartheta)^{2 n}}+{\sin(\vartheta)^{2 n}}}\)

Les performances sont presque aussi bonnes que ci-dessus.

L’élimination n’est qu’apparente car l’algorithme déduit bien une valeur commune depuis l’origine jusqu’à la séquence en cours. On pourrait chipoter et dire que la variable est le temps dans une unité assez fine pour rendre un modulo 360 utilisable. Ce n’est pas nécessaire ; cela introduirait un bais inutile et semé d’embuches. Gardons par la suite le besoin d’avoir une variable cachée aléatoire mais partagée.

Soyez le premier à commenter

Poster un Commentaire

Votre adresse de messagerie ne sera pas publiée.


*