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

ub.ed.ub.uni.greifswald.de
von ub.ed.ub.uni.greifswald.de Mehr von diesem Publisher
31.01.2014 Aufrufe

A. DIRCOL C* to the interval [0,1].) C* C* EXIT-Parameters: C* ----------- C* X........initial estimates of the state variables at TAU C* (real array) C* U........initial estimates of the control variables at TAU C* (real array) C* C* If IPHASE = 0 then: C* ================== C* ENTRY-Parameters: C* ----------- C* LU.......the number of events (integer) C* C* EXIT-Parameters: C* ----------- C* U........initial estimates of the events E(1), ..., E(M) C* (real array) C* C* If IPHASE < 0 then: C* ================== C* ENTRY-Parameters: C* ----------- C* LU.......the number LP of the control parameters (integer) C* C* EXIT-Parameters: C* ----------- C* U........initial estimates of the control parmeters C* P(1), ..., P(LP) (real array) C***************************************** C IMPLICIT NONE C INTEGER IPHASE, NX, LU C**** REAL DOUBLE PRECISION + TAU, X(NX), U(LU) C 126

A.1. Programm 1. Hauptprogramm user.f (wesentliche Teile) C-----BEGIN--PROBLEM C IF (IPHASE .GT. 0) THEN C C ---- Initial estimates of X and U at TAU C X(1) = 0.25D0 X(2) = 0.8D0 X(3) = 1.0D0 X(4) = 0D0 U(1) = 0D0 U(2) = 0D0 U(3) = 0D0 C ELSE IF (IPHASE .EQ. 0) THEN C C ---- Initial estimates of the events E C U(1) = 0.D0 U(2) = 0.1D0 U(3) = 0.D0 C ELSE IF (IPHASE .LT. 0) THEN C C ---- Initial estimates of the control parameters P C C There are none. C END IF C C------END---PROBLEM- C RETURN C -- End of subroutine USRSTV END SUBROUTINE USROBJ( NR, NX, LU, LP, ENR, XL, UL, P, FOBJ, XR, UR) C* Purpose: C* ----- C* This subroutine provides the objective of the optimal C* control problem in a Mayer type form. C* The objective of a multi-phase program is assumed to be 127

A. DIRCOL<br />

C* to the interval [0,1].)<br />

C*<br />

C* EXIT-Parameters:<br />

C* -----------<br />

C* X........initial estimates of the state variables at<br />

TAU<br />

C* (real array)<br />

C* U........initial estimates of the control variables at<br />

TAU<br />

C* (real array)<br />

C*<br />

C* If IPHASE = 0 then:<br />

C* ==================<br />

C* ENTRY-Parameters:<br />

C* -----------<br />

C* LU.......the number of events (integer)<br />

C*<br />

C* EXIT-Parameters:<br />

C* -----------<br />

C* U........initial estimates of the events E(1), ...,<br />

E(M)<br />

C* (real array)<br />

C*<br />

C* If IPHASE < 0 then:<br />

C* ==================<br />

C* ENTRY-Parameters:<br />

C* -----------<br />

C* LU.......the number LP of the control parameters<br />

(integer)<br />

C*<br />

C* EXIT-Parameters:<br />

C* -----------<br />

C* U........initial estimates of the control parmeters<br />

C* P(1), ..., P(LP) (real array)<br />

C*****************************************<br />

C<br />

IMPLICIT NONE<br />

C<br />

INTEGER IPHASE, NX, LU<br />

C**** REAL<br />

DOUBLE PRECISION<br />

+ TAU, X(NX), U(LU)<br />

C<br />

126

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!