Учебно-методическое пособие к практикуму по курсу «Пакеты компьютерной алгебры»



Pdf көрінісі
бет9/11
Дата29.04.2023
өлшемі1,85 Mb.
#88418
түріУчебно-методическое пособие
1   2   3   4   5   6   7   8   9   10   11
Количество 
Эксперимент 1 
Эксперимент 2 
Эксперимент 3 
10
3
0.02755529361166 
0.04623873215974 
0.06307710110520 
10
4
0.28666151628344 
0.67483306464728 
0.85628458136542 
10
5
2.84742674641796 
4.92785226951551 
6.29249360982561 
10
6
28.5048610591205 
48.4353558734875 
60.7404539333518 


45 
17. Постройте график зависимости времени возведения матрицы в квадрат 
от ее порядка. Матрицу наполнять случайными целыми числами в диапазоне 
от 1 до 10. Построить такие же графики для верхней и нижней треугольных 
матриц. Все графики строить в одних осях. Добавить сетку и легенду. Сделать 
вывод.
18. Постройте график функции sin(x). С помощью панели инструментов окна 
figure измените толщину линии графика, добавьте текстовую надпись. Вы-
полните экспорт графика в файл png. 
19. Постройте график функции sin(x)/x. С помощью функции gtext добавьте 
текстовую надпись. 
Контрольные вопросы 
1. Перечислите способы построения графиков функций
2. Как построить график функции, заданной параметрически? 
3. С помощью какой команды можно отобразить сетку в координатных осях? 
4. Как построить несколько графиков в одних осях с помощью одной коман-
ды (с помощью нескольких команд)? 
5. С помощью какой команды можно вывести текстовую надпись в графиче-
ское окно? 
6. Для чего используют логарифмический масштаб для графиков. Приведите 
примеры. 
7. Что такое легенда и когда ее используют? 
8. Перечислите параметры функции subplot. Для чего используют эту функ-
цию? 
9. Чем отличаются команды plot и fplot? 
10. Для чего строят графики?


46 
Основные типы данных 
Любой объект в ML, в том числе скаляр, является массивом. Класс 
ARRAY – законодатель класса массивов, в котором разработаны методы 
функционирования всех дочерних объектов
Хранение массивов в ML осуществляется в векторной форме последо-
вательно по столбцам, поэтому поддерживается как двойная (матричная) 
нумерация, так одинарная (векторная). Основой операций с массивами яв-
ляется согласование размерностей. Заметим, что класс ARRAY является роди-
тельским для всех потомков и определяет все объекты более низкого уровня 
как массивы (матрицы) так и правила (методы). 
На рисунке представлена схема иерархии классов (типов данных) в ML. 
Методы класса Array 
ndims 
– возвращает количество размерностей многомерного массива (лю-
бой природы),
n = ndims(a);
size 
– определяет вектор
v = size(a) 
размерностей массива;
так, для n = 2,
[m, p] = size(a);


47 
length(a) 
– определяет длину вдоль большей размерности;
length(a(:)) 
определяет длину массива, записанного вектором; 
numel(a) 
– количество элементов массива; 
disp(display) 
– визуализация объектов, не подавляется знаком (;) 
Типы данных Numeric и Double 
Все объекты в ML делятся на числовые, если
isnumeric(a) = 1
равно логической единице, и нечисловые, если isnumeric = 0.
В момент создания числового объекта идентифицируется класс потом-
ка Numeric, которому он принадлежит. ML ориентирован на матричные вы-
числения двойной точности с элементами класса Double.
Пример 1. Логическая единица не является числовым объектом 
% Справка по элементарным функциям 
clear 
a=rand(2,3
); 
% генерирование матрицы из двух строк, трех столбцов, 
элементы которой равномерно распределены на отрезке 
[0,1] 
b=isnumeric(a)
% результат: 1 , т.е. a – числовой объект 
islogical(b)
% результат: 1, т.е. b – логический объект
isnumeric(ans) 
% результат: 0, т.е. логический объект - нечисловой
В силу свойств наследования имеем: 
• скаляр – тоже массив, минимальный элемент размера (1,1); 
• в памяти матрица хранится как вектор, записанный последовательно по 
столбцам и поддерживается одинарная и двойная нумерация; 


48 
Заметим, что диапазон вещественных чисел
[realmin, realmax], 
здесь realmin, realmax
системные переменные минимальное и мак-
симальное вещественные значения. 
Способы создания объектов Double 
Пример 2. Задание объектов перечислением: 
% вектор–столбец
a = [1; 2; 3]

% задание вектор-строки
a = [1 2 3]
% задание вектор-строки, иной синтаксис
a = [1,2,3]
% задание вектора с элементами арифметической прогрес-
сии (первый член, шаг, последний) 
a = [a1 : aStep:aEnd]
Пример 3. Задание объектов с помощью специальных матриц: 
a = rand(size(b)) 
% – матрица с элементами, полученными генера-
тором случайных чисел, равномерно распределенных на отрезке 
[0,1], такого же размера, как некоторая матрица b
a = randn(m, n) 
% – размер генерируемой матрицы m на n; исполь-
зуется генератор нормального распределения с нулевым средним и 
единичной дисперсией. 
a = ones(n)
% – создается квадратная матрица из единиц размера n
b = eye(n) 
% – единичная матрица
a = zeros(n)
% – нулевая матрица
Задание объектов импортированием можно производить с помощью непо-
средственного импортирования и чтением из внешних файлов: 

команды File →ImportData,

чтение экселевского файла:
namemtrix=xlsread(pathname.filename)


Достарыңызбен бөлісу:
1   2   3   4   5   6   7   8   9   10   11




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет