|
ОбзорВ Scilab основным типом данных является матрица. Всякая матрица характеризуется:
Элементами матрицы могут являться вещественные, комплексные или целые числа, логические значения, строки и полиномы. Если две матрицы имеют одинаковое число строк и столбцов, говорят, что матрицы имеют одинаковый размер. В Scilab векторы являются частным случаем матриц, когда число строк либо Необходимо отметить, что Scilab создавался в первую очередь для работы с матрицами вещественных значений, и поэтому содержит большое число функций, выполняющих распространенные матричные операции. В числе задач проектирования Scilab также стояла оптимизация скорости выполнения таких операций. Для этого было разработано специальное внутреннее представление матриц, позволяющее манипулировать ими на уровне интерпретатора. Большинство основных операций линейной алгебры, таких как сложение, вычитание, транспонирование и скалярное произведение выполняются оптимизированными внутренними функциями. Эти операции обозначаются в Scilab символами "+", "-“, “ ’ ” и "*". При использовании высокоуровневых операторов и функций практически отпадает необходимость в реализации циклов, которые, помимо прочего, выполняются существенно медленнее (от 10 до 100 раз), нежели встроенные функции. Данное свойство Scilab носит название векторизации. Для написания максимально эффективных скриптов в Scilab необходимо всегда пользоваться имеющимися высокоуровневыми возможностями, так чтобы каждой командой обрабатывалась целая матрица, а не один ее элемент. Более сложные задачи линейной алгебры, такие как решение систем линейных уравнений Ax = b, различные разложения (например, гауссово разложение с перестановками PA = LU), поиск собственных значений и векторов, также выполняются встроенными оптимизированными функциями. Пользователю эти возможности доступны посредством операторов Scilab " /" и " \", а также специальных функций (например, функции spec, вычисляющей собственные значения и вектора для заданной матрицы). |
|
© vse-o-scilab |