Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Моделирование базовой последовательности.Стр 1 из 7Следующая ⇒
МЕТОДИЧЕСКИЕ УКАЗАНИЯ К ЛАБОРАТОРНЫМ РАБОТАМ ПО ДИСЦИПЛИНЕ «Основы компьютерного моделирования» Караганда 2010
Лабораторная работа №1 Моделирование базовой последовательности.
Цель работы: Освоение практических навыков в создании программы линейной структуры.
Методические указания MATLAB – это высокоэффективный язык инженерных и научных вычислений. Он поддерживает математические вычисления, визуализацию научной графики и программирование с использованием легко осваиваемого операционного окружения, когда задачи и их решения могут быть представлены в нотации, близкой к математической. Наиболее известные области применения системы MATLAB: · математика и вычисления; · разработка алгоритмов; · вычислительный эксперимент, имитационное моделирование, макетирование; · анализ данных, исследование и визуализация результатов; · научная и инженерная графика; · разработка приложений, включая графический интерфейс пользователя. MATLAB – это интерактивная система, основным объектом которой является массив, для которого не требуется указывать размерность явно. Это позволяет решать многие вычислительные задачи, связанные с векторно-матричными формулировками, существенно сокращая время, которое понадобилось бы для программирования на скалярных языках типа C или Fortran. Одно из назначений математики - служить языком общения между учеными и инженерами. Матрицы, дифференциальные уравнения, массивы данных, графики - это общие объекты и конструкции, используемые как в прикладной математике, так и в системе MATLAB. Именно эта фундаментальная основа обеспечивает системе MATLAB непревзойденную мощь и доступность. Система MATLAB - это одновременно и операционная среда и язык программирования. Одна из наиболее сильных сторон системы состоит в том, что на языке MATLAB могут быть написаны программы для многократного применения. Пользователь может сам написать специализированные функции и программы, которые оформляются в виде М-файлов. Операторы системы MATLAB делятся на 3 категории: · арифметические операторы - позволяют конструировать арифметические выражения и выполнять числовые вычисления; · операторы отношения - позволяют сравнивать числовые операнды; · логические операторы - позволяют строить логические выражения. Логические операторы имеют самый низкий приоритет относительно операторов отношения и арифметических операторов. Арифметические операторы. При работе с массивом чисел установлены следующие уровни приоритета среди арифметических операций: уровень 1: поэлементное транспонирование (.'), поэлементное возведение в степень (.^), транспонирование матрицы ('), возведение матрицы в степень (^); уровень 2: унарное сложение (+), унарное вычитание (—); уровень 3: умножение массивов (.*), правое деление (./), левое деление массивов (.\), умножение матриц (*), решение систем линейных уравнений - операция (/), операция (\); уровень 4: сложение (+), вычитание (-); уровень 5: оператор формирования массивов (: ). Внутри каждого уровня операторы имеют равный приоритет и вычисляются в порядке следования слева направо. Заданный по умолчанию порядок следования может быть изменен с помощью круглых скобок. Операторы отношения. В системе MATLAB определено 6 следующих операторов отношения: < меньше; < =меньше или равно; > больше; > = больше или равно; == равно тождественно; ~ = не равно. Операторы отношения выполняют поэлементное сравнение двух массивов равных размерностей. Для векторов и прямоугольных массивов оба операнда должны быть одинакового размера, за исключением случая, когда один из них скаляр. В этом случае MATLAB сравнивает скаляр с каждым элементом другого операнда. Позиции, где это соотношение истинно, получают значение 1, где ложно - 0. Операторы отношения всегда выполняются поэлементно. Логические операторы. В состав логических операторов системы MATLAB входят следующие операторы: & И; ç ИЛИ; ~ НЕ. Логические операторы реализуют поэлементное сравнение массивов одинаковых размерностей. Для векторов и прямоугольных массивов оба операнда должны быть одинакового размера, за исключением случая, когда один из них скаляр. В последнем случае MATLAB сравнивает скаляр с каждым элементом другого операнда. Позиции, где это соотношение истинно, получают значение 1, где ложно - 0. Каждому логическому оператору соответствует некоторый набор условий, которые определяют результат логического выражения: · Логическое выражение с оператором AND (& ) является истинным, если оба операнда истинны. Если элементами логического выражения являются числа, то выражение истинно, если оба операнда отличны от нуля. · Логическое выражение с оператором OR( ê ) является истинным, если один из операндов или оба операнда логически истинны. Выражение ложно, только если оба операнда логически ложны. Если элементами логического выражения являются числа, то выражение ложно, если оба операнда равны нулю. · Логическое выражение с оператором NOT(~) строит отрицание. Результат логически ложен, если операнд истинен, и истинен, если операнд ложен. Если элементами логического выражения являются числа, то любой операнд, отличный от нуля, становится нулем, и любой нулевой операнд становится единицей. Логические функции. В дополнение к логическим операторам в состав системы MATLAB включен ряд логических функций: · Функция хоr(а, b) реализует операцию ИСКЛЮЧИТЕЛЬНОЕ ИЛИ. Выражение, содержащее ИСКЛЮЧИТЕЛЬНОЕ ИЛИ истинно, если один из операндов имеет значение TRUE, а другой - FALSE. Для числовых выражений функция возвращает 1, если один из операндов отличен от нуля, а другой - 0. · Функция all возвращает 1, если все элементы вектора истинны или отличны от нуля. · Функция any возвращает 1, если хотя бы один из элементов аргумента отличен от нуля; иначе возвращается 0 Помимо операции возведения в степень, реализуемой с помощью знака ^, есть еще функция извлечения квадратного корня sqrt, функция exp для возведения в степень числа е, функция pow2 для возведения в степень числа 2. Также присутствуют обратные к ним функции: log – натуральный логарифм, log10 – логарифм по основанию 10, log2 - логарифм по основанию 2. Тригонометрические функции представлены весьма полно: sin, cos, tan (тангенс), cot (котангенс), asin (арксинус), acos (арккосинус), atan (арктангенс), acot (арккотангенс). Имеются также и менее употребительные функции типа секанса, косеканса, а также гиперболические функции. Упомянем еще функции, связанные с целочисленной арифметикой. Например, функции округления: round (округление до ближайшего целого), fix (усечение дробной части числа), floor (округление до меньшего целого), ceil (округление до большего целого). Кроме того, есть еще функции mod (остаток от деления с учетом знака), rem (остаток в смысле модульной арифметики), sign (знак числа), factor (разложение числа на простые множители), isprime (истинно, если число простое), primes (формирование списка простых чисел), rat (приближение числа в виде рациональной дроби), 1cm (наименьшее общее кратное), gcd (наибольший общий делитель).
Задание к работе Порядок выполнения работы: 1. Изучение теоретических сведений по теме лабораторной работы 2. По индивидуальному заданию написать программу 3. Оформление отчета по лабораторной работе, который должен содержать: Название, цель работы, постановка задачи Текст программы Результаты тестирования работы программы Ответы на контрольные вопросы 4. Защита лабораторной работы
Контрольные вопросы 1. Что такое «зона просмотра» и «зона редактирования»? 2. Дайте определения выражения. 3. Чем определяется порядок вычисления значения выражения? 4. Чему равно: round(17.6), fix(6.51), floor(12.7), ceil(12.7). 5. В каком случае функции mod и rem дают одинаковый результат? 6. Чему равно: mod(-12, 6), rem(-7, 2), isprime(5), isprime(10), lcm(3, 4), gcd(72, 12). 7. Какие операторы существуют в системе MATLAB? 8. Вычислить значение выражения, если A=2.5, B=7.8, C=-17.3, M=5, X=8.7, E=TRUE a) (A+B)/C*M b) 2+X/(X+(A+B)/5) c) (A< B)& (X+A< B) ׀ (C< M) ׀ E Варианты заданий
Пример решения задачи лабораторной работы №1 Задание: Написать программу, которая печатает true и false в зависимости от того, имеют три заданных числа одинаковую четность или нет.
Листинг текста программы: a=input(‘Введите первое число’); b= input(‘Введите второе число’); c= input(‘Введите третье число’); x1=mod(a, 2) %mod – остаток от деления числа а на 2 x2=mod(b, 2) %0 – если число четное x3=mod(c, 2) %1 – если число нечетное if (x1==x2) & (x1==x3) disp(‘Все числа имеют одинаковую четность’) else disp(‘Все числа имеют разную четность’) end
Лабораторная работа №2 Рис.1.1 Блок-схема одноканальной одно-фазовой модели
Генерирование данных В программе имитации на ЭВМ часто применяются численные методы генерирования данных. Для описания случайной величины независимо от того, как она распределена - непрерывно или дискретно, удобно ввести кумулятивную функцию распределения вероятности F(x), которая при данном значении своего аргумента Х - вероятность того, что случайная реализация величины Х не превосходит x. Для абсолютно непрерывной функции, функция плотности вероятностей f(х) имеет вид:
(1.4)
Нормальное распределение Функция плотности вероятностей: Параметры: m x и d x Математическое ожидание: Ex = m x Дисперсия: Vx =d x2, STDX=d x Гамма-распределение Функция плотности вероятностей: a> 0, k> 0, x> =0 Параметры: a и k Математическое ожидание: Ex=k/a; Дисперсия: Vx=k/a2 Биноминальное распределение Функция плотности вероятностей: f(x)=(xn)pxqu-x, x=0, l..N; q=1- p; Параметры: n, N, p, q; 0< =p< =1; Математическое ожидание: Ex = np Дисперсия: Vx = npq Распределение Пуассона Функция плотности вероятностей: f(x)=e-l *(l x/x! ) x=0, 1, …; l > 0 Параметры: l Математическое ожидание: Ex = l Дисперсия: Vx = l Рис. 1.2 Структурная схема модели одноканальной СМО
Канал обслуживания осуществляет обслуживание каждой заявки в соответствии с заданным детерминированным или случайным законом обслуживания. Выходной поток заявок отличается от входного в зависимости от законов дисциплины очереди и обслуживания Перечислим переменные и управление модели: Эндогенные переменные: WT - среднее время ожидания заявки в очереди; IDT - среднее время простоя системы, в ожидании очередного требования. Переменные состояния: WTi - время ожидания i-ой заявки; IDTi время простоя системы, в ожидании i-ой заявки. Экзогенные переменные: AТi - интервал времени между появлением i-ой и (i+1)-ой заявками; STi - время обслуживания i-ой заявки. Характеристики функционирования системы: f(AT) - функция распределения плотностей вероятностей интервала врeмeни между двумя последовательными заявками; f(SТ) - Функция распределения плотностей вероятностей времени обслуживания. Тождества:
Интервал времени между двумя последовательными заявками и время обслуживания одной заявки - величины не постоянные, а случайные. Рассмотрим пример одноканальной одно-фазовой модели. Студенты N-ой группы пришли на консультацию к преподавателю, который принимает весь день. Каждый студент приходит тогда, когда ему удобно, т.е. время его прихода величина случайная (т.е. разная для каждого студента). Если преподаватель занят, студент ждет в очереди. Данные этих испытаний позволяют анализировать влияние различных изменений в параметрах вероятностных распределений на статистические характеристики очереди. Кроме того, на модели можно ставить эксперименты с различными дисциплинами очереди и ограничениями на ее длину.
Лабораторная работа №3 Практическая часть Лабораторная работа №4 Архитектура персептрона Нейрон персептрона Нейрон, используемый в модели персептрона, имеет ступенчатую функцию активации hardlim с жесткими ограничениями (рисунок 4.1).
Рисунок 4.1 – Модель нейрона Каждое значение элемента вектора входа персептрона умножено на соответствующий вес w1j, и сумма полученных взвешенных элементов является входом функции активации. Если вход функции активации n ≥ 0, то нейрон персептрона возвращает 1, если n < 0, то 0. Функция активации с жесткими ограничениями придает персептрону способность классифицировать векторы входа, разделяя пространство входов на две области, как это показано на рисунке 4.2, для персептрона с двумя входами и смещением.
Рисунок 4.2 – Пространство входов
Пространство входов делится на две области разделяющей линией L, которая для двумерного случая задается уравнением (4.1)
Эта линия перпендикулярна к вектору весов w и смещена на величину b. Векторы входа выше линии L соответствуют положительному потенциалу нейрона, и, следовательно, выход персептрона для этих векторов будет равен 1; векторы входа ниже линии L соответствуют выходу персептрона, равному 0. При изменении значений смещения и весов граница линии L изменяет свое положение. Персептрон без смещения всегда формирует разделяющую линию, проходящую через начало координат; добавление смещения формирует линию, которая не проходит через начало координат, как это показано на рисунке 4.2. В случае, когда размерность вектора входа превышает 2, т. е. входной вектор Р имеет более 2 элементов, разделяющей границей будет служить гиперплоскость. Модель персептрона Для формирования модели однослойного персептрона в системе MATLAB предназначена функция newp net = newp(PR, S) со следующими входными аргументами: PR – массив минимальных и максимальных значений для R элементов входа размера Rx2; S – число нейронов в слое. Например, функция net = newp([0 2], 1); создает персептрон с одноэлементным входом и одним нейроном; диапазон значений входа – [0 2]. В качестве функции активации персептрона по умолчанию используется функция hardlim. Моделирование персептрона Рассмотрим однослойный персептрон с одним двухэлементным вектором входа, значения элементов которого изменяются в диапазоне от –2 до 2 (p1 = [–2 2], p2 = [–2 2], число нейронов в сети S = 1): clear, net = newp([-2 2; -2 2], 1); %Создание персептрона net По умолчанию веса и смещение равны нулю, и для того, чтобы установить желаемые значения, необходимо применить следующие операторы:
Запишем уравнение (1) в развернутом виде для данной сети:
В этом случае разделяющая линия имеет вид L: -p1 + p2 + 1 = 0 и соответствует линии L на рисунке 4.2.
Определим реакцию сети на входные векторы p1 и p2, расположенные по разные стороны от разделяющей линии:
p1 = [1; 1]; a1 = sim(net, p1 % Моделирование сети net с входным вектором p1 a1 = 1 p2 = [1; -1]; a2 = sim(net, p2) % Моделирование сети net с входным вектором p2
a2 = 0
Персептрон правильно классифицировал эти два вектора. Заметим, что можно было бы ввести последовательность двух векторов в виде массива ячеек и получить результат также в виде массива ячеек. p3 = {[1; 1] [1; -1]} a3 = sim(net, p3) % Моделирование сети net при входном сигнале p3
p3 = [2x1 double] [2x1 double] a3 = [1] [0] Инициализация параметров
Для однослойного персептрона в качестве параметров нейронной сети в общем случае выступают веса входов и смещения. Допустим, что создается персептрон с двухэлементным вектором входа и одним нейроном clear, net = newp([-2 2; -2 2], 1); Запросим характеристики весов входа Из этого списка следует, что в качестве функции инициализации по умолчанию используется функция initzero, которая присваивает весам входа нулевые значения. В этом можно убедиться, если извлечь значения элементов матрицы весов и смещения: wts = net.IW{1, 1}, bias = net.b{1} wts = 0 0 bias = 0 Теперь переустановим значения элементов матрицы весов и сме- щения: net.IW{1, 1} = [3, 4]; net.b{1} = 5; wts = net.IW{1, 1}, bias = net.b{1} wts = 3 4 bias = 5 Для того чтобы вернуться к первоначальным установкам парамет- ров персептрона, предназначена функция init:
net = init(net); wts = net.IW{1, 1}, bias = net.b{1}
wts = 0 0 bias = 0
Можно изменить способ, каким инициализируется персептрон с помощью функции init. Для этого достаточно изменить тип функций инициализации, которые применяются для установки первоначальных значений весов входов и смещений. Например, воспользуемся функцией инициализации rands, которая устанавливает случайные значения параметров персептрона:
% Задать функции инициализации весов и смещений net.inputweights{1, 1}.initFcn = 'rands'; net.biases{1}.initFcn = 'rands'; % Выполнить инициализацию ранее созданной сети с новыми функциями net = init(net); wts = net.IW{1, 1}, bias = net.b{1} wts = -0.1886 0.8709 bias = -0.6475
Видно, что веса и смещения выбраны случайным образом. Порядок выполнения работы 1. Для заданного преподавателем варианта (таблица) разработать структурную схему персептронной нейронной сети. 2. Разработать алгоритм создания и моделирования персептрон- ной нейронной сети. 3. Реализовать разработанный алгоритм в системе MATLAB. 4. Определить параметры созданной нейронной сети (веса и сме- щение) и проверить правильность работы сети для последовательно- сти входных векторов (не менее 5). 5. Построить график, аналогичный представленному на рис. 2, для своих исходных данных. Задание к работе
1. Изучение теоретических сведений по теме лабораторной работы 2. Простой персептрон. Алгоритм обучения персептрона 3. Постановка задачи распознавания образов. 4. Описание структуры используемого персептрона 5. Реализовать разработанный алгоритм в системе MATLAB. 6. Определить параметры созданной нейронной сети (веса и смещение) и проверить правильность работы сети для последовательности входных векторов (не менее 5). 7. Построить график, аналогичный представленному на рисунке 4.2, для своих исходных данных. 8. Алгоритм работы программы 9. Оформление отчета по лабораторной работе, который должен содержать: Название и задание к лабораторной работе Ответы на контрольные вопросы и задания 10. Защита лабораторной работы
Контрольные вопросы 1. Что такое нейроподобный элемент? 2. В естественном нейроне аксон, а в нейроподобном элементе -..? 3. Что такое нейронная сеть? 4. Какие типы искусственных нейронных сетей бывают? 5. Какие задачи не может решить простой однослойный персептрон? 6. Какие виды связей существуют в нейронных сетях? 7. В чем отличие правила Уидроу-Хоффа от дельта-правила? 8. Какие основные выходные функции используют при построении нейроподобных элементов? 9. Какая выходная функция используется при построении персептрона в данной программе? 10. Для чего использован «ПОРОГ» в нейроподобных элементах?
Лабораторная работа №5 Генерирование данных В программе имитации на ЭВМ часто применяются численные методы генерирования данных. Для описания случайной величины независимо от того, как она распределена - непрерывно или дискретно, удобно ввести кумулятивную функцию распределения вероятности F(x), которая при данном значении своего аргумента Х - вероятность того, что случайная реализация величины Х не превосходит x. Для абсолютно непрерывной функции, функция плотности вероятностей f(х) имеет вид:
(1.4)
Нормальное распределение Функция плотности вероятностей: Параметры: m x и d x Математическое ожидание: Ex = m x Дисперсия: Vx =d x2, STDX=d x Гамма-распределение Функция плотности вероятностей: a> 0, k> 0, x> =0 Параметры: a и k Математическое ожидание: Ex=k/a; Дисперсия: Vx=k/a2 Биноминальное распределение Функция плотности вероятностей: f(x)=(xn)pxqu-x, x=0, l..N; q=1- p; Параметры: n, N, p, q; 0< =p< =1; Математическое ожидание: Ex = np Дисперсия: Vx = npq Распределение Пуассона Функция плотности вероятностей: f(x)=e-l *(l x/x! ) x=0, 1, …; l > 0 Параметры: l Математическое ожидание: Ex = l Дисперсия: Vx = l Лабораторная работа №6 Лабораторная работа №7 МЕТОДИЧЕСКИЕ УКАЗАНИЯ К ЛАБОРАТОРНЫМ РАБОТАМ ПО ДИСЦИПЛИНЕ «Основы компьютерного моделирования» Караганда 2010
Лабораторная работа №1 Моделирование базовой последовательности.
Цель работы: Освоение практических навыков в создании программы линейной структуры.
Методические указания MATLAB – это высокоэффективный язык инженерных и научных вычислений. Он поддерживает математические вычисления, визуализацию научной графики и программирование с использованием легко осваиваемого операционного окружения, когда задачи и их решения могут быть представлены в нотации, близкой к математической. Наиболее известные области применения системы MATLAB: · математика и вычисления; · разработка алгоритмов; · вычислительный эксперимент, имитационное моделирование, макетирование; · анализ данных, исследование и визуализация результатов; · научная и инженерная графика; · разработка приложений, включая графический интерфейс пользователя. MATLAB – это интерактивная система, основным объектом которой является массив, для которого не требуется указывать размерность явно. Это позволяет решать многие вычислительные задачи, связанные с векторно-матричными формулировками, существенно сокращая время, которое понадобилось бы для программирования на скалярных языках типа C или Fortran. Одно из назначений математики - служить языком общения между учеными и инженерами. Матрицы, дифференциальные уравнения, массивы данных, графики - это общие объекты и конструкции, используемые как в прикладной математике, так и в системе MATLAB. Именно эта фундаментальная основа обеспечивает системе MATLAB непревзойденную мощь и доступность. Система MATLAB - это одновременно и операционная среда и язык программирования. Одна из наиболее сильных сторон системы состоит в том, что на языке MATLAB могут быть написаны программы для многократного применения. Пользователь может сам написать специализированные функции и программы, которые оформляются в виде М-файлов. Операторы системы MATLAB делятся на 3 категории: · арифметические операторы - позволяют конструировать арифметические выражения и выполнять числовые вычисления; · операторы отношения - позволяют сравнивать числовые операнды; · логические операторы - позволяют строить логические выражения. Логические операторы имеют самый низкий приоритет относительно операторов отношения и арифметических операторов. Арифметические операторы. При работе с массивом чисел установлены следующие уровни приоритета среди арифметических операций: уровень 1: поэлементное транспонирование (.'), поэлементное возведение в степень (.^), транспонирование матрицы ('), возведение матрицы в степень (^); уровень 2: унарное сложение (+), унарное вычитание (—); уровень 3: умножение массивов (.*), правое деление (./), левое деление массивов (.\), умножение матриц (*), решение систем линейных уравнений - операция (/), операция (\); уровень 4: сложение (+), вычитание (-); уровень 5: оператор формирования массивов (: ). Внутри каждого уровня операторы имеют равный приоритет и вычисляются в порядке следования слева направо. Заданный по умолчанию порядок следования может быть изменен с помощью круглых скобок. Операторы отношения. В системе MATLAB определено 6 следующих операторов отношения: < меньше; < =меньше или равно; > больше; > = больше или равно; == равно тождественно; ~ = не равно. Операторы отношения выполняют поэлементное сравнение двух массивов равных размерностей. Для векторов и прямоугольных массивов оба операнда должны быть одинакового размера, за исключением случая, когда один из них скаляр. В этом случае MATLAB сравнивает скаляр с каждым элементом другого операнда. Позиции, где это соотношение истинно, получают значение 1, где ложно - 0. Операторы отношения всегда выполняются поэлементно. Логические операторы. В состав логических операторов системы MATLAB входят следующие операторы: & И; ç ИЛИ; ~ НЕ. Логические операторы реализуют поэлементное сравнение массивов одинаковых размерностей. Для векторов и прямоугольных массивов оба операнда должны быть одинакового размера, за исключением случая, когда один из них скаляр. В последнем случае MATLAB сравнивает скаляр с каждым элементом другого операнда. Позиции, где это соотношение истинно, получают значение 1, где ложно - 0. Каждому логическому оператору соответствует некоторый набор условий, которые определяют результат логического выражения: · Логическое выражение с оператором AND (& ) является истинным, если оба операнда истинны. Если элементами логического выражения являются числа, то выражение истинно, если оба операнда отличны от нуля. · Логическое выражение с оператором OR( ê ) является истинным, если один из операндов или оба операнда логически истинны. Выражение ложно, только если оба операнда логически ложны. Если элементами логического выражения являются числа, то выражение ложно, если оба операнда равны нулю. · Логическое выражение с оператором NOT(~) строит отрицание. Результат логически ложен, если операнд истинен, и истинен, если операнд ложен. Если элементами логического выражения являются числа, то любой операнд, отличный от нуля, становится нулем, и любой нулевой операнд становится единицей. Логические функции. В дополнение к логическим операторам в состав системы MATLAB включен ряд логических функций: · Функция хоr(а, b) реализует операцию ИСКЛЮЧИТЕЛЬНОЕ ИЛИ. Выражение, содержащее ИСКЛЮЧИТЕЛЬНОЕ ИЛИ истинно, если один из операндов имеет значение TRUE, а другой - FALSE. Для числовых выражений функция возвращает 1, если один из операндов отличен от нуля, а другой - 0. · Функция all возвращает 1, если все элементы вектора истинны или отличны от нуля. · Функция any возвращает 1, если хотя бы один из элементов аргумента отличен от нуля; иначе возвращается 0 Помимо операции возведения в степень, реализуемой с помощью знака ^, есть еще функция извлечения квадратного корня sqrt, функция exp для возведения в степень числа е, функция pow2 для возведения в степень числа 2. Также присутствуют обратные к ним функции: log – натуральный логарифм, log10 – логарифм по основанию 10, log2 - логарифм по основанию 2. Тригонометрические функции представлены весьма полно: sin, cos, tan (тангенс), cot (котангенс), asin (арксинус), acos (арккосинус), atan (арктангенс), acot (арккотангенс). Имеются также и менее употребительные функции типа секанса, косеканса, а также гиперболические функции. Упомянем еще функции, связанные с целочисленной арифметикой. Например, функции округления: round (округление до ближайшего целого), fix (усечение дробной части числа), floor (округление до меньшего целого), ceil (округление до большего целого). Кроме того, есть еще функции mod (остаток от деления с учетом знака), rem (остаток в смысле модульной арифметики), sign (знак числа), factor (разложение числа на простые множители), isprime (истинно, если число простое), primes (формирование списка простых чисел), rat (приближение числа в виде рациональной дроби), 1cm (наименьшее общее кратное), gcd (наибольший общий делитель).
Задание к работе Порядок выполнения работы: 1. Изучение теоретических сведений по теме лабораторной работы 2. По индивидуальному заданию написать программу 3. Оформление отчета по лабораторной работе, который должен содержать: Название, цель работы, постановка задачи Текст программы Результаты тестирования работы программы Ответы на контрольные вопросы 4. Защита лабораторной работы
Контрольные вопросы 1. Что такое «зона просмотра» и «зона редактирования»? 2. Дайте определения выражения. 3. Чем определяется порядок вычисления значения выражения? 4. Чему равно: round(17.6), fix(6.51), floor(12.7), ceil(12.7). 5. В каком случае функции mod и rem дают одинаковый результат? 6. Чему равно: mod(-12, 6), rem(-7, 2), isprime(5), isprime(10), lcm(3, 4), gcd(72, 12). 7. Какие операторы существуют в системе MATLAB? 8. Вычислить значение выражения, если A=2.5, B=7.8, C=-17.3, M=5, X=8.7, E=TRUE a) (A+B)/C*M b) 2+X/(X+(A+B)/5) c) (A< B)& (X+A< B) ׀ (C< M) ׀ E Варианты заданий
Пример решения задачи лабораторной работы №1 Популярное:
|
Последнее изменение этой страницы: 2017-03-08; Просмотров: 1023; Нарушение авторского права страницы