Дипломы, курсовые, рефераты, контрольные...
Срочная помощь в учёбе

Главная программа MAIN OPTIMIZ. 
Градиентный метод

РефератПомощь в написанииУзнать стоимостьмоей работы

NAMELIST/LST/ nwK, rKatvn, tWKr, tWKz, tlzwwr, shrzbK, udSoprK, sO &, hDisk, rDvn, rDnar, shrzbD, udSoprD, YdPID, Amas, roProv, DiamPr, TizPr, DIProv &, ht, tkon, Uc0, emk, LTiristor, RTiristor, xkon, nlntervX, Fm0, zl, xl, Fml, z2 &. Mdir=SYSTEMQQ ('MKDIR '//path) !Созд.папки с именем и путём, помещёнными в path IF (.NOT.mdir) THEN; PAUSE 'In MAIN SYSTEMQQ () IS ERROR'; STOP; ENDIF… Читать ещё >

Главная программа MAIN OPTIMIZ. Градиентный метод (реферат, курсовая, диплом, контрольная)

Эта главная программа отличается от приведенных ранее главных программ тем, что до чтения исходных данных (см. в тексте программы строку с комментарием 'ЧЧтение исходных данных") в папке с именем проекта создается новая папка, в которую будут помещаться таблицы с результатами расчёта, графики и рисунок найденного оптимального ИДМ. Если в исходных данных указано iStart=2 (поиск оптимального варианта будет выполнен из двух различных стартовых точек), то в уже созданной новой папке создается ещё одна папка, в которую помещаются таблицы, графики и рисунок найденного оптимального ИДМ при старте из второй точки. Имена создаваемых папок формируются программой по системным дате и времени компьютера. Например, папка с именем " 201401_17_15h03m02s" создана в 2014 году в январе 17 числа в 15 часов 03 минуты 02 секунды.

Ниже приводится текст пп MAIN_OPTIMIZ:

PROGRAM MAIN_OPTIMIZ.

use MSIMSL; use DESCRIBE; USE IFPORT; USE MSFLIB IMPLICIT NONE.

integer: nrzm=7, iStart, iRead=0, metodop=0 ! 1-метод покоординатного спуска integer (2): iy, imes, id, ih, imin, is, iss real (8):SHAG (7), RMNOG (7), AR (7), DTX (7), OPTXAR (7) logical: OPTPAR (7), mdir, optimizacia.

NAMELIST/LST/ nwK, rKatvn, tWKr, tWKz, tlzwwr, shrzbK, udSoprK, sO &, hDisk, rDvn, rDnar, shrzbD, udSoprD, YdPID, Amas, roProv, DiamPr, TizPr, DIProv &, ht, tkon, Uc0, emk, LTiristor, RTiristor, xkon, nlntervX, Fm0, zl, xl, Fml, z2 &.

kratnPrt, poligrf, meth, miter, iatype, ZNIZ, ZVRX, OPTPAR, kDopViz, iStart EXTERNAL CALLJDM.

i=GETDRIVEDIRQQ (path) !B path помещаю путь в котором создан данный проект 10 CALL GETDAT (iy, imes, id); CALL GETTIM (ih, imin, is, iss) !Системн. дата, время ! Цифры перевод. в симв.вид для создан. папки, в кот. помещаются рез-ты счёта: write (chr,'(i4)')iy;

i2=LEN_TRIM (path); path (i2+l:i2+6)='7/chr (l:4)//,J.

write (chr,'(i2)')imes;

if (chr (l:l)==' ')chr (l:l)='0'; path (i2+7:i2+10)=chr (l:2)//'_' write (chr,'(i2)')id;

if (chr (l:l)==' ')chr (l:l)='0'; path (i2+10:i2+12)=chr (l:2)//'_' write (chr,'(i2)')ih;

if (chr (l:l)==' ')chr (l:l)='0'; path (i2+13:i2+15)=chr (l:2)//'h' write (chr,'(i2)')IMIN;

if (chr (l:l)==' ')chr (l:l)='0'; path (i2+16:i2+18)=chr (l:2)//'m' write (chr,'(i2)')is;

if (chr (l:l)==' ,)chr (l:l)='0'; path (i2+19:i2+21)=chr (l:2)//'s'.

mdir=SYSTEMQQ ('MKDIR '//path) !Созд.папки с именем и путём, помещёнными в path IF (.NOT.mdir) THEN; PAUSE 'In MAIN SYSTEMQQ () IS ERROR'; STOP; ENDIF LenPath=LEN_TRIM (path).

open (8,file=path (l:LenPath)//'main.ch') Юткрываются файлы для записи рез-ов open (9,file=path (l:LenPath)//'Fcl.ch') open (7,file-main.dat') !Для чт.исх.данн.

if (iRead==0) then; READ (7,LST); iRead=l; endif! Чтение исходных данных IF (iStart<=2)THEN.

OPTTEK=OPTPAR; pi=DCONST ('pi'); piu2=pi+pi; rmu=4d-7*pi !Выч. пи, 2*пи, ллю ALLOCATE (FDATA (5,nlntervX+l), XDATA (nlntervX+l) & [Распределение массивов, BREAK (5,nlntervX+l), CSCOEF (5,4,nlntervX+l), AA (3,3)) xPenalti=tkon*ldl/xkon; fPenalti=tkon*ldl/FmO; optimizacia=.false, OPTXAR (l)=nwK;OPTXAR (2)=twKr;OPTXAR (3)=twKz;OPTXAR (4)=rKatvn;OPTXAR (5)=rDnar OPTXAR (6)=rDvn; OPTXAR (7)=hDisk; if (OPTPAR (6)) OPTXAR (6)=rKatvn ENDIF.

if (iStart==3)then.

do i=l, 7; if (OPTPAR (i))OPTXAR (i)=(ZNIZ (i)+OPTXAR (i))*0.5dO; enddo endif DO i=l, 7.

IF (OPTPAR (i)) THEN if (ZNIZ (i) > ZVRX (i)) then.

write (*," ('ERROR: See file MAIN. DAT: ZNIZ (,, iO,,)>ZVRX (', iO,')')")i, i pause; STOP endif.

if (OPTXAR (i).

write!*,1" ('ERROR: See file MAIN. DAT: OPTXAR (', iO,'),, iO,,)')")i, i pause; STOP endif.

if (OPTXAR (i)>ZVRX (i)) then.

write!*," ('ERROR: See file MAIN. DAT: OPTXAR (', iO,')>ZVRX (', iO,'),)")i, i pause; STOP endif.

if (ZNIZ (i)==ZVRX (i)) then OPTPAR (i)=.false.; cycle; endif.

optimizacia=.true.

ENDIF.

ENDDO.

WRITE (8,LST); WRITE (9,LST) ! запись данных в файлы результатов iStart=iStart+l; nVizov=0; nVizov2=0; fcMin=ld20.

if (optimizacia) CALL OPT IDM (CALL_IDM, SHAG, RMNOG, AR, DTX, OPTPAR, nrzm &, OPTXAR, ZNIZ, ZVRX, metodop, kDopViz) write (8,*) 'OPTXAR (:)=', OPTXAR; prtOptVar=.true.

CALL CALL_IDM (nrzm, OPTXAR, t); delenx=1.3; deleny=1.3;

CALL IMAG_IDM1 if (iStart==3) then;

CALL CLEARSCREEN ($GCLEARSCREEN); i= SETCOLORRGB (#0) IBIack prtOptVar=.false.; delenx=3.; deleny=1.7; goto 10; endif.

END PROGRAM MAIN OPTIMIZ.

Показать весь текст
Заполнить форму текущей работой