|
Tobin Fricke's Lab Notebook
|
|
|
| electromagnetic polarization |
[May. 18th, 2009|01:53 pm] |
The photon has total spin 1, so the allowed projections of spin along its direction of propagation are -1, 0, and +1. Therefore, naïvely I would believe that the photon (and therefore electromagnetic waves?) would have three polarizations. But for some reason the masslessness of the photon excludes one of these polarizations.
Question: How does masslessness exclude the third polarization? |
|
|
| photon wavefunction? |
[May. 18th, 2009|01:43 pm] |
The Schrödinger equation describes the quantum mechanics of a single massive non-relativistic particle. The Dirac equation governs a single massive relativistic spin-½ particle. The photon is a massless, relativistic spin-1 particle.
Question: What is the equivalent equation giving the quantum mechanics of a single photon, and why don't we talk about it? |
|
|
| gauge potentials |
[Apr. 26th, 2009|09:01 pm] |
A "gauge theory" is a theory in which our coordinates for the system somehow over-specify the state of the system. In these systems we can do a "gauge transformation", in which we perform a change of coordinates entirely within the realm of this redundancy, such that the new coordinates represent the same system.
Perhaps the simplest example is the gravitational potential. If Φ is the gravitational potential, then the acceleration of a test particle due to gravity is given by its gradient:
g = - grad Φ
This system is invariant under the gauge transformation that adds any constant value to Φ; that constant disappears in the gradient.
The electric and magnetic fields E and B may be computed from the scalar and vector potentials φ and A:
E = - grad φ - (d/dt)A B = curl A
These equations are invariant under the gauge transform
A goes to A + grad ψ φ goes to φ - (d/dt) ψ
where ψ(x,t) is any (sufficiently differentiable) scalar field.
The wikipedia article says that the existence of this gauge freedom up to any function ψ(x,t) means that the gauge freedom of electromagnetism is U(1), i.e. the group of the complex numbers of absolute value 1.
Question: I don't see the connection [no pun intended!]. How does choice of ψ(x,t) imply U(1)? What does the group describing the gauge freedom really mean? |
|
|
| radiation pressure |
[Mar. 22nd, 2009|10:04 pm] |
Light pushes. It exerts a force. Light that is reflected exerts twice the force of light that is absorbed. Ordinarily the force of light is much too weak to sense, but for extremely intense light sources, for very low-mass objects, or in the absence of other forces it can become significant. This force is called radiation pressure.
What is the force exerted on a mirror by a beam of light reflected by that mirror?
Each photon carries energy h ν and momentum h ν / c, where
ν is the frequency of the light h ≈ 6.626 × 10-34 Joule seconds is Planck's constant c = 299,792,458 meters per second is the speed of light
Therefore, if you have a beam of light with power P (in Watts, say, which is Joules per second), you can divide by h ν to get the number of photons per second, and then multiply by h ν / c to get the rate that momentum is delivered by the beam of light.
"Rate of momentum transfer" is otherwise known as a force (F = dp/dt). The rate of momentum transfer is actually twice the rate of momentum of the beam, because we are assuming that the beam is reflected by a mirror. (If a photon starts with momentum +p and is reflected off of the mirror, it ends up with momentum -p; the total momentum transfer is 2p.)
We get the expression for the force of a (totally reflected) beam of light of a given power:
F = 2 P / c where
P is the power of the light, c is the speed of light, and F is the resulting force.
How much light would be necessary to levitate a 100 gram object? To balance the force of gravity, we would need m g = 2 P / c, where g = 9.8 m/s/s is the acceleration due to gravity. Putting in the numbers, we find that 150 megawatts of light would be necessary to levitate a 100 gram object. |
|
|
| numerical quantum mechanics in one-dimension |
[Feb. 14th, 2009|02:43 pm] |
Open any introductory quantum mechanics textbook and you'll find an encyclopedia of the analytic and algebraic tooling useful in solving quantum mechanical problems. But why not numerical methods? I think ever since I first took introductory quantum mechanics in college, I've wanted to be able to solve for the energy eigenstates of a system numerically—this goes back to something I wrote earlier, that I don't feel I understand a problem until I can program a computer to solve it.
Anyway, in a burst of structured procrastination, I hammered out a short Matlab program to do just this for simple one-dimensional problems. It's great—type in an arbitrary potential, and a few seconds later you can see the eigenstates and eigenvalues.
( Read more... )
Without further ado, we find (numerically!) the usual eigenfunctions:

And the eigenvalues scale like n2, as expected:

Anyway, try playing with the complete matlab program. It's fun! Just put in a potential, run the program, and watch the eigenfunctions converge...
Notes:- I assume this would be totally impractical with problems of greater than 1-dimension, though of course for separable problems, you can solve for each separable part individually.
- There's no reason, necessarily, to do this all in the x basis. We could instead solve for the fourier or laguerre series of the eigenfunction, which might converge faster and/or have a nicer form for the derivative.
|
|
|
| finding eigenfunctions via numerical iteration |
[Feb. 13th, 2009|02:05 pm] |
Suppose we have an operator (or matrix) H and we want to find its eigenvectors and eigenvalues numerically. What do we do?
My first thought was to iterate. After all, an eigenvector/eigenvalue pair (v,λ) is a fixed point of the map
v maps to (H/λ)v
and iterated maps converge, if they converge at all, to fixed points. I imagined this algorithm:v ← a random vector
for some number of iterations,
v ← H v
v ← v / (v dot v) # make v a unit vector again
end It turns out, however, that this will converge to the eigenvector of H with the largest magnitude eigenvalue (if there is a largest eigenvalue). This is pretty easy to see if you think about your initial random vector v being written as a linear combination of eigenvectors of H. On each iteration of the loop, each component of v gets weighted by the corresponding eigenvalue; eventually the eigenvector component with the greatest eigenvalue will dominate.
I have in mind quantum mechanics, in which H will usually have a smallest eigenvalue (corresponding to the ground state) but not a greatest one. So, how do we turn this around?
It turns out that if v is an eigenvector of A with eigenvalue λ, then it's also an eigenvector of A-1, with eigenvalue 1/λ. This is also easy to see:
A v = λ v definition of eigenvector/eigenvalue
A-1 A v = λ A-1 v multiply both sides by A inverse
A-1 v = (1/λ) v re-arrange So to find the ground-state eigenfunction of H, we can simply apply the iteration algorithm to the inverse of H.
How do we find the next highest eigenvalue and corresponding eigenvector (the excited states)? Let's consider only the case that H is hermitian, as are all operators corresponding to observables in quantum mechanics. For a hermitian matrix, we know that eigenvectors corresponding to distinct eigenvalues are orthogonal.
This property allows us to bootstrap ourselves and climb up the ladder of eigenvalues. To find the next higher eigenvalue of H after we've found all the lower ones, we just have to add to our iteration the additional constraint that we want v to be orthogonal to all the earlier eigenvectors. This just means that we subtract the projection onto each of them.
This leads to the following Matlab code:for jj=1:N_eigenvectors_to_find
% start with a random vector
v = rand(size(x));
for ii=1:N_iterations
% Apply the map v <-- A v
v = Hinv * v;
% Subtract the projections of this vector onto
% all previously found eigenvectors
for kk=1:(jj-1)
v = v - vs(:,kk) * vs(:,kk)' * v;
end
% Make this a unit vector by dividing by its length
v = v/sqrt(v'*v);
end
% Store the newly found eigenvector in our list
vs(:,jj) = v;
endI just used this algorithm to find the first several eigenstates of several simple problems in one-dimensional quantum mechanics, with great satisfaction. The one part that makes me a little queasy is the need to invert H, but I have an idea for a scheme utilizing the variational principle to circumvent that. |
|
|
| hydrogenic wavefunction in mathematica |
[Feb. 3rd, 2009|08:28 pm] |
psi[n_, l_, m_, r_, θ_, φ_] :=
Factorial[ n + l] /
(Factorial[ 2 l + 1] Sqrt[(2 κ)^3 (2 n Factorial[n - l - 1])])
Exp[-κ r] (2 κ r)^l
Hypergeometric1F1[-n + l + 1, 2 l + 2, 2 κ r]
SphericalHarmonicY[l, m, θ, φ]where κ is the atomic number (Z) over the Bohr radius (a0). |
|
|
| God's program (in Matlab) |
[Oct. 16th, 2006|05:25 pm] |
hbar = 1.05457148e-34; % Planck's constant in m^2 kg / s
while (1),
% Advance the state of the system
psidot = (-i/hbar) * hamiltonian(psi);
psi = psi + psidot * dt;
end
|
|
|
| readings |
[Oct. 10th, 2006|12:35 pm] |
Recent wikipedia readings:
|
|
|
| Commutator brackets |
[Sep. 28th, 2006|03:32 pm] |
Dirac derives the quantum mechanical equivalent to the Poisson Bracket by solving for a function of two arguments that is linear in both arguments and obeys the Leibniz rule in both arguments.
( math ) |
|
|
| No Cloning Theorem |
[Sep. 26th, 2006|06:49 pm] |
Professor Jordan is giving an informal course on "mesoscopic physics" this term which looks to be a smörgåsbord of applied quantum mechanics. In the first lecture he talked about fabrication of quantum devices using the usual silicon photolithography processes, and then he introduced the No Cloning Theorem.
The No Cloning Theorem is an important result for quantum computing. It says that if you have a particle in an unknown state, you cannot put a second particle into the same state without destroying the state of the first particle. In other words, you can't copy quantum information.
( proof )
In practice, I am told, there are certain limits on the error of how well you can copy a quantum state—a sort of information-copying uncertainty principle that says the better a copy you make, the more the original is destroyed. |
|
|
| tensors |
[Mar. 31st, 2005|10:45 pm] |
massive confusion about tensors (usenet post):
I am trying to get a handle on tensors. Specifically, 'irreducible tensors'. 'Spherical irreducible tensors' even.
My understanding is that a tensor is a function from V^p (V*)^q into a field F, where V is a vector space, V* is the dual space (i.e. the space of linear maps from V into F), and V^n = VxVxVx...xV, where 'x' is the tensor product. The tensor product is like the cartesian product except there are some additional equivalence relations on the resulting space, such as (0,y) = (x,0) = 0. Assuming that (VxV)* = (V*xV*) then you can say that a tensor is an element of the space (V^p (V*)^q)* which equals (V*)^p V^q. How's that?
A tensor T is irreducible if it cannot be written as a sum of tensors of the same rank. This confuses me very much. Given a rank-n tensor on a d-dimensional space, you can write it out with respect to a basis as an array of d^n numbers, much as you can write out a representation of a linear operator as a d-by-d matrix. Every d-by-d matrix represents a linear operator on a d-dimensional space; similarly, every array of d^n numbers represents a tensor in a given basis. So what's to stop me from decomposing this tensor indefinitely into sums -- I can certainly well write a matrix as a sum of as many other matrices as I desire. There must be some invariant property that the summed tensors must have in order for a reduction to be valid -- but I am not sure what this property is.
Is there such a thing as 'irreducible vectors' or 'irreducible matrices'?
I'm told that "A tensor is a representation of a linearly acting group: GL(n), O(n), U(n), ... depending on what the basic vector space you're starting with, and whether you have an inner product defined on it," but I'm not sure what that means. I know what a group representation is: a homomorphism from the group into GL(n). I suppose 'linearly acting' refers to a group action.
The usual demonstration of reducibility of tensors starts by taking a dyadic tensor T_ij = U_i V_j and showing that it can be written as a sum of a scalar (U dot V delta_ij/3), an antisymmetric part, and a symmetric traceless part. The demonstration is clear enough, but I am not certain what is so special about being traceless or about being symmetric or anti-symmetric. Sakurai then shows that these components have 1, 3, and 5 degrees of freedom, and then makes the leap: "This suggests that the dyadic has been decomposed into tensors that can transform like spherical harmonics with l=0, l=1, and 2." This 'suggestion' leaves me really unconvinced and dissatisfied.
The demonstration that a 'spherical irreducible tensor' can be written in terms of Wigner function is clear enough, but I don't see the connection between 'spherical irreducible tensors' and general tensors.
Another big of confusion I have is in the two viewpoints of a tensor both as 'data' and as an operator. The stress tensor is something I think of as 'data', and even, say, angular momentum eigenstates seem like 'data'. Whereas a matrix I usually consider an 'operator'. I assume this is related to dual spaces -- i.e. a vector is usually 'data', but its dual is an operator from the vector space into a field. Eh? |
|
|
| variational method |
[Mar. 23rd, 2005|01:57 pm] |
In lecture today Prof. Rajeev applied the variational principle to the expected energy 〈ψ|H|ψ〉 [where H=p2/2m + V(x)], using the method of Lagrange multipliers to minimize E(ψ)=〈ψ|H|ψ〉 subject to the constraint G(ψ)=〈ψ|ψ〉=1. The result is that the condition Hψ=Eψ pops out, e.g. the lowest energy is the energy of an eigenstate of H. But didn't we already know this about the ground state energy, i.e. that we can decompose any state into eigenstates of H, and one of those eigenstates must have lowest energy? |
|
|
| raising operator |
[Mar. 21st, 2005|06:51 pm] |
Any time we have a commutation relation of the form [N,X] = cX for a scalar c, we will have an operator X that acts as a raising (or lowering, if c < 0) operator for the eigenvalues of N.
NX |n〉 = NX |n〉
NX |n〉 = (XN + [N, X]) |n〉
NX |n〉 = (XN + c X) |n〉
NX |n〉 = XN |n> + cX |n〉
NX |n〉 = Xn |n> + cX |n〉
NX |n〉 = (n+c) X|n〉
X |n〉 = a |n+c〉 for some a
Submitted to Wikipedia as Raising operator. |
|
|
| tensor operators |
[Feb. 3rd, 2005|03:19 pm] |
Our quantum mechanics homework involves the following operator:
H = σ(1) dot (σ(2) cross σ(3))
However, each of the sigmas above is a vector operator, containing, as components, the three pauli operators:
σ(i) = (σ(i)x, σ(i)y, σ(i)z)
We're to find the eigenvectors/values of H, which should be simple enough. What I am looking for is the intuitive way to view these 'vector operators' -- what happens when you take a dot or cross product of them, for example?
It seems to me that I could pretend that this operator H is acting on a "vector of vectors" (x1, x2, x3), where xi lives in the space of the ith particle, and that ought to simplify things, since σ(j) acts as the identity on xi where i and j are different, and the effect of σ(i) on xi is well-known.
I suspect that "vector operator" is a code word for tensor and that there's a really nice way of dealing with this.. I just have to figure it out. |
|
|
| angular momentum operators on tensor product spaces |
[Jan. 26th, 2005|05:30 pm] |
Okay. Clebsch-Gordon coefficients. Say we have a spin j1 particle which lives in space V1 and a spin j2 particle which lives in space V2. Each of these particles can have the z-axis projection of its spin range from -j...j, so each particle has 2j+1 possible states, labelled as |j m〉. This means that for the system of two particles, there are (2j1+1)(2j2+1) possible states in the "product space". For instance, if we have two spin ½ particles, with the m=-½ state labelled as |↓〉 and the m=+½ state labelled as |↑〉, then a basis of product states for the tensor product space V1⊗V2 is {|↑〉,|↓〉}⊗{|↑〉,|↓〉}={|↑〉|↑〉, |↑〉|↓〉, |↓〉|↑〉, |↓〉|↓〉}. In this basis we've labelled states with |m1 m2〉 (with j1 and j2, which are fixed, implied). What we want to do is form a change of basis from the |m1 m2〉 basis to a "total spin" basis |J M〉. We accomplish this principally using two facts: (1) the "extremal states" in the two bases are identical. Namely, |J=(j1+j2) M=J〉=|j1 j1〉|j2 j2〉. (2) On this identity we can apply the lowering operator, J_. On the "total spin" basis, this operator just decrements M by one and spits out some coefficient (which we can ignore). On the product space basis, we must remember that J_ = J_(1) + J_(2), i.e. it is the sum of two operators, one which acts on each space. More properly, this is written J_ = J_(1)⊗I(2) + I(1)⊗J_(2). Essentially we can fill in another row of the change of basis matrix each time we apply the lowering operator J_. This will get us all of the J=j1+j2) states. However, to get a complete total-spin basis, you also get lower values of J, which I haven't quite figured out yet.
Anyways. Here's a sample numerical application of this in Matlab. I want to compute the good-old ½⊗½, i.e. a system of two spin-½ particles. First we get the familiar pauli spin matrices as our Jx, Jy, and Jz:
j = 1/2;
[Jx,Jy,Jz,Jminus,Jplus] = Joperators(j);
Now let's prepare a "maximal" state. Since our basis is ordered from m=-j to m=+j, the maximal state is the last state in the basis:
v = [0 0 0 1]';
Now we can form our total-J lowering operator as J_ = J_(1)⊗I(2) + I(1)⊗J_(2). Note that, since j1=j2 for this example, the matrix representations of J_(1) and J_(2) are the same.
JAYminus = kron(eye(2),Jminus) + kron(Jminus, eye(2));
This is a 4x4 matrix which operates on the product space. Now watch this magic:
>> (JAYminus^0 * v)'
ans = 0 0 0 1
>> (JAYminus^1 * v)'
ans = 0 1 1 0
>> (JAYminus^2 * v)'
ans = 2 0 0 0
Ignore the numerical values for the moment, since I've thrown away some square-roots and hbars in the J operators. What this is telling us is that, assuming that |J=1 M=1〉 is identically equal to |↑↑〉, we can lower that once to find out that |J=1 M=0〉 is made out of equal parts of |↑↓〉 and |↓↑〉, and that |J=1 M=-1〉 is identically |↓↓〉. We just have to normalize each of these states to get our new set of orthonormal eigenstates spanning the total-J space—well, the subspace with J=j1+j2. How to systematically get the J<j1+j2 states is the next step. |
|
|
| angular momentum operators |
[Jan. 26th, 2005|02:58 pm] |
I never feel like I actually understand something until I can write a computer program to compute or simulate it, since writing a computer program necessarily requires a full understanding of the algorithm behind some process. Something that's long seemed rather mysterious to me is Clebsch-Gordon coefficients, which give you the decomposition of a direct product space of angular momenta into a direct sum space of angular momenta. Or something like that. Anyway, as a first start to writing a program to compute Clebsch-Gordon coefficients, I've written this little program that computes the Jx, Jy, and Jz matrices for a z-axis spin eigenstate of total spin j. This program omits a square root from Jx and Jy, and a factor of Planck's constant from everything. This is so that I can work with integers and simple fractions instead of decimal approximations.
function [Jx,Jy,Jz] = Joperators(j)
% The basis ranges from <j -j| to <j j| in increments of 1
mvalues = -j:1:j;
cardinality = length(mvalues);
% Jminus is zero except for directly above the diagonal
% There is an implicit \hbar and square root
Jminus = zeros(cardinality);
for i=2:cardinality,
m = mvalues(i);
Jminus(i-1, i) = j*(j+1) - m*(m-1);
end
Jplus = zeros(cardinality);
for i=1:(cardinality-1),
m = mvalues(i);
Jplus(i+1, i) = j*(j+1) - m*(m+1);
end
Jx = (1/2) * (Jplus + Jminus);
Jy = (-i/2) * (Jplus - Jminus);
Jz = diag(mvalues);
|
|
|
| navigation |
| [ |
viewing |
| |
most recent entries |
] |
| |
|
|