Определение способа применения пакета
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

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

2.3 Построение модели предметной области

При решении задачи определения макроэкономических показателей в пакете используется определенная совокупность данных и связей между ними, или модель предметной области (МПО). В этой совокупности можно выделить структуру данных (Х), связи по определению, неизменные при функционировании пакета (R) и функциональные связи, реализующиеся в процессе работы пакета (F). Соответственно модель предметной области можно описать как МПО = { X, R, F }.

Структуру данных МПО можно представить в виде таблицы 2.1.

Таблица 2.1 - Таблица данных модели предметной области

Название данного Имя данного Тип данного
Склонность к потреблению C Вещественное положительное число
Национальный доход ND Вещественное положительное число
Совокупный спрос D Вещественное положительное число
Базисное потребление A Вещественное положительное число
Независимый объем инвестиций I Вещественное положительное число
Равновесный национальный доход YE Вещественное число
Отношение “капитал/труд” Х Вещественное положительное число
Темп измененияотношения “капитал/труд” DX Вещественное число
Норма накопления S Вещественное положительное число
Прирост предложения труда N Вещественное положительное число
Шаг дифференцирования H Вещественное число
Критерий сходимости ep Вещественное положительное число
Фактор акселерации V Вещественное число

Связи по определению, задающие подчиненность данных, можно представить в виде таблицы 2.2.

Таблица 2.2 - Связи по определению

Старшие данные Подчиненные данные
C cp, Y, A,
D cp, Y, A, I
YE cp, I, A
DX S, N, X
Y A, B, V

Функциональные связи, обосновывающие минимально необходимое число обрабатывающих модулей и реализуемые в процессе работы пакета по прямому или косвенному указанию пользователя, представлены в таблице 2.3.

Таблица 2.3 – Функциональные связи

Задача, выполняемая модулем Обрабаты-вающий модуль Входные параметры Выходные параметры
1. Расчет равновесного национального дохода Уравнения A, I, cp Y, YE, D, C
2. Расчет темпов изменения отношения “капитал/труд” Расчеты X, H, S, FN, ep, N DX, DXe
3. Расчет динамики национального дохода простой модели Данные_график Ap, Bp, V Y(t)
4. Расчет динамики национального дохода с учетом госпотребления С_гос_потреблением Ap, V, Bp, R Y(t), G

Как видно из таблицы четыре задачи решаются с помощью четырех обрабатывающих модулей.

Исходя из анализа функций обрабатывающих модулей, был построен граф переходов состояний МПО (рисунок 2.2).

 

 

 


Рисунок 2.2 – Граф переходов состояний МПО

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

OpenBook1, OpenBook2, OpenBook3 – данные вводятся из других рабочих книг

Ввод_исх_данных, Вход_данные, Исходные_данные – данные вводятся пользователем вручную

Диагр1, Диагр2, Дигр3, Диагр4 –осуществляют построение соответствующих графиков.

Граф переходов представляет собой структуру с разветвлением. Выбор ветви зависит от выбранного пользователем пункта меню.


Планирование вычислительного процесса

Как видно из графа состояний модели предметной области (рисунок 2.2), ход вычислительного процесса может идти тремя путями. По какой ветви графа будет идти процесс вычислений определяется в зависимости от выбора пользователя. То есть при запуске пакета неизвестно какие модули должны вызываться. Но возможных путей только три, поэтому определим какие модули должны вызываться в каждом из возможных случаев. Для определения последовательности вызываемых модулей воспользуемся алгоритмом “прямой волны” [2, cтр. 105]. Данный метод можно применить, так как несмотря на то, что граф переходов состояний МПО имеет разветвление, выбор ветви определяется пользователем и нет необходимости автоматически выбирать путь на графе. Матрицы входных и выходных данных модулей (Т и R), в которых строки соответствуют обработывающим модулям, а столбцы - данным по таблице 2.1, представлены в таблицах 2.4 и 2.5. Условно известные данные обозначены как “1”, неизвестные - как “ ” (пусто), или “0”.

Таблица 2.4 - Матрица T входных данных обрабатывающих модулей

 Данные Модули A I cp X H S FN ep N Ap Bp V R Y YE D C DX DXe Y(t) G
Уравнения 1 1 1                                    
Расчеты       1 1 1 1 1 1                        
Данные_график                   1 1 1                  
С-гос_пот-реблением                   1 1 1 1                

Таблица 2.5 - Матрица R выходных данных обрабатывающих модулей

Данные Модули A I cp X H S FN ep N Ap Bp V R Y YE D C DX Dxe Y(t) G
Уравнения                           1 1 1 1        
Расчеты                                   1 1    
Данные_график                                       1  
С-гос_пот-реблением                                       1 1

В первом случае процесс вычислений идет по левой ветви графа переходов состояний МПО. Так как в задачу пакета не входит выбор ветви, а выбор осуществляется пользователем, то подключение модулей Уравнения, Расчеты и Данные_график является взаимоисключающей альтернативой зависит от пользователя. Допустим, что пользователь задал определить нац. доход при постоянных мощностях, то для этого должен вызываться модуль Уравнения. В этом случае должны быть рассчитаны следующие данные: Y, D, YE, C то есть конечное состояние предметной области можно представить вектором Z=(0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0). Предположим, что данные A, I, cp уже заданы пользователем, хотя реально эти данные запрашиваются у пользователя в ходе вычислительного процесса. Тогда начальное состояние предметной области может быть описано вектором S0=(1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0).

S0=(1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)

Уравнения®S1=(1,1,1,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0)

Получен управляющий вектор для построения графика национального дохода.

Во втором случае процесс вычислений будет идти по средней ветви графа переходов состояний МПО. Этот путь выбирается в том случае, если пользователь желает определить величину национального дохода с учетом инвестиций. В этом случае должны быть рассчитаны следующие данные DX и DXe, то есть конечное состояние предметной области можно представить вектором Z=(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0). Предположим, что данные X, H, S, ep, N уже заданы пользователем, хотя реально эти данные запрашиваются у пользователя в ходе вычислительного процесса. Тогда начальное состояние предметной области может быть описано вектором S0=(0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0).

S0==(0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0).

Расчеты®S1=(0,0,0,1,1,1,1,1,1,0,0,0,0,0,0,0,0,1,1,0,0)

Получен управляющий вектор для построения графика национального дохода с учетом инвестиций.

В третьем случае процесс вычислений будет идти по правой ветви графа переходов состояний МПО. Этот путь выбирается в том случае, если пользователь желает построить модель делового цикла. В этом случае должны быть рассчитаны следующие данные Y(t) и G, то есть конечное состояние предметной области можно представить вектором Z=(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1). Предположим, что данные Ap, Bp, V, R уже заданы пользователем, хотя реально эти данные запрашиваются у пользователя в ходе вычислительного процесса. Тогда начальное состояние предметной области может быть описано вектором S0=(0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0).

S0==(0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0).

Расчеты®S1=(0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,1,1)

Получен управляющий вектор для построения графика делового цикла.

Дата: 2019-05-28, просмотров: 189.