31.01.2014 Aufrufe

disser1.pdf (2006 KB) - Ernst-Moritz-Arndt-Universität Greifswald

disser1.pdf (2006 KB) - Ernst-Moritz-Arndt-Universität Greifswald

disser1.pdf (2006 KB) - Ernst-Moritz-Arndt-Universität Greifswald

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

B. OC-ODE<br />

c Call to OC-ODE<br />

c OPEN( INFO(9),FILE=’OUT’,STATUS=’UNKNOWN’)<br />

CALL OCODE( T, XL, XU, UL, UU, P, G, BC,<br />

+ TOL, TAUU, TAUX, LIW, LRW, IRES,<br />

+ IREALTIME, NREALTIME, HREALTIME,<br />

+ IADJOINT, RWADJ, LRWADJ, IWADJ, LIWADJ, .FALSE.,<br />

+ MERIT,IUPDATE,LENACTIVE,ACTIVE,IPARAM,PARAM,<br />

+ DIM,INFO,IWORK,RWORK,SOL,NVAR,IUSER,USER)<br />

PRINT*,’Ausgabe der Loesung: NVAR=’,NVAR<br />

WRITE(*,’(E30.16)’) (SOL(I),I=1,NVAR)<br />

c CLOSE(INFO(9))<br />

c READ(*,*)<br />

END<br />

c-------------------------------------------------<br />

c Objective Function<br />

c-------------------------------------------------<br />

SUBROUTINE OBJ( X0, XF, TF, P, V, IUSER, USER )<br />

IMPLICIT NONE<br />

INTEGER IUSER(*)<br />

DOUBLEPRECISION X0(*),XF(*),TF,P(*),V,USER(*)<br />

V = -XF(4)<br />

RETURN<br />

END<br />

c-------------------------------------------------<br />

c Differential Equation<br />

c-------------------------------------------------<br />

SUBROUTINE DAE( T, X, XP, U, P, F, IFLAG, IUSER, USER )<br />

IMPLICIT NONE<br />

INTEGER IFLAG,IUSER(*)<br />

DOUBLEPRECISION T,X(*),XP(*),U(*),P(*),F(*),USER(*)<br />

F(1) = 0.4D0*X(1)*(1-X(1))-U(1)*1.5D0*25.0D0*X(1)/1.0<br />

+ D+5-0.02D0*X(1)*X(2)/1.2D0-0.02D0*X(1)*X(3)/1.3D0<br />

F(2) = 0.6D0*X(2)*(1-X(2)/1.2D0)-U(2)*6.4D0*250.0D0*X(2)<br />

+ /1.2D+6-0.0125D0*X(1)*X(2)/1.2D0 - 0.01D0*X(2)*X(3)<br />

+ /1.56D0<br />

F(3) = 0.6D0*X(3)*(1-X(3)/1.3D0)-U(3)*6.4D0*250.0D0*X(3)<br />

+ /1.3D+6-0.0125D0*X(1)*X(3)/1.3D0 - 0.01D0*X(2)*X(3)<br />

+ /1.56D0<br />

F(4) = ((1130.0D0*U(1)*1.5D0*250.0D0*X(1)/1.0D+6)+(270.0D0<br />

140

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!