Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Отчет по практике. Власенко Олеся. ИУ 10-22.docx
Скачиваний:
26
Добавлен:
26.09.2019
Размер:
1.27 Mб
Скачать

Лабораторная работа 8

Тема «Работа с массивами»

Задания

1. Задана квадратная матрица

Элементы матрицы А обозначим aik . Требуется узнать и записать размер матрицы в переменную n (конечно, он равен 3, но лучше использовать функцию для автоматического определения размера) и вычислить приведенные ниже величины (нормы матрицы):

Выполнение:

A= [ -1.2 4.6 -0.3

2.8 9.9 -0.7

0.9 -2.5 7.1]

n=size(A)

S = sum (A)

S = sum (S)

p = sum ( max(A))

q = sum ( max ( A, [ ] , 2))

Ход работы:

2. При помощи встроенных функций для заполнения стандартных матриц,

индексации двоеточием и, возможно, поворота, транспонирования или

вычеркивания получите следующие матрицы:

;

;

Выполнение:

d = [ 2 3 4 5 6 7 8]

N = diag (d) + diag ( ones ( 1, 6) , 1) + diag ( ones ( 1,6), -1) + diag ((5), 6) + diag ( (5) , -6)

N ( 6,7) = 0

Ход работы:

Выполнение:

A = eye(7) + rot90( -eye(7))

A (4,4) = 5

Ход работы:

Выполнение:

A = diag( ones (1,7) ,4) + eye ( 11,11)

A ( 8:11, :) = [ ]

Ход работы:

Выполнение:

A = eye (11,11) + diag ( ones (1,10) ,1)

D = diag ( -1*ones(1,10),1)

D (: , 5:end) = 0

B = -1*eye(11)

B ( 1:3, : ) = 0

S = A + D + B

Ход работы:

3. Сконструируйте блочные матрицы (используя функции для заполнения стандартных матриц) и определите заданные величины, применяя функции обработки данных и поэлементные операции.

; ;

;

Выполнение:

M= [ eye(3) 4*eye(3); 2*ones(3) 3*ones(3)]

S= sum(sum ( sqrt(M^2)))

N = [ ones(2) -3*ones(2,4); -3*ones(4,2) 2*eye(4)]

Ход работы:

1)Переставьте столбцы матрицы в порядке возрастания суммы элементов столбца.

Выполнение:

[V, ind] = sort( sum(A))

A = A ( [ ind], :)

Ход работы:

2)Найдите сумму всех положительных элементов матрицы.

Выполнение:

N = max ( A, 0)

S = sum(sum (N))

Ход работы:

3) Считайте матрицу из файла matr.txt (предварительно создайте ее самостоятельно),

замените в ней все элементы, большие среднего арифметического ее элементов, на среднее арифметическое и запишите ее в файл newmatr.txt (включите этот файл в отчет)

Выполнение:

A = load ('matr.txt')

Sr = mean(mean ( A))

S = max (A, Sr)

save ' newmatr.txt ' S -ascii

Ход работы:

4)Определите максимальный столбцовый и строчный индексы отрицательных элементов матрицы.

Выполнение:

[ i, j ] = max( find (A<0))

Ход работы:

Лабораторная работа 9

Тема: «Интерактивная среда для построения графиков»

Задания

Постройте поверхности из задания к лабораторной работе №2. Используя средства редактора свойств Property Editor, оформите их графическое представление:

• задайте характеристики осей;

• подберите цветовую палитру для лучшего отражения свойств поверхности;

• поварьируйте свойства граней и маркеров точек сетки;

• воспользуйтесь камерой для всестороннего осмотра и изучения поверхности

Выполнение:

[x, y] = meshgrid ( -5:0.05:5, -5:0.05:5);

z=sqrt((x.^2) + (y.^2) +1);

f= ((x.^2)/8 +(y.^2)/8);

b = ((x.^2)/8 -(y.^2)/8);

surf(x,y,z)

surf(x,y,f)

surf(x,y,b)

Поверхности:

Двуполостный гиперболоид

Однополостный гиперболоид

Гиперболический параболоид

Вывод:

В ходе данной лабораторной работы, мы научились работать с графиками, с массивами и матрицами. Мы научились простейшим операциям с графиками, таким как построение графиков функций, вычисление их значений в заданной точке, выводам графиков различными способами. С помощью специальной кнопки, посмотреть график со всех сторон. Научились визуализировать функции нескольких переменных на прямоугольной области определения, а так же определять экстремумы функции. Разобрались в работе с массивами в matlab и при помощи функций для заполнения матриц, индексация двоеточием и транспонирования получали нужные матрицы. Выполнять различные арифметические операции, например решение интегралов и дифференциальных уравнений. Эти знания пригодятся нам в дальнейшем обучении, так как matlab может выполнять различные технические вычисления.