1 svar
57 visningar
morfisen behöver inte mer hjälp
morfisen 7
Postad: 21 mar 11:58

Funktion som implementerar fixpunktiteration med en snurra

Jag tänker att denna blir min sista post, då den tagit lång tid samt förbluffat mig, då jag testat de flesta "logiska alternativen" enligt mig. Hursomhelst så skulle det vara bra och få denna klarlagd också. 

Frågan: 

I listan till vänster nedan finns kommandorader som, om de placeras i rätt ordning, bildar en extern funktion som implementerar fixpunktiteration med en snurra. Funktionen har en funktion, ett startvärde och en tolerans som input. Funktionen returnerar antalet iterationssteg och den approximativa lösningen då önskad tolerans uppnåtts.

Snurran avbryts, och skriver ut en varning, om den inte kommer tillräckligt nära en lösning efter 1000 steg eller om funktionsvärdet blir för stort eller ej definierat (kan kontrolleras med kommandot np.isinf i Python).

Kod alternativen:

import numpy as np
def fixpunktiteration(F,x_in,TOL)
x=x_in
n=1
while abs(F(x)-x)>TOL:
n=n+1
x_ut=x
x=F(x)
if (n>1000) or np.isinf(x):
print('Interation avbröts utan att hitta lösning')
break
return n,x_ut
Dr. G 9479
Postad: 21 mar 20:57

Löste det sig?

Svara
Close