Wie zeigt man eigentlich den fixpunkt der funktion cos(x)?

2 Antworten

Eine exakte Formel dafür kann man nicht geben (geht meines Wissens in diesem Fall auch garnicht), aber ich kann dir ein numerisches Verfahren geben, mit dem du den Fixpunkt beliebig genau berechnen kannst.

Was wir suchen ist ein sogenannter Fixpunkt der Cosinusfunktion, also ein Punkt, der vom Cosinus komplett unverändert verbleibt. Dazu sehen wir eine sehr schöne Tatsache, nämlich dass die Sinusfunktion auf dem Intervall (0,1) Ableitung mit Betrag kleiner als 1 hat. (Die Ableitung ist -Sin(x) und |Sin(x)| ist für alle Werte zwischen 0 und 1 streng kleiner als 1). 

Eine solche Funktion nennt man eine Kontraktion, da das Intervall (0,1) von der Cosinusfunktion sozusagen "geschrumpft" wird, auf ein kleineres Intervall, das auch in (0,1) liegt.

Der Banachsche Fixpunktsatz besagt, dass ein (eindeutiger) Fixpunkt existieren muss, und gibt ein Verfahren zur Berechnung, nämlich das Hintereinanderausführen der Funktion.

Wir raten also den Wert "0.5" und definieren a(0) = 0.5 und a(n+1) = Cos(a(n)), also a(n) = Cos(Cos(...(0.5))..), wobei immer n Cosinusfunktionen ineinander verschachtelt sind. Der Grenzwert für n gegen Unendlich ist unser Fixpunkt.

Wenn du jetzt also den Fixpunkt berechnen willst, dann gibst du in den Taschenrechner Cos(Cos(...(0.5)...)) ein mit so vielen Cosinusfunktionen wie du kannst und das Ergebnis ist dein Grenzwert.

Ich hab das mal eben in Mathematica durchlaufen lassen und komme für n = 1000 auf 0.739085133215160.

LG

YStoll  07.03.2016, 03:04

Wenn man die Funktion x-cos(x) plottet sieht man schnell, dass dies der einzige reelle Schnittpunkt ist.

Im komplexen gibt es aber scheinbar unendlich viele.
Als ich eine solche Iteration mit einem numerisch bestimmten Wert als Anfangswert in WolframAlpha gehauen hab, ist die Folge divergiert.
Liegt das dann daran, dass cos'(x) = -sin(x) an diesen Stellen >1 ist?

Wie kann man diese Punkte bestimmen?

0
YStoll  07.03.2016, 03:25
@YStoll

Meine Überlegung war:

x = cos(x), x € |C   <=>
a + bi = cos(a+bi), a,b € |R <=>
a + bi = cos(a) * cosh(b) + sin(a) * sinh(b) * (-i)  <=>
a = cos(a) * cosh(b) und -b = sin(a) * sinh(b)  <=>
b = arccosh(a/cos(a)) ==> in " -b = sin(a) * sinh(b)" einsetzen ==>

-arccosh(a/cos(a)) = sin(a) * sinh(arccosh(a/cos(a))) in Wolfram hauen, einen Wert für a raussuchen, in "b = arccosh(a/cos(a))" einsetzen.

Dann hatte ich ein a und b bestimmt, (a immer mit 14 Stellen genauigkeit, b immer als Term von a geschrieben) und gesehen, dass cos(a+bi) - (a+bi) < 10^-13.

Trotzdem divergiert laut WA die Folge z(n+1)=cos(z(n)), z(0)=a+bi.

Als a habe ich die erste positive numerische Näherung aus WA genommen: 5.86956037734761.

Ich fänds klasse, wenn du mir sagen kannst, ob das daran liegt, dass abs(-sin(a+bi))>6.3>1 und wie man dann auf solche Punkte kommen würde.

0
Roach5  07.03.2016, 04:54

Ja, der Banachsche Fixpunktsatz macht die Existenz- und Eindeutigkeitsaussage nur dann, wenn die Funktion wirklich eine Kontraktion ist. Im reellen Fall ist sie das, aber im komplexen Fall sieht man schnell, dass der Cosinus eine Exponentialfunktion ist, und damit generell in C ganz bestimmt keine Kontraktion, somit funktioniert dieses Verfahren dann nicht mehr, da sollte man Standardverfahren zum Finden von Nullstellen von Cos(x) - x benutzen.

1

Willst du nur zeigen, dass es ihn gibt oder bestimmen, wo er liegt?

aslanyav 
Fragesteller
 07.03.2016, 00:48

Also die rechnung für die ermittlung des fixpunktes würde ich wissen wollen

0
aslanyav 
Fragesteller
 07.03.2016, 20:26

Gerundet reicht mir und danke für eure hilfsbereitschaft :)

0