Some Algol-programs for the evaluation of kinetical data
obtained from copolymerization experiments
Citation for published version (APA):
Hoen, N. G. M. (1973). Some Algol-programs for the evaluation of kinetical data obtained from copolymerization experiments. Technische Hogeschool Eindhoven.
Document status and date: Published: 01/01/1973 Document Version:
Publisher’s PDF, also known as Version of Record (includes final page, issue and volume numbers) Please check the document version of this publication:
• A submitted manuscript is the version of the article upon submission and before peer-review. There can be important differences between the submitted version and the official published version of record. People interested in the research are advised to contact the author for the final version of the publication, or visit the DOI to the publisher's website.
• The final author version and the galley proof are versions of the publication after peer review.
• The final published version features the final layout of the paper including the volume, issue and page numbers.
Link to publication
General rights
Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain
• You may freely distribute the URL identifying the publication in the public portal.
If the publication is distributed under the terms of Article 25fa of the Dutch Copyright Act, indicated by the “Taverne” license above, please follow below link for the End User Agreement:
www.tue.nl/taverne Take down policy
If you believe that this document breaches copyright please contact us at: openaccess@tue.nl
providing details and we will investigate your claim.
Some Algol-pro~rams for the evaluation of kinetical data obtained
from copolymerization exr:eriments.
compiled by ir N.G.M. Hoen.
Eindhoven University of Technology Dept. of Polymer Chemistry and Technology,
Group Copolymerization Kinetics.
Internal Report april 1973
Introduction,
The computer-programs described in this report have been de-veloped by the Group Copolymerization Kinetics (Section of Polymer Chemistry) of the Technological University Eindhoven
(The Netherlands). They are used to evaluate the data obtained from the so-called "sequential sampling method", described in the PhD-thesis's of A.L. German (ref. 1) and F. de Kok (ref. 2). The first two programs F.C.A.-A and F.C.A.-B (F.C.A. stands
for ~eed ~ompositional ~nalysis) are used for the determination of reactivity ratios of experiments at a constant low pressure
(ref. 1).
The kinetical and mathematical background is extensively treated in dr German's thesis, but will be summarized in Section 1 of this report.
The third program F.C.A.-C was used by dr de Kok to evaluate the data obtained from his high-pressure-experiments using the so-called "sandwich-method" (ref. 2). A short review of this method can also be found in Section 1.
The programs are written in Algol-60 with some implementations for the Philips Electrologica-X8 computer of the Computer Cen-tre of the Eindhoven University. Therefore a number of system or library procedures are employed, that may not be known to users of other systems. These procedures are explained briefly in Section 6. The Algol-60 language, with exception of the pro-cedures mentioned above, is based upon the ''Revised Report on the Algorithmic Language ALGOL-60" (ref. 3).
In Sections 2,3 and 4 a block diagram, the text and examples of input and output of the three programs will be given. The most important procedure, that is used in all three programs is the procedure "minimize", developed by dr F.A. Lootsma of the Mathematics Department, Eindhoven Univ. of Techn. (ref. 4). The text of this procedure, together with that of some other often used procedures, is stored on magnetic tape, and can be called by a single statement in the·program. A complete text of the contents of this magnetic tape is given in Section 5.
-2-References.
1. A.L. German, "The Copolymerization of Ethylene and Vinyl-acetate at low pressure", Thesis Eindhoven University of Technology (1970).
2. F. de Kok, "The influence of Pressure on the Copolymerization of Ethylene and Vinylacetate", Thesis Eindhoven University of Technology (1972).
3. Peter Naur, e.a., "Revised Report on the Algorithmic
Language ALGOL-60", Numerische Mathematik!, 420-453 (1963). 4. F.A. Lootsma, "Boundary Properties of Penalty Functions
Constrained Minimization", Thesis Eindhoven University Technology {1970).
5. J.A.Th.M. van Berckel, B.J. Mailloux, "Some Algol Plotting Procedures", Report MR 73, Stichting Mathematisch Centrum Amsterdam (1965).
-3-Contents: - Introduction. - References. - Contents. ~ 1 Theoretical background. 1.1 Low-Pressure experiments. 1.2 High-Pressure experiments.
§
2 Program for data evaluation according tothe F.C.A.-A method.
Program for data evaluation according to the F.C.A.-B method.
Program for evaluation of "sandwilch" experiments: F.C.A.-C.
Some important procedures stored on magnetic tape:
5.1 "minimize"
5.2 "covariantie matrix11
5. 3 "SPLITTER " ;· "FIACCO"; "afgeleide"; "FUNCTIE" 5.4 "CONFREGION"
Description of standard procedures, not-mentioned in the Revised Report. 6.1 System-procedures
6.2 Library-procedures
6.2.1. Plotter-procedures
6.2.2. Other library-procedures.
-4-§
1 Theoretical backaround.1.1 Low-Pressure experiments (ref.l).
Each kinetic experiment yields a series of peak areas (G .C.)
versus time. The time basis and the values of the
peak (A ) , vinylacetate-peak (A ) and the solvent-peak (Abs)
es vs
are provided by the digital printer during each kinetic series. The time basis is not used in these calculations. From the peak areas the molar feed ratio q
=
n /n e v is calculated bytion:
n A X A X C
q
=
e=
es vr ernv A~~ x Aer x cvr
equa-and finally the conversion based on vinylacetate is found by equation:
with A and A
=
peak areas determined from a referenceinjec-vr er
tion.
cvr and c er
=
monomer concentrations of the referenceinjec-tions. Kref
=
reference-constant.(Ab ) and (A )
=
peak areas of solvent and vinylacetates 0 vs 0
at zero conversion (of the first sample) . (see ref. 1, p.46)
For a certain conversion-interval 0 - fv the integrated form of
the copolymerization equation is given by:
f -10051 -(9.) v
l
go -x -1 2 with x 1=
1/ (re - 1), x2 F (model discription can be formulated as:
f )
=
0v
kinetic series, producing g data pairs (qi, (fv)i)'· lds
g conversion intervals o - (f ) . and consequent::i.y g equations Fl.
v ]_
F. l
with i
=
1, ---, g
-5-g
=
number of data pairs resulting from one experimentF. represents the difference between the measured and the
cal-l
culated degree of conversion. The unknown parameters r and r
e v
are characteristic of the model,.i,e. they are constants for
all experiments, if the model is adequate. Parameter q is also
0
unknown, but is characteristic of one distinct experiment, and will generally not be much different from q
1, which is the first
measured value of q at zero conversion.
Theoretically one single kinetic series gives sufficient
infor-mation to determine the least-squares estimates for , r v and
q
0 by seiecting those values of r , r e v and q o that minimize
The minimum, however, determined from one single kinetic
expe-riment is indeterminate. Instead of a single point in the r
e
r v - q space, a
0 line is found which virtually comes up to the
g .,
constraint of
r
F.~ being minimal.i=l
lEach kinetic series affords such a line, which can be
pro-jected on the re - rv - plane. In the case of a perfect model
fit and the absence of experimental errors all these lines
should intersect in ~ single point, the coordinates of which
are the desired values of r e and r . v
This method of determining the reactivity ratios is applied in the F.C.A. - A method.
r is successively assigned several values (in the program
be-e
tween a-min and a-max with steps of astep),and
£
F . 2c·r ,
r , q , a . , ( f ) )i=l l e v ·o ~l v i
lS zed with respect to r and q . Thus a relation
·- v 0
tween
r
andr
is determined for the kinetic experiment ine v
-6-For all kinetic series the points with coordinates .
(r ,r )
e v areplotted in a graph of r versus r , and the centre of gravitv
e v
-of the area defined by the significant intersection points is taken as the best fitting pair of r-values for the set of expe-riments concerned. (ref. 1, p.70-7l).
On the other hand, the information from all kinetic experiments (k=l, . . . ,n) may be combined to determine the least-squares es-timates for r , r e v and q k" This is achieved by selecting those o values of r , r e v and q k that minimize: o
n gk (
PB =k!l i!l
Fi~
re' rv' qok' qik' (fv)ik)This procedure is followed in the second program(F.C.A. - ~·
After applying procedure minimize to all the data of n exp. the
best estimates for r , r and q
1, q 2, ... ,q are known.
e v o o on
By means of the Algol procedure CONFREGION the standard devia-tions of these parameters and the shape of the confidence-region
in the r -r -plane can be calculated. (ref. l, p.80-83).
e v
1.2 High-Pressure experiments (ref. 2).
During a kinetic experiment, pressure is raised for a certain time-interval in such a way that pressurizing and depressurizing time << reaction time at high pressure.
The experiment is thus split up in three stages:
- an initial stage at low-pressure.
- an intermediate stage at high-pressure.
- a final stage at low-pressure again.
Throughout the initial and final stages the monomer feed compo-sition is measured using the •sequential sampling" method. Du-ring the high-pressure stage no samples are taken. The initial and final stages can be considered as independent low-pressure experiments, and can be evaluated with the aid of F.C.A. -A or -Bmethods. From these results i t is possible to determine
accu-rately the monomer feed composition at the beginning and end of the intermediate stage.
A scheme of the "sandwich method", where monomer feed ratio q
-7-is plotted vs. conversion Fb and time t and pressure p -7-is plotted against time t, follows here:
a
From each sandwich-experiment two high-pressure data pairs
(q, Fb)LH and (q, Fb)HL can be determined in the followi ng way:
1. With the aid of the F.C.A. - B method the best fitting (q-Fb)-curve with parameters r , r and q are determined for the two
e v o
low-pressure stages. Generally the q
0-value of the first stage is not identical to the virtual q -value of the second
low-a pressure stage.
2. A regression with the aid of lst degree polynomials of the (q-t) values is carried out. Since the times of beginning and ending of the intermediate high-pressure stage (tLH and tHL) are exactly known, the corresponding q-values can be found in the plot of q vs.t.
3. Subsequently the corresponding values of Fb are found in the (q - Fb)- plot.
-8-Instead of a lst-degree-polymial for the regression of the
q-t-values, de Kok also used a more exact relation between q
and t , which was based on kinetical considerations (ref. 2, p.
49), This did not significantly influence the results however.
From n sandwich-experiments n pairs of coordinates(
q
.
,
(Fb)j)LHand (qj, (Fb)j) HL can be estimated. J
The relative conversion during the intermediate stage can be calculated by:
1 0 0 - ( F b ) . HL }
J 0 /
- / 0
100 - (Fb)j LH
From qj LH' qj HL and (Fb)j' the r-values at high pressure can
be estimated using F.C.A. -methods -A and - B with g
=
2.
-9-2 Program for data evaluation according to the F.C.A. - A method.
Wlth this program i t is possible to read in the data of several
experiments (number of exps.
=
"aantal"). It is possible to useas input exclusively peak areas (nosplit
=
1) or combinations oftime and peak-area (nosplit
=
1). This last provision isnecessa-ry since the output of some of our digital integrators was of the
form e.g. 163800092873, which means: time t
=
1638 sec. and peakarea
=
92873 integrator output units.For each single experiment the procedure "minimize" will
deter-mine the best fitting values of r and q for several fixed
va-v 0
lues of r . These values of r can be set at will by means of
e e
the values of a-min, a-max and a-step in the input tape.
Per experiment a maximum number of 150 observations can be eva-luated (this limit is arbitrarily chosen and depends only on the capacity of the computer memory).
For each experiment there is a control output of all data enter-ed via the input tape.
Furthermore plots can be made of the q vs. f - curves.
v
-10-Example of input-tape: 1 1 1. 70 0.4 0.9 0. 1 0.75 1. 50 720621 -1 0
vm
-1 -1number of exps. on input-tape
nospli t
=
1-t no SPLITTER; -:/:- 1-7 SPLITTERref. constant Kref.
lower limit of r -values e
upper limit of r -values e step-size between estimation of r e subsequent r -values. e initial values estimation of r for "minimize"
v
date-code of the following experiment
peak-areas in integrator-units of e.g.:
ethylene
=
0ern
vinylacetate=
ovrn
T.B.A.
=
0 bmindication of the end of this data-set.
N.B.: if nosplit-:/:- 1 then the end of a data-set belonging to
one experiment is indicated by a single 1 instead of the three
-1's.
-11-
~11-Description of output F.C.A. -A:
Lineprinter:
l . control -output of all the input-data+ the calculated
va-lues of q (= g [i] ) and fv (= f [i] ) .
2. for every experiment and every value of r (from a-min t i l l e
a-max ) :
- the standard output of procedure "minimize" - values of r , r and residual sum of squares
e v
Plotter:
for each experiment:
a plot of q vs. fv (data-points and regression-curve)
-12-1
!
decl arations declaration of proc. ml.nl.ml.ze(from magn. tape) input of:
AANTAL (no. of exps.) NOSPLIT REF. CONSTANT AMIN AMAX ASTEP XS I
xs
2 Il
tel :=0 tel:=tel+lI
I
local declarations declaration of the procedures: -FIACCO (=functions to be minimized) -afgeleide (=deriva~tives of these func-tions) -SPLITTER input of: DATE-CODE of (tel)'th exp. and PEAK-AREAS Oem, Ovm, Oim calculation of: g [ i] and
f
:
[i] assigning initial values to the parameters r , r and q e v o I CONTROL OUTPUT I a:=amin-astep,,
-12-'PROGRAM F.C.A.-A;I
a:=a+astep initialization of "minimize" (xentry, gtype) scaling plot data-points plot curve I plot numbering of data-points no if '---etel=aan tal goto READY (label KLAAR)J;ggol 04264304 dkok,0
1111
£:.:0..'2 conment F .C .A. - I\ m~thode (versneld);
real referentie, a, a"T!in, a~x, astep, xs1, xs2; ir;tew~r i, tel, j, aar.tal, nosplit;
~ converged, fea5ible ;
~l"lY x[l:)), ;-;x[l:150], dgdx[1:1)0,1:3);
lntr:,0~re.:t gtype[1:150); I,CY,tr:'ln 'irrr1j zer<try[ 1 :]) ; rnt,rt.fY: ·~?Jf,'" "lj - 17; U:;IT::FJ·i::!::;
aantA.l :~ l'E:AIJ ; I/)!lpllt :~ m:JID ; rr,ferentie :=READ amin :=READ amax :=READ astep .-READ
X:; 1 : = Iii': AD j Y. c.;, : = nEAD ;
for t.el := 1 s:.eo 1 until aa11t.-'1.l do - oeglr, real array !>,f,Oem,Gvrn,Clim[l:f5o)
- - re'll 1<,'3o:n , ymin , yrrax , gj 1 xm. n 1 xma.x , X1TL'l , xmx , f j
lr.te;<e r 1 ndex 1 datum ;
libr'l.ry PlD'ITEN, PlDTPICTUR£, SCALE, PlDTAXIS, PWfAXIS2;
~re FIACCO;
begin real v,i, ga, gb, gd, xal, X'l.21 xaj ;
- - XfTT :=a; xal : = a - 1 ; xa2 := x[2] - 1 ; xe3 := x[3) gb := xa3 X xa1 - xa? ; gd := 1/xa1 + 1/xa2 + l for 1 := 1 step 1 until index do
- bev,in gi :=< e ( T l ;ga := gl xxa1 - xa2
gx[i) :e f [ i ] - (gi/x'll)~(-(1/xa2 + 1))x(ga/gb)1ed
proce(\llre en(l; ;ifge le ide ;
begin real e;i, ca, gb, gc, v,d, xal, x'l.?, xa1, factor ;
- - XTiJ : = a ; xa 1 : = a - 1 ; xa2 : = x[ 2) - 1 ; xa '3 • - x[ 11 g':> := xa1 x xal -xa? ; gd := 1/xa1 + 1/xa2 + 1 ;
for i. := 1 step 1 until ir;dex do -be~ in gi--:;-g[
ir;-!0 : = g i x xa 1 - xe? ; gc : = 1,.-.(ga/eb) ;
factor := (gi/xa3)~(-(1/xa? + 1)) x (ga/gb)~d ;
clgdx[i,·J] .-factor x (e;d/(xaj - xa2/xa1)- (1 + 1/xa?)/xal) ;
clgdx[ i, 1) := factor x (gc/(xa1 x xa1) - e;d x xa2 x (xa) - gi)/(i',a x gh))
(ledx[ i,?) :=factor X ((gc ~ ln(gi/xa3))/(xa2 x xa2) + gd/ga - gd/gb) ;
ertd
real procedm SPLlTI'ER ;
begin real A, B ; --~READ; B :" entier(A/100000000) SPLITTER :: A - B x 100000000 end ; datum : = RE:AD ; for i := 1 steo 1 until 150 do
- b egin i f no~plit:'"fl then begin Oem[ i] : = SPLi'ITER ;
end
if Oem[ i] = 1 ~begin index := i - 1 Ovrn[ 1) . - SPLITI'ER Oim[i) :=SPLITTER ~ begin Oem[ i) : = READ Ovrr[ i) ·" RSAD Oim[ i) . - READ end
i f Oem[ i] ::; 0 ~ beein index . , 1 - 1
goto nextstet) end
&oto nextstcp end
..
1-' w I
I ... lJl
I
g[i] := Oem[i) I Ovm[i] x referentie ; f[l] := (Ovm[i] X Oim[l]) I {Oim[i] x Ovm[l]) end ;
next:> tcp: x[l];:; xs1; x[2] := x-;2; x[3] :~ g(l];
PRWTJ'EXT(fc:ontrole op inlezer. van datum, ~. f, Oem, O·nn, Oim, M.nta.l, no~pllt, referentle, am n, amax, astep, re, .rv:}-); NLCR; PHI!ITTEXT( fcxperimcnt no~); A.BSFIXT(2, O, tel); !:'RII!TT~XT( f datum:}); ABSFIXT(6, O,da tum); CARRIAGE(2);
PRWTJ'EXT(t i g[l] :f(i) Oem[i) Ovm(i) Oim[i):});
PRIIITTEXT(f refc:-entle M.nta.l f,osplit am n armx as teo re rv~); liLCR; for 1:=1 step 1 until index do
bee> in A.E:SF IXT(3, '),f); FIXT(4 )i ,g[ i]); FIXT( 3, 4, f[ l]); FIXT( 1 O,O,Oem[ i]); FIXT( 1 O, O,Ovm[ i]); FIXT( 10 ,0,0 im[ i]); - - i f i=1 then beein FIXT(5,~1referent1e); ABSFIXT('>,O,"-anta.l); AB0FIXT(':>,O,msplit); FIXT(2,?,amin);
- - ---FIXT(2,2,amax); FIXT(3,?,asten); FIXT(4,4,xs1 ); FIXT(4,4,xs2);
NLC:R; end; NEW PAGE;
for a -:-;;-amin step asto;:p until amax do
end page~
--oev,ln for { := 1 steo 1 until index do gtype[ i] :3 1 ·;
xel!try[ 1] := :false ; xer.try[2) :~ true ; xentry[3) := true ;
mb im.ize( x,:·;x,F IACCO, xentry ,;5typc, t:ri:ie ,dc;dx,afgeleide, l,Gdex,
.--8, ..
~, o, ::on verged, feas iule, ~~ 1, 150);so:n := 0 ; - - ·
for i := 1 step 1 until i!1dex do begin k := ahs(p,x[ i]) ; sam := sam + lv{l2 er.d PRTi·ITJ'EXT(f se~ie 'f};SPAC:E(5)i A%FIX1'(?.,0, tel) ; NLCR ;
PR;:.;TJ';~T(~ dll.tu;n ~~; ~~A~~(5) ; A<o:?FIXT(6,0,datum) ; NLCR ,.·NLCR PIL.'I'f~XT( re ~); SPA~E(c0) ; FIY.T(2,4,x[1)) ; l·•LCR ;
PRUI"T:::x•r( rm .}); SPA'.:S(20) ; F:Y.T(J,4,x[2]) ; HCR; NLCR; PRiiJTl'EXT( rest.kwadraatsom }); SPACE(?) ; FLOT{), 1 ,som) ; liE'il PAGS enrl ;
ymln :: ymax := d 1] ; xmi1. := XI"fl.X := 0 for J := 2 :;t.ep 1 until C.ndex_ '!o
- b egin gj := g[JTifJ := (l=f[J]):.<1')() ;
- - if gj<ymi.:J ther: ymin :: t;j else i f ej>ymax then ymax :: gJ ; TI' fj<xmjn the:, xm'n := f j P.TSe IT fj>xmax t'Fi'e'O xrr.ax := fj ;
end • - - -
-__
,.
if xmln<(-~;) V xrrax>JO then begln x:nn := xnu.r, ; xmx ;: xmax ; end else begin Y"1ll1 := 0 xmx '" 8o er•d Plo'rPICTUilt; ((1- f[l])x100,7TJ, i, index, ), -1, 0033, xmn -;-x,,uz-;-2'}0;4000,
f frn~100X(1~mm[i]lumrn[1)) IN PROCr:NT~N:},
ymtn, ymax, C'OO, 2000, t!l=nemlnnrn:f.) ;
PUJ!'P!C'l\JHE((1- f[i) + gx[i))XlOO, g[i), i, index,), O, 20'{71 O, O, 01 0, {: }, 0, O, O, 01 f })
.ws~·upwr(7500, 350, o,-4o,o, true ,o,G, o,ctatum) ;
fori :• 1 step 1 until indei('do A.tJS~'IXPLOT((1- f[i))x100,ts[i),0,14,o,~,-1,2,0,;)
ENDPLOOOC - - -end NEW PAGE; -\" .. _. ·. ·~·-· I ... ~ I
-15-~ 3 Program for data eval uation accordinq to the F.C.A. - B method.
This program is used for regression of the data of all experi-ments together. The best estimates of
mined.
r ,
e rv and q0j are
deter-The output procedure gives a listing of all gx- values, which
are the deviations of the calculated conversions from the expe-rimental values of fv.
The q - f - diagram of one or more experiments can be plotted.
v
There is also the possibility of a statistical evaluation of the
results by means of the procedure CONFREGION (see
§
5- HagneticTape). This procedure will produce the variance-covariance
ma-trix of the parameters r , r and q ., the standard deviations
· e v OJ ·
of the parameters and a plot of the confidence-regions in the re - rv - plane.
-16--1 -1 -1 date 0 em 0vm 0bm -1 -1 -1 etc. X aantal + 1 X aantal + 2 F 2 (a) a v 95 90 50 730119
-16-number of exps. on input-tape
nomin=l7 FIACCO; nominfl~ minimize
number of first exp. to be plotted
" " last exp. to be plotted
nosplit=l~ no SPLITTER; nosplitf17 SPLITTEl
noconf=l~ no conf.region;f1~ conf. region
reference - constant Kref.
estimation (upper limit) of total number of observations
date - code
peak - areas
end of data - set of this experiment
data of other experiments ("aantal"
experiments in total)
estimations of the values
of r and r
e v
statistical data used for calculation of confidence-region(s):
F v 2 (a) is the a % percentage-point of
the F-distribution with 2 and v=N-2
de-grees of freedom (N= total number of
ob-servations)
-17-Description of output F.C.A.- B:
Lineprinter:
1. control-output of all the input-data+calculated values of q and f
v
2. standard output of minimize
3. listing of the deviations of the data-points from the re-gression-curves and the residual sum of squares for each experiment
4. the total sum of the residual sums of squares and the values
of
r
andr
e v
5. (if noconf
':f
1)~the variance-covariance matrix of the parameters - the standard deviations of the parameters.
Plotter:
1. from experimental series "plotfirst" t i l l "plotlast'':
plots of q vs. f v
2. (if noconf
':f
1)olot of the confidence region(s) of r and r .
- e v
-18-declarations input of: AANTAL NOM IN PLOTFIRST PLOTLAST NOSPLIT : NOCONF REFERENT IE N declarations declaration
Ot
the procedures: -m~n~m~ze -SPLITTER -covariantie matrix -FIACCO -afgeleide -CONFREGION(from magn. tape).
input of PEAK-AREAS and calculation of
g (i] and f [i]
_l CONTROL OUTPUT I assigning initial values to the parameters r and r e v initialization of "minimize" (xentry, gtype) -19-IPROGRAM F.C.A.-BI no
calculation of the re-sidual sums of squares and the total res. sum of squares
tel:=tel+l
CONFREGION
I IV 0
I j
-"
he(~ in eo:mnent. F ,;; .A .-il methode
- -~ ::;r:;:~, referentie ;
intev,er i, j, p, tel, M:.t8l, !1Qfllin, plotf:!.rst, plotl.P..st, nosnltt, noconf, n, a;
~ ronverged, fell.sible ;
llbrll.ry CHOi.E:;KI IJ!<;COMPOSI'l'Io:-1, CHOlESK! DWERSE, n:PROD, PLarTEN, PLCTPIITURE, SCALE, PLffi'AXIS, PUYI'AXIS2; Mn1A.l:=?.~; nomin::REJI.i:l; plntfirst::READ; plotlll.st:=READ; nosplit:•READ; noconf:=RF.AD;
referentie := REAi:J ; n :~ HEAD ; · ·
begin rel\11!.:-r'ly g, f, Oem, Uvm, Otm, e;x[1:n], x[1:aantal+2l, dgdx[1:n,1:aa.nta:l+2l, A[1:aental,1:n], som[l:aantal],~r[l:'lar.tal+2]; uoole'l.r. array xer.try[l:a.P.ntal+2];
in+.e;~er 'i:-roy gtype[' :n], dnt.um, .tndex[ fl:e'intal];
~ .. t..,pe -f·f ~, ·:>····=·~~; ~l'r...:,~;
index[ oj :•0;
~ tel :• 1 stjp 1 ~ aantal ~
begin dat.u:n[tel :•RI::AD;
~ 1 :• index[ tel - 1 ] + 1 slep 1 until n do begin .!.£. no:;plltl; ~begin Oem[ i :~ SPLITTSR(i);
g ll~m[ i] • 1 ~ bW0tn index[ tel] •• 1-1 Dvm[ 1] := 5PLI"!.?2R(21 ;
Otm[i] :'" SFLl'ITr.:'i(3); else begin Oem[i] := ~ft~ ;
- - Ovm[ iJ . ., F..EAD ;
Otm[i] • a RZAD ;
goto nexts ~ep end end
_!! l!em[ i] ~ 0 ~ begin index[ tel J : • 1-1 goto r.ext step ~ end ;
g[i]:= Oem[i]/Ovm[~referentie;
f[i]:•(Ovm[i]xutm[index[tel-1 ]+1 ])/(Otm[i]xOvm[index[tel-1 ]+1 ]); next step:
end;
~;
PRINTTEXT({controle op inlezen van.g[i], f[i], Oem[i], Ovm[i], Otm[i],});
PRI!ITTEXT( {ca tum[ tel], referentie, aantal, tot.aal, nanin, noplot, noconf}); ~iLCR; for tel:"l step 1 until aantal do
begin PRINTrEX'r(iexpertment no,:f}; ABSFIXT(2,0,tel); PRINTTEXT(~ datum}); ABSFIXT(6,0,datum[tel]); CAf\RIAGE(2);
PRIN1T~X1'( {: i g( i] f[ i] Oem[ 1] Dvm( 1] Otm[ i Ji); ·
if tel•1 then PRINTI'EXT( ~ referentie aantal totaal nomin plot first plotlas t noconf}); NLCR;
fOr i:~tnuex[tel-1]+1 dtef 1 until index[tel] do
begin ABSFIY.T(),O,i-in ex tel=r)}; FIXT(4,4,g[TJ); FIXT(3{4,f{i));
. FIXT(lO,O,Oem[ 1]); FIXT(lO,O,Ovm[ i]); FIXT(10,010tm i]);
· g 1•1 ~begin FIXT{5,5,referent1e); ABSFIXT(6,o,aantal); ABSFIXT(6,o,n);
· ABSFIXT(5,0,nomin); ABSFIXT(9; 0, plotfirst); ABSFIXT( 8,0, plotlast.); Ai3:FIXT(6 ,o,r.oconf);
~; NEW PAGE; ~; NLCR; .
•
-~ >· ·:.:·. I'""
1.0 II
N
1-' I
x(a<tnt-Al • 1] := f<.EAD; x[aantal + 2] :"' RBA!J;
zent.r:;[.,fl.nt<!l + 1] := true; xentry[M.ntal + 2] := ~; f'>r tel := 1 nteo 1 un't'I'laant~l do
c:;e2:ir, x[tel) := dimlt"x[t~l- 1) '+1];· - - zentry[ t~l] := ~;
~nrJ ;
f(jr j := 1 3t~p 1 ~ index[aantal] do gt;,.~{j] := ];
..!.£ r.oninf1 t.heu minlmize(x, gx, F'IAC:;o, xentry, gtype, true, dgdx, afgeleide, as.ptal + 2, index[aar.tal) , !l-9, ~-9,J , converged, - - feRc.iole, ~' 1, 1>C)~ FIACt.:G;
fO!" Lel:=l step 1 until R>l.ntal do ~n~[ teJ.) :=O;:SOOif:zO; f()r t.el:•1 c;1.e;> 1 ur:tiT aallt.al 6"0
b<c6ir• f'lri:;;;-;-;rex['t'ET""=l)+l ~tep1 'lrtll inf.cx(tel) do - - l>'!gin fl[tel,i):=ex[i)_;_
-som[ te 1]: =::;om( tel ]+(ab~ (I\[ te 1, i]) ),fv; enU;
35r.i:z:JOM+so:n( tel); end;
a!= entl.er(aantal/10) ;
~ ir.teger array k[ 1 :a+2) ; integer q, m ;
kr11 ::: o ;
i f a>0 ~begin for 1:"'2 steo 1 ~ a+1 ~ k[i] := (i-1)X10; end; 1!, a:'lnt,..l-10Xa "' () ~ q:=a ~ oe0l:1 q:,.a+l; k[a+2) := aantal; er.d; ~ J :=1 step 1 ~ q ~ be61•~
m:=O ;
for tel:=k[ j] + 1 stjp 1 unt!.l k[.j+1 J d~ beein i := index[t.el - index[tel-1];
.!!: m<i ~ m:=i; end;
NE'w' PAGJ::;
PIHN1Tr;XT( {: ner ie } ) ;
for tel := k(j) + 1 stJP 1 ur.til k[j+l] do
'
tin
AlJSFIXT(],'\ t d ; SPA;::(;); er.d; f;T.c";1T8X1'({: Ua.tum ;j.);SPACE(l );Nl.CR;ffiCE(6); for tel :3 k[j] + 1 st(f 1 until k[j+l] do
begin SPACE(O);ABSFIXT o, J,diit'Wn[ tel]);SPACE(6); end; NLCR;
PRm1TEXT( {: fe } ) ; SPACE( 1);
-for tel := k[j] + 1 stJ7 1 until k(J+1] do
beginFIXT{O, 4, x[te1 (xrtei'T+ 1)); 'S?ACE(7); ~; NLCR; PRIN1TEXT(i: index, afwljking });r;LCR;
~ i:=1 step 1 until m ~ ·
begin~. tel:=kTJT + 1 s{jP 1 until k[j+l] ~
begin if i>(index[te .-lndex[tel- 1]) then begin SPACE(14}; goto end;~ - ABSFIXT(3,0,i.);SPACE(O); -FLOT(3,1,A(tel,1ndex[tel-1 ]+i]); end: end; NLCR; .~ I N 0 I
I IV IV I /
.
j
er.d;if :.n:r:; iiil~45r::< > 52 tr.en ;;;,;w ?AGE;
Pdi:·!ITEZJ'( f re::;tk·..~~~t::;om.}) ;~~PACE:( l ).;r·;r..r.R;SPA--:E( 5);
f0r tel := 1-:[.:] + · c.ten 1 until k[._i .. 1] do
V~..;ir. fl.T('3, i , so.':!( '.el]); :.J!:'/,~:2( 5); er.d;TL·:R;HCR;H::R;
--- -~nd;
---Ui.Ii·•c; ;:;..'MSc;a > 57 tl,e!• ':c:ll ?.;:JE;
'%11 ;:Tr:;;rr(! t.:'lt.'l.le; r~'l.draa t.:;o~); 3PAC::( 3) ;F';,.c:'( 1, 1, SGI:) ;;'LCR;
?11Th'I'l'St.r( r<: }); ::.>?h~;:;(!;); ?:i:T(3, h,x('i,nt'l.l _. 1J);;:LC~;
PfU:!·;·;·;;z:•( rv :(); ~;p;,::;:.(c•); r':C!.I(i, \x(ae:~t9.l + ?]);;;c;.-1 ?AGO:;
£!:?.!: 1:.~1:=?~0~ fi:-:t, st.r:~ 1 unt".l pl(')t}.~:.t do
OoJ':-:~;.!.!l ~ :.-::~~!J1 ::-:-·~!A.X, .:;J, x.rr:;:-l, xrr.ax, xr!l.r:, rnx, fJ;
~;, ~~·~ee r ~ ~-, _:, t. i , . ;
~:~:x[t:~l]; ;~l:=lr-.d..Px(tel-i ); ymir.:=.J1r·ex:;:!~~[1+::.·); Y.J:.~;·. := Xf:'BX := 0;
f:n· ::=;:~•?. ~~-"':r: 1:ntii. !t ~o
l::!:_~i:: G~:=~(Jj; fJ:={1-f.(~J))(iOo; end;
:r ~:<ymi~ t:1o::-:; y:.li.r!:zgj ~lse if gJ>J'!':"•FtZ ~n~r, ~-~.p.x:=c,j;
if fj<xmln tr.en xmln:=fj else if f.j":..-.x::IB.Y. t:ne:-. xr;ez:=fj;
l£. xmin<(-5)v'xma.~80 then~ X!':"o:":!=X!ni:-~; xrr:x:=x::-.t:x;~ ~ ~~r::g,~r: zr.-.:-.:=':; y;:v:-=P.~j~j t·:..~T'?·~·:-:'1.:~~~;( ( · -~' .. ~-~-:·.~:.~1 'K, ... ;~ ··. ~~ .. _, ] , :, ~ :.-i:, , :-,-1 , : ·:, z:·.::, x:;.x, ~-~· ·:·''-!OCr,
{: f•:=1'l0x(1- :w~( t)j:-:vrr.[1]) .s: ?:-::;::::·~::-·'}, .·--·-, .-~.?>:,;:~n,~ v.n {: q_=· "'"',1:-·r:-.l);
p;JJ?P:C~~:?::( (1-~[ i•~·.1 )+~x[ i+it 1] )x1 CO, g[ !_.!.it: J, ~, -~ 4--.-!. t~, 5, ;,'r.'::7?, ~, r:_. -;, '"\ -~, 11 , 0, ~, ) ~); AE-~~'IY.?LOT(7500, 350,0 ,-1to, o, true, 0,6, 'l,d'l. tud t'! 1]);
for i. :=1 ~t~? 1 'Jr. til it-it 1d0i<BSFIX?L..."T( ( 1-f( i_.i :,1 ])x1 ()Q,v( ~-'-'. t1], 0,1 lc, C, tr:.~e,-1 ,2, !',:); :ii:;PJ.OW:::_;___ --- -
----if noconftl ~ CQ;·!J''!'l~GIOt!( i,FU::CTIE( ~), x,c-.ant~l"1 ,,_antal"2 ,SOM
1tndex[aant.>l!] ,g, 1 ,e.o.,--.t'l: .. 2, 10, f.:I.O•,J PRESSU~::: CGPGLY~-'i£R::=5ATIG;,; SC:Hi..OS3E~*, t re :J>, 1: rv } ) ;
end; Cricf; proe;end; ;·. ';-:. ,._ I N ... I ,.").
r~
;,}
~
..
~
f~. ·\··.~
-22-§
4 Program for eValuation of "sa·ndwich" experiments(F.C.A. - C: linear regression of q vs. t).
This program calculates both the·low and h-igh-pressure reactivi-ty ratios.
By means of the input-parameter "noconf" several possibilities may be employed:
1. nocon:t; > 0: the program does not adjust . . the input estimated
values of r and r (low press).
e v
If these values are exactly known from previous calculations, there is no need to calculate them once again.
2. noconf < 0: new values for the low pressure r and r are
de-e v
termined by means of minimize
3. abs (noconf)
=
2 or 4:procedure CONFREGION is applied to the results of the
regres-sion of the low-pressure q - f - curves.
4. abs (noconf)
=
l o r 4:procedure CONFREGION is applied to the results of the r~gres
sion of the high-pressure data.
A linear regression is applied to the low-pressure (q - t)data
points. Then the q and fv at beginning and end of the high~pres
sure stage are determined.
From thes~ sets of data the high pressure r - values are
-23-Description of input - tape F.C.A. - C:
aantal plotfirst .•• plotlast noconf referentie totaal
sandwich experiment one date
(time base in tenth of a minute) .
initial stage
·time of transition of low to
high pressure
retention time of vinyl-acetate
0
em 0
vrn
°tm
1
final stage
time of transition of high to low pressure
retention time of vinyl-acetate
0
em 0
vrn
°tm1
sandwich experiment two
-24-if n "sandwich"-exps. then aantal=2n ) see F.C.A. - B method.
=
+ 2, .:: 3,2::
4.reference constant Kref (low pressur
number > the total number of obser~
vations.
~12-digit numbers, combinations
of time base and peak area)
end of data from initial stage.
etc. etc. 1 r e r v Falfa -1 -24-alfa.
end of data of final stage from the last experiment.
estimation of r and r (used
e v
for initialization of procedure "minimize").
If noconf > 0 the values of r and
e
rv from previous calculation should be read at this place.
Data for the statistical evalua-tion by means of CONFREGION
-25-Description of output F.C.A. - C:
Lineprinter:
1. control-output of all input data
2. standard output minimize (low-pressure (q - fv) regression)
3. low-pressure r - values from all low-pressure-stages (+ residual sums of squares)
4. the transition points from low to highand from high to low
pressure:
(~LH'
tLH' ;LH) and(~HL'
tHL' FHL)5. listing per experiment of the high-pressure r - values
accor-/
ding to the P.C.A. - A ~· method
a. from the differentiated copolymerization equation b. from the integrated copolymerization equation
6. standard output 11minimize., (high pressure q - fv -: regres.s.i.on)
/
7. high-pressure r -values from all "sandwich"-experiments
to-gether according to the F.C.A. - B - method ,
8. total residual sum of squares
9. if abs (noconf) = 3 or 4
variance-coyariance matrix and standard deviations of the parameters qs, re and rv_
Plotter:
1. from exp. series no. "plotfirst" till"plotlast":
a plot of q vs. t and q vs. f (in one picture)
v 2. if abs (noconf)= 2 or
if abs (noconf)= 3 or
\.
4: conf. region of low-pressure (r , r )
e v
4: conf. region of high-pressure(r , r )
e v
-26-declarations I input of: AANTAL, PLOTFIRST, PLOTLAST, NOCONF, REFERENTIE, TOTAAL l declarations of the procedures: DRUKAF POLYNOOM GCV UITVOER SPLITTER
en
FIAKKOFUNK TIE (I)
I
declarations from magn. tapeI
input of:
DATUM, T, RETfrELl, OEM, OVM, OTM, TIJD (I] I (cONTROL OUTPUT
:)
I assigning initial values to r and e r v initialization of the parameters for proce-dure "minimize"(if noconf > 0 then r
and r remain fixed) e
v minimize (q-f-regression) ~UTPUT (uitvoer) LOW PRESSURE (L.P.)
)
~f lnoconfl =2or4 no II
CONFREGION L.P.I
linear regression q vs. t I calculation of q I , f I ' q2. f2 GUT PUT polyn. coefficients)
IPROGRAM F.C.A.-Ccalculation and output of r- values (high pressure) by means of differential copolymerization equation
I
calculation and output of
r- values (H. p.)
by means of integrated copo-lymerization equation
PLOT of q vs. t and q vs. f for each exp. (plotfirst-plot last)
calculation of H. p.
r-values of all experiments together
l
lnocok~l
=3or no --CONFREGION H.P. L a: !ready -27-I > I o:!I N (X)
I
!Ah;ol oll:>OrJJil de K0k,O, 1,1
~-~";in co:nmcnt F:::A-c methode (produktie);
-- -~-~.~eferentle;
Tr.te~er 1, j, tel, aar.tal, plotfirst, plotla3t, noconf, totaal;
"-'1nt3.l :=RSAll; plotfirst:=R!':AD; plotlast :=~AD; noconf:oiREAD; referentie :=HEM; toto.al :=".?'w;
b~glr; brJOle'tn converGed, feasible;
- - r e a l arr'iy x, gx[l :t.:Jt.aal), d.;;dx[ 1 :tota'il, 1 :a.e.ntal+3l, g, f, Oer.t, Ovm, tl.Jd, Otm( 1 :to':.ae.l),
- - t, ret, 3om[1:aantall, par[~:".anv.tl+2], beta, alpha[1:3], delta[-1:3), a, b[0:3l, fpi, gpi[l:aantal), r[l:llxaantal],
xl, x?[1:)xaantall, polsom[1:aantal];
integer array ety~[l :tot.M.l], ±J.tc;m, :ndex, dex[O:totaal), ex[O:aantal/2];
boolean arr'ly xentry[ 1 :afl.ntal+2);
llbrary CiiJL·;3KllJi!:CO~iPOSI1'1Uii, C:HJL:::3i<Il:;"J:;R3:!., II! PROD, ORTHO?OL, POLCOc:F, YAPPROX, <lE.0Ul.;.f.c.Lc:", PWI'l':::t:, C:CAJ E, Pi.cJl'AX I::i, PL':.JfAI. r>2, PLOl'PIC1'URE;
procedure <.lr11kaf;
b~1;l" A:>.;FIXT( 3,0, !.-index( tel-l]); AJSF'IX1'(7, n, tijd( 1]); FIXT(4,4,g[ 1]); F'IXT( 3,4, f[ i]);
- - FIXl'( 1 O,O,iJcm[ ~]); FIX'l'( 1 O, 'J,Jvrn[ i]); FIXT( 10, O,Otm[ i]); i f i-l.rn.J~x[tel-1]=1 then FIX1'(9,0,ret[tel]);
Tf i=1 then begin FI~,),r"f"!rer,t.ie); ABSFIXT(6,0,aantal); ABSFIXT(6,0,totae.l);
AaSFI/1'(?, l, !Jl 0tfi rc;t); AllSFIXT( 8, C1, plotla~ t); F IXT( 6, 0, r.oconf);
HLCR;
procedure POLYNOOM (x, f, m, n, nmax, alpha, beta, b, a, delta, test); intee~er m, n, nmax;
real array x, f, alpha, beta, a, b, delta;
b'Ooi'eS:ii'Tes t;
begin ORTHOPOL (x, f, m, n, nmax, alpha, bet~, a, delta, test ); POLCOEF (n, alph~, beUi, a, b ); end; ~procedure gcv(xal, xa2, gi, fl, gj, fj);
real xa1, xa2, gi, fl, gj, f j ; begin~ R; R: .. (xa2-1)/(1,-xa1);
gcv:= xa2/(xa2-1)xln(gjx(R+gi)/(gix(R+gj)))+ln((gj+R)/(g1+R))/(1-xa1 )+ln(fj/fi);
procedure uitvoer(s1, s2, s3, s4, s5, s6, som, SOM, aantal, totaal, index, x, gx, xal, mZ, da~.um);
Rtring sl,s2,s),34,s5,s6;
:rea:l SOi-l, xa 1 , x~2; Integer aantal, totaal;
~ array som, x, gx;
integ.:r array datum,index; begin integer c;
real array A[1:aantal,1 :totaal];
for tel:=1 step 1 ~ aantal ~ som[tel]:•O; SOM:•O; for tel:=1 step 1 until aantal do
bee;in fori:=index[~l ]+1 step 1 until index[ tel] do begin A(tel,i]:•gx[l]; -som[tel]:•som[tel]+(abs(A[tel,i]))~; end; 'Smf:•SOM+som[ tel]; . .... -. ·. " .··~ I
"'
I N 1.0 .-)t --O; I c := ent.ler(Mntal/10) ;
he;~l.n int'!5er •uray k[ 1 :c+?] ; integer q, :n ; kT"i'"r: = 0 j
if 'c>'l ~ !:.~;;~~. ~ l:=;; step 1 until c+1 ~ k[ i) := ( 1-1 )x10; end~; i;" aant.al-1!)/c = 0 th~:·. q:=r: ~l"e ceein q:=c+1.; k[c+2] := aantal; e:1d;
hr .j:=1 ~ 1 until q ~ bcg.!.r:
-end;
:n:=C> ;
f:Jr ~1 := k[.j] + 1 step · ~ntil k[J+1] do be~in i := index[tel~indext ~el-1 ];
if m<i ~ ~:=i;
end; iii:..VJ PA:iE;
P~I.:iTI£X7(31 );
for tel := k[J) + 1 5ten 1 >mtil k[j+1) do i:.·~~in Ail''WIXT(2,0, tel')"';S?A';S( 1 'l); end; :.LCR; Pd:·:','I'E:XT( 3:");
Lr tel := kL) + 1 s'.ep 1 t.:~.til !-:[_;.-;] do
b·~•\in SPA::c:(:l) ;;,;:;::;::r,.i'(-, ~. ~-:1[ tel]) ;Si'ACS(6); ~; :;:_c";
P:<Err::xl'(.;;);
for •.el := %(.j] + ' .:t.e:J 1 ·.:::til k[.j+1] do
i:.<:!•.(ln Jo'IXT(O, L, x[t•c~]/ (z[•"el) + 1)); S?'A::E(7); ~; r:LCR;
~rz:cr(:;4);
for td :~ :d .j] + 1 "te;:> ' ur.~. :1 k[ J+1) do
IJe;.:ln FI>~T(,?., L, x[ ~.~fT:"";~~r·~ :::(:;); ~nd; ;.:;.. . .:R;
--rFiWTISXT({ index, 'l.fwi.jki.ng ~);i:U;R; for 1:=1 sten 1 until ~ GC
begin for t~l:="""'kT"JT + .,..-,.tep 1 •:r.tg l<(J+l] do
--- \;:::e;in i:' !.>(index[ te~ )-:m:,x[ t,-1 - 1]) then begin SPACE:(: 4); .e:'t<:: c·:l".j
end; NLCR; - - - \:1S?F:'(3,J, i; ;S!'~::E'(O); end; McR; rl.D'T( J,' ,i .. [ t~ 1, i:1do.x ( tel-1 ) +1]); end:
l f LiriS ~!UMDER > 53 then NE'../ PAGE;
PRll:TIEX'!'( { restkw'l.dra9. t:;"l:r.:}) ;SPACE( 1) ;nCR;SPACE(5);
for tR.l := k[j) + 1 step 1 until k[J•1] do
begtn FLOT(3, ~ ,som[ teT'T'J; S?AC:::( 5); ~; ""f;"LCR;NLCR;NLCR;
end;
IfLINE NUMBER > 57 t!len NEW PAGE;
PRIN'I'l'EXT( t totale re:rtk•o~adrarrtsor.>.:}) ;SPACE(3) ;FWT(3, 1 ,SOtol) ;NLCR;
·PRINTI'EXT(s5); SPACE(4); FIXT(3,4,:xa1 ); NLCR; . PRUI'I'l'EXT(s6); SPACE(4); FIXT(3,4,xa2); NEW PAGE;
I
tv 0)
I w 0
I
rell.l pro~~dur~ 2?:.I'i'l'S?(j) ~ j integer j
be~in r~~l ~ , b ; - - ;;:--:-; :~~\:, j ~ := ~nt!~r( ll./110000000 ) ; ~f
.
:=:
·
t;.,~n t,ijd[ 1.) := ~- ret[ tel] ';P~. IT':'c:P : = '1- !':/ 1 J'l'l00'l00 ; ()r0cedure ?L\Y."f.D;be•;in int~~~r J; ~ fi, fj, r,i, gj, ~. gb, gc, xa1, xa2;
n 1 :=z ']-1; m2:=x[:']-1; gc:=1/n1+1jr;a~+~; f0r .; :=1 -;+.cp ? ~ 'l.ant'll io t~t;!." '"i:=fpi[j] ; ,~!:=,~pi1j] f.j:=fp~[.j+1] ; &]:= •. :p.!.[.j+1] ;::t: =:::.jxx'?.! -x::l;"?; sb: =.:~txx~ 1 -xa2; ~~x[ (.)+1 ).:_:'] :=f~/fi - (•,;J/gt)1-{-(1/x'l2+1) )x(g<;./f.o>kc;
re'l.l nnc"?dure rn:KTcE:(i); !nt.eg~r i;
l::e;olr; real fl, fj, g~., gj, ;:;a, gb, gc, xa1, xa2; - - Y .'3.1:=?1r[1]-1 ; xa?:=pad?]-1;
end;
fl:=fpi(?>:l-1]; gi:=<;?i(:Cxl-1];
fj:=fpl[?xi] .~;J:=.;pi(?xi]
g'l.: =gjnm. 1-xa2;
gb: =gixxa 1-xa2;
gc:=1/xa1+1/xa2+1;
FUNKTIE: :=(gjfgi
l·H -(
1 /xa2+1) )x(gafgb )f.gc; mtape 3?13, 0-Jf), 20-25;iJr.i1T3FREE; index(O]:=O;
for tel:=l sten 2 until aantll.l do
begin datum[ tei] := datum[ tel+ 1 ]:;READ; t( tel] :=READ; ret[ tel]: .,R3AD; for i:=index[tel-1 )+1 sten 1 until 1 do
b2gin Oem[i]:= SPLITT::Rn;t - -
-if Oem[ 1]=1 th>"l: (efn index[ tel] :=t-1; g0to volgende; ~d;
Ovm[i]:= SPLITTER 2 ; Otm( i]:., SPLITTER(3);
3[i]:= referentiexJcm(i]/Ovm(i];
f( i ]:= (Ovm( 1 ]XOtm( index( tel-l )+1 Jl/(Otm( 1 )xOvm( index( tel-l) +1 )) ;
I N ~ I · ....
l
.
~
-
--~
::~
!
~
·
·."! . • , ~-~f-.•. ~;;;,.··~ --~-~~~:.; ·;i. I w 1-' I -' . ~ '· I next step: ~;
~[tel+l ]:=RSAD; ret[tel+l ]:=RSAD; for i:=index[tel]+l steo 1 until i do
be;,;Jn Q:-m[i]:= ::,;>LIIT8R( 1 ) ; - -
-- -- i f 'J~:n[i)cl then h<'<;in index(•.el+l]:=i-1; goto next step;~; Qv:n[1]:= ::!'LITI'E:R(~);
Otm[ i]: = SPLIT'ER( J);
g[i]:= referenti?XOe:n[ 11/Qvm[i];
f( 1] := (Ovm[ i ]xOtm[ index[ tel-l] • 1 ]) /('Jt:n[ i]XOvm[ index[ tel-l )+1 ]) ;
?!U~!'!'TSX'T'(fcontr'lle o;> inlezen van ~ijd,;:,,f 1:-:iem,l!vm,c;t.:n,:l-);
?i~ I"T'l'E:/:-1' ( frl'l tum[ t~ l], ret[ t~ l], :-e ferl"nt ie ,aa:1tal, totA."'l 1 plotfirs t, olotlas t, nocon<'-});
f·!LCH;
f0r t.f>l:=l steo ~· until an.nt'll <h
h"';tr. i'~Jt.!T'J'<::XT(<j::;;;:t.dwich experiment no.}); ABSFIX'!'(?,J,(tel+l)/2); PRII<T'J.'E:X'!'(.j: de.tH~~); ABSFcXI'((,O,ca•.•L':'[~"l]); CARr.TAGI~(?); PHH.T'J'D:"( f. i t.ijd[ i.] .:;[ i] f[ i.] Cern[ i 1 Cvrr.[ i] Ctm[:] ret[ ~e: ):j. ~;
end;
if tP-1=1 t~"" Plii!:'Ti=:Y.!'(f refe:rf'ntie aant.al totarrl plotf!.rst plctlast r.ocr,nf}); t:L.~P;
f'lr l:=!n•1e:t[te:-1 1+1 step 1 until index[t~l] do drukaf;
f'i<Ii!'ITf·:Xr(ft.ijolsti.p e1.Dde!ttl~:O. lr.!,;;e d.r:.~k experimer.tt); FIXT(5,0,t[tel)); ::AF:'<IAGF:(Z); PRU!'ITJ.:ll'!'(ftij<lsti!) t:e~;ir, A.fo'lutt..,nd la~e druk exper~ment:}); FIXT(5,Cl,t[tel ... 1 ] ) ; NLCii; f0r i:=lndcx[tel)+l step unttl ~:<d~x[•,~l+l] do drt.lkaf;
r:t;;.J ?AGO:;
-x[a.ar.t.nl+ 1 ) : =fW.AD; x[ fW nt.e.l+2]: =;7!:.:,\D;
tf noc-onf>() then begin xentry(aa,ltahl 1:afqlse; xentry[aantal•21:=false; end
- - ;:;yse bl'gJn xentry[aantal+1 1:=t:r'iie; xentry[aantal+2):~true ; end;
for tel:=l step ?Uiitfl '3.antal do
-begin x[tel):= x[tE>l+l ):= g[ tndex[t.el-1 1+1]; - -xentry[tel]:=xentry(tel ... l]:=true;
encl.;
-for j :=1 step 1 ~ index[aantal] ~ gtype(j ]:~3;
minimize( x ,~:~x ,FIACCO ,xentry l'~type, true ,d.gdx ,afgeleide ,aantal+21 1ndex[aantal], .,-<l, ,-<l, '!,converged, rear. ible 1 c-<l, I 11 50);
uitvoer(~ld !;erie},fds,tum:},f!e·ld "'"f:Tqo ld:j>,i: re ld i,{: rv ld :},som,SOM,aantal,totaal,index,x,gx,x[a.antal+l ],x[aantal+?),dB.t.um);
if abc.{noconf)=2 v n.bs ( noconf)=4 then Cm!FREGION ( i,FUNCTIE( i), x,aantal+l ,aantal+2 ,SOM, tncl.ex[aar.tal] ,f:, 1 ,~antP..l+2, 1 0,
- - - i:Joint confidence limits for low pressure experime,.,ts},f:-e:j>,{:rv}); NEW PAGE; comment Jde graads polynoom aanpassing van g tegen de tijd, berekening ql, fl, q2, f?;
dex[O)::O; ex[O):=O;
for tel:cl step 1 ~ aantal ~
I!i1!
integer it, itl, n, z;it:=index[ tel]; it 1: =index[ td-1 1; z:= ~t-it 1;
begin~~ xp, tp[l:z1;
~ j :=1 slep 1 until z ~
uegin xp[j :=g[j+itl]; - - tp[j 1:=tijd[j+it1 ); end;
'PBLYNOOM(tp, xp, z, n, 1, alpha, beta, b, a, delta, ~); polsom[tel]:2 delta[l ];
gpi[ tel) :=YAPPROX( 1, alpha, beta, a, t( tel)) i begin real gif xt, xal, xa2;
gi:zgpi tel]; xt:,.x[tel1; xal :=x[aantal+l ); xa2:cx(aa.ntal+2];
fpi[ tel]:= (gifxt),}(xa2/( 1-xa2) )x( ((gif(xe2-1 )-1 /(xa 1-1)) /( xt/( xa2-1 )-1 /(xal-1))) ),}( 1 J(xa 1-1) +1 /( xa2-1 )+1);
~..: ;;,.· .-.' 1!.' *-~·
r
I w 0 I ;; .··-;
I w
N
I
for i:= 1, 2 do r(dex(tel-l]+t]:= h["i.-1]; :Je!,:[ to:!l]: =JexTte:.-1] +2;
for t~l:=l c;t~n 2 ur.tf.l aantq_l do
:, .. ~,._~in i!' i..I;;;:.:::;:I{2.2,f( :.> ~;'"~ th-en if::-11 PACE;
-...,.- 'J"i•.>;(");); :>Ri:!'lT2Xi.'({:;aud\/ich exper~m,.nt no.l>); A63P'IXT(2,0,(tel+1)/2); PRI.:;:TEXT(.j: datum.}); A5SFIXT(6,·),datum(:el]);
':A:~:~ IA~~:.( 1) j .
;>;,:,;·;-::=:IT( f::.le ~de no lage dr<~k experi?.".er.t.}); CARRIAGE:( 1);
p,};.r::::Y.'~'(frestl<\l'l.dras.t.sor.t .});
Pr~ :: :.::~0'( f?)l~·no<:>rn -:oeffic ienter,:t) ;AB::.FIXT( 1 , ?•G.!:~[ ~ l ~-<lex[ tel ]-1 ) ; P<l!N'I'I'EXT( t-<J.c gra.ads s.anpo~ss ir.e;}); :;p;,r:r( 8); P.<I.o,t::.,,T(-j:' t q f:j>); vAi'.r.J..Aur.(.);
i';;J 1'(1-1, :l, ;)Ols•xn( t,d]); :-;PACi':( 3);
f0r i:=•iex[tel-1]>1 .,teo ' un•.E C!:'X[tcl] do begin ?IDT(4,3,r[i]); o;?AC2(4); end; f:J'r ::=1 :;t~p 1 urLl •-:icx(t~:.)+<Jex[tel-1)do SF·.J,,::c;(;6\;
hif:VIZi'('•, 'i, t[ t~'Il'Til'IH(2 ,!. ,.,;pi( te:C]); r :U.:'f\2, 4, !'pi [tel]); CAR?<IA~t:.(2); ?i<ii·,T'I'D:T(t_h lu i tend Ja;,;e druk ex per im·:!lt}); CAiiRIA.JE( 1);
PdlT'i'C::Xl'( es Lk\/a<ira'l t so~n .} ) ; .
~il~.d~~?~( f>Glynoo<'l coe:fic lenter:}); A:JSFIX"!'( 1 •?·?~x~:el)-<iex[ tel-l ]-1
) ; Ph.ii·i'i'" IXT( f ... ~e t>rea::.~ Ra:.~ss L~r.:J); :>rACE( B);
rHL,.Tl:,X.( .. q ftJ; CA~:<.:.Au~:.(l);
r'Fil'(4,3,;J::Jl:;o,(t,l+l ]); SPA..-:2(3);
f0r l:=dC'x[tel]+l c.t~p 1 until ;~ex[tel+1] do begin FLCII'(4,3,r(1]); SP.O:.CC:{4:•; er-u;
f()'; i :=1 st=p 1 ur.til 4-<icx[ tel)+dex[ tel-1Jd:'l 3PACE(16);
Alr:l·'I!.T(4,n, t.[t-~I+ilT; FIXT(2,4,c_;pi[ !.el+1]);7IXT(2,4,fpi( tel+1]); HCP; HCF; !'!Ci-'; end; ;;;;:;~ PA';s;
PRI;'I1'1':;;x-r(.j:U:;t.lng van de met de copolymerisatie-vcre;elijki!"_g bereker.de hoge druk r-',l"!e.rc'.en}); i:LCI'; r;LCF; for t.el:=1 step 2 until aantal do
begin real gt, ~t1, glt, gltl, fit, flt1, xal ,xa2;
--- gt:=gpi[t~l); gtl:=gpi[tel+1); glt:=ln(gt); glt1:aln(gt1); flt:=ln(fpi[tel)); fltl:=ln([pi[tel+l ]); if LINENUI-!BER > 54 then NEW PAGJ<:;
PRIN1'l'EX'r(~ re ---- . rv . s!lnd\/ich experiment no,}); ABSFIXT(2,0, (tel+1 )/2);
PRINTTEXT(t datum.}); ABSFIXT(6,0,datum[tel]); NLCR; for 1:=1 steu 1 until 6 do
begin xa?~[exTTtel+1)7?-1 )+i]:=.9+.2xi;
--- xa1 :=x1[ex[(tel+1)/2-1 ]+i]:~(2xxa2/(gt+gt1)+1 )x((glt1-glt)/(flt1-flt)+l )-C/(gt+gt!); Fl.XT(l ,4,xa1 ); SPACE(4); FIXT(1 ,4,xa2); :iL::R;
end; );LCR;
exf(tel+1)/2):=ex[(tel+i)/2-1 }+[o; end; Nr/.ol PAGE;
PRL·ITTC:Xr( .P,isting van de met de gei nt.egreerde copolymerisatie vergelijking berl"kend~ hoge d!'ilk r~arde,.}); !. !.);'<; ,:LCF·.;
~ tel:=1 step 2 ~ aantal ~
begin real xa1, xa2;
--- IfTn,c:rNMDER > 54 then NEl-l PAGE;
PHUi'IT2XT(.j: re - - rv sand\/ich experiment no.}); ABSFIXT(2,0,(tel+1)/2);
PRHiTTE:XT(f datum:j.); ABSFIXT(6,0,datum[tel]); NLCR; ~ i:=ex[(tel+1)/2-1]+1 step 1 ~ ex[(tel+l)/2] ~ begin xa2:=x2[i];
REGULAFALSI(xa1, gcv(xa1, xa2, gpi[tel], fpi[tel], gpi[tel+1], fpi[tel+l]), .9XX1[i], 1.1Xx1[::.], ,1-8, ,~-8, alarm); FIXT(1,4,xe1); SPACE(4); FIXT(1,4,xa2)i NLCR; goto verder;
alarm: PRINTTEXT(fgeen of even aantal wortels~); NLCR; verder: end; NLCH; end; NEiiPAGi':; ··-? I w ,_. I i~ . . . -:~: ; t,J;.>:~'
"
~;: :..· ~ . :.:.; ~- ,._~-; ':r:···--•
\-.I w w I
£.:?!:. t,~~J.:=pJ.f)t.~~r-:;t . .-.tep 2 ~n:til iJl0t.l13.~-~. d0
:-.:!·;i;. r,~~l ~.m~.-~, ~-'Y'2X, f~·:_:·., f:r.n.x, Q.""::i:--., q:~x, P, Q, e?;j, !'j, tj, tC, dt, t, q, qO, ql, ~q, 1·~c.l 'l.r·,.-<t:• pl0t.t, pl.,~.:', ;:>,.,~.1r ·: 1
:" ] , ::/ .r:~~x[ te::.-~ ]+1 : in1ex( tcl+1)];
~<r:; :.t, b, ~, j, k, d.~X~~~l ~, d.c;x-.'"-:lC;
{j~x!:;ll :=dr.z[tel-i ]; d~xt~l2:=1t;x(•.el.];
,.,:=''"~~>:[•.e:!.-1]+1; ':J:=~nC.ex[•.~l]; ~:=~!1C.ex[~el•l];
'1·'1 in: ==~.:~'1.>: :=::fry_]; t:.:~ :. : =t.~.:~ z: =t·~-~1t ~-]; !':-:!~.:-. :=f:""'JiX: =1 ::J·Jx( 1 -~[?.]);
f')r' ':=8.. .-:.~/~0 1 ;:,~1-.{_:. (" :4')
~,,, "'·;;;-:r"J· ~.; ,,,r;l, <''·=''"[ ''-=1')"/(1-f[ •])·
~ ~-),;0=-,l, J •,;o L,;·•[,.J I •0·~· • ' ·.-.<' '_} J J
~-~ r"j:n.x<_-.·- t-1~~- q··.::.,~:=·-;. ~·:.-.~ i ... ::-;J<q~:.n 7:.':--:en qr:1in:=5J; .1.!' t.:":'!8.x<~ .. j ~~:-j:r. '".'"':?.%:=-.. ~ el··-~ i.f tj<t~i;. then tn.· .:=t.j;
~f .!.:J~.x<f,j th·:!:. ?'~z:=tJ cl~~ if f.j<f~i:t t;i'!r f.:rin:=fj; etJ-1;
t/):=t.ij•l[c:]; c!•:=(t• .. ;dh]-·-::/1);
fe)r .):=1 .-:te!:'l I "r:'.i.l ."'') (!:)
;:.),'.:'1;) .. ,:=;>l 1t.t[.j I:= ... G+(~-T/Y:l~.; - - - q:='l; f:~r k:=~extol?~~:-:tc:l1-~ ~~.~~ -~ ~..::-:til f) d~ q:=t:>.q•r[dextel1-'-~"-1 J; o:,•q[ J l:=1; 'i!' q<q:-rl~:'~ thct• qm.::i:=:{ ':'~ .. ~"~ ~-~ ·17'P.Y.<q t~::r. q~;.~:'lX:=q; •;i1'1; V':=t'..jcl[C!+1 ]; ci:.:=(t;.irl[~j-:!1/1); f0r .;.="1 ote:'l 1 ' l " t l l :,-, d'' :)'~si~ · r.~=p2' -~~~~-[~ J ~~t~~:c~~'~~?--:~.; q:='i;
for k:=rl~xtcl;:"-dextcl.'-1 ":.e" -1 until D do q:=tXq+r[dex•.el2+k+1];
p10t.CJ.[j l: =q; i f q<qr.cln ~ q~in:=q cl~·') r.; q::-ax<q then q:18.x:,q; enrl; q0:,x[tcl]; ql :=x[t.el+1); ~1 :=x(a'l.dal+1]-1; c?:=xhant.2l+0]-1; c]:=l/c1+1/c2+1; f0r j:=1 :;tep 1 unt.tl ;>')do be;; in q :=pl,tq[.j~ -- -- f j :=plotf[ j] :=1 OOX( 1-(q/qO),f,( -( 1 /c2+1) )x( ( qxc1-c2} /(q0Xc1-c2) )1<:3); 1£ fj<fmin then fmin:=fj else :!.f ft:'ax<fj then fmax: .. fj;
end;
far J:=21 step 1 until 40 do
begin q:=plotq(j ]-; - -
--- fj:=plotf[j]:=100X(1-(q/q1)t(-(1/c2+1 ))x((qxc1-c2)/(q1xc1-c2))tc3);
1£ fj<fmin then fmir,:=fj else i f fmax<fj then fma.x:=fj; end;
SCALE(if j=1 then qmin else q~x,
SCALE(If j=l tJi'en f:nin efSe fmax,
SCALE(If J=1 th~n tmi n else t:rnx,
Q:=(qmax-qmin)/2000; P:=fmax/1500; , 2, 20, 0, qmin, qmax, dq); , ~' 20, 0, fmin, fmax, df); , <, 20, o, tmin, tmax, dt); :::1, c2, cj; ~~ I w N I
·
{
:
··:~ ~,;:·:i
~'
4''
:
.
f'1 w ~ I :~~ .,, "·f. ··-·.· ).;· -'
PLarFRAMZ ( -fmax...400XP, qmin-3 'JO>•Q, frmx+ 100l•P, qmax + 1 OOXQ, 3500, ?400) ; PL..."TA/.I:i2(qmin, qmax, dq, false, -frrax);
PUJ'I'I'SZ1'( I;()Cl, ;;a, :1, _.,s=r;--;f,-true, >), {:t1j1 in minuten I w}); PL~TAY.I3(-fmP.x, q~in, 0, f~x, ~f);
for j:='J :>tep 5 until ?0 d'l be;:;~n PLG1'(-frrJJ.Y.+jXd.!', qmin, 2); PU11'(-frnx+~x:::!', q:r.:r+0x2~·, 1);
- - - A'ISFIY.PLJT(-fm;?.x+jxdf...BOXP, qr; :1-15Y0, C, 22, ·'J, ~~ O, ·;, 0, tmax-.jYC.•.);
enri; <'!Jrl'AY.I>2(0, fmax, rJ!', t.ru~,q;:!i:-:); P!..'"J'!'<\I.I:;('J, q'lli.r>, ')0, qrc2.x-q::::.!l, -<:lq);
~'L'l'ITS/.1'(1~70, 1)~~,9'J, ~~. 'J, true, 0, {:q = nem I nvm:l-);
f0r j:=-?.. ~t.~~ l ur:t1J. c do 9LC~"IT.Str(-frmx/{tl.~~-[j]-':.mi:--,)/{t.rrax-tmi:-l), g(~]_, ·1, -:-F:., 0, ~' -·:
~)IDrC!.i;"<'F·:~o, ; ; - ; - .
f0.~ .j:~4n ~t~~ -1 1.a~t:l 21 d; :;~ .. CT-~~~E-.'F.(-fmax· x(plo~ ... [~ ]-t:r.!.r.)/(t.rrJ'l~x-t'i~:·:), !ll:tq[j], ?);
:'lilTC1!:iVC:(1, 0, ;); P!,cT(;l;;:<v::;(.r.? /\? J);
for J:<'O :;t~p -1 until 1 do ?Ln'C':::U?'fS(-f'l'axx{plott[J)-tr-.i~1)1(Ur.ax-t:::ir:), pl·:>tq[: J, ~:); ;>f"i1'('iJ:1Vi':(-1, 'l, 1)_;__
-for j:=a :;t<!p 1 'ln•-il c c'l ?L'.:IT:':XT(100...:(1-f[~]), g[~), o, c8, 0, ~' ...;>, {:>~;
PL01Y:u:wr:\ii";""""o, n;- - '
for j:=l1!) step -1 :.:ntil :"1 1o ?LCJrCt!RVE(plotf[j], plot,q[j], 2);
PDrcu;w:::( 0, n, 3); PL:-:-::trnV£( o, a, 1);
for j:=?O st~p -1 until 1 do ?lDTCURVE(plotf[j], plotq[j], 2);
i>i::GTCURVE:(O, O, 3)_;__
-PIJ!I'l'E:Y.T(?Rno, )0, 0, -P8, 0, t~e, 0, -{:fv = 100 (1 - nvm / rl'.'m1 )});
ABSF'IXPLUT(323?, 500, 0, ..;?8, O, true, O, 6, O, d.atum[tel]);
PI.rrr( 4ooo, o, -4);
-co.":llllent berckenl:---8 van de hoge druk r-waRrden uit alle sandvich e·xperimer,ten sar.e,-,; if aant.al>4 then
b€'gin CA!lRIAGS(3o); PREITI'r:Y.1'( ~oge druk r'"""TM.rden met gcv en minir.tiz.e berekend ui t alle}); - - -ABSFIX1'(2,0,Aa:-Jtal:?); PRLTTEXT({:sandvich experimenten samen:j.); NL'::P;
x[ 1 ] :=x[ ~t:-~nt/.l.l-'-1]; -x[ 2]: =x[aental+?];
xentry[ 1 ]:=trne ; Xl'>ntry[2]:=tl:"11e ;
J-.l.\.
·~r',
for j :=1 step 1 U~Jtil '3antal::::~gtype[j ]:=-3;
minimize( x ,,ex, FIAKKD, xentry ,~type, false ,dgdx,FIAKKD,2,aa.ntal :2, ,~-B, ,-8, O,c'>nvere;ec, feas lble, ,-A, 1,1 50);
for tel:=1 sten 1 until aanto.l:2 d-o--
-begin index[ tei]:=tel;
- - datum[ tel] :=d.atu:!l[?xtel];
end;
uitvoer( fsandwich:}-, {:datum:j.,{.fe hd }, {:q1 hd},-{: re hd :j., f rv hd }, sorr., SOM,ae.ntal:;:,, totaal, ir,d~x, x, e:x, x[ 1 ], x[ 2 ),rlat<Jr:);
if abs(noconf)=3 V abs(noconf)=4 ~ CONFREGION(i,FUNKTIE(1),x,1,2,SOM,aer.tal~2.,gpi,2,2,10, .
{:joint confidence limits for hi..-h presS'Jre experimerts:j., 1'J'e}, -j::rv});
end; end; progend ... I w w I
-34-~ 5. Some important procedures stored on magnetic tape.
The contents of the magnetic tape are divided into several
groups, each indicated by a number > 0. The number of the
mag-netic tape we used was 378. Thus by means of the statement
<; mtape 378, 0 - 17;> the contents of groups 0 t i l l 17 of
magnetic tape 378 will be inserted in the program.
The lay-out of our magnetic tape was as follows:
gr. 0
-
17 procedure minimize (....
)gr. 18 ;erocedure covariantie
-
matrix .(....
)gr. 19 ;erocedure SPLITTER (i)
gr. 20 2rocedure FIACCO
gr. 21 12rocedure afgeleide
gr. 22 ;erocedure FUNCTIE (i)
-35-5.1 procedure minimize (x, gx, functions, xentry, gtype, analy-tic, dgdx, derivatives, n, m, raxmin, aaxmin, estimate, conver-ged, feasible, epsbound, coc, imax)
Directions for use: When 11
minimize11
is called the actual parameters, which, for · con-venience, are denoted by the corresponding formal parameters, ha-ve the following meaning:
X
gx
functions
xentry
gtype
real array with elements x [ 1], • . . , x[n] ; before cal-ling 11
minimize11
the starting point of the computations must be stored in x; on return x contains the solution produced by 11
minimize11 •
real array with elements gx[l] . . . , gx('m] problem functions.
contains the
procedure; by a call of 11
functions" the elements of the real array gx[l:~ are evaluated for the current value of the elements of the real array x[l:~ ; via this procedure the user supplies the problem functions gx[l], ..• gx[fl}] as functions of independent variables x [1] 1 • • • x[n] .
boolean array with elements xentry(l], . . . xentry[nJ before calling "minimize" xentry[j]must be assigned
the value~ or false; if xentry[j] = false then
x[~remains unchanged during the comput~tions and the
derivative of the penalty function with respect to x[jJ is set ,to 0; if xentry = true then
x[jJ
is a free variable.integer array with elements gtype[lJ 1 • • • gtype[mJ;
before calling "minimize .. these elements must be as-signed the values 0 1112 or 3; if gtype[~=O then
gx[i]will be dropped from the problem; i f gtype[i]=l
then gx[i]is taken to ce t he objective function; if
gtype[i]= 2 then the constraint gx[i] ~0 is imposed; if gtype[i]= 3 then the constraint gx[~=O is imposed;
-36-analytic
-36-boolean expression; if analytic is true i t is
assu-med that the first-order derivatives of the problem functions are supplied by the user; if i t is false "minimize" will compute the first-order derivatives by differencing;
dgdx real array dgdx [i, j1 ; dgdx [i, j] contains the
first-or-der partial first-or-derivative of gx[i]with respect to x[j].
derivative procedure, which evaluates the elements of the real
array dgdx(i,j1for the current value of the elements of the real array x[L:n]; only non-zero derivatives need to be supplied; n m raxmin aaxmin estimate converged feasible epsbound
integer expression; dimension of the arrays xb:nl and xentry[l :n}
integer expression; dimension of the array gtype(-l:m)
real expression; relative accuracy of the solution to be produced;
real expression; absolute accuracy of the solution to be produced;
real expression; an estimate of the value of the ob-jective function at a minimum solution; i t is only used in constrained minimization in order to find the value of r
0 in formula (5).
boolean variable; converged is set to true by "mini-mize" if the above-named convergence criteria are satisfied; otherwise converged is set to false.
boolean variable;
real expression;
-37-coc
imax
Output:
-37
integer expression; conditional output-control
para-meter; if coc
=
0 then no output will be given; ifcoc
=
1 then "minimize" produces short output ineve-ry iteration, and x - outputand g - output in the fir~
and the last iteration of an unconstrained minimiza-tion cycle; in addiminimiza-tion to this, x - output appears
in every iteration if coc
=
2; an explanation of theoutput will be given below;
integer expression; the maximum number of iterations
permitted by the user; if imax
=
0 then norestric-tion is imposed on the number of iterarestric-tions.
Short output is a single - line summary of the current iteration
presenting the iteration number, the value of the penalty func-tion and the length of the gradient of the penalty funcfunc-tion both evaluated at the current iteration point, and the distance between the current and the preceding iteration point.
X - output is a print of the current iteration point (solution
vector) and the gradient of the penalty function evaluated at this
point. If analytic is true the gradient is obtained by evaluating
the user - supplied first - order derivatives of the problem func-tions; otherwise the gradient is approximated by differences of function values. In iteration 0, if analytic is true, this
approx-imation is also computed and print ed in order that users
deriva-tives can be checked.
G - output is a print of the values of the problem functions at
the current iteration point. If the problem is one of constrai ned
minimization, i t also comprizes the current approximation of the
Lagrangian multipliers.