- •1. Переменные 5
- •2. Массивы 6
- •3. Автономно запрограммированная процедура 6
- •Постановка задачи
- •Инструкция по пользованию программой
- •1. Переменные
- •2. Массивы
- •3. Автономно запрограммированная процедура
- •Описание программы
- •Листинг программы приведен ниже.
- •Последовательность выполнения программы.
- •Процедура ogr
- •Процедура mcch
- •Процедура ctatobr
- •Описание работы с программой
- •В каждом из файлов – даётся краткая характеристика закона распределения
- •Использование буфера обмена (бо)
- •Пояснение как создать необходимый exe-файл к программе «Оболочка» прилагается папка «Создание ехе Процесс».
- •Как создать ProjectOfflineProcess.
- •Файл typedata.Pas
- •Литература
- •Скриншоты программы
Постановка задачи
С ложная исследуемая система задана операторным уравнением
где Ф(х) – оператор преобразования входного воздействия Х и является математической моделью сложной системы.
На рис.1 показано графическое представление модели сложной системы
Рис.1. Графическое представление модели сложной системы
На вход подаётся вектор - ,
на выходе (после расчётов) подучаем - вектор –
Инструкция по пользованию программой
Исследуемую методом статистических испытаний математическую модель сложной системы необходимо оформить в виде автономно запрограммированной процедуры F(X, У, П).
Значения формальных параметров процедуры:
Х - вектор случайных входных параметров модели;
У - вектор выходных параметров модели;
П - массив входных неслучайных параметров модели.
Для работы программы необходимо задать исходные данные в следующем порядке:
1. Переменные
Nmax - число реализаций – (целое число);
Q – размерностъ входного вектора Х [1…Q] – (целое число);
Nвых – размерность выходного вектора Y [1…Nвых] – (целое число);
W - число делений, на которое разбивается интервал для построения гистограммы и/или интервал изменения случайной величины при равномерном шаге (целое число);
Тип закона распределения и его параметры задаются в виде массива M[j,1] -
{=== M[j,1]- тип закона распределения
M[j,2]-мат.ожидание (для нормального закона);
M[j,3]-сигма (для нормального закона;
M[j,4]-min
M[j,5]-(max-min) ===}.
Используются обозначения:
Q - количество элементов случайного вектора X;
МК - массив констант, вычисляемых в процедуре OGR - массив , задающий режим работы процедуры
для каждой входной величины формируется своё число МК[вход],
которое равно МК[вход]= Xmax-Xmin
{--- Ограничения- макс.Nvux=100;ограничение не программное ---------}
{---- число входов Q=100; Nvux=100; w=100; w=1..100-максимальное число интервалов
В программе используется следующее обозначение массива, например:
raM100_10 = array [1 .. NvuxM, 1 .. 10] of extended;
Для плотности и функции распределения используется массив
raMPRFR = array [1 .. NvuxM, 1 .. WvuxM ] of extended;
(массив плотности распределения / функции распределения).
Другие массивы:
raX = array [1 .. QmaxM] of extended;
raF = array [1 .. NvuxM, 0 .. WvuxM ] of extended;
raM100_10 = array [1 .. NvuxM, 1 .. 10] of extended; и другие.
Описание всех массивов приведено в unit typeDATA;
Описание глобальных переменных – в unit Global_ID_Data;
Процедуры для обработки собраны в unit StatunitProcess;
Она содержит :
procedure OGR( M:raM100_10;var MBUX:raM100_10;Q,NMAX:integer;var MK:raX);
procedure MCCH( M:raM100_10; MK:raX;N,Q:integer;var X:raX);
procedure ctatobr(Y:raX;XMXBux,Bi,Ai,dy :raF;
var F, MPR,MFR,MX,MF,MXBux,F0:raF;
N,Nmax,W,Nvux:integer);
procedure ChetPdovFgamma (teta,lambda, P:extended; var Xmax:extended );
procedure Fgamma (X :extended; var gamma:extended );
procedure DateTimeStMyfile ( myfile,txt : string; var myfileName: string);
procedure DateTimeStMyfolder( myfolder : string; var myfolderName: string);
procedure DirMoveFile( myfileName ,myfolderName: string);
procedure CtatObrLimit(Y:raX;MBUX :raM100_10;
var XMXBux:raF; W,Nvux:integer);
procedure CtatObrPoickLimit(Y:raX; var XMXBux,Bi,Ai,dy, MF:raF; N,Nmax,W,Nvux:integer);
procedure CtatObrPoickLPdov(Mx,MFdov:raF;
Pdov,dX:extended;W,NomerBuxoda:integer; var Xpdov:raX);
В каждой содержится коментарий с описанием – что делает процедура.