Начиная с вектора Psi_0
Я определяю распространяющийся вектор как Psi (t) = exp{-iHt} Psi_0
, где H
- матрица смежности (но я думаю, что это не имеет отношения к моей проблеме здесь). Мне нужно рассчитать
1/tau * int^tau_0 |<j|psi(t)>|^2 dt
Я пытался сделать это следующим образом, но это не работает
psi_0 = diag(eye(N))/N;
Psi_t = zeros(N);
Psi_sqared = @(t) (expm(1j*A*t)*psi_0).*(expm(-1j*A*t)*psi_0);
c_tqw = integral(Psi_sqared, 0, 10000)/10000;
Ошибка следующая
Error using *
Incorrect dimensions for matrix multiplication. Check that the number of columns in the first matrix matches the number of rows in the
second matrix. To perform elementwise multiplication, use '.*'.
Error in centrality_measure>@(t)(expm(1j*A*t)*psi_0).*(expm(-1j*A*t)*psi_0)
Error in integralCalc/iterateScalarValued (line 314)
fx = FUN(t);
Error in integralCalc/vadapt (line 132)
[q,errbnd] = iterateScalarValued(u,tinterval,pathlen);
Error in integralCalc (line 75)
[q,errbnd] = vadapt(@AtoBInvTransform,interval);
Error in integral (line 88)
Q = integralCalc(fun,a,b,opstruct);
Error in centrality_measure (line 75)
c_tqw = integral(Psi_sqared, 0, 10000)/10000;
Любое предложение, чтобы избежать этой ошибки?