Квантовые операторы, собственные функции, собственные значения и коммутаторы
Используйте команду Setup, чтобы сказать системе, что буква B представляет квантовые операторы:
- Setup(op = B);
Учтите, что после ввода команды
- Setup(mathematicalnotation = true);
расширенный набор символов показывает некоммутирующие (noncommutative) объекты разными цветами. Изменить цвет можно в Setup. Поскольку теперь B – квантовый оператор, то – это собственный вектор четырех операторов:
и
, соответственно с собственными значениями m, n, x, y, например:
- B[2] . Ket(B, m,n,x,y);
Квантовые операторы могут быть также евклидовыми 3D-векторами. Для этого необходимо загрузить подпакет Vectors пакета Physics:
- with(Vectors);
Зададим теперь векторы и
как квантовые операторы (для затирания прежнего определения квантовых операторов используйте опцию 'redo').
- Setup(op = {L_, r_, p_, x,y,z, px, py, pz, Lx, Ly, Lz},
redo);
Определим как оператор углового момента
и зададим правила коммутации для компонент
и
.
- L_ := r_ &x p_;
- r_ := x*_i + y*_j + z*_k;
- p_ := px*_i + py*_j + pz*_k;
Векторные расчеты с некоммутирующими компонентами сохраняют и
. Это достигается соответственно симметризацией и антисимметризацией каждого из этих произведений; например, вот компоненты
вдоль оси x:
- _i . L_;
Чтобы ввести правила коммутации между каждыми компонентами и
, следует написать эти коммутаторы и ввести весь их набор в Setup. Если их много, как в данном примере, следует использовать Matrix и функцию с индексами. Введите основную информацию как процедуру: C представляет коммутатор компонент векторов
и
:
- C := (a_, i, b_, j) -> %Commutator(Component(a_, i),
Component(b_, j));
Задание i и j от 1 до 3 обозначает компоненты и
, а алгебра задается как набор:
- algebra := (i, j) -> (
C(r_, i, p_, j) = I*KroneckerDelta[i,j],
C(r_, i, r_, j) = 0,
C(p_, i, p_, j) = 0);
Тогда все коммутаторы между каждой из компонент и
можно сконструировать одним вызовом Matrix:
- Matrix(3, 3, algebra);
Передав эту Matrix в Setup, задаем набор алгебраических правил:
- Setup(%);
Например, зададим набор величин и
-компонент
:
- Lx := _i . L_;
- Ly := _j . L_;
- Lz := _k . L_;
Проверим алгебру коммутаторов для этих компонент :
- Commutator(Lx, Ly) = I * Lz;
- Commutator(Lz, Lx) = I * Ly;
- Commutator(Ly, Lz) = I * Lx;
Эти выражения – правильные.
Другими часто используемыми операторами являются операторы рождения и уничтожения (Annihilation и Creation): они добавляют или убирают одно из значений квантового числа. Эти операторы удобны для работы с многочастичными векторными состояниями. В этом контексте квантовые числа называются числами заполнения.
Следующее выражение конструирует пару операторов уничтожения/рождения, действующих на базис А, состоящий только из одного квантового числа.
- am := Annihilation(A);
- ap := Creation(A);
Операторы Annihilation и Creation действуют на векторы Ket дискретного базиса, и предполагается, что получается «нижнее» состояние, когда квантовое число = 0 (часто встречающийся термин «вакуум» – это Ket с числом заполнения = 0, который представляет состояние «нет частиц»).
- am . Ket(A, n);
- am . %;
- ap . Ket(A, n);
- ap . %;
Commutator операторов и
получается автоматически при конструировании (обратите внимание на использование инертной формы коммутатора %Commutator):
- %Commutator(am, ap);
- value(%);
Чтобы указать, что составляющие базис векторы Ket – это фермионы, используйте переменную anticommutative для обозначения базиса; добавляя префикс anticommutative к переменой, используйте Setup:
- Setup(anticommutativeprefix = Theta);
- type(Theta, anticommutative);
- Ket(Theta);
Сконструируем теперь операторы Annihilation и Creation, действующие на базис. Примените notation = explicit, чтобы операторы действовали явно на базис и квантовые числа:
- Am := Annihilation(Theta, notation = explicit);
- Ap := Creation(Theta, notation = explicit);
AntiCommutator этих операторов удовлетворяет соотношению:
- %AntiCommutator(Am, Ap);
- value(%);
Согласно принципу запрета Паули в состоянии фермиона может быть только одна квантовая частица, поэтому начинаем с вакуума:
- Ket(Theta, 0);
- Ap . %;
- Ap . %;
- Am . %%;
И именно так: оператор уничтожения, действуя на вакуум, возвращает 0:
- Am . %;
Коммутационное соотношение подразумевает, что
- restart; with(Physics); Setup(math = true);
Рассмотрим две сопряженных наблюдаемых величины Q, P и соответствующие эрмитовы операторы, удовлетворяющие .
- macro(h = `ℏ`):
- Setup(Hermitian = {Q,P}, %Commutator(Q,P) = I*h);
Пусть система с Q и P находится в некотором состоянии , нормированном на 1, и пусть
есть состояние по умолчанию для расчета Brackets:
- Setup(%Bracket(psi, psi) = 1, bracketbasis = psi);
Средние значения операторов Q и P в состоянии задаются как
- Qm := Bracket(Q);
(Кратко – для Bracket(psi, Q, psi) после задания базиса (bracketbasis) для ψ.)
- Pm := Bracket(P);
Введем эрмитов оператор Δ и обозначим Δ(Q) и Δ(P) операторы, представляющие отклонения от средних значений и
.
- Setup(her = Delta);
- DQ := Delta(Q) = Q – Bracket(Q);
- DP := Delta(P) = P – Bracket(P);
Значение Commutator между Δ(Q) и Δ(P) – это следствие значения Commutator между Q и P, и поэтому его можно вычислить, переписав отклонения через Q и P:
- %Commutator(Delta(Q), Delta(P));
- eval(%, {DQ, DP});
- value(%);
Считая этот результат алгебраическим правилом, расчеты можно вести непосредственно с Δ(Q) и Δ(P):
- Setup(%%% = %);
Чтобы показать, что подразумевает
, рассмотрим действие этих операторов отклонения Δ(Q) и Δ(P) на состояние системы
и сконструируем с ним новый Ket, содержащий вещественный параметр λ:
- Ket(Psi, lambda) := (Delta(Q) + I*lambda*Delta(P)) .
Ket(psi);
Квадрат нормы – это:
- Dagger(%) . %;
Примените Simplify к этой норме, учитывая коммутаторы и то, что λ – вещественная:
- Setup(alg, quiet);
- Simplify(%%) assuming lambda::real;
Это полином второй степени по λ, его дискриминант отрицателен или = 0:
- discrim(%, lambda) ≤ 0;
Выделяя , получаем нижнюю границу для
.
- isolate(%, h^2)/4;
Поскольку из следует
, поэтому Q и P тоже удовлетворяют
, т. е. произведение двух любых эрмитово сопряженных операторов, так же как и среднеквадратичных отклонений от них, удовлетворяет этому неравенству.