Поиск

Полнотекстовый поиск:
Где искать:
везде
только в названии
только в тексте
Выводить:
описание
слова в тексте
только заголовок

Рекомендуем ознакомиться

'Документ'
40 лет - Азимов А. «Сами боги»1972 45 лет - Алексин А. «А тем временем где-то…» 1967 40 лет - Астафьев В.П. «Конь с розовой гривой» 1972 70 лет - Бажо...полностью>>
'Программа'
Ш 83 Программа итоговой государственной аттестации магистрантов: методические указания / Т.М. Шпильман, Т.Н Шаталова, Д.А. Старков; Оренбургский гос....полностью>>
'Тесты'
На протяжении нескольких последних лет традиционная форма итоговой аттестации выпускников средних школ по литературе (написание сочинения) активно вы...полностью>>
'Документ'
Студенческая научно-практическая конференция «Социологические чтения» проходила в этом году на факультете истории и социологии ГрГУ им.Я.Купалы (г.Гр...полностью>>

Лабораторная работа №1 (2)

Главная > Лабораторная работа
Сохрани ссылку в одной из сетей:

Лабораторная работа № 3.1

АРИФМЕТИКА КОМПЛЕКСНЫХ ЧИСЕЛ

Комплексным числом называется сумма вида z = x + iy,

где

i – мнимая единица: i2 = -1;

x, y – вещественные числа: x = Rez; y = Imz.

Комплексные числа

называются комплексно сопряженными.

Операции над комплексными числами.

Пусть

z1 = x1 + iy1; z2 = x2 + iy2

тогда

z1  z2 = (x1  x2) + i(y1  y2);

z1 * z2 = (x1x2 – y1y2) + i(x1y2 + y1x2); (1)

Тригонометрическая форма комплексного числа

z = x + iy = r (cos + i sin),

где

число r называется модулем (абсолютной величиной) комплексного числа, r = z;

угол  определяется из условий

Угол  называется аргументом комплексного числа:  = argz. Аргумент  определяется с точностью до угла, кратного 2.

Пусть

z1 = r1(cos1 + isin1); z2 = r2(cos2 + isin2);

тогда

z1*z2 = r1*r2(cos(1+2) + isin(1+2)); (2)

Формула Эйлера

ei = (cos + isin). (3)

Формула Муавра-Лапласа

(r(cos + isin))n = rn(cosn + isinn) (n – целое); (4)

zn = rn(cosn + isinn).

Элементарные функции комплексных переменных

z = x + iy = rei;

ez = ex+iy = ex(cosy + isiny); (5)

shz = (ez – e-z)/2 = shxcosy + ichxsiny; (6)

chz = (ez + e-z)/2 = chxcosy + ishxsiny; (7)

sinz = (eiz - e-iz)/2i = sinxchy + icosxshy; (8)

cosz = (eiz + e-iz)/2 = cosxchy - isinxshy; (9)

lnz = ln(rei) = lnr + i( + 2k), k = 0, 1, 2,  (10)

Напомним, что аргумент  определяется с точностью до угла, кратного 2.

ЗАДАНИЯ

1. Сформировать модуль для работы с комплексными числами. Используя модуль написать программу решения системы линейных алгебраических уравнений порядка n (n  10) с комплексными коэффициентами методом Гаусса (Жордана) с выбором главного элемента.

Порядок и коэффициенты системы вводятся из файла. В файл результатов выдаются: исходная система; решение системы; результат подстановки решения в систему в виде “левая часть = правая часть”.

2. Сформировать модуль для работы с комплексными числами. Используя модуль написать программу обращения матрицы порядка n (n  10) с комплексными коэффициентами методом Гаусса (Жордана) с выбором главного элемента.

Порядок и коэффициенты матрицы вводятся из файла. В файл результатов выдаются: исходная матрица; обратная матрица; произведение исходной матрицы на обратную.

3. Сформировать модуль для работы с комплексными числами. Используя модуль написать программу вычисления определителя матрицы порядка n (n  10) с комплексными коэффициентами методом Гаусса с выбором главного элемента.

Порядок и коэффициенты матрицы вводятся из файла

4. Сформировать модуль для работы с комплексными числами. Используя модуль написать программу вычисления определителя трехдиагональной матрицы порядка n (n  40) с комплексными коэффициентами методом Гаусса.

Порядок и коэффициенты матрицы (главная и соседние с ней диагонали) вводятся из файла.

5. Сформировать модуль для работы с комплексными числами. Используя модуль написать программу решения системы линейных алгебраических уравнений порядка n (n  40) для трехдиагональной матрицы с комплексными коэффициентами методом прогонки. Предусмотреть экономное использование памяти.

Порядок и коэффициенты матрицы (главная и соседние с ней диагонали), вектор правых частей вводятся из файла. В файл результатов выдаются: исходная система; решение системы; результат подстановки решения в систему в виде “левая часть = правая часть”.

6. Сформировать модуль для работы с комплексными числами. Используя модуль написать программу обращения трехдиагональной матрицы порядка n (n  40) с комплексными коэффициентами методом прогонки. предусмотреть экономное использование памяти.

Порядок и коэффициенты матрицы (главная и соседние с ней диагонали) вводятся из файла. В файл результатов выдаются: исходная матрица; обратная матрица; произведение исходной матрицы на обратную.

7.Сформировать модуль для работы с комплексными числами. Используя модуль написать функцию для вычисления

с точностью до . С помощью этой функции проверить справедливость равенства

sin(x+iy) = sinxchy + icosxshy.

Выполнить расчеты для

z = rei, r = 0.5,  = 0, /8, 2/8, , 2.

Результаты расчетов представить в виде

“z=; левая часть = правая часть”.

8.Сформировать модуль для работы с комплексными числами. Используя модуль написать функцию для вычисления

с точностью до . С помощью этой функции проверить справедливость равенства

cos(x+iy) = cosxchy - isinxshy.

Выполнить расчеты для

z = rei, r = 0.5,  = 0, /8, 2/8, , 2.

Результаты расчетов представить в виде

“z=; левая часть = правая часть”.

9.Сформировать модуль для работы с комплексными числами. Используя модуль написать функцию для вычисления

с точностью до . С помощью этой функции проверить справедливость равенства

cH3z = 2ch2z - 1.

Выполнить расчеты для

z = rei, r = 0.5,  = 0, /8, 2/8, , 2.

Результаты расчетов представить в виде

“z=; левая часть = правая часть”.

10.Сформировать модуль для работы с комплексными числами. Используя модуль написать функцию для вычисления

с точностью до . С помощью этой функции проверить справедливость равенства

sH3z = 2shzchz.

Выполнить расчеты для

z = rei, r = 0.5,  = 0, /8, 2/8, , 2.

Результаты расчетов представить в виде

“z=; левая часть = правая часть”.

11. Сформировать модуль для работы с комплексными числами. Используя модуль написать функцию с аргументами z, n для вычисления zn (n – целое) методом сокращенного умножения:

- определяем двоичное разложение числа n

n = pkpk-1p1p0(2); pi=0,1, i=0, 1, , k;

n = p020 + p121 +  +pk-12k-1 + pk2k;

- полагаем u = z; v = 1;

- для i = 0, 1, , k вычисляем

если pi  0, то v := v*u; u := u2;

- полагаем zn = v.

Например, для вычисления z19 полагаем

19 = 10011(2), (k=4);

u = z; v = 1;

для i = 0, 1, 2, 3, 4 вычисляем

v = vu; u = uu; v = vu; u = uu; u = uu; u = uu; v = vu; u = uu;

полагаем z19 = v.

Всего потребовалось 8 умножений – вместо 18.

Выполнить расчеты для n = 16, 17, 18, z = rei, r = 2,  = 0, /4, 2/4, , 2. Результаты расчетов сравнить с расчетом по формуле Муавра-Лапласа.

12.Сформировать модуль для работы с комплексными числами. Используя модуль написать функцию для вычисления lnz (z<1) c точностью до .

Воспользоваться разложением

Выполнить расчеты для z = rei, r = 0.5,  = 0, /8, 2/8, , 2. Сравнить со значениями полученными по формуле (10).

13.Сформировать модуль для работы с комплексными числами. Используя модуль построить изолинии функции zn - 1 в квадрате -2  x  2, -2  y  2.

Указание: Изолинией (линией уровня) функции f(x,y) называется линия, являющаяся решением уравнения

f(x,y) = c (c – заданная константа).

Для получения точек изолинии можно использовать следующий метод: задаем значения одной из переменных и решаем уравнение относительно другой переменной.

Например, для построения изолинии функции f(x,y) в прямоугольнике a  x  b, c  y  d:

полагаем y = yi = a + ih, i = 0, 1, , k, h = (d – c)/k;

для каждого yi ищем корни уравнения f(x,yi) = c на отрезке a  x  b.

Выполнить расчеты для c = c1, c2, , cm, например, c = 0.1, 0.5, 1, 2, 4, 6.

14. Сформировать модуль для работы с комплексными числами. Используя модуль построить изолинии функции z + 1/z для 0 < x  2, 0 < y  2 (см. указание к задаче 13).

Выполнить расчеты для c = c1, c2, , cm, например, c = 0.1, 0.5, 1, 2, 4, 6.

15. Сформировать модуль для работы с комплексными числами. Используя модуль построить изолинии функции chz для -2  x  2, -2  y  2 (см. указание к задаче 13).

Выполнить расчеты для c = c1, c2, , cm, например, c = 0.05, 0.1, 0.2, 0.5, 1, 2, 3.

16. Сформировать модуль для работы с комплексными числами. Используя модуль построить изолинии функции cosz для -2  x  2, -2  y  2 (см. указание к задаче 13).

Выполнить расчеты для c = c1, c2, , cm, например, c = 0.05, 0.1, 0.2, 0.5, 1, 2, 3.

17. Сформировать модуль для работы с комплексными числами. Используя модуль написать функцию для вычисления значений полинома

Pn(z) = a0zn + a1zn-1 +  +an

с комплексными коэффициентами по схеме Горнера. С помощью этой функции построить изолинии функции Pn(z) в квадрате -M  x,y  M, M = (a1 + a2 +  + an|)/a0 (см. указание к задаче 13).

Степень и коэффициенты полинома вводятся из файла. Выполнить расчеты для c = c1, c2, , cm, например, c = 0.1, 0.5, 1, 2, 

18. Сформировать модуль для работы с комплексными числами. Используя модуль написать функцию для вычисления

с точностью до . С помощью этой функции проверить справедливость формулы

Предел вычислять вдоль луча z = rei (r0 = 1; ri = ri-1/2), угол  вводится с экрана.

19. Сформировать модуль для работы с комплексными числами. Используя модуль написать функцию для вычисления

с точностью до . С помощью этой функции проверить справедливость формулы

Предел вычислять вдоль луча z = rei (r0 = 1; ri = ri-1/2), угол  вводится с экрана.

20. Сформировать модуль для работы с комплексными числами. Используя модуль написать функцию для вычисления

с точностью до . С помощью этой функции проверить справедливость формулы

Предел вычислять вдоль луча z = rei (r0 = 1; ri = ri-1/2), угол  вводится с экрана.

21.Сформировать модуль для работы с комплексными числами. используя модуль решить задачу:

Из файла вводятся целое n (n  100), комплексные z1, z2, , zn. Найти на комплексой плоскости точки zi, zj (i,j = 1, , n; i  j), расстояние между которыми минимально. Дать графическое представление задачи.

22.Сформировать модуль для работы с комплексными числами. используя модуль решить задачу:

Из файла вводятся целое n (n  100), комплексные z1, z2, , zn. Найти на комплексой плоскости точки zi, zj (i,j = 1, , n; i  j), расположенные на одном луче, выходящим из точки z = 0. Если таких точек нет, найти точки, расположенные на лучах, максимально “близких” друг к другу – с минимальным углом между ними. Дать графическое представление задачи.

23.Сформировать модуль для работы с комплексными числами. используя модуль решить задачу:

Из файла вводятся целое n (n  100), комплексные z1, z2, , zn. В точках zi, i = 1, …, n вычисляются значения функции

Найти точку, в которой Imw принимает максимальное значение.

24.Сформировать модуль для работы с комплексными числами. используя модуль решить задачу:

Из файла вводятся целое n (n  100), комплексные z1, z2, , zn. Упорядочить последовательность zi методом сортировки выбором по неубыванию абсолютной величины числа, если абсолютные величины совпадают, - по неубыванию аргументов чисел. (Указание: в качестве ключа для сортировки выбирается величина 2z + argz).

В файл результатов выдаются исходная последовательность и упорядоченная последовательность с указанием абсолютной величины и аргументов чисел.

25.Сформировать модуль для работы с комплексными числами. используя модуль решить задачу:

Из файла вводятся целое n (n  100), комплексные z1, z2, , zn. Упорядочить последовательность zi методом “пузырька” по неубыванию абсолютной величины числа, если абсолютные величины совпадают, - по неубыванию аргументов чисел. (Указание: в качестве ключа для сортировки выбирается величина 2z + argz).

В файл результатов выдаются исходная последовательность и упорядоченная последовательность с указанием абсолютной величины и аргументов чисел.

26.Сформировать модуль для работы с комплексными числами. используя модуль решить задачу:

Из файла вводятся целое n (n  100), комплексные z1, z2, , zn. Упорядочить последовательность zi методом сортировки разделением по неубыванию абсолютной величины числа, если абсолютные величины совпадают, - по неубыванию аргументов чисел. (Указание: в качестве ключа для сортировки выбирается величина 2z + argz).

В файл результатов выдаются исходная последовательность и упорядоченная последовательность с указанием абсолютной величины и аргументов чисел.

27. Сформировать модуль для работы с комплексными числами. Используя модуль сравнить по времени исполнения алгоритмы сортировки выбором и сортировки разделением. Для этого:

  • написать процедуры сортировки массива комплексных чисел по неубыванию величины 2z + argz (массив упорядочивается по неубованию абсолютных величин чисел, при совпадении абсолютных величин – по неубыванию аргументов чисел);

  • используя датчик случайных чисел, равномерно распределенных на отрезке [-1, 1], сформировать массив из N комплексных чисел;

  • Упорядочить массив (! один и тот же исходный массив !) каждым из алгоритмов, засекая время исполнения.

Выполнить расчеты для N = 10 (контрольный просчет) и N > 1000 (основной расчет).

28. Сформировать модуль для работы с комплексными числами. Используя модуль сравнить по времени исполнения алгоритмы сортировки выбором, сортировки методом “пузырька” и сортировки перестановками:

для i = 1, …, n-1 выполнить

для j = i+1, …, n выполнить

если xi > xj, то переставить xi, xj.

Для этого:

  • написать процедуры сортировки массива комплексных чисел по неубыванию величины 2z + argz (массив упорядочивается по неубованию абсолютных величин чисел, при совпадении абсолютных величин – по неубыванию аргументов чисел);

  • используя датчик случайных чисел, равномерно распределенных на отрезке [-1, 1], сформировать массив из N комплексных чисел;

  • Упорядочить массив (! один и тот же исходный массив !) каждым из алгоритмов, засекая время исполнения.

Выполнить расчеты для N = 10 (контрольный просчет) и N > 1000 (основной расчет).



Скачать документ

Похожие документы:

  1. Лабораторная работа №1 (1)

    Лабораторная работа
    VBA относится к языкам объектно- ориентированного программирования (ООП). ООП можно описать как методику анализа, проектирования и написания приложений с помощью объектов.
  2. Лабораторная работа №1 (3)

    Лабораторная работа
    Цели: освоение принципов построения электронной таблицы. Ввод чисел, текста, формул, копирование формул, редактирование и пересчет ячеек, сохранение таблицы на диске, открытие существующей таблицы, закрытие таблицы без записи на диск.
  3. Лабораторные работы (2)

    Документ
    Одним из основных методов обучения физике в школе является проведение лабораторных работ. Но в то же время этот вид урока – один из самых сложных и хлопотных для учителя.
  4. Лабораторная работа №1 (4)

    Лабораторная работа
    Замечание: В задачах 1 – 3 «длинные» натуральные числа представить в виде одномерных массивов. Будем считать, что такое число имеет не более 100 цифр.
  5. Лабораторная работа 1

    Лабораторная работа
    Построение графиков функций – это, хотя и трудоемкая (при ручном выполнении), но в то же время весьма полезная математическая операция. Часто графики используются как наиболее простое и наглядное средство, позволяющее быстро выявить
  6. Лабораторные работы (1)

    Практикум
    К третьей группе – работы, посвященные специальным методам исследования образцов, моделей, элементов конструкций или сооружений (оптический метод и др.

Другие похожие документы..