Скачать 219.42 Kb.
|
БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ Выпускная работа по «Основам информационных технологий» Магистрант кафедры численных методов и программирования Циунчик Анна Сергеевна Руководители: доктор физико-математических наук Волков Василий Михайлович, ст. преподаватель Кожич Павел Павлович Минск – 2008 г. ОглавлениеОглавление 3 Список обозначений ко всей выпускной работе 4 Реферат на тему «Применения современных ИТ при решении уравнений шредингеровского типа» 5 Введение 5 Глава 1 (обзор литературы). 5 Глава 2 (методика исследования). 7 Глава 3 (основные результаты). 7 Одномерное дискретное прямое и обратное преобразование Фурье 9 Двумерное дискретное прямое и обратное преобразование Фурье 13 Использование дискретного преобразования Фурье для решения уравнений математической физики. 15 Глава 4 (обсуждение результатов). 17 Заключение. 18 Список литературы к реферату. 19 Предметный указатель к реферату. 20 Интернет ресурсы в предметной области исследования. 21 Действующий личный сайт в WWW (гиперссылка). 22 Граф научных интересов 23 Презентация магистерской (кандидатской) диссертации. 25 Список литературы к выпускной работе. 28 Список обозначений ко всей выпускной работеНУШ – нелинейное уравнение Шредингера БДПФ – быстрое дискретное преобразование Фурье ИТ – информационные технологии Реферат на тему «Применения современных ИТ при решении уравнений шредингеровского типа»ВведениеТрадиционный подход к построению численных методов решения нестационарных задач математической физики основан на переходе от исходной дифференциальной задачи к некоторой ее дискретной модели. Существуют различные способы построения дискретных моделей дифференциальных задач. В методе конечных разностей, например, переход к дискретной модели осуществляется путем замены непрерывных производных их разностными аналогами, заданными на некотором подмножестве узлов сетки. В итоге исходная задача сводится к системе алгебраических уравнений с разреженной матрицей. В спектральных методах решение представляется в виде обобщенного ряда Фурье конечной длины, в результате чего дальнейшая задача сводится к нахождению данных коэффициентов. При выборе численного метода решения конкретных задач основными критериями являются порядок аппроксимации и вычислительная сложность алгоритма его реализации. Вычислительная сложность алгоритма считается оптимальной, если количество арифметических операций при его реализации возрастает пропорционально числу узлов сетки. Разностные методы решения одномерных и некоторые классы экономичных методов для многомерных задач математической физики, как правило, отвечают критериям оптимальной вычислительной сложности. Что касается спектральных методов, то их вычислительная сложность несколько выше оптимальной. Например, метод Фурье при использовании быстрых алгоритмов прямого и обратного преобразований имеет вычислительную сложность порядка . В то же время спектральные методы имеют, как правило, более высокую точность, сравнимую с точностью спектрального представления решения. Целью данной работы является применение инструментальных средств MATLAB для решения данного типа уравнений, визуализация решения, а также показать, что данный пакет является очень хорошим помощником при исследовательской работе. Глава 1 (обзор литературы).MATLAB – мощнейшее средство и отличный помощник для исследования задач математической физики. Многие авторы посвятили свои работы данному пакету. К примеру, книга В.Потемкина «Вычисления в среде MATLAB» посвящена организации вычислений в системе MATLAB версии 6.5. В ней нашли отражение как общие вопросы описания вычислений в режиме командного окна, так и специальные вопросы, связанные с характеристиками арифметики с плавающей точкой, особенностями отладки и профилирования М-файлов, применением специально разработанного ускорителя времени исполнения Just-In-Time Accelerator (JIT-Accelerator). Последний позволяет существенно повысить эффективность вычислений в среде MATLAB, приближая их к эффективности процедурных языков третьего поколения. Разделы, связанные с описанием специальных функций, работы с полными и разреженными матрицами, приведены в соответствие с теми изменениями, которые обусловлены реализацией новых алгоритмов и изменением состава операторов. Книга снабжена приложениями, в которых представлено описание текстового редактора Editor, описание класса объектов polynom, пакета прикладных программ для вычисления клеток Жордана – JORD. Изложенный материал дает исчерпывающее описание среды организации вычислительных работ в системе MATLAB. Книга предназначена для инженеров и исследователей, выполняющих научные и инженерные разработки в различных прикладных областях, а также для студентов университетов и вузов, нуждающихся в мощном вычислительном инструменте при выполнении исследовательских работ, курсовых и дипломных проектов. В книге В.Говорухина и В.Цибулина «Компьютер в математическом исследовании: Maple, MATLAB, LaTeX» говорится о программных средствах, позволяющим провести весь цикл математического исследования: от непосредственного решения задачи (аналитического или численного) до подготовки статьи к печати. Под единой обложкой даны описание и примеры использования системы аналитических вычислений Maple, вычислительного пакета MATLAB и системы подготовки публикаций LaTeX. Авторы стремились показать, что система аналитических вычислений Maple и вычислительная среда MATLAB - хороший выбор для проведения любого исследования, где требуется математика - от курсовой работы до научного открытия. В книге Г. Агравала «Нелинейная волоконная оптика» систематизированы результаты по нелинейной волоконной оптике за первые 20 лет ее развития, с единых позиций рассмотрены вопросы формирования оптических солитонов, параметрические процессы, а также различные приложения указанных эффектов в разных информационных системах. В книге А. А. Самарского «Теория разностных схем» излагаются современные методы разностного решения задач математической физики и относящиеся сюда вопросы теории разностных схем. Книга включает следующие разделы: однородные разностные схемы для решения одномерных уравнений параболического и гиперболического типов, разностные схемы для уравнений эллиптического типа, теория устойчивости разностных схем, экономичные методы решения многомерных задач математической физики. Итерационные методы решения разностных уравнений. В книге содержится значительное количество примеров, иллюстрирующих основные положения теории. Глава 2 (методика исследования).В реферате использовались классические методы теории дифференциальных уравнений, экспериментальные подходы. Глава 3 (основные результаты).Нелинейное уравнение Шредингера (НУШ) в одной из наиболее общих формулировок, встречающихся в физических приложениях данного класса задач, имеет вид (1) Наиболее содержательные приложения данного уравнения связаны с моделированием динамики сверхкоротких импульсов длительностью секунд в средах с показателем преломления, зависящим от интенсивности излучения [1]. Уравнение (1) является одним из актуальных обобщений НУШ с кубической нелинейностью на случай учета дисперсии нелинейности () и инерционности нелинейного отклика среды (). При рассмотрении уравнения (1) в качестве математической модели динамики оптических импульсов в нелинейной среде переменная имеет смысл времени, а эволюционная переменная z – дистанция распространения. Решение данного уравнения описывает изменения комплексной огибающей электрического поля светового импульса в зависимости от дистанции распространения. С точки зрения теории нелинейных волн и задач современных оптических информационных технологий наибольший теоретический и практический интерес представляет изучение динамики локализованных решений уравнения (1), т.е. решений, отличных от нуля на ограниченном отрезке времени: . Для такого класса задач уравнение (1) может быть корректно дополнено периодическими или однородными краевыми условиями: б.) в.) (2) Уравнение (1.1) в случаях интегрируемо с помощью метода обратной задачи рассеяния и имеет семейство солитонных решений (3) В случаях задача (1)-(2) также имеет солитонные решения вида (4) где - положительные действительные постоянные, 0 определяют начальное положение и начальную фазу солитона. Методы Фурье получили наиболее широкое распространение при решении уравнений шредингеровского типа, а также лежит в основе цифровых корелляторов и методов свертки, активно используется при спектральном анализе (практически в чистом виде), применяется при работе с длинными числами. Рассмотрим для начала функции, с помощью которых методы Фурье реализуются в среде MATLAM. Несложно заметить, что оператор преобразования Фурье может быть представлен в виде прямоугольной матрицы NxN, т.е. выполнение дискретного преобразования равносильно нахождению произведению матрицы на вектор. Матрица дискретного преобразования Фурье имеет вид , Непосредственное умножение матрицы на вектор реализуется с вычислительными затратами порядка N 2. Тем не менее, можно обойтись существенно меньшим числом операций, если учесть наличие одинаковых элементов в матрице и их периодичность. На этом принципе основаны алгоритмы быстрого дискретного преобразования Фурье (БПФ). В основе БПФ лежит идея о том, что для четного N можно разделить преобразование Фурье от всего массива на сумму преобразований от элементов с четными и от элементов с нечетными номерами: Первое слагаемое в сумме соответствует ДПФ от элементов с четными номерами, второе - от элементов с нечетными. Если N не просто четное, а кратное четырем, то можно рекурсивно применить этот процесс к полученным слагаемым. Если N является степенью двойки, то процесс можно свести к вычислению ДПФ от одного числа. Этот процесс повторяется log2 N раз для всех N значений преобразования. Именно эта идея и является основной в БПФ, а всё остальное - лишь улучшениями, повышающими скорость или качество работы алгоритма. Одномерное дискретное прямое и обратное преобразование ФурьеРассмотрим синтаксис одномерного дискретного прямого и обратного преобразования Фурье в MatLab. Y = fft(X) X = ifft(Y) Y = fft(X, n) X = ifft(Y, n) Функция Y = fft(X) вычисляет для массива данных X дискретное преобразование Фурье, используя FFT-алгоритм быстрого Фурье-преобразования. Если массив X двумерный, вычисляется дискретное преобразование каждого столбца. Функция Y = fft(X, n) вычисляет n-точечное дискретное преобразование Фурье. Если length(X) < n, то недостающие строки массива X заполняются нулями; если length(X) > n, то лишние строки удаляются. Функция X = ifft(Y) вычисляет обратное преобразование Фурье для массива Y. Функция X = ifft(Y, n) вычисляет n-точечное обратное преобразование Фурье для массива Y. А теперь опишем сам алгоритм БПФ Если длина последовательности входных данных является степенью числа 2, то применяется алгоритм быстрого преобразования Фурье с основанием 2, имеющий максимальную производительность. Этот алгоритм оптимизирован для работы с действительными данными; если данные комплексные, то реализуется комплексное преобразование Фурье. Эффективность первого на 40 % выше второго. Если длина входной последовательности не является степенью числа 2, то применяется преобразование со смешанными основаниями, которые определяются как простые множители длины входной последовательности, которая при необходимости подвергается усечению. Время расчета существенно зависит от значения длины последовательности. Если значение длины точно разлагается на простые множители, то вычисления для такой последовательности выполняются достаточно быстро; если же не все множители оказываются простыми, и даже их будет меньше, то время вычисления существенно возрастает. Если сравнивать эффективность вычислений, то преобразование Фурье с основанием 2 действительной последовательности из 4096 точек занимает 2.1 с, а комплексной - 3.7 с. Обычное преобразование Фурье для последовательности из 4096 точек занимает 7 с, а для последовательности из 4098 точек - 58 с. Примеры: Распределение коэффициентов фурье ДПФ: Возьмем ПФ от функции, представляющую собой сумму гармонических волн пусть n=4. f=zeros(8); x=-pi:2*pi/8:pi-pi/4; for k=1:8 f(k,:)=abs(k-4)*exp(i*(k-4)*x); end Fx=sum(f); Fw=fft(Fx); Fs=fftshift(Fw); subplot(1,2,1), bar(abs(Fw)/8) subplot(1,2,2), bar(-4:3,abs(Fs)/8) Рисунок 1 - Распределение коэффициентов Фурье ДПФ до и после применения функции fftshift После преобразования Фурье коэффициенты в выходном массиве распределяются следующим образом. Вначале первые N-1 позиция – коэффициенты, соотвествующие положительным частотам в порядке возрастания частоты. Далее идет отрицательная часть спектра тоже в порядке возрастания частоты. Функция fftshift позволяет расположить коэффициенты фурье симметрично на полуинтервале [W/2,W/2) Основное назначение преобразования Фурье - выделить частоты регулярных составляющих сигнала, зашумленного помехами. Рассмотрим данные, поступающие с частотой 1000 Гц. Сформируем сигнал, содержащий регулярные составляющие с частотами 50 Гц и 120 Гц и случайную аддитивную компоненту с нулевым средним. t = 0:0.001:0.6; s = sin(2 * pi * 50 * t) + sin(2 * pi * 120 * t); y = s + randn(size(t)); figure; plot(y(1:256)) Рисунок 2. – сигнал без цифровой обработки. Y=fft(y,512); Pyy = 2*Y.*conj(Y)/256^2; f = 1000 * (0:255)/512; figure(2), plot(f, Pyy(1:256)), grid Рисунок 3 – сигнал после одномерного преобразования Фурье Двумерное дискретное прямое и обратное преобразование ФурьеДалее представлен синтаксис двумерного дискретного прямого и обратного преобразования Фурье в MATLAB: Y = fft2(X) X = ifft2(Y) Y = fft2(X, m, n) X = ifft2(Y, m, n) Функция Y = fft2(X) вычисляет для массива данных X двумерное дискретное преобразование Фурье. Если массив X двумерный, вычисляется дискретное преобразование для каждого столбца. Функция Y = fft(X, n) вычисляет n-точечное дискретное преобразование Фурье. Если length(X) < n, то недостающие строки массива X заполняются нулями; если length(X) > n, то лишние строки удаляются. Функция X = ifft(Y) вычисляет обратное преобразование Фурье для массива Y. Функция X = ifft(Y, n) вычисляет n-точечное обратное преобразование Фурье для массива Y. А теперь перейдем к непосредственному использованию дискретного преобразования Фурье для решения уравнений шредингеровского типа. [2] Рассмотрим одномерное однородное уравнение Шредингера , , , , (5) с периодическими граничными условиями и начальными условиями в виде финитной функции (функции, принимающей ненулевые значения на конечном отрезке оси , ): , (6) (7) Уравнения подобного вида кроме традиционных приложений в квантовой механике широко используются для описания волновых процессов в средах с дисперсией групповой скорости, а также при решении задач дифракции волновых пучков с узким угловым спектром. Прежде чем использовать метод Фурье для решения уравнения (5) проведем нормировку переменной x таким образом, чтобы интервал (-L,L) отобразился на интервал : . Уравнение (4) при этом примет вид: , , Возьмем быстрое преобразование Фурье от полученного уравнения. Использование свойство ортогональности базиса функций , , а также свойство преобразования Фурье , имеем , где Таким образом, использование дискретного преобразования Фурье позволяет свести исходное уравнение в частных производных к системе обыкновенных дифференциальных уравнений. Матрица данной системы диагональна, поэтому система может быть легко проинтегрирована аналитически и решение найдено в произвольный момент времени t: По вычисленным коэффициентам Фурье решение исходной задачи получается путем обратного Фурье преобразования: Представленный алгоритм легко реализуется в системе MATLAB. Для определенности полагаем L=10, D=1, n=0,, t=2. L=10; N=256; h=2*L/N; x=-L:h:L-h; u0=exp(-x.^2); %начальные условия w=-N/2:N/2-1; %формирование вектора частот DD=pi^2/L^2*w.^2; DD=fftshift(DD); t=0.5; %%%%%%%%%%%%%%%% U=fft(u0); U=U.*exp(i*DD*t); u=ifft(U); %%%%%%%%%%%%%%%% plot(x,abs(u0),x,abs(u),x,real(u),x,imag(u)); Синяя кривая – точное решение, зеленая кривая – решение при применении прямого и обратного преобразования Фурье, красная кривая – действительная составляющая решения, голубая кривая – мнимая составляющая решения Рис 4. Решение одномерное однородное уравнение Шредингера Использование дискретного преобразования Фурье для решения уравнений математической физики.Рассмотрим более сложный пример нелинейного уравнения Шредингера , (4) , (5) (6) В силу нелинейности задачи ее решение нельзя представить в виде суперпозиции не взаимодействующих Фурье-компонет. Однако и в этом случае преобразование Фурье может быть использование для построения эффективных численных алгоритмов. Для этого отрезок времени, на котором требуется найти решение задачи, разобьем на несколько отрезков меньшей длины : . На каждом таком отрезке будем искать решение задачи в виде решение в виде последовательного решения двух задач:
Данная техника, известная как метод расщепления или метод дробных шагов, может быть пояснена на основе представления задачи в операторном виде: Решение данного операторного уравнения может быть записано в виде: Решение, полученное методом расщепления, имеет следующее представление Учитывая ограниченность операторов и несложно заметить, что погрешность метода расщепления в случае не коммутируемых операторов имеет на каждом шаге порядок . В силу этого на произвольном интервале интегрирования по времени погрешность метода расщепления будет иметь порядок . При использовании метода расщепления линейная задача 1 может быть практически точно решена с помощью изложенного выше метода Фурье. Решение нелинейной задачи в каждой точке сетки по x может быть выражено аналитически В качестве примера рассмотрим задачу, решением которой являются уединенные волны (солитоны) – пространственно локализованные решения, имеющие форму гиперболического секонса, которые распространяются и взаимодействуют между собой без искажения формы. L=20; N=256; h=2*L/N; x=-L:h:L-h; w=-N/2:N/2-1; %формирование вектора частот DD=pi^2/L^2*w.^2; DD=fftshift(DD); u0=sech(x-10).*exp(i*x)+ sech(x+10).*exp(-i*x); u=u0; tau=0.02; for m=1:50*18 U=fft(u); U=U.*exp(i*DD*tau); u=ifft(U); u=u.*exp(-i*tau*2*abs(u).^2); end plot(x,abs(u0),x,abs(u)); hold; Синяя кривая – точное решение, зеленая кривая – решение при применении прямого и обратного преобразования Фурье Рис 5 – Точное решение и решение с помощью прямого и обратного преобразования Фурье Глава 4 (обсуждение результатов).Таким образом, решение уравнений шредингеровского типа с помощью прямого и обратного дискретного преобразования Фурье можно легко реализовать посредством MATLAB, однако существенным недостатком является вычислительная сложность. При использовании алгоритма быстрого дискретного преобразования Фурье (БДПФ) прямое и обратное преобразование реализуется с затратой арифметических операций. Чтобы оптимизировать вычислительную сложность существуют альтернативные способы решения уравнений шредингеровского типа. Эти методы используют методы цифровой обработки сигналов. Обработка сигналов всегда являлась одной из самых главных прикладных областей применения системы MATLAB. К настоящему времени пакет Signal Processing содержит почти двести тщательно разработанных специализированных функций, позволяющих решать самые разнообразные задачи анализа и обработки сигналов Однако MATLAB является универсальным средством, как для решения, так и для визуализации полученных результатов. Заключение.MATLAB – система многоцелевого назначения, которая вышла на рынок программных продуктов почти двадцать лет назад и с тех пор непрерывно совершенствовалась. Но первоначально ее основу составляли алгоритмы решения систем линейных уравнений и задач на собственные значения, откуда и произошло ее название «матричная лаборатория». Теперь она представляется наиболее эффективной при проведении прикидочных расчетов и при разработке новых алгоритмов. Сейчас уже существует несколько десятков специальных приложений к MATLAB’у, посвященных более узким проблемам. Это обработка сигналов и изображений, инженерное программирование в виде блок-схем, решение экономических задач и многое другое. Также MATLAB - это высокопроизводительный язык для технических расчетов. [4] Он включает в себя вычисления, визуализацию и программирование в удобной среде, где задачи и решения выражаются в форме, близкой к математической. Типичное использование MATLAB - это:
MATLAB – это интерактивная система, в которой основным элементом данных является массив. [5] Это позволяет решать различные задачи, связанные с техническими вычислениями, особенно в которых используются матрицы и вектора, в несколько раз быстрее, чем при написании программ с использованием "скалярных" языков программирования, таких как Си или Фортран. В MATLAB важная роль отводится специализированным группам программ, называемых toolboxes. Они очень важны для большинства пользователей MATLAB, так как позволяют изучать и применять специализированные методы. Toolboxes - это всесторонняя коллекция функций MATLAB (М-файлов), которые позволяют решать частные классы задач. Toolboxes применяются для обработки сигналов, систем контроля, нейронных сетей, нечеткой логики, вейвлетов, моделирования и т.д. Таким образом, благодаря преимуществам, приведенным выше, MATLAB является наиболее подходящим инструментом для исследования, поиска путей оптимального1, а также наиболее точного алгоритма для решения у равнений шредингеровского типа. Управляемая графика дает нам возможность визуализации двух- и трехмерных данных, обработки изображений, анимации и иллюстрированной графики. Список литературы к реферату.
Предметный указатель к реферату.М MATLAB …………………………………………...4, 5, 11, 12, 15, 16, 17, 19, 25 П преобразование Фурье……………………..2, 3, 4, 7, 8, 9, 10, 11, 12, 13, 14, 15 У уравнение шредингеровского типа………………………. 2, 4, 7, 11, 15, 16 Интернет ресурсы в предметной области исследования.
Действующий личный сайт в WWW (гиперссылка).http://anny-ts.narod.ru/ Граф научных интересовмагистранта Циунчик А. С. механико-математический факультет Специальность математика
Презентация магистерской (кандидатской) диссертации.
Список литературы к выпускной работе.
1 Здесь имеется ввиду вычислительная сложность |
Конспект урока по математике в 6А классе Цель: Систематизировать и обобщить знания учащихся, отработать их умения и навыки при решении задач на упрощение выражений, при решении... | Конспект урока в 11 классе Выработать прочные навыки применения полученных знаний при решении уравнений графическим способом вычислении значения функции и выполнении... | ||
Урока: по математике Эвм при решении уравнений; познакомить с функционально – графическим методом решения уравнений высших степеней; развивать логическое... | Урок. Тема: «Иррациональные уравнения» Цель: закрепить умение решать уравнения; способствовать развитию навыков самостоятельного применения знаний при решении уравнений;... | ||
Программа по формированию навыков безопасного поведения на дорогах... Цель: ввести понятие целое уравнение и его корни, биквадратного уравнения и уравнений, приводимых к квадратным. Ввести алгоритм решения... | Сценарий конкурсного урока по теме: «Функции, их свойства» Выработать прочные навыки применения полученных знаний при решении уравнений графическим способом вычислении значения функции и выполнении... | ||
Решение нелинейных уравнений Цель работы Цель работы: Изучение возможностей пакета Ms Excel при решении нелинейных уравнений. Приобретение навыков решения нелинейных уравнений... | Экспресс опрос: вопросы на слайде №2 в презентации к уроку «Логарифмические... Обучающие цели: актуализация опорных знаний применения свойств логарифмических функций при решении уравнений. Применение знаний,... | ||
Программа по формированию навыков безопасного поведения на дорогах... Цели урока: Совершенствовать навыки решения уравнений и систем уравнений 2 степени. Учить находить рациональные способы при решении... | Рабочая программа учебной дисциплины «cовременные компьютерные технологии в науке» Целью изучения дисциплины является получение студентами знаний, умений и навыков в области применения современных компьютерных технологий... | ||
Конспект урока в 10-м классе по алгебре и началам анализа на тему:... Выработать прочные навыки применения полученных знаний при решении уравнений графическим способом вычислении значения функции и выполнении... | Программа по формированию навыков безопасного поведения на дорогах... Сегодня мы познакомимся с очень интересными свойствами некоторых квадратных уравнений. Использование этих свойств при решении квадратных... | ||
План-конспект урока. Тема: «Решение показательных уравнений» Цели урока: образовательные: продолжить формирование умений и навыков при решении задач; научить анализировать задания и искать более... | Реферат При выводе классических уравнений теории упругости и гидромеханики... ... | ||
Уравнения и их системы Образовательные – повторить вопросы теории по теме, закрепить навыки решения уравнений и их систем, контроль знаний, умений и навыков... | Урок изучения и первичного закрепления новых знаний (урок-путешествие), 5 класс Формирование умений выражения вида 3а + 7а и 26b – 12b заменять произведениями числового и буквенного множителей, применять это преобразование... |