Лабораторная работа №3
.docМинистерство образования РФ.
Санкт-Петербургский государственный электротехнический университет.
Кафедра АиПУ
Отчет
По лабораторной работе № 3
« Анализ дискретных объектов/систем »
Выполнили: Рачеев Р.А.
Смирнов И.А.
Кудряшов В.В.
Факультет: КТИ
Группа: 9322
Проверил: Имаев Д. Х.
Санкт-Петербург
2001
Целью лабораторной работы является изучение численных и имитационных методов исследования дискретных объектов.
Пример 1. Генератор чисел Фибоначчи (1202г.)
Числа Фибоначчи генерируются по следующему алгоритму – каждое последующее число равно сумме двух непосредственно предшествующих. Подразумевается, что числа натуральные.
Разностное уравнение (РУ):
f[k+2]=f[k+1]+f[k]
Для решения РУ необходимо иметь два начальных условия
f[0]=0
f[1]=1
-
Численный метод
РУ являются готовым реккурентным соотношением, позволяющим итеративно вычислять последующие члены:
k=0 f[2]=f[1]+f[0]=1;
k=1 f[3]=f[2]+f[1]=2;
k=2 f[4]=f[3]+f[2]=3;
…
k=8 f[10]=f[9]+f[8]=55;
Чтобы вычислить, например, f[99] необходимо вычислить все предшествующие члены последовательности, что не очень удобно.
-
Имитационный метод
Реализованные РУ в среде Matlab/Simulink изображены на рис.1.
Рис 1.
На дискретных задержках необходимо поставить начальные значения f[0] и f[1]. Теперь меняя Stop Time в настройках Симуляции можно вычислить любой член ряда Фибоначчи.
Например, для Stop Time=10 получим:
что f[10]=55, тот же результат получили при численном методе.
-
Аналитический метод
Перепишем наши РУ в следующем виде:
f[k+2] - f[k+1] - f[k] =0 , f[0] =0, f[1] =1
Имеем однородное РУ 2 порядка.
Форма аналитического решения однородного РУ известна
, где
- корни ХП РУ
ХП для нашего РУ равно
это корни так называемого «золотого сечения».
Коэффициенты - зависят от начальных условий
Для нашего РУ имеем
В итоге получим, что k член последовательности Фибоначчи равен
причем, если учесть, что с ростом k второе слагаемое 0
, при росте k числа Фибоначчи растут как геометрическая прогрессия.
Получим f[10] с помощью этой формулы:
Пример 2. Выплата кредита (экономический объект)
Пусть начальное значение кредита равно p0. Процент на невыплаченную часть кредита за период (год) составляет r*100%. Выплата кредита и процентов производится равными платежами U за n периодов.
p[k] – величина займа оставшегося к выплате после k периода с учетом %. Тогда величина к выплате на k+1 периоде равна
Задача: Найти величину платежа U, который должен платиться банку в течении 5 лет, если кредит составлял 1000 руб., а годовой процент – 20%.
По существу это задача синтеза управляющего воздействия.
Получено РУ первого порядка неоднородное:
Решим эту задачу имитационным путем.
Реализованные РУ в среде Matlab/Simulink изображены на рис.2.
Меняя значение воздействия в виде «ступеньки», находим то значение при котором на 5 шаге симуляции получим что p[5]=0. Это будет при U=463 руб.