필터 지우기
필터 지우기

How do I mulltiply a complex conjugate vector by its second derrivative (also complex) to get a real number?

조회 수: 1 (최근 30일)
I want to perform calculation in quantum mechanics of the kinetic energy using the mimentum representation: for this I want to calculate an integral of the following: % I give here a very short version of psi just for the sake of the example psi = [0.0100 + 0.0172i 0.0106 + 0.0109i 0.0087 - 0.0017i 0.0081 - 0.0137i 0.0101 - 0.0189i]; z=[1:1:5]; dz = z(2)-z(1); in order to calculate the integral, I need to multiply psi with its second derrivative (which stands for the momentum) mutilplied by a certian constant. hbar=1.05457e-34; m=1.44e-25; %mass of Rb87 in kg Kinetic_E = h_bar/2/m*trapz(z(2:end-1), psit(2:end-1).*diff(diff(psit))*dz)
now, the kinetic energy of course needs to be real, even though psi is complex. The problem is that sice the second derivative shortens psi by two terms, then in order to perform the multiplication I must shorten psi as well. but his way I get a phase into this multiplication and the kinteic energy becomes complex, Of course if I multiply only psi' (complex conjugate) with psi I get a real number.
How can I solve this but still to multiply second derivative of psi with psi and get a real number?
Thanks Gal

답변 (1개)

Torsten
Torsten 2022년 10월 27일
편집: Torsten 2022년 10월 27일
I don't know why psi*psi'' should be real, but here is a method to avoid shortening "psi".
psi = [0.0100 + 0.0172i 0.0106 + 0.0109i 0.0087 - 0.0017i 0.0081 - 0.0137i 0.0101 - 0.0189i];
z=[1:1:5];
dz = z(2)-z(1);
hbar=1.05457e-34;
m=1.44e-25; %mass of Rb87 in kg
Kinetic_E = hbar/2/m*trapz(z, psi.*gradient(gradient(psi))*dz)
Kinetic_E = 5.5227e-14 - 1.9940e-14i

카테고리

Help CenterFile Exchange에서 Quantum Mechanics에 대해 자세히 알아보기

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by