•
Als p = n-1, dan
X = V
Anders, als p < n-1
Verwijder de kolommen p+2, ..., n uit V
(Gebruik een FOR-lus en COL-)
Of
Voeg de kolommen n+1, ..., p+1 toe aan V
(FOR-lus, bereken x
•
Zet y om in vector
•
Bereken b met het programma MTREG (zie het voorbeeld voor
meervoudige lineaire aanpassing hierboven)
Hier staat de vertaling van het algoritme naar een programma in User RPL-taal.
(Zie hoofdstuk 21 voor meer informatie over programmeren.):
«
x y p
«
x SIZE
n
«
x VANDERMONDE Plaatst x in stapelgeheugen, krijgt V
IF 'p<n-1' THEN
n
p 2 +
FOR j
j COL− DROP
-1 STEP
ELSE
IF 'p>n-1' THEN
n 1 +
p 1 +
FOR j
x j ^
OBJ
j COL+
NEXT
END
END
y OBJ
ARRY
MTREG
,
n
i
Activeert het programma
Voert de lijsten x en y en p in (niveaus 3,2,1)
Achtiveert het subprogramma 1
Bepaalt de grootte van x-lijst
Activeert het subprogramma 2
Deze IF voert stap 3 in algoritme in
Plaatst n in stapelgeheugen
Berekent p+1
Startlus j = n-1, n-2, ..., p+1, stap = -1
Verwijdert kolom en haalt deze uit
stapelgeheugen
Sluit FOR-STEP-lus
Berekent n+1
Berekent p+1
Begint een lus met j = n, n+1, ..., p+1.
Berekent x
ARRY
Zet lijst om in verzameling
Voegt kolom toe aan matrix
Sluit FOR-NEXT-lus
Eindigt tweede IF-clausule
Eindigt eerste IF-clausule Het resultaat is X
Zet lijst y om in een verzameling
X en y gebruikt door programma MTREG
, zet om naar vector, gebruik COL+)
j
als een lijst
om X te vormen
n
om X te vormen
n
n
Blz. 18-60