2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки


Правила форума


В этом разделе нельзя создавать новые темы.



Начать новую тему Ответить на тему
 
 Как дополнить N ортогональных векторов до N+2мерного базиса?
Сообщение01.01.2012, 23:53 


09/08/11
78
Я пытаюсь сделать матрицу, которая бы имела спектр, равный первым nmax состояниям квантовой частицы в бесконечной одномерной потенциальной яме, а собственные векторы чтобы были дискретными аппроксимациями волновых функций.
Вот как я это делаю: http://simplest-image-hosting.net/png-0 ... -123741-am
Проблема в том, что волновые функции состояний nmax-1 и nmax, как я понимаю, осциллируют с частотой Найквиста и выше. Поэтому для nmax-1 волновая функция оказывается продискретизирована в нулях, а nmax оказывается линейно зависим от nmax-2 (что видно на ArrayPlot).
Поэтому я отбраковываю такие функции (ибо они испортят и спектр, и собственные векторы матрицы). Однако, тогда возникает вопрос: как найти ещё два вектора, ортогональных остальным, т.е. дополнить существующий набор ортогональных векторов до базиса? Если бы остался всего один вектор, можно было бы его найти через векторное произведение, а когда два - даже не знаю, как решить эту задачу...

 Профиль  
                  
 
 Re: Как дополнить N ортогональных векторов до N+2мерного базиса?
Сообщение02.01.2012, 01:12 
Заслуженный участник
Аватара пользователя


23/07/08
10910
Crna Gora
У Вас координата $x$ после дискретизации принимает $N_{\max}$ значений:
$0, h, 2h, ..., L$,
где $L$ -- ширина потенциальной ямы $0\leqslant x \leqslant L$,
$h=\frac L{N_{\max}-1}$ -- шаг сетки. Правильно я Вас понял?

Но эта сетка не очень хорошая: первые $N_{\max}$ собственных векторов $\psi_n(x)=\sin\frac{\pi n}L x$, $1\leqslant n \leqslant N_{\max}$ оказываются на ней линейно зависимыми. Тут ничего не поделаешь.

Попробуйте сделать немного по-другому -- возьмите узлы сетки в других точках, а именно:
$\frac h 2, \frac h 2+h, \frac h 2+2h, ..., L-\frac h 2$,
где $h=\frac L{N_{\max}}$ (уже без вычитания единицы), всего $N_{\max}$ точек. Это ничем не хуже.
Общая формула для узлов: $x_m=\frac h 2+ mh$, $0\leqslant m<N_{\max}$.

 Профиль  
                  
 
 Re: Как дополнить N ортогональных векторов до N+2мерного базиса?
Сообщение02.01.2012, 02:09 


09/08/11
78
Цитата:
Правильно я Вас понял?

Абсолютно правильно.

Цитата:
возьмите узлы в других точках

Я хотел сделать так, чтобы нулевые граничные условия были точно выражены в матрице, поэтому не хотел сдвигать $x_m$. Хотя, конечно, этот вариант работает красивее :)
В моём случае сработали два таких вектора: {1,0,...,0} и {0,...,0,1}. Да, они не соответствуют гранусловиям, но я их просто запихаю в конец спектра и буду учитывать, что это "dummy"-векторы.

Правильно я понимаю, что сделать все векторы с нулями на краях не получится при требовании их ортогональности?

-- 02.01.2012, 03:49 --

@svv
Отлично. Ваш способ превосходно подошёл для матрицы с периодическими граничными условиями.
Спасибо за помощь.

 Профиль  
                  
 
 Re: Как дополнить N ортогональных векторов до N+2мерного базиса?
Сообщение02.01.2012, 03:11 
Заслуженный участник
Аватара пользователя


23/07/08
10910
Crna Gora
10110111 писал(а):
Правильно я понимаю, что сделать все векторы с нулями на краях не получится при требовании их ортогональности?
Мне трудно ответить на этот вопрос, так как я не очень представляю, на какое "насилие" здесь вообще можно пойти ради получения желаемого. :D

Возьмём Вашу исходную сетку. Введём величину $N=N_{\max}-1$ (она удобнее). Тогда $h=\frac L N$.
Пусть $\psi_n(x)=\sin\frac{\pi n}L x$, и $x_m=mh$. Здесь $0\leqslant m \leqslant N$, $n\geqslant 1$.
Составим матрицу $A$, в которой каждый элемент $a_{mn}$ равен значению $n$-го собственного вектора в $m$-й точке (понятно, это не та матрица, что Вы ищете). Строки (соответствуют узловым точкам) нумеруются с $0$ до $N$, а столбцы (соответствуют векторам) с $1$ до некоторого достаточно большого номера.
Явный вид элементов матрицы:
$a_{mn}=\psi_n(x_m)=\sin\frac{\pi m n}N$

Так с такими собственными векторами $\psi_n$, рассматриваемыми на таких точках $x_m$, сразу получим, что:
$a_{mN}=\sin \pi m=0$
$a_{m, N+n}=\sin\frac{\pi m (N+n)}N = \sin\frac{\pi m (2N - (N-n))}N= -a_{m, N-n}$
То есть только первые $N-1$ векторов будут линейно независимыми, это при $N+1$ точках. Вы это и подтвердили Вашими численными экспериментами.

-- Пн янв 02, 2012 02:19:17 --

Ага, не сразу заметил добавление.
Рад был помочь, счастливых волновых функций! :D

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group