Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

1. Matlab. 2. Статистические методы. 3. Нейронные сети. Переменные. Написание программ. Перенос строки. Циклы и условия. Массивы




Гайд по матлабу для нубов

1. Matlab

2. Статистические методы

3. Нейронные сети

 

 

1. Matlab

 

Matlab - язык программирования и пакет прикладных программ для решения технических задач и приложений. Так-то.

 

В Matlab есть хороший справочник функций, при любых вопросах - в первую очередь смотреть туда. Доступен на вкладке Help.

 

Внешний Matlab вид на рис. 1.

РРис. 1.

Переменные

Отличительная особенность языка Matlab - отсутствие необходимости инициализировать переменные и указывать тип данных (в отличие от других языков). Например, для создания переменной A и присвоения ей значения (будет 10) необходимо ввести

А = 10

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

B = 15

C = 10 + 15

В ответ командная строка напишет что-то вроде:

C =

25

ежели конечный результат не является переменной, создаётся переменная ans, которой присваивается результат. Например, ежели набрать в командной строке:

10+15

В ответ командная строка выдаст:

ans =

25

 

Для отключения вывода результата в командную строку в конце команды необходим сивмол;

Например, после следующей команды результат будет сохранён в переменную ans и не будет выведен в командную строку:

10+15;

 

Написание программ

В распространённых языках программирования (например, Си) любая программа должна иметь точку входа — функцию main(), которая выполняется первой. Кроме того, в них необходимо подключать различные файлы библиотек, с которыми будет производится работа в программе. В Matlab всего этого делать не нужно.

Для выполнения простых команд достаточно вписывать их в командную строку. Но для удобства используют скрипты. Они имеют расширение. m и создаются через: File -> New -> Script. В скриптах выполнение кода происходит с верхней строки, последовательно.

После написания нажать F5 для запуска кода.

 

Комментарии в коде начинаются с символа %

Множественные комментарии отсутствуют, но можно выделить текст и нажать ctrl+R для комментирования блока кода, раскомментирование блока кода производится нажатием ctrl+T.

 

Перенос строки

Ежели команда слишком длинная, её можно разделить на несколько строк, при этом для переноса строки нужно в конце написать: ... (три точки)

Циклы и условия

Отличие от других языков программирования в отсутствии фигурных скобок. Цикл начинается со слова while или for и заканчивается словом end. Во вложенных циклах каждому условию\циклу должен соответствовать свой end.

Пример использования цикла for

for i=1: 2: 10

% do something here

end

 

Здесь 1: 2: 10 - начальное значение=1, шаг=2, конечное значение=10. ежели шаг = 1, то его можно не указывать: for i=1: 10.

 

Пример использования цикла while

while var1==1

% do something here

end

 

Множественный условный цикл if

if p==1

% do something here

elif p==2

% do anything else here

else

% do anything else here

end

 

В коде каждая строка вложенного цикла имеет отступ. Он необходим только для удобства чтения, ставится кнопкой tab или автоматически нажатием enter в конце предыдущей строки.

 

Логические операторы: логическое или: ||, логическое и: & &

коде каждая строка вложенного цикла имеет отступ. Он необходим только для удобства чтения, ставитс

Массивы

Массив в Matlab - одномерная (вектор) или двумерная (матрица) упорядоченная последовательность значений. Нумерация в массиве начинается с единицы (в других языка - с нуля).

 

Обращение к элементам массива происходит так:

массив(строка, столбец)

например, присвоение значения 5го элемента массива переменной vec5:

vec5 = vector1(5);

 

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

массив_ячеек{строка, столбец}

Преобразование массива cell к нормальному виду с помощью функции:

cell2mat(cell_array);

 

Заполнение массива вручную:

array1 = [1, 2];

Создаётся одномерный вектор из двух элементов.

Заполнение двумерного массива:

array2 = [1, 2, 3; 4, 5, 6];

 

Здесь, (запятая) - разделитель элементов строки, ; (точка с запятой) - разделитель строк. Таким образом, создаётся массив 2 на 3 (2 строки по 3 столбца, рисунок ниже).

 

Квадратные скобки [ ] в Matlab используются только при инициализации массива, круглые ( ) — для обращения к элементам массивов и в вызовах функций.

 

Обращение к нескольким элементам массива происходит с помощью символа: (двоеточие)

array3 = array2(1: 2, 2: 3);

Здесь array3 состоит из части массива array2, включает четыре элемента 1-ой и 2-ой строки ( array2( 1: 2, 2: 3)) и 2-го и 3-го столбца (( array2(1: 2, 2: 3 ), рисунок ниже)

 

Таким же способом можно заполнять массивы одинаковыми элементами. Например, массив 3 на 3 из единиц:

array_of_ones(1: 3, 1: 3) = 1;

 

Точно так же можно изменять содержимое сущесвтующих массивов. Например

array_of_ones(2: 3, 2: 3) = 0;

обнулит элементы пересечения 2 и 3 строки и столбца (рисунок ниже)

 

 

 

Ежели вокруг двоеточия при указании элементов массива цифры не указаны, то автоматически выбирается весь диапазон. Например, следующий код выделит всю первую строку (3 эелемента):

first_row = array_of_ones(1,: );

 

Встроенные функции создания массив из единиц:

ones(row, col);

zeros(row, col);

где row - число строк, col - число столбцов

 

Объединение массивов происходит точно так же, как и создание массива вручную, только вместо цифр используются массивы.

Пусть массив array4 имеет размерность 3x2, массив array5 - 3x3, тогда объединённый (горизонтально, по строкам) массив array6 будет иметь размерность 3х5:

array4 = zeros(3, 2); % массив 3х3 из нулей

array5 = ones(3, 3); % массив 3х3 из единиц

array6 = [array4, array5]; % конечный массив 3х5

Первые 2 столбца массива array6 будут состоять из нулей, следующие 3 - из единиц.

 

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...