- •Информатика
- •Часть VI
- •1.1. Командное окно
- •1.2. Вектора и матрицы
- •1.3. Построение графиков на плоскости
- •Xgrid()
- •Xtitle(‘Заголовок графика' ,'ось X' ,'ось y')
- •1.4. Вывод нескольких графиков в одном окне.
- •1.5. Построение трехмерных графиков
- •1.6. Решение некоторых задач линейной алгебры в диалоговом режиме
- •1.6.1. Вычисление определителя
- •1.6.3. Определение корней полинома
- •2. Разработка программы в Scilab
- •2.1. Использование редактора SciPad
- •2.2 Условный оператор
- •2.3. Оператор цикла
- •3. Решение задач вычислительной математики в окне редактора
- •3.1. Решение нелинейных уравнений
- •3.2. Вычисление определенного интеграла
- •2.2 Условный оператор………………………………………………
1.2. Вектора и матрицы
Основным типом данных в системе Scilab является матрица – двумерная таблица с заданным количеством строк и столбцов.
В Scilab столбец или строку матрицы называют вектором. Вектор – матрица, состоящая из одного столбца или одной строки. Скаляр – матрица, в которой имеется один столбец и одна строка. Элементы матрицы могут быть целыми, вещественными или комплексными числами, могут быть и переменными других типов.
Один из способов задания векторов и матриц - это их поэлементная запись в операторе присваивания. Все элементы вектора или матрицы заключаются в квадратные скобки и разделяются пробелами или запятыми.
-->X=[3 9 5 4]
X =
3. 9. 5. 4.
Элементы матрицы перечисляются в квадратных скобках строка за строкой. Строки в матрицах и в векторах-столбцах заканчиваются символом «точка с запятой».
-->Z=[1,2;3,4] // матрица
Z =
1. 2.
3. 4.
-->Y=[0;1] // вектор-столбец
Y =
0.
1.
Если вектор-строка представляет собой арифметическую прогрессию, то ее элементы можно задать следующим образом:
Здесь - начальное значениех, -конечное, а параметр dx - шаг прогрессии.
Результат вычисления элементарной функции от вектора, также представляет собой вектор.
Пример 1.5. Вычислить значения функции y=sin(x), если х изменяется от 0 до 1 с шагом dx, равным 0,1.
-->x=0:0.1:0.5
x =
0. 0.1 0.2 0.3 0.4 0.5
-->y=sin(x)
y =
0. 0.0998334 0.1986693 0.2955202 0.3894183 0.4794255
Если параметр dx в операторе задания вектора-строки отсутствует, то по умолчанию он принимается равным единице.
-->w=1:5
w =
1. 2. 3. 4. 5.
Для записи арифметических операций в выражении используются перечисленные ниже обозначения.
Сложение и вычитание матриц, векторов, скаляров: + и - ;
Умножение и деление скаляров, алгебраическое перемножение матриц: символы * и / ;
Возведение в степень скаляров и матриц: ^ ; Квадратную матрицу можно возводить только в целую степень.
Для работы с элементами векторов и матриц введены специальные операции.
Поэлементное умножение векторов или матриц одного размера: .*
Поэлементное деление: ./
Поэлементное возведение в степень : .^
Символ « ’ » (апостроф, одиночная кавычка) означает транспонирование. В результате выполнения операции алгебраического умножения вектора-столбца на вектор-строку получается число. В результате выполнения операции алгебраического умножения вектора-столбца на вектор-строку получается матрица.
Пример 1.6. Дан вектор-столбец В. Записать его в виде вектора строки В1. Вычислить алгебраические произведения В и В1, В1 и В, а также поэлементное произведение В и В1.
-->B=[1; 3; 4; 5] // это вектор-столбец!
B =
1.
3.
4.
5.
-->B1=B' // транспонирование вектора-столбца В
B1 =
1. 3. 4. 5. // это вектор-строка!
-->B*B1 // умножение столбца на строку – получается матрица
ans =
1. 3. 4. 5.
3. 9. 12. 15.
4. 12. 16. 20.
5. 15. 20. 25.
-->B1*B // умножение строки на столбец - получается число
ans =
51.
-->B.*B1’ // Поэлементное умножение векторов В и В1’
ans =
1. // это вектор-столбец!
9.
16.
25.
Допускается поэлементное умножение только векторов одинаковой длины или матриц одного разиера.
Для определения размера матрицы или вектора можно использовать команду size(имя):
-->size(B)
ans =
4. 1. // эта матрица (вектор-столбец) содержит 4 строки и 1 столбец